软件生存周期模型之增量模型
什么是增量模型
增量迭代是统一软件开发过程(RUP)经常使用的一种软件开发模型,因此增量模型和迭代模型经常放在一起使用,其基本流程都一样,唯一不同的是在对需求进行拆分的时候划分标准不一样。拆分时将需求按照模块进行分类,以模块递增的方式逐步完善。
增量模型融合了瀑布模型的基本成分和原型实现的迭代特征,它假设可以将需求分段为一系列增量产品,每一增量可以分别地开发。该模型采用随着日程时间的进展而交错的线性序列,每一个线性序列产生软件的一个可发布的“增量”,如下图所示。当使用增量模型时,第1个增量往往是核心的产品。客户对每个增量的使用和评估都作为下一个增量发布的新特征和功能,这个过程再每一个增量发布后不断重复,直到产生了最终的完善产品。增量模型强调每一个增量均发布一个可操作的产品。
增量模型主要阶段
优缺点
优点:
- 同迭代模型一样,对风险预测能力和解决能力很强;
- 人员分配灵活,刚开始不用投入大量;
- 第一个可交付版本所需要的成本和时间很少;
- 开发由增量表示的小系统所承担的风险不大;
- 由于很快发布了第一个版本,因此可以减少用户需求的变更;
- 运行增量投资,即在项目开始时,可以进队一个或两个增量投资。
- 要对拆分后模块之间的关联性很熟悉,避免后续增量中不兼容,扩展性受影响,要求最初的架构设计必须考虑很周到。
- 如果没有对用户的变更要求进行规划,那么产生的初始增量可能会造成后来增量的不稳定;
- 如果需求不像早期思考的那样稳定和完整,那么一些增量就可能需要重新开发;
- 管理发生的成本、进度和配置的复杂性,可能会超出组织的能力
为虫子生,为虫子死,为虫子奋斗一辈子