软件工程分析方法的一套框架
结构化设计方法的概念
① 软件开发方法学
软件开发过程所遵循的办法和步骤。
软件开发方法学指的是规则、方法和工具的集成。
② 结构化方法的组成
一套系统化的软件开发方法,包括结构化分析方法,结构化设计方法,结构化程序设计方法。
③ 结构化分析
系统使用问题域术语,给出问题模型。(系统做什么的一个估算)
- 需求分析的目标 2.实现软件需求分析的目标对方法学的需求
1)提供一组术语
2)给出模型表达工具
3)给出过程指导
结构化分析模型
基本术语
数据流:数据的流动,箭头表示流向。数据抽象
加工:对数据进行变换的单元,椭圆。功能支持过程抽象
数据存储:数据的静态结构,双线。数据抽象
数据源:数据的起点,系统之外的实体,长方框。系统边界抽象
数据潭:数据流的终点,系统之外的实体,同上。同上
模型表达工具(在数据库里用过)
1)数据流图:描述系统功能
2)数据字典:定义数据流与数据存储
= :等价于(定义为)+ :与(顺序结构){}:重复(循环结构)|||:或(选择结构)():任选 m..n:界域
3)加工小说明:描述加工做什么,就是加工逻辑,可以用结构化自然语言描述,判定表,判定树也可以。
结构化分析过程
过程指导
1.1 顶层数据流图
1.2 自顶向下,逐层分解:对父图元素分解细化(功能分解)
2 建立数据字典:数据流图里的数据流和数据存储
3 写出加工小说明:数据流图的加工
需要注意的问题:不是每个加工都需要在加工小说明里写上,数据流与数据存储需要每一个都进行说明,加工的输入流与输出流都应该说清楚,图元个数应该是 5 到 9 个
需求规格说明书
- 引言
1.1 编写目的
1.2 背景说明
1)软件产品的名称
2)产品的提出者,开发者,用户
3)产品将做什么,不做什么
1.3 术语定义
1.4 参考文献 - 概述
2.1 功能概述
2.2 约束 - 数据流图与数据字典还有加工说明
3.1 数据流图
3.1.1 数据流图 1
1)画图
2)加工说明
3)数据流说明
3.1.2 数据流图 2
3.2 数据字典
3.2.1 文件说明
3.2.2 数据项说明 - 接口
4.1 用户接口
4.2 硬件接口
4.3 软件接口 - 性能需求
5.1 精度(数据的)
5.2 时间特征(各个过程的时间耗费)
5.3 灵活性(环境变化时能否进行调整与适应) - 属性
6.1 可使用性
6.2 保密性
6.3 可维护性
6.4 可移植性 - 其他需求的补充