什么是需求验证:定义、流程和工具
需求验证是检查需求是否为开发定义的过程,以及定义客户真正想要的系统的过程。 为了检查与需求相关的问题,我们执行需求验证。 需求验证通常帮助我们在产品开发的早期阶段发现错误,以便在软件开发生命周期的后期发现时不会导致过多的返工。
什么是需求验证?
验证是用于检查系统是否达到标准的过程。 验证回答了“我们是否在构建正确的系统?”这个问题。 它是关于测试和验证系统,看看我们构建的系统是否正确,以及它是否满足客户的期望。 用于验证系统的各种方法包括黑盒测试、白盒测试、集成测试和单元测试。 验证总是在验证之后进行。 我们通常在初始开发阶段使用需求验证来检查错误,因为在开发过程的后期检测到错误可能会增加过多的返工。 需求验证很重要,因为它可以帮助我们验证需求是否符合理想的规则和标准。
验证是用于检查系统是否实现其预期目标而没有任何错误或问题的过程。 验证回答了这个问题,“我们是否在构建产品?” 它是关于测试和验证系统是否满足其要求而没有任何问题。 用于验证系统的各种方法包括审查、走查、检查和案头检查。 验证是在验证之前完成的手动过程。
验证与验证:
人们经常混淆验证和确认。 实际上,它们并不相同。
根据第四版项目管理知识体系,
简而言之,需求验证是确认系统需求包含精心编写的需求的所有必要元素的过程。 需求验证是确认系统符合预期目标和功能的过程。 验证的重点是检查需求是否完整、正确和一致,而验证的重点是检查系统是否符合预期的目标和功能。
为什么验证很重要?
验证需求有助于检查与以前的需求工程活动中指定的需求相关的问题。 通常,验证用于识别开发周期初始阶段的任何错误。 如果没有及时发现这些错误,它们可能会过度增加工作量。 验证通过减少收集到的需求中的任何缺陷来确保数据的准确性和清晰度。 如果没有验证,数据不准确的风险很高,这会导致结果不准确。 此外,验证需求的主要优点是它降低了维护成本。 强大的基础可确保稳健的项目结构并减少失败和拒绝的机会。
何时验证?
“需求验证是一个持续的过程,以确保利益相关者、解决方案和过渡需求与业务需求保持一致” – BABok
我们必须在需求工程的每个阶段执行验证。 在获取过程中,回过头来交叉检查需求以及收集需求的来源。 在分析和谈判过程中,验证最终的需求文档,看看我们是否得到了正确有效的需求。 在规范过程中,交叉检查文档中指定的需求是否符合用户的需要或期望。 此外,我们验证要求是否符合理想的规则和标准。
验证技术:
有多种技术可用于验证需求。 他们包括:
支票 – 在检查需求时,我们会校对需求文档,以确保没有遗漏任何启发注释。 在这些检查期间,我们还会检查所有需求之间的可追溯性级别。 为此,需要创建可追溯性矩阵。 该矩阵确保所有要求都得到认真考虑,并且指定的所有内容都是合理的。 在这些检查期间,我们还会检查要求的格式。 我们看看要求是否清晰且写得好。
模型 – 这是一种构建模型或模拟由开发人员构建的系统的方法。 这是利益相关者和用户之间非常流行的需求验证技术,因为它可以帮助他们轻松识别问题。 我们可以联系用户和利益相关者并获得他们的反馈。
测试设计 – 在测试设计过程中,我们遵循一个小程序,首先确定测试团队,然后构建一些测试场景。 功能测试可以从需求规范本身派生出来,其中每个需求都有一个关联的测试。 相反,非功能性需求很难测试,因为每个测试都必须追溯到它的需求。 这样做的目的是找出规范中的错误或遗漏的细节。
需求审查 – 在需求审查期间,一群知识渊博的人以结构化和详细的方式分析需求并识别潜在问题。 之后,他们聚在一起讨论问题并找出解决问题的方法。 准备了一份由各种标准组成的清单,并且审查者选中这些框以提供正式审查。 之后,完成最终批准签字。
需求验证的原则:
考虑以下六个需求验证原则可以提高验证结果的质量:
原则1: 正确的利益相关者的参与
原则2: 分离识别和纠正错误
原则3: 从不同的角度进行验证
原则4: 充分改变文件类型
原则5: 开发工件的构建
原则6: 反复验证。
需求验证的先决条件:
需求验证输出:
CIO之家 www.ciozj.com 公众号:imciow