如果你拿着洋洋几千几万字的需求文档去和用户、开发人员讨论需求,大家都会觉得非常累,而且效果也不好。 因为文字有歧义,同一个词语不同的人可能会有不同的理解。 这时候,如果有一个表述需求的模型出现,会消除很多歧义,大家也容易理解,需求分析的进程也会加快不少。 所谓“一图胜千言”! 所以,需求分析过程应当在模型的基础上进行,需求文档只是建立好模型之后按照一定的格式输出的文本而已,它只是需求结果的记录,方便对需求的签字确认而已。 基于模型驱动的需求分析过程大致是这样的一个过程: 首先,需求开发人员向用户收集需求,建立反映用户物理世界需求的业务模型;然后,再将业务模型映射成描述软件逻辑的分析模型,同时,辅以描述以界面为主的展示模型和描述质量需求的质量模型,对软件需求进行完整的描述。 基于模型驱动的需求分析过程涉及到4种模型,分别是业务模型、分析模型、展示模型和质量模型。
业务模型是对客户业务系统的客观表现,用业务语言表述。 建立业务模型主要是通过梳理软件系统应完成的主要业务、参与人、数据等信息,给出主要业务流程环节。
分析模型是结合信息系统的特征对业务模型进行抽象,主要表现为人与信息系统的关系以及信息系统内部的关系。 建立分析模型主要是完成需求的优先级分析、系统状态转换分析、业务实体数据分析,最终给出各个业务实体的用例实现。
展示模型是人机交互的实际界面以及具体操作的表达。 建立展示模型主要是通过Visio等建模工具,给出界面原型,包括界面布局、内容、提示信息、跳转说明等。
质量模型是整理补货阶段的非功能性需求,结合软硬件配置针对各业务内容进行检查。 建立质量模型主要是根据对软件运行环境、设计约束、数据处理以及接口的分析,给出性能、可靠性、安全性、保密性等非功能性需求的描述。 基于模型驱动的需求分析过程就是通过建立业务模型、分析模型、展示模型和质量模型更为直观、完整、清楚地描述用户需求和软件需求来完成需求分析工作的。 这正是: 需求开发用模型,事半功倍需求成 远胜文档表达意,需求变更少几重 参考书目:软件需求开发最佳实践——基于模型驱动的需求开发过程,作者:于向东 张森 徐竹青,出版社:清华大学出版社 |
|