敏捷与传统软件开发方法
当今软件行业中使用了许多不同的软件开发方法。瀑布开发方法是最早的软件开发方法之一。V-Model,Rup和其他几个线性,迭代和联合线性读物方法是在瀑布方法之后出现的,旨在消除瀑布方法的许多问题。所有这些早期的方法都称为传统软件开发方法。敏捷模型是介绍的最新软件开发模型,以解决传统模型中发现的缺点。敏捷的主要重点是尽早纳入测试,并通过将系统分解为非常小且易于管理的子部件,从而很早就发布产品的工作版本。
什么是传统软件开发方法论?
诸如瀑布法,V模型和RUP之类的软件方法称为传统软件开发方法。瀑布方法是最早的软件开发模型之一。顾名思义,这是一个顺序的过程,在该过程中,进步从上到下流过多个阶段(需求分析,设计,开发,测试和实施),类似于瀑布。V模型被认为是瀑布软件开发模型的扩展。V模型使用瀑布模型中定义的相之间相同的关系。但是,而不是线性下降(如瀑布模型)V模型对角线向下往下走,然后向上移动(在编码阶段之后),而是形成字母V的形状。RUP(合理的统一过程)是一个适应性的过程框架(不是)一个具体的过程),可以根据开发组织的需求来定制。与瀑布略相似,它具有固定的阶段,作为成立,阐述,构造和过渡。但是与瀑布不同,RUP是一个迭代过程。
什么是敏捷?
敏捷是基于敏捷宣言的最新软件开发方法(或更正确的一组方法)。这是为了解决传统软件开发方法中的一些缺点。敏捷方法基于在开发周期初期对客户参与的高度优先级。它建议尽早且经常纳入客户的测试。当可用的稳定版本可用时,在每个点进行测试。敏捷的基础是从项目开始开始进行测试,并一直持续到项目结束。Scrum和Extreme编程是敏捷方法最流行的两种变体。
敏捷的关键价值是“质量是团队的责任”,这强调软件的质量是整个团队的责任(不仅仅是测试团队)。敏捷的另一个重要方面是将软件分解为较小的可管理零件,并很快将其交付给客户。交付工作产品至关重要。然后,团队继续改进软件并在每个主要步骤中不断交付。这是通过非常短的释放周期(称为Scrum中的Sprints)并在每个周期结束时得到改进来实现的。在较早的方法中,没有团队(例如开发人员和测试人员)的贡献者,现在在敏捷模型中共同工作。
敏捷和传统软件开发方法有什么区别?
尽管敏捷方法是基于迭代发展的,但作为某些传统方法,敏捷和传统方法论具有关键差异。传统方法使用计划作为控制机制,而敏捷模型则使用用户的反馈作为主要控制机制。敏捷可以称为以人为中心的方法,而不是传统方法。与传统方法相比,敏捷模型非常早就提供了产品的工作版本,因此客户可以早期实现一些好处。与传统方法相比,敏捷的测试周期时间相对较短,因为测试与开发平行。大多数传统模型都非常僵化,并且比敏捷模型相对灵活。由于所有这些优势,敏捷比目前的传统方法优先。
发表评论