测试软件要求规范 (SRS)


软件中的大多数错误都是由于不完整或不准确的功能要求造成的。软件代码,无论它写得有多好,如果需求中存在歧义,就无法做任何有目的的事情。

在完成开发或产品发布后修复 Bug 的成本太高。因此,最好进行需求分析并捕获需求歧义并尽早修复它们

开发生命周期。

如何在设计阶段测量和冻结需求?

我们需要定义一些标准测试来衡量需求。一旦每个要求都通过这些测试,您就可以评估和冻结功能要求。

下面是一个度量要求的示例。假设您正在处理一个基于 Web 的应用程序,并且要求如下:

“Web 应用程序应尽早响应用户查询”

在这种情况下,您将如何冻结要求?

您的需求满足标准是什么?要获得答案,请向以下人员提出此问题

利益相关者:多长时间的响应时间对您来说是可以的?如果答案是,我们将在2秒内接受响应,那么这是您的需求基准。冻结此要求,并对下一个要求执行相同的过程。

现在让我们再举一个例子。对于我们公司的一个项目,我们从客户那里获得了应用程序第一阶段的SRS文档。当我们讨论这些需求时,团队中的每个人都对需求有自己的理解。我们很快意识到本文档中存在很多歧义。我们决定在编写测试用例或开始设计阶段之前先修复这些歧义。所有模棱两可的要求都与问题列表一起发送给客户,以澄清这些问题。后来每个人都了解了整个项目的范围,我们很清楚要开始项目设计和编写测试用例。

需求应该是清晰和一致的 - 在开始编写测试用例之前,确保整个项目范围和要求对每个人都是清楚的。

通常,我们使用自己的方法来发现未指定的需求。当我们阅读 SRS 文档时,除了 SRS 文档应该涵盖的其他要求之外,我们还记下了自己对指定要求的理解。这有助于我们提出正确的要求

有关未指定要求的问题。

测试需求规范的下一个标准是-“发现缺少的需求”。有时,SRS 编写器只是假定一些要求。但需求不应基于假设。要求应明确而完整,涵盖要开发的系统的每个方面。需求规范应该提到这两种类型的需求,即系统应该做什么,不应该做什么。

为了检查需求的完整性,将需求分为三个部分,“必须

实现“需求,这些需求没有指定,而是”假设“的,第三种类型是”想象“类型的需求。在设计阶段之前检查是否解决了所有需求类型。

检查需求是否与项目目标相关 - 有时,SRS 编写者对应用程序后续阶段的功能有自己的看法。为此,他们可能会介绍一些

应用程序当前阶段的需求,他们可能只想实现,但在后面的部分完成之前不会使用。我们需要仔细了解这些要求。如果您认为任何要求与正在开发的当前阶段的范围无关,则可以询问有关该要求的目的的问题。然后,这将详细描述特定要求,以便更轻松地设计和测试应用程序,考虑未来的范围。

如何确定要求是否相关?

使用这个简单的方法 - 设置项目目标并提出以下问题:如果我们不实现此要求,是否会在实现我们的特定目标时造成任何问题?如果不是,那么这是一个无关紧要的要求。了解这些要求对项目经理很有用。他们可以要求客户在紧迫的期限内更改这些要求。

需求规范文档应解决以下问题:

  • 项目功能(应该做什么,不应该做什么)

  • 软件,硬件界面和用户界面

  • 系统正确性、安全性和性能标准

  • 实施问题(风险)(如果有)

结论:

  • 要求应明确且具体,没有不确定性

  • 要求应根据具体值进行衡量

  • 需求应该是可测试的,每个需求都有一些评估标准

  • 要求应该是完整的,没有任何矛盾。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
软件需求规格说明书(Software Requirements Specification,SRS)是用于描述软件系统需求的一份文档模板。它是软件开发过程中至关重要的一步,是软件项目成功的基石之一。 SRS模板通常包含以下几个主要部分: 1. 引言:对项目的背景和目的进行介绍,包括项目的概述、范围和目标。同时还可以提供一些定义、缩写以及参考资料等相关信息。 2. 总体描述:详细描述软件系统的整体特征、功能需求以及用户类别。总体描述的内容应该包括对于软件系统的整体架构、外部接口、基本功能和性能要求的描述。 3. 特定需求:特定需求部分是最重要的部分,它详细描述了软件系统的具体功能、性能、接口、安全等方面的要求。这个部分通常包括功能性需求、非功能性需求以及系统约束等内容。 4. 接口需求:描述软件系统与外界的接口要求,包括与硬件、软件和其他系统的接口需求。例如,输入输出接口、网络接口和用户界面等。 5. 协议和标准:描述软件系统开发过程中遵循的协议和标准。这些协议和标准可能包括开发过程的规范测试标准、交付标准以及质量保证等方面。 6. 约束和限制:描述软件系统开发中的约束和限制条件。这些条件可能包括时间、成本、技术限制以及可用资源等。 7. 需求追踪:对软件需求的跟踪和管理,确保开发团队可以追踪每个需求的实现情况,以及与需求之间的依赖关系。 通过这些部分的详细描述,SRS模板可以清晰地规范软件系统的需求,使得开发团队能够更好地理解用户需求,有效地进行系统设计和开发。同时,它也可以作为项目管理和沟通的重要依据,确保软件项目按照预期要求进行开发和交付。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

佛系的老肖

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值