增量模型

什么是增量

增量 指数量的变化,在这里指的是软件功能数目的变化,指在软件开发过程中,先开发主要功能模块,再开发次要功能模块,逐步完善,最终开发出符合需求的软件产品。比如,需要开发一个类似WORD的软件,应该首先开发出文件管理(保存、读取文件)、基本编辑功能、打印等,而其它不太常用的功能可以最后开发。增量式开发,就是首先把大型程序分解成若干小的模块,然后对每个模块按照某种过程模型进行开发,最后把这些模块逐步集成为完整的软件产品。
采取增量式开发,会倾向于创建更小的方法和更具内聚性的类。你不是等埋头盲目地一次性编写一大堆代码。相反,你会经常评估代码质量,并不时地进行许多小调整。而不是一次修改许多东西。

什么是增量模型

增量模型融合了瀑布模型的基本成分(重复应用)和原型实现的迭代特征,该模型采用随着日程时间的进展而交错的线性序列,每一个线性序列产生软件的一个可发布的“增量”。当使用增量模型时,第1个增量往往是核心的产品,即第1个增量实现了基本的需求,但很多补充的特征还没有发布。客户对每一个增量的使用和评估都作为下一个增量发布的新特征和功能,这个过程在每一个增量发布后不断重复,直到产生了最终的完善产品。增量模型强调每一个增量均发布一个可操作的产品。采用增量模型的软件过程如下图所示:
增量模型_第1张图片
增量模型与原型实现模型和其他演化方法一样,本质上是迭代的,但与原型实现不一样的是其强调每一个增量均发布一个可操作产品。早期的增量是最终产品的“可拆卸”版本,但提供了为用户服务的功能,并且为用户提供了评估的平台。

增量模型的特点

增量模型的特点是引进了增量包的概念,无须等到所有需求都出来,只要某个需求的增量包出来即可进行开发。虽然某个增量包可能还需要进一步适应客户的需求并且更改,但只要这个增量包足够小,其影响对整个项目来说是可以承受的。

增量模型的优缺点

1、增量模型的优点

采用增量模型的优点是人员分配灵活,刚开始不用投入大量人力资源。如果核心产品很受欢迎,则可增加人力实现下一个增量。当配备的人员不能在设定的期限内完成产品时,它提供了一种先推出核心产品的途径。这样即可先发布部分功能给客户,对客户起到镇静剂的作用。此外,增量能够有计划地管理技术风险。

2、增量模型的缺点

增量模型存在以下缺陷:

1) 由于各个构件是逐渐并入已有的软件体系结构中的,所以加入构件必须不破坏已构造好的系统部分,这需要软件具备开放式的体系结构

2) 在开发过程中,需求的变化是不可避免的。增量模型的灵活性可以使其适应这种变化的能力大大优于瀑布模型和快速原型模型,但也很容易退化为边做边改模型,从而使软件过程的控制失去整体性。

3)如果增量包之间存在相交的情况且未很好处理,则必须做全盘系统分析,这种模型将功能细化后分别开发的方法较适应于需求经常改变的软件开发过程。

各种软件过程模型的特点

增量模型_第2张图片

总结

总结部分是我对于增量模型的一些理解。增量模型类似于汽车的组装过程,将各种零部件组装在一起,最终形成整车。有所不同的是,增量模型更类似于装饰,美化的过程,好比想作一幅山水画,山川描绘完就已经符合你的基本意图了,可以展示了,只不过略显单调,这时候可以加些云雾,加些树木,而原本的山川图增加的云雾树木都可看作增量,最终的结果是这一系列增量的组合(必须要包含原本的山川图),而其最初的版本必须是符合基本需求的,可发布的,就像这里原本的山川图可以展示,加上云雾和树木之后展示的效果更好。

相关词条链接

增量模型
增量开发

你可能感兴趣的:(软件工程)