结构化设计方法
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
结构化设计方法
刘凤祥
目录
第一模块软件工程和软件过程 (3)
瀑布模型 (4)
快速原型模型 (5)
增量模型(渐增模型) (6)
螺旋模型 (7)
喷泉模型 (8)
第二模块结构化分析 (9)
概述 (9)
与用户通信的技术 (9)
分析建模与规格说明 (10)
实体——关系图 (11)
数据流图 (11)
状体转换图 (12)
数据字典 (13)
练习 (14)
第三模块结构化设计 (14)
第四模块结构化实现 (31)
第五模块软件项目管理 (31)
第六模块案例分析 (32)
第一模块 软件工程和软件过程
一、 概述
1.
谁有软件开发的经验?软件开发的大概过程是什么?曾遇到过什么问题?
2. 计算机系统的发展所经历的四个阶段
3. 软件危机:在计算机软件的开发和维护过程中所遇到的一系列严重问题
4. 产生软件危机的原因
5. 消除或减少软件危机的途径 二、 软件工程
①把系统化的、规范化的、可度量的途径应用于软件开发、运行和维护的过程,也就是把工程化应用于软件中;②研究①中提到的途径。 三、 软件工程的基本原理
1. 用分阶段的生命周期计划严格管理
2. 坚持进行阶段评审
3. 实行严格的产品控制
4. 采用现代程序设计技术
5. 结果应能清楚地审查
6. 开发小组的人员应该少而精
7. 承认不断改进软件工程实践的必要性 1)60年代中期以前 无软件设计的文档资料
2)出现了软件作坊,“软件危机”出现,1968年提出“软件工程”的概念 3)20世纪70年代中期开始,10年。主要特点是出现了微处理器 4)软硬件的综合效果
五、生命周期模型
瀑布模型
图1.2传统的瀑布模型
1. 阶段间具有顺序性和依赖性
2. 推迟实现的观点(尽量晚的开始程序的编写)
3. 质量保证的观点
优点:可强迫可发人员采用规范化的方法;严格地规定了每个阶段必须提交的文档;要求每个阶段交出的所有产品都必须经过质量保证小组的仔细验证。
缺点:软件产品交付用户前,用户仅仅通过写在纸上的静态的规格说明,很难全面正确地认识动态的软件产品
图1.3实际的瀑布模型
快速原型模型
(实线箭头表示开发过程,虚线箭头表示维护过程)
图1.4快速原型模型
优点:不带反馈环,软件产品的开发基本上是线性顺序进行的,有助于保证用户的真实需要
得到满足
增量模型(渐增模型)
图1.5增量模型
优点:1. 能在较短时间内向用户提交可完成
图1.6风险更大的增量模型
螺旋模型
图1.7简化的螺旋模型
图1.8完整的螺旋模型
喷泉模型
图1.9喷泉模型
六、练习
1.软件就是程序。()
2.软件工程方法学包含三个要素:方法、工具和过程。()
3.目前使用最广泛的软件工程方法学分别是:传统方法学和。
4.软件是程序、以及相关文档的完整集合。
5.简述软件工程的基本原理。
6.论述软件生命周期的不同阶段,以及各阶段的基本任务
7.采用增量模型开发软件时,目标是一次就把一个满足所有需求的产品提交给用户。()
8.需求分析和规格说明是比较简单的过程,应快速完成。()
9.螺旋模型是在每个阶段之前都增加了风险分析过程的模型。
10.快速原型模型是文档驱动的。()
11.瀑布模型的成功很大程度上是由于它基本上是一种____驱动的模型。
12.螺旋模型的成功很大程度上是由于它基本上是一种____驱动的模型。
第二模块结构化分析
概述
1.需求分析是发现、求精、建模、规格说明和复审的过程
2.结构化分析:是一种建立模型的活动,通常建立数据模型、功能模型和行为模型三种。
3.结构化分析方法应该遵守的准则
①数据模型(E_R图)
②功能模型(数据流图)
③行为模型(状态转换图)
④对三种模型进行分解,用层次的方式展示细节
⑤分析过程应该从要素信息移向实现细节
与用户通信的技术
1.访谈
形式:正式
非正式:开放式问题,鼓励被访问者表达自己的想法
具体技术:调查表
情景分析技术
目的:了解用户的真正需求。
2.简易的应用规格说明技术
面向团队的需求收集法
初步访谈
开发者和用户都写出“产品需求”
选定会议地址、日期和时间,并选举一个协调人
邀请开发者和用户双方组织的代表出席会议,在会议日期前把写好的产品需求分发给每位
与会者
每位与会者在开会前几天认真复审产品需求
会议开始,第一个议题:是否需要这个新产品
讨论,删除或增添表项或组合不同列表。这个阶段严格禁止批评与争论
创建新组合列表,得出一致意见
分小组为列表中的一个或多个项目制订出小型规格说明
细化、求精
每位与会者制订出产品的一整套确认标准,并提交会议讨论
由一名或多名与会者根据会议成果起草完整的规格说明优点:开发者和用户部分彼此,集思广益密切合作
即时讨论和求精
有能导出规格说明的具体步骤
3.软件原型
特征:快速、容易修改
快速构建和修改原型的三种方法和工具:第四代技术(4GT)、可重用的软件结构、形式化规格说明和原型环境
分析建模与规格说明
软件需求规格说明框架
Ⅰ.引言
A .系统参考文献
B .整体描述
C .软件项目约束
Ⅱ.信息描述
A .信息内容
B .信息流
1 .数据流
2 .控制流
Ⅲ.功能描述
A .功能分解
B .功能描述
1 .处理说明
2 .限制
3 .性能需求
4 .设计约束
5 .支撑图
C .控制描述
1 .控制规格说明
2 .设计约束〖ZK)〗
Ⅳ.行为描述
A .系统状态
B .事件和动作
Ⅴ.确认标准
A .性能范围
B .测试种类
C .预期的软件响应
D .特殊考虑
Ⅵ.参考书目
Ⅶ.附录