SDLC - V模型



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

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

V模型 - 设计

在V模型下,开发阶段的相应测试阶段是并行计划的。因此,'V'的一侧是验证阶段,另一侧是确认阶段。编码阶段连接了V模型的两侧。

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

SDLC V-Model

V模型 - 验证阶段

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

业务需求分析

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

系统设计

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

架构设计

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

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

模块设计

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

Explore our latest online courses and learn new skills at your own pace. Enroll and become a certified expert to boost your career.

编码阶段

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

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

确认阶段

下面将详细解释V模型中的不同确认阶段。

单元测试

在此确认阶段,在代码上执行模块设计阶段设计的单元测试。单元测试是在代码级别进行的测试,有助于在早期阶段消除错误,尽管并非所有缺陷都可以通过单元测试发现。

集成测试

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

系统测试

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

验收测试

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

V模型 - 应用

V模型的应用几乎与瀑布模型相同,因为这两种模型都是顺序类型的。项目开始前,需求必须非常明确,因为通常回头更改成本很高。该模型用于医疗开发领域,因为它是一个严格规范的领域。

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

  • 需求定义明确,记录完整且固定。

  • 产品定义稳定。

  • 技术不具有动态性,并且项目团队对其有充分的了解。

  • 没有模棱两可或未定义的需求。

  • 项目时间较短。

V模型 - 优缺点

V模型方法的优点是易于理解和应用。该模型的简单性也使其易于管理。缺点是该模型不灵活,无法适应更改,并且如果存在需求更改(在当今动态世界中非常常见),则进行更改的成本非常高。

V模型方法的优点如下:

  • 这是一个高度规范的模型,并且阶段是逐一完成的。

  • 适用于需求非常明确的小型项目。

  • 简单易懂且易于使用。

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

V模型方法的缺点如下:

  • 风险和不确定性高。

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

  • 对于长期和持续的项目来说,这不是一个好的模型。

  • 不适合需求存在中等至高风险发生变化的项目。

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

  • 在生命周期后期之前不会生成可工作的软件。

广告