概念:可跟踪性
可跟踪性是从一个项目元素跟踪到其他相关项目元素的能力,尤其是那些与需求相关的项目元素。
关系
主要描述

简介

可跟踪性是从一个项目元素跟踪到其他相关项目元素的能力,尤其是那些与需求相关的项目元素。可跟踪性中涉及的项目元素称为可跟踪性项。典型的可跟踪性项包含不同的需求类型、分析与设计模型元素、测试工作产品以及最终用户支持文档和培训资料,如下图所示。

软件需求规范 可跟踪性项 测试套件 设计模型 补充规范 用例模型 远景 项目干系人请求 附带文本中描述的图。

可跟踪性层次结构。

每个可跟踪性项都有其独特的一组关联属性(请参阅:需求属性),这对于跟踪与每个可跟踪性项相关联的状态、收益、风险等很有用。

可跟踪性的目的

建立可跟踪性的目的在于帮助:

  • 了解需求的来源
  • 管理项目的范围
  • 管理对需求的更改
  • 评估需求的变更对项目的影响
  • 评估需求测试失败带来的影响(即,测试失败可能意味着无法满足需求)
  • 验证系统的所有需求是否都由实施得到满足。
  • 验证是否应用程序仅进行预定的操作。

可跟踪性帮助您理解和管理需求的输入(如业务规则和项目干系人请求)如何转换成一组关键的项目干系人/用户需要和系统特性,如远景文档中所指定。接下来,用例模型概述这些特性如何转换成系统的功能。在用例中获取了系统如何与外界交互的详细信息,在补充规范中获取了其他重要需求,如非功能需求和设计约束。可跟踪性还允许您跟踪这些详细规范如何转换成设计、如何测试该设计以及如何为用户记载该设计。对于大型系统,用例补充规范可封装在一起,来为特定的“特性”或其他子系统分组定义软件需求规范(SRS)

有助于管理需求变更的关键概念是关于“可疑”可跟踪性链接的概念。当某个需求(或其他可跟踪性项)在可跟踪性链接的任一端发生变化时,与该需求相关联的所有链接都标记为“可疑”。这标志着负责的角色要复审该变更并确定相关联的项是否也需要变更。此概念还有助于分析潜在变更的影响。

可跟踪性可以设置为帮助回答以下一组查询样本:

  • 显示不与产品特性相链接的用户需要。
  • 显示有关第 #n 次迭代中所有用例的测试状态。
  • 显示那些状态未得到测试的与测试相链接的所有补充需求。
  • 按重要程度的顺序,显示所有失败测试的结果。
  • 显示安排在此发行版中的特性、这些特性所满足的用户需要以及这些特性的状态。

示例:

对于“回收机器”系统,“远景”文档指定以下特性:

  • FEAT10:回收机器将允许添加新的瓶子类型。

从此特性可跟踪到用例“添加新的瓶子类型”:

  • 用例“添加新的瓶子类型”使操作员可以训练回收机器识别新类型的瓶子。

此可跟踪性帮助我们验证是否在用例和补充规范中已说明了所有特性。

一般可跟踪性

最重要的可跟踪性项是:

用户/项目干系人需要(来自远景,可以进一步跟踪到个别的项目干系人请求
产品特性(从远景中)。 
补充需求(从补充规范中)。 
用例
用例部分(某个详细用例的部分)。
设计元素(来自设计模型)。
测试套件(或者可能是测试用例)。

其他元素(如业务规则和问题)也可用于跟踪。

下图中显示了一般可跟踪性:

附带文本中描述的图。

此图仅显示需求的可跟踪性。可能还存在其他可跟踪性,但未显示在此图上:从设计元素跟踪至实施元素的过程中,存在用于设计和实施的测试用例等。