SDLC - V 型


V 模型是一种 SDLC 模型,其中流程的执行以 V 形的顺序方式发生。它也称为验证和确认模型

V模型是瀑布模型的扩展,并且基于每个相应开发阶段的测试阶段的关联。这意味着对于开发周期中的每个阶段,都有一个直接相关的测试阶段。这是一个高度严格的模型,下一阶段只有在上一阶段完成后才开始。

V 型 - 设计

在V模型下,开发阶段的相应测试阶段是并行规划的。因此,“V”的一侧有验证阶段,另一侧有验证阶段。编码阶段连接 V 模型的两侧。

下图描述了 SDLC V 模型中的不同阶段。

SDLC V 型

V 模型 - 验证阶段

V 模型中有多个验证阶段,下面详细解释每个阶段。

业务需求分析

这是开发周期的第一阶段,从客户的角度理解产品需求。此阶段涉及与客户的详细沟通,以了解他的期望和确切要求。这是一项非常重要的活动,需要妥善管理,因为大多数客户不确定他们到底需要什么。验收测试设计规划在此阶段完成,因为业务需求可以用作验收测试的输入。

系统设计

一旦您有了清晰、详细的产品需求,就可以设计完整的系统了。系统设计将了解并详细说明正在开发的产品的完整硬件和通信设置。系统测试计划是根据系统设计制定的。在早期阶段执行此操作可以为稍后的实际测试执行留出更多时间。

建筑设计

在此阶段理解和设计架构规范。通常会提出不止一种技术方法,并根据技术和财务可行性做出最终决定。系统设计进一步分解为具有不同功能的模块。这也称为高层设计 (HLD)

内部模块之间以及与外界(其他系统)之间的数据传输和通信在此阶段被清楚地理解和定义。有了这些信息,就可以在此阶段设计和记录集成测试。

模块设计

在此阶段,指定所有系统模块的详细内部设计,称为低级设计(LLD)。设计与系统架构中的其他模块以及其他外部系统兼容非常重要。单元测试是任何开发过程的重要组成部分,有助于在早期阶段消除最大的故障和错误。这些单元测试可以在这个阶段根据内部模块设计来设计。

编码阶段

设计阶段设计的系统模块的实际编码在编码阶段进行。最合适的编程语言是根据系统和架构要求决定的。

编码是根据编码指南和标准进行的。在将最终构建签入存储库之前,代码会经过多次代码审查并针对最佳性能进行优化。

验证阶段

下面详细解释了 V 模型中的不同验证阶段。

单元测试

在模块设计阶段设计的单元测试在此验证阶段对代码执行。单元测试是代码级别的测试,有助于在早期阶段消除错误,尽管单元测试无法发现所有缺陷。

集成测试

集成测试与架构设计阶段相关。执行集成测试是为了测试系统内内部模块的共存和通信。

系统测试

系统测试与系统设计阶段直接相关。系统测试检查整个系统功能以及正在开发的系统与外部系统的通信。在此系统测试执行过程中可以发现大多数软件和硬件兼容性问题。

验收测试

验收测试与业务需求分析阶段相关,并涉及在用户环境中测试产品。验收测试揭示了与用户环境中可用的其他系统的兼容性问题。它还可以发现实际用户环境中的负载和性能缺陷等非功能性问题。

V-型号 ─ 应用

V模型的应用与瀑布模型几乎相同,都是顺序类型的。在项目开始之前,需求必须非常明确,因为返回并进行更改通常成本高昂。该模型用于医学开发领域,因为它是一个严格遵守纪律的领域。

以下是一些最适合使用 V 模型应用程序的场景。

  • 需求定义明确、记录清晰且固定。

  • 产品定义稳定。

  • 技术不是动态的,并且被项目团队很好地理解。

  • 不存在任何含糊或未定义的要求。

  • 项目时间短。

V 模型 - 优点和缺点

V模型方法的优点是非常容易理解和应用。该模型的简单性也使其更易于管理。缺点是模型对变化不灵活,万一出现需求变化(这在当今的动态世界中很常见),进行更改的成本就会变得非常昂贵。

V模型方法的优点如下:

  • 这是一种纪律严明的模型,每个阶段一次完成一个。

  • 非常适合需求非常容易理解的小型项目。

  • 简单且易于理解和使用。

  • 由于模型的刚性,易于管理。每个阶段都有特定的可交付成果和审查流程。

V模型方法的缺点如下:

  • 高风险和不确定性。

  • 对于复杂和面向对象的项目来说,这不是一个好的模型。

  • 对于长期和正在进行的项目来说,这是一个糟糕的模型。

  • 不适合需求变化风险为中度到高度的项目。

  • 一旦应用程序进入测试阶段,就很难返回并更改功能。

  • 直到生命周期的后期才生产出可用的软件。