软件工程: SDLC V模型
V型
V-model 代表一个开发过程,可以被认为是瀑布模型的扩展,是更通用的 V-model 的一个例子。不是以线性方式向下移动,而是在编码阶段之后向上弯曲工艺步骤,以形成典型的 V 形。V 模型展示了开发生命周期的每个阶段与其相关的测试阶段之间的关系。横轴和纵轴分别代表时间或项目的完整性(从左到右)和抽象级别(最粗粒度的抽象)。
V-Model 将开发阶段描述为“V”的左分支,而右分支代表测试活动。这样的 V 模型如下图所示:
V-模型背后的主要思想是开发和测试活动相互对应。每个开发阶段都应由其自己的测试活动完成。这些测试活动中的每一个都涵盖不同的抽象级别:软件组件、组件的集成、完整的软件系统和用户接受度。这种专注于不同抽象层的方法不仅可以在开发过程的最后测试单一的软件,还可以更轻松地触发、分析、定位和修复软件缺陷。
开发阶段
V 模型的开发阶段通常来自瀑布模型或现实世界开发管道的逻辑阶段。我们将经历每个阶段。
1. 需求分析 (Requirements Analysis) - 首先,必须发现和收集软件系统的需求。这通常在与用户和其他利益相关者的会议中完成,例如通过访谈和文件研究。通过对收集到的信息进行分析,可以更精确地定义要求。软件需求作为高级需求文档永久存储。
2. 系统设计/功能设计 (System Design) - 根据需求分析的输出,在功能级别设计系统。这包括功能的定义、用户界面元素(包括对话框和菜单)、工作流和数据结构。
现在可以准备系统测试的文件。
3. 架构设计 (Architecture Design) - 功能设计的定义之后是将系统架构设计为一个整体并将其分离为组件。在此阶段,指定通用组件功能、接口和依赖项。这通常涉及建模语言(例如UML)和设计模式以解决常见问题。由于系统的组件及其交集现在已知,因此可以在此阶段开始集成测试准备。
4. 组件设计 (Modular Design) - 下一阶段是关于特定组件的低级设计。每个组件都有详细的描述,包括要实现的内部逻辑、描述 API 的详细接口规范以及数据库表(如果有)。假定存在组件的接口规范和功能描述,现在可以准备组件测试。如果行为驱动开发 (BDD) 的测试驱动方法用于组件级别,则会创建单个组件的功能规范。
5. 执行 (Implementation / coding) - 实施阶段是使用特定编程语言的编码工作。它遵循在早期开发阶段确定的规范。
在每个阶段,都会根据该阶段的要求创建测试计划和测试用例来验证和验证产品。例如,在需求收集阶段,测试团队根据需求准备所有测试用例。之后,当产品开发完毕并准备好进行测试时,此阶段的测试用例会根据此阶段的需求验证软件的有效性。
这使得验证和验证并行进行。该模型也称为验证和确认模型。
posted on 2021-10-28 16:27 Lynch_Warren 阅读(886) 评论(0) 编辑 收藏 举报