敏捷vs V方法(模型)
当今软件行业中有许多不同的软件开发方法。V方法(V-Model)是瀑布式开发方法(最早的方法之一)的扩展。V-Model的主要焦点是将编码和测试放在同等的权重上。敏捷模型是最近引入的一种软件开发模型,旨在解决现有模型中存在的缺陷。敏捷的主要关注点是尽早进行测试,并通过将系统分解为非常小且可管理的子部分,尽早发布产品的工作版本。
什么是方法(V)?
V方**(V-Model)是一种软件开发模型。它被认为是典型瀑布式软件开发模型的扩展。V-Model使用瀑布模型中定义的阶段之间的相同关系。但是,V-model不是线性下降(如瀑布模型),而是对角向下,然后向上移动(在编码阶段之后),形成字母V的形状。这种V形的形成是为了显示开发/设计的每个阶段与相应的测试阶段之间的关系。时间和抽象层次分别用水平轴和垂直轴表示。
测试(上升路径,V的右侧)用于验证,而相应的设计阶段(下降路径,V的左侧)用于验证。在V模型中,编码和测试的权重相等。V-Model建议在设计文档/代码旁边创建测试文档。例如,集成测试文档应该在记录高级设计时编写,单元测试应该在制定详细设计计划时记录。这意味着每个测试的实现计划应该事先创建,而不是等到开发完成后才可以交给测试团队。
什么是敏捷?
敏捷是一种基于敏捷宣言的最新软件开发方法。这是为了解决传统的V模型和瀑布式软件开发方法的一些缺点而开发的。敏捷方法的基础是在开发周期的早期高度重视客户的参与。它建议客户尽早、经常地进行测试。当稳定版本可用时,测试在每个点进行。敏捷的基础是从项目开始的测试开始,一直持续到项目的结束。敏捷的关键价值观是“质量是团队的责任”,它强调软件的质量是整个团队(不仅仅是测试团队)的责任。敏捷的另一个重要方面是将软件分解成更小的可管理的部分,并很快地将它们交付给客户。交付一个有效的产品是最重要的。然后团队继续改进软件,并在每个主要步骤持续交付。这是通过有非常短的发布周期(称为sprint)来实现的,并在每个周期结束时获得改进的反馈。在早期方法中,没有太多团队交互的贡献者,比如开发人员和测试人员,现在在敏捷模型中一起工作。
敏捷和V方法(模型)有什么区别?