软件需求与测试:可追溯性与非功能性需求解析
1. 需求与测试的可追溯性
在软件开发过程中,确保系统满足需求是至关重要的。而需求与测试的可追溯性则是实现这一目标的关键环节。
1.1 可追溯性概述
可追溯性的核心在于设计中不同抽象层次的各个部分之间应具有明确的关系。具体来说,设计包中每个文档的每个元素都应与其他文档中的元素相互映射。例如,“当按下按钮时,灯应亮起”这一需求,可能会追溯到系统具有按钮和灯这两个架构元素,同时也会对应一个系统测试:按下按钮,若灯亮起则测试通过。
可追溯性还可在更细的层面发生。上述开灯需求可能会追溯到读取按钮的 I/O 例程、打开灯的 I/O 例程,以及一个用于检测按钮按下并过渡到“灯亮”状态的状态机。
可追溯性分为正向可追溯性和反向可追溯性。正向可追溯性指设计包中的某个元素促使另一个元素产生。例如,开灯需求正向追溯到一个测试,以验证灯是否真的亮起。完美的正向可追溯性意味着设计过程中高级或早期部分的所有内容都能追溯到后续阶段的一个或多个内容。反向可追溯性则表示每个创建的元素都有其存在的原因,并能追溯到这个原因。例如,验证灯是否亮起的测试应反向追溯到开灯的需求。完美的反向可追溯性意味着没有无原因存在的元素。
1.2 需求到测试的可追溯性
一个设计良好的系统应在整个设计包中同时具备正向和反向可追溯性。其中,最重要的是确保每个需求都有一个或多个对应的系统验收测试。系统验收测试用于确定整个系统是否正常工作。在实际可行的情况下,应实现从需求到测试的 100% 正向可追溯性。不过,对于“测试”这个词可以适当灵活理解,因为有些属性需要通过设计评审或其他非严格意义上的测试方法来验证,更准
超级会员免费看
订阅专栏 解锁全文
291

被折叠的 条评论
为什么被折叠?



