三 需求分析
1、需求分析的任务
2、需求分析的原则
3、需求分析的过程
4、需求分析方法
一 需求分析的任务
1、深入描述软件的功能和性能
2、确定软件设计的约束和软件同其它系统元素的接口细节
3、定义软件的其它有效性需求
二 需求分析原则
1、需要能够表达和理解问题的信息域和功能域
2、要给出系统的逻辑视图和物理视图
3、要能以层次化的方式对问题进行分解和不断细化(分解时可以横向分解和纵向分解,如下图)
三 需求分析的过程
1、问题识别(开发人员要深入现场)
2、分析与综合(逐步细化)
3、编制需求分析阶段的文档(软件需求、数据要求说明书,初步用户手册,确定开发实施计划)
4、需求分析评审(用户要求、文档资料、重要接口等是否符合要求)
如下图:
(圆圈:加工 矩形:原点、汇点 两下划横线:文档或数据库 箭头:流向)
四 需求分析方法
1、面向数据流的结构化分析方法(SA)(适用于数据处理类型软件的需求分析)
(1) 数据流图(DFD):以图形方式来表达系统的逻辑功能、数据在系统内部的逻辑流向和逻辑变换过程。具有抽象性、概括性、层次性。
(四种图形元素缺一不可)
(2)数据字典(DB):指对数据的数据项、数据结构、数据流、数据存储、处理逻辑等进行定义和描述,其目的是对数据流图中的各个元素做出详细的说明,是每个数据库的中心。
(3)结构化英语
(4)判定表(适用于数据流图的加工需要依赖于多个逻辑条件的取值)
(5)判定树
((3)、(4)、(5)均为表达加工逻辑的工具)
2、原型化方法
原型分类:探索性、实验性、进化型
原型使用策略:废弃策略、追加策略
3、常用动态分析方法
(1) 状态迁移图:圆表示系统状态;箭头表示从一种状态到另一种状态的迁移。如:
(2) Petri网: 圆表示位置;有向边表示转移。如: