需求建模语言入门
RML是什么:
RML: Requirements Modeling Language
- RML 是建立需求视觉模型而设计的语言,便于企业管理、业务、技术等项目干系人使用
- RML专门为软件模型而设计
- RML通过视觉模型使需求描述更直观、更易于理解
- 帮组发现缺失信息,并给出上下文细节
为什么不用UML:
- 不满足需求建模的全部要求,缺少有关需求和业务价值的模型,缺少从最终用户角度展示系统结构的模型。
- 侧重于软件系统架构,技术上过于复杂,难以掌握
一个层面的需求是对另外一个层面的设计
需求定义
需求是企业需要在解决方案中实现的。
需求包含:
- 功能性需求
- 非功能性需求
- 业务规则
- 甚至一些设计

模型分类
目标、人员、系统和数据模型
软件的目的:处理数据。
数据进入系统,得到处理,然后退出系统。
RML把模型按照 目标、人员、系统和数据(OPSD)进行分组。

绑定模型
每一类RML都有一个绑定模型,完全有可能捕获用于创建该模型的所有信息。
一旦模型的信息完整,那么就表明可以界定分析范围。
使用绑定模型可以帮助界定分析范围,创建全面信息的基础。
四种类型都需要
大多数解决方案都需要四种模型类型。
从不同视角分析解决方案,核心价值在于确保从所有角度验证解决方案。
目标模型
目标模型描述了系统的业务价值,并根据系统的价值设置功能和需求的优先级。
业务目标模型是RML目标类别的绑定模型。
人员模型
人员模型描述了系统的干系人、他们的业务流程和目的。
组织结构图是RML人员类型的绑定模型。
系统模型
系统模型描述存在什么系统,用户界面是什么样子,怎么与系统互动,系统如何表现。
生态系统图是RML系统类型的绑定模型。
数据模型
数据模型描述从最终用户的角度看待业务数据对象之间的关系,包括数据的生命周期以及如何在报告中利用数据来做决定。
业务数据图是RML数据类型的绑定模型。
参考
- 《软件需求与可视化模型》第一部分 — Joy Beatty && Anthony Chen