在当今的世界里,成功的组织都将其创新和复杂产品开发流程建立在跨多个工作流的互联数据上。为此,他们需要收集利益相关者的想法以构建系统架构,管理高级需求以创建详细的用户故事,并实施验证程序以检查问题。同时,在满足标准规定并在当前的市场环境中保持竞争力的过程中,与各利益相关者的协作需要深度的追踪。
许多行业标准都要求有需求追踪性,以保证产品的质量和安全性。这些行业标准是基于在系统和质量工程研究中取得的数十年的进步,而需求追踪性是其核心内容。只有把追踪性作为产品开发过程中的一个工具,我们才能享受到需求追踪性的优点。
这样做带来了很多明显的好处:显著减少或避免项目延期、系统缺陷、成本超支以及返工等。本文将概述建立需求可追溯性的一些最佳实践。
实时可追溯性对比事后可追溯性
首先,让我们确定一些概念,确保我们的理解是一致的。需求追踪性是指从需求定义和设计到开发、测试以及验证,对产品需求的开发进程进行跟踪的能力。需求追踪性有两种形式:事后追踪性和实时追踪性。
什么是传统的,事后的可追溯性?
事后的可追溯性发生在产品开发完成之后,这通常是一种高度手动的努力,试图重新构建工作产品,以便展示在开发过程中应该发生但却没有发生的可追溯性。这项工作是为了符合行业标准,并满足审计员对过程成熟度展示的要求。
什么是实时可追溯性?
PingCode 定义实时可追溯性为在系统开发的任何阶段,不论涉及到多少独立的工具和团队,都能获取任何需求最新、最全面的上游和下游信息的能力。
这使得工程和产品管理过程可以基于数据进行管理,以实时提升性能。
实时可追溯性在产品开发过程中实时发生,旨在提升整体生产力(通过确保各专业领域的工程师始终使用最新和正确的版本),并降低由于问题被发现得太晚而产生的不良产品结果(例如延期、缺陷、返工、超预算和召回等)的风险。
早期发现问题的好处是显著的。INCOSE的研究发现,如果在设计过程中而不是在验证和确认过程中发现问题,其成本可能会高出40到110倍。因此,大多数公司都希望实现实时可追溯性,但他们常常被旧有的工具和电子表格所困扰,这些工具和电子表格并不支持实时可追溯性。由于每个工程学科都可以选择自己的工具,导致大量的工具之间没有关联性规则或机制来实现实时的可追溯性。
为什么实时可追溯性很重要?
产品工程组织面临的首要问题是需要遵循跨独立团队和工具的可追溯性要求。组织通常被跨多个电子表格进行高度手动和耗时的信息审查所困扰。
实时可追溯性的实现
你可以通过在工具链中的实时可追溯性,并且让这种持续的同步尽可能简单,比如:PingCode、Jama 等工具之间实现实时的可追溯性,通过直观的点击操作就可以实现。
整合工具之间的实现实时可追溯性主要好处包括:
- 保持与市场和用户需求的一致性:将上游的规划、需求和测试计划整合到迭代开发过程中,确保你构建的内容能满足市场、合规性和用户的需求。
- 保持对下游开发的可见性:准确捕获和沟通需求、目标、进度和相互依赖性,以在整个开发过程中消除摩擦。
- 消除由于不对齐而产生的后期返工和质量差距:捕获需求并保持对你正在构建的内容的共识。确保每个人都在使用最新的规格工作,以便产品/系统最终能够实现其预期的价值。
- 支持正式的变更管理过程:识别产品需求变更的变更影响含义和受影响的所有者,以便开发团队在需求演变时做出明智的决定。
如何实现实时追踪性?
步骤1:定义追踪模型
实时可追溯性需要一个模型,该模型定义了在开发过程中需要监控的关键过程元素和它们的关系规则。系统工程的V模型是一个有用的框架,用于定义数据对象和它们的关系。PingCode提供了一个点击式的、可配置的关系规则功能,来实现实时可追溯性。
步骤2:实现不同工具之间的数据同步
一旦定义了关系规则,下一步就是与各种工程学科使用的最佳工具和电子表格设置连续同步。以下的图展示了一站式工具示例,以及外部工具在PingCode关系模型中同步的位置,以实现实时追踪。
在这个示例中,显示了对追踪至关重要的最佳工具。当然,也支持其他竞争性的替代方案。
大多数公司优先考虑追踪模型的那些区域,这些区域在没有持续同步的情况下最容易导致昂贵的问题。最常见的这些区域是:
- 软件任务管理:直接将需求分解为用户故事,使得能够通过测试和缺陷管理在软件开发过程中实现实时追踪。最常用的最佳工具是PingCode
- 测试自动化:测试用例在 PingCode 中管理,以便与需求对齐,并确保跨所有工程学科的追踪,测试自动化结果在验证步骤中同步到追踪模型。最常见的测试自动化工具是TestRail和qTest。
- …
步骤3:监测异常
实时追踪性首次提供了一种能力,可以通过例外情况管理整个产品开发过程,跨越所有工程学科。追踪模型定义了预期的过程行为,可以与实际活动进行比较,从而产生异常。这些异常是早期警告指标,它们最常导致延迟、成本超支、返工、缺陷和召回。