• 软件测试术语表
  • 首页

软件需求规格说明书



软件是根据客户提供的需求开发的。任何需求偏差都被视为软件中的缺陷。因此,在软件实施过程中,开发人员应格外小心,以确保软件是根据需求和规格开发的。

什么是软件需求规格说明书?

软件需求规格说明书描述了在目标环境中执行特定功能的软件的规格。它包含软件要实现的多个目标。它可以由客户或开发人员编写。

参与软件需求规格说明书的客户主要关注最终用户的需求和期望。编写软件需求规格说明书的开发人员则服务于多个目的,包括定义客户和开发人员之间的合同。

软件需求规格说明书的特点

软件需求规格说明书的特点如下:

1. 正确性

进行客户评审以在软件需求规格说明书中描述适当的需求。如果它包含软件应具有的每个需求,则被认为是理想的。

2. 完整性

在以下条件下,软件需求规格说明书被认为是完整的:

  • 应包含所有涵盖所有功能、设计、架构、性能参数、依赖关系、约束条件、属性、接口等的所有强制性需求。
  • 它还应包含软件对有效和无效输入数据集的响应。
  • 它应包含各种图形、图表、单位和术语的标签和描述。

3. 一致性

如果任何需求的任何子部分彼此之间不矛盾,则软件需求规格说明书被认为是一致的。软件需求规格说明书文档中出现的不同类型的冲突如下:

  • 现实实体的特定行为可能相互矛盾。例如,一个需求中可能将输出报告的格式定义为 pdf,但在另一个需求中可能将其定义为文档格式。一个条件可能描述所有输出都应为整数类型,而另一个需求则描述所有输出都应为 long 类型。
  • 两个特定活动之间可能存在合理的或暂时的冲突。例如,一个需求可能定义软件应每天处理付款,但另一个需求可能描述软件应每小时处理付款。一个条件可能叙述付款将在订单成功放置后处理,但另一个条件可能描述这两个活动都应共存。
  • 多个需求可能使用不同的术语来描述类似的现实实体。例如,用户输入在一个需求中可以称为警报,在另一个需求中可以称为对话框。

4. 无歧义性

如果每个需求都具有一致的解释和明确的描述,则软件需求规格说明书被认为是无歧义的。所有需求都应该清晰易懂。

5. 稳定性和重要性的排序

软件需求规格说明书中的每个需求都应根据其稳定性和重要性进行排序。并非所有需求都相同,对于某些需求,前提条件是强制性的,而对于其他需求则可能并非如此。所有这些因素都应明确地描述。其他因素包括需求、不错、可选的需求类别。

6. 可修改性

软件需求规格说明书中的所有需求都应该是可修改的,并且每个更改都应进行交叉引用和索引。

7. 可验证性

软件需求规格说明书中的所有需求都应通过广泛和定期的审查进行验证。

8. 可追溯性

软件需求规格说明书中的所有需求都应可追溯到每个需求的来源。它们还应参考将来发生的任何开发或增强。

9. 设计独立性

软件应该提供一个选项,从各种设计方案中选择一个用于软件的设计。软件需求规格说明书不应包含任何软件的实现细节。

10. 可测试性

软件需求规格说明书应该用简单的语言描述,以便能够轻松地从中生成测试计划和测试用例。

11. 易于理解

软件需求规格说明书的语言应该清晰易懂。它不应包含任何正式的符号和标记。

12. 抽象性

如果在需求分析阶段描述软件需求规格说明书,则应明确说明。

可追溯性类型

不同类型的可追溯性列示如下:

后向可追溯性

它取决于各个需求明确指向其来源。

前向可追溯性

它取决于软件需求规格说明书中的各个元素是否具有唯一的编号或名称。它主要对维护和操作阶段至关重要。由于代码和设计会发生变化,因此应确保这些更改与新的需求保持一致。

软件需求规格说明书的特性

软件需求规格说明书的特性列示如下:

  • 软件需求规格说明书文档应简洁、清晰、统一且完整。不必要和冗余的描述会降低其可读性,并使其更容易出错。
  • 软件需求规格说明书文档应遵循系统化的方式。它会经历各种修改以满足所有客户的需求。此外,由于其结构化格式,软件需求规格说明书中的更改也易于合并。
  • 软件需求规格说明书文档应广泛涵盖软件的黑盒需求。这意味着它应该描述从各种输入集中生成的软件输出。它定义了软件的外部特性,而不涉及其内部实现细节。
  • 软件需求规格说明书文档应包含对软件中意外事件的响应。因此,它应该总结对极端情况的响应。
  • 软件需求规格说明书文档应包含所有正确的需求。

结论

这总结了我们关于软件需求规格说明书教程的全面概述。我们从描述什么是软件需求规格说明书、软件需求规格说明书的特征是什么、不同类型的可追溯性是什么以及软件需求规格说明书的特性是什么开始。这使您具备了对软件需求规格说明书的深入了解。明智的做法是不断练习您所学到的知识,并探索与软件测试相关的其他知识,以加深您的理解并拓宽您的视野。

广告