需求覆盖率分析

需求覆盖率的分析,是检查建模工作是否完成、模型是否完整的重要工作。我们知道,整个系统的模型都是由需求推演出来的。所以,需求元素是否和其它元素已经建立完整的关系,是判定模型是否完整的重要依据。具体模型是否完整的规则,还有根据应用的方法论及企业规定的建模规则来定。

添加表格

在模型浏览器上,选择“包”或“需求”元素,通过右键菜单“添加”--“新建需求表格”—“需求覆盖率分析表格”。然后,在分析选择窗口中选择“分析方法”、“范围”和“统计模式”。按“确定”键后,开始统计分析,分析结果以一个实例定义元素的形式,列出在分析表格中。这些选项的意义解释如下:

分析方法:有四种关系可以选择。可以选择一种或多种关系,每种关系会统计一组结果。这四种分析方法的详细说明如下:

需求导出分析:统计每个需求元素是否有导出需求关系(derivedRequirement关系,作为导出需求关系的客户端,既开始端)。导出需求关系表示客户端需求是根据提供端需求(有箭头的端)而来的(请注意:导出需求关系的原始英文“derivedRequirement”意义是“由...得到的需求”,或“源于..的需求”)。在“OOSEM”方法中,“系统需求”建立到“利益相关者需求”的导出需求关系,意义是“系统需求”是从“利益相关者需求”得到的。在这里的需求导出分析,是分析是否所有的“系统需求”都是由“利益相关者需求”导出过来的,验证“系统需求”是否都有来源、可以追踪到最初的“利益相关者需求”。

需求改善分析:统计每个需求是否有被改善关系(RefinedBy),既需求作为“改善”关系的提供端(末端)元素。

需求满足分析:统计每个需求是否有被满足关系(SatisfiedBy),既需求作为“满足”关系的提供端(末端)元素。

需求验证分析:统计每个需求是否有被验证关系(VerifiedBy),既需求作为“验证”关系的提供端(末端)元素。

范围:选择一个统计元素的范围。以选择的元素为开始节点的一个模型子树。

统计模式:有两种模式。

按组:每个需求元素按包含关系,作为一个“组”来判断。例如,一个需求的子需求都被满足了,则这个父需求也算是被满足了。如果这个父需求被满足了,则所有子需求也都算满足了。但如果子需求部分被满足,父需求没有自己的满足的关系的话,认为是不被满足。

单独:每个需求元素都直接统计自己的关系,不考虑需求包含关系。

 

表格中的操作

需求覆盖率分析完成后,表格中会生成一个分析结果数据。结果如下图所示:

表格中的记录是一个实例,类型是模型库中的需求分析模块。表格中“需求总数”是统计范围内所有需求元素的总数量。“需求导出率”、“需求改善率”、“需求满足率”、“需求验证率”分别是对应列的需求数量占需求总数的百分比。

视图中的工具栏功能说明如下:

添加:添加新的分析记录,每个分析记录可以设置不同的分析条件。

图片 248删除:删除选中的分析记录;

图片 247选择模型浏览器对应节点:在模型浏览器上定位选择的分析记录元素;分析记录是一个实例,这个实例元素的父元素是分析表格对应的元素。

图片 267打印:打印表格内容;

Picture 27导出Excel:表格内容导出为Excel文件;

图片 244导出Word:表格内容导出为word文件;

选择分析记录,右键菜单的说明如下:

Picture 26重新计算:重新计算选择的分析记录;

Picture 25快速计算:会复制一个选择的分析记录进行计算,计算的统计日期用当前时间;

显示未覆盖的需求:根据子菜单,显示没有相应关系的需求记录。显示结果如下图:

在这个列表中,选择记录,右键菜单,可以“打开元素定义图形”、“选择模型浏览器对应节点”。

快速设置需求和其它元素的关系,建议通过建立矩阵表格的方式,请参考“矩阵表格”一节。