UML面向对象需求分析与建模(二)
一个软件要做的内容从何而来?——需要一个对系统应该提供的服务和所受到的约束进行理解、分析、建立文档、检验的过程——需求工程
软件需求的内容
功能需求:对系统应该提供的功能及特定环境下的行为描述
领域需求:由软件系统的应用领域所决定的特有的功能需求
需求工程的基本活动
获取需求:深入实际,在充分理解用户需求的基础上,获取系统需求
需求分析与建模:进行需求建模、对模型或原型进行分析
确认需求:确保需求说明准确、完整地表达系统的主要特性
进化需求:客户的需要总是不断(连续)增长的 ,进化需求是必要的。
以大学图书管理系统为例的需求获取:
功能需求
- 基本数据维护功能(读者及图书信息的录入、删除、更新)
- 基本业务功能(借书、还书、预留书等)
- 数据库管理功能
- 信息查询功能
非功能需求:
- 系统安全性需求(用户权限设置等)
- 对系统可用性的需求
- 对系统查询速度的需求
- 对系统可靠性的需求
领域需求:
与图书管理业务相关的需求。(如符合相关法律法规)
需求分析及建模
需求分析和建模又包含三个层次的工作:
1、需求分析
2、需求建模(分为企业建模、功能需求建模和非功能需求建模等)
3、需求规格说明—不同的描述方式
SA法的描述方法
1、分层的数据流图(DFD图)
2、数据词典
3、描述加工逻辑的结构化语言、判定表及判定树
面向对象的分析方法(OOA):
“基于用例的方法”来识别和获取需求,是从外部的角度来看系统功能,描述外部执行者(Actor)所理解的系统功能。即待开发系统的功能需求。