一、需求跟踪的基本概念
需求跟踪是将单个需求和其他系统元素之间的依赖关系和逻辑联系建立跟踪,这些元素包括各种类型的需求、业务规则、系统架构和其他设计组件、源代码模块、测试用例等。
需求跟踪涉及5种类型的跟踪链:从用户原始需求向前跟踪到软件需求,从软件需求向前跟踪到下游工作产品;从下游工作产品向后回溯到软件需求,从软件需求向后回溯到用户原始需求;以及软件需求到软件需求的跟踪。
需求跟踪的收益体现在以下六个方面:
审核:跟踪能力信息可帮助审核确保所有需求被应用。
变更影响分析:跟踪能力信息在增、删、改需求时可以确保不忽略每个受到影响的系统元素。
维护:可靠的跟踪能力信息使得维护时能够正确、完整地实施变更,从而提高生产率。
项目跟踪:认真记录跟踪能力数据,可以获得计划功能当前实现状态的记录。
再设计:可以列出传统系统中将要替换的功能,记录它们在新系统的需求和软件组件中的位置。
重复利用、减少风险、测试。
- 用户需求到软件需求的跟踪
这类跟踪的工作量规模中等,对于项目管理的好处很明显,建议有时间尽量实现此类跟踪。
目的:保证所有的用户原始需求都得到满足。
好处:1)开发人员在实现时能够精确地定位到相关的原始需求;2)可以为软件需求是否必要提供第一手的证据;3)容易找到需求之间的矛盾和歧义。
具体手段:将一句话表示的用户原始需求直接归并到软件需求的组织单元“用例”中。
- 软件需求到软件需求的跟踪
这类跟踪的工作量规模较小,对于需求管理的好处十分明显,此类跟踪是最应该建立的。
主要内容:包括1)项目目标、Stakeholder关注点到软件需求的跟踪;2)相关软件需求之间的跟踪。
目的:确保项目目标、Stakeholder关注点被实现。
好处:1)更好地理解软件需求的实现意义;2)更好地处理软件需求之间的逻辑相关性。
具体手段:为项目目标、Stakeholder关注点创建唯一编号,通过表格或链接法实现跟踪。
- 软件需求到下游工作产品的跟踪
软件需求到下游工作产品(系统架构和其他设计组件、源代码模块、测试用例以及帮助文件等)的跟踪,这类跟踪对于变更管理的好处十分明显,但工作量规模巨大,此类跟踪应该慎用。
目的:维护软件需求与设计元素、测试元素之间的关联关系。
好处:1)在针对变更的技术影响分析时,能够得到更加精确的评估结果;2)可以更好地隔离变更的影响。
具体手段:手动更新或者通过配置管理软件来实现更新。
二、需求跟踪的操作方法
要对需求进行跟踪,必须对每个需求定义一个唯一的标识,并且要以前后统一的方式进行标识,这样才能够保证在整个项目中没有歧义地引用它。在实际的需求跟踪过程中,主要有表格法和链表法两种策略;
注:需求管理工具Rational Requisite pro采用的就是表格法,Telelogic DOORS采用的就是链表法。
相关阅读:
wend huo:1.软件需求最佳实践笔记 | 需求框架
wend huo:2.软件需求最佳实践笔记 | 需求实践现状
wend huo:3.软件需求最佳实践笔记 | 需求视图
wend huo:4.软件需求最佳实践笔记 | 软件需求与需求工程
wend huo:5.软件需求最佳实践笔记 | 需求定义
wend huo:6.软件需求最佳实践笔记 | 需求捕获
wend huo:7.软件需求最佳实践笔记 | 需求分析与建模(一)
wend huo:8.软件需求最佳实践笔记 | 需求分析与建模(二)
wend huo:9.软件需求最佳实践笔记 | 需求分析与建模(三)
wend huo:10.软件需求最佳实践笔记 | 需求描述
wend huo:11.软件需求最佳实践笔记 | 需求验证
wend huo:12.软件需求最佳实践笔记 | 需求基线
wend huo:13.软件需求最佳实践笔记 | 需求变更
wend huo:15.软件需求最佳实践笔记 | 总结