增量开发模型

增量开发模型

增量模型是把待开发的软件系统模块化,将每个模块作为一个增量组件,从而分批次地分析、设计、编码和测试这些增量组件。运用增量模型的软件开发过程是递增式的过程。相对于瀑布模型而言,采用增量模型进行开发,开发人员不需要一次性地把整个软件产品提交给用户,而是可以分批次进行提交。

增量模型工作流程
  • 工作流程

    1、系统开发的前期阶段,为了确保所建系统具有优良的结构,仍需要针对整个系统进行需求分析和概要设计,需要确定系统的基于增量构件的需求框架,并以需求框架中构件的组成及关系为依据,完成对软件系统的体系结构设计。

    2、在完成软件体系结构设计之后,可以进行增量构件的开发。这个时候,需要对构件进行需求细化,然后进行设计、编码测试和有效性验证。

    3、在完成了对某个增量构件的开发之后,需要将该构件集成到系统中去,并对已经发生了改变的系统重新进行有效性验证,然后再继续下一个增量构件的开发。

  • 优缺点

    1、优点

    • 将待开发的软件模块化,能够分批次的交付,客户能够快速了解到软件开发的进程。
    • 以模块为单位进行开发,如果某一模块的开发周期当中出现了风险,不会影响整体的开发。
    • 开发顺序灵活,能够自由调整开发顺序,如先开发稳定的模块。

    2、缺点

    • 如果待开发的软件不能模块化而进行增量模型开发的话,将会带来许多的不必要的麻烦。
  • 适用项目

    1、软件产品可以分批次地进行交付。

    2、待开发的软件系统能够被模块化。

    3、软件开发人员对应用领域不熟悉,难以一次性地进行系统开发。

    4、项目管理人员把握全局的水平较高。

  • 作用(参考自百度百科)

      1、开发初期的需求定义只是用来确定软件的基本结构,这使得开发初期,用户只需要对软件需求进行大概的描述,而对于需求的细节性描述,则可以延迟到增量构件开发时进行,以增量构件为单位逐个地进行需求补充。这种方式有利于用户需求的逐渐明朗,能够有效适应用户需求的变更。
      2、软件系统可以按照增量构件的功能安排开发的优先顺序,并逐个实现和交付使用。这不仅有利于用户尽早地用上系统,能够更好地适应新的软件环境,而且用户在以增量方式使用系统的过程中,还能够获得对软件系统后续构件的需求经验。这样能使软件需求定义越往后越顺利。
      3、软件系统是逐渐扩展的,因此,开发者可以通过对诸多构件的开发,逐步积累开发经验。实际上,增量式开发还有利于技术复用,前面构件中设计的算法、采用的技术策略、编写的源码等,都可以应用到后面将要创建的增量构件中去。
      4、增量式开发还有利于从总体上降低软件项目的技术风险。个别的构件或许不能使用,但这一般不会影响到整个系统的正常工作。
      5、实际上,在采用增量模型时,具有最高优先权的核心增量构件将会被最先交付,而随着后续构件不断被集成进系统,这个核心构件将会受到最多次数的测试。这意味着软件系统最重要的心脏部分将具有最高的可靠性,这将使得整个软件系统更具健壮性。

你可能感兴趣的:(增量开发模型)