规范 - 需求分析文档
需求分析的方法
- 与客户交流
- 记录与客户交流结果
- 收集客户的各种相关资料
- 定义业务概念
- 系统的模块功能分析
- 系统角色分析
- 系统用例分析
产出物
- 客户会议记录
- 业务案例描述
- 客户的资料
- 需求分析文档
- 业务概念模型
- 模块功能描述
- 系统流程描述
- 系统角色描述
- 系统用例描述
术语
- 系统
系统就是要开发的产品 - 系统角色
角色可以是使用者,也可以是和系统进行业务交互的第三方系统
实践建议
-
尽量提供一个高质量的会议记录,并得到用户的确认
-
重点是:业务概念模型,模块功能设计和系统流程图
-
业务概念模型:
早期的时候,业务概念是来自客户现有业务的概念;随着设计工作的开展,慢慢会变成产品的概念模型。 -
系统角色和系统用例:可以没有
-
如果存在第三方系统,一定要加到系统角色中
-
系统用例:当一个功能的使用情况比较复杂的时候,需要定义用例。
用例的定义是让开发者理解所有在现实中可能存在的使用情况。
可以帮助开发者和维护者理解如何正确的开发这个功能,避免了功能复杂化。 -
在设计文档成熟的情况下,可以扔掉需求分析文档,直接使用设计文档。
规范说明
业务概念模型
- 列出客户现有业务的概念
- 定义概念:名称,别名,描述和概念包含的字段
- 建立概念之间的关系图
模块功能设计
- 采用层次化的模块设计,比如:系统\模块\子模块\功能
- 对模块和功能都有一个清晰的描述
系统流程图
- 可以采用时间线的方式,描述功能的协作关系
- 可以使用数据流的方式,描述功能的协作关系
系统角色
- 列出所有人类使用者的类型
- 列出所有和系统交互的第三方系统
- 每个角色,都定义了:角色名,描述和职责
系统用例
- 系统用例的描述
- 用例名
- 交互步骤
- 异常处理