目录
1.需求的分类
2.需求的获取
3.结构化需求分析
1.功能模型
2.数据模型
3.行为模型
4.数据字典
1.需求的分类
需求可以分为业务需求,用户需求,系统需求
- 业务需求:从业务角度的宏观需求,对系统的想法。
- 用户需求:系统相关人员从自身角度分析,系统应该满足的功能
- 系统需求:用户需求转化成系统层面能指导软件开发的需求。系统需求又分为功能需求,性能需求,设计约束,设计约束是非功能非性能需求,例如系统应该用mysql数据库等需求。
从QFD需求可以分为基本需求,期望需求,兴奋需求。
2.需求的获取
- 现场观摩,复杂的系统我们可以去现场观摩观摩
- 参加业务实践,复杂的流程我们可以参加业务实践,感受一下
- 收集资料,了解企业的现状情况
- 联合需求计划,把各方人员组织起来开会讨论已收集的需求,达成一致。
- 用户访谈,对核心角色进行访谈聊聊对系统的想法,访谈步骤分为,准备访谈,确定访谈目标,记录访问结果
- 问卷调查,用问卷的形式收集需求。
- 情节串联版,在收集需求的过程中以故事的形式描述需求。
- 阅读历史文档,翻看以前的文档,例如,用户很难把以前的数据方面的需求说清楚
3.结构化需求分析
结构化需求分析分为发现需求,求精,建模,规格说明, 复审。
建模分为功能模型,数据模型,行为模型,经常用到的有功能模型和数据模型,模型的核心是数据字典
1.功能模型
功能模型,典型的工具是数据流图(DFD),数据流图描述系统逻辑模型,标识了系统的输入输出。
有4个部件,数据流,加工,数据存储,外部实体
- 数据流就是数据流向
- 加工就是数据处理部件
- 数据存储就是数据存储部件,例如数据库中的表
- 外部实体是既不是系统但又与系统有关系的实体
2.数据模型
数据模型,典型工具ER图,描述数据对象间的关系。其分为1对1关系,1对多关系,多对1关系等。矩形框代表实体,菱形代表联系,用于分析数据
3.行为模型
行为模型,典型工具状态图,描述系统状态和不同状态间转换方式。
描述软件使用和产生的所有数据对象