📜  软件工程 |需求验证技术

📅  最后修改于: 2022-05-13 01:56:59.913000             🧑  作者: Mango

软件工程 |需求验证技术

需求验证是检查为开发定义的需求,定义客户真正想要的系统的过程。为了检查与需求相关的问题,我们执行需求验证。我们通常在开发的初始阶段使用需求验证来检查错误,因为在开发过程的后期检测到错误可能会增加过多的返工。

在需求验证过程中,我们执行不同类型的测试来检查软件需求规范(SRS)中提到的需求,这些检查包括:

  • 完整性检查
  • 一致性检查
  • 有效性检查
  • 现实主义检查
  • 歧义检查
  • 可验证性

需求验证的输出是问题列表和已检测问题的一致行动。问题列表表明在需求验证过程中检测到的问题。商定的措施列表说明了为解决检测到的问题而应采取的纠正措施。

有几种技术可以单独使用或与其他技术结合使用来检查整个或部分系统:

  1. 测试用例生成:
    SRS 文档中提到的需求应该是可测试的,所进行的测试揭示了需求中存在的错误。通常认为,如果测试比设计困难或不可能设计,这通常意味着该需求将难以实现,应该重新考虑。
  2. 原型制作:
    在这种验证技术中,系统的原型呈现在最终用户或客户面前,他们对呈现的模型进行试验并检查它是否满足他们的需要。这种类型的模型通常用于收集有关用户需求的反馈。
  3. 需求评论:
    在这种方法中,SRS 由包括承包商组织和客户方的人员在内的一组人员仔细审查,审查员系统地分析文档以检查错误和歧义。
  4. 自动一致性分析:
    此方法用于自动检测需求规范中的错误,例如不确定性、缺失案例、类型错误和循环定义。

    首先,需求以正式符号构建,然后使用 CASE 工具检查系统的不一致,识别所有不一致的报告并采取纠正措施。

  5. 演练:
    演练没有正式定义的过程,也不需要区分角色分配。
    • 尽早检查这个想法是否可行。
    • 获取他人的意见和建议。
    • 检查他人的同意并达成协议。