信息系统项目的生命周期模型主要包括有瀑布模型、V模型、喷泉模型、螺旋模型、统一过程,增量、迭代模型。
1. 瀑布模型
瀑布模型是一个经典的软件生命周期模型,一般将软件开发分为可行性分析(计划)、需求分析、软件设计(概要设计、详细设计)、编码(含单元测试)、测试、运行维护等几个阶段。
瀑布模型中每项开发活动具有以下特点:
(1)从上一项开发活动接受其成果作为本次活动的输入;
(2)利用这一输入,实施本次活动应完成的工作内容;
(3)给出本次活动的工作成果,作为输出传给下一项开发活动;
(4)对本次活动的实施工作成果进行评审。
缺点: 过程基本不可迭代,需求在开始的不确定性,错误到最后才能发现,开发进程呈现塞阻状态
2. V 模型
V模型的左边下降的是开发过程各阶段,与此相对应的是右边上升的部分,即各测试过程的各个阶段。
V模型的优点在于它非常明确地标明了测试过程中存在的不同级别,并且清楚地描述了这些测试阶段和开发各阶段的对应关系。
3. 原型化模型
原型化模型的第一步是建造一个快速原型,实现客户或未来的用户与系统的交互,经过和用户针对原型的讨论和交流,弄清需求以便真正把握用户需要的软件产品是什么样子的。充分了解后,再在原型基础上开发出用户满意的产品。
增量模型也是原型化开发方法。
增量模型要点:瀑布和原型模型相结合,强调版本升级。
4.螺旋模型
螺旋模型是一个演化软件过程模型,将原型实现的迭代特征与线性顺序(瀑布)模型中控制的和系统化的方面结合起来。使得软件的增量版本的快速开发成为可能。在螺旋模型中,软件开发是一系列的增量发布。
螺旋线代表随着时间推进的工作进展;开发过程具有周期性重复的螺旋线形状。
4个象限分别标志每个周期所划分的4个阶段:制定计划、风险分析、实施工程和客户评估。螺旋模型要点:统一了瀑布模型与原型模型,与增量模型相似,更强调风险分析。
5.迭代模型
喷泉模型:体现认识事物的循环迭代性,强调开发活动之间的无间隙性,无明显的活动阶段划分,适用于面向对象的开发过程。
RUP ( Rational Unified Process )软件统一过程是一种“过程方法”,它就是迭代模型的一种。
RUP中的软件生命周期在时间上被分解为4 个顺序的阶段,分别是:初始阶段( Inception)、细化阶段(Elaboration )、构建阶段(Construction )和交付阶段(Transition )。这4 个阶段的顺序执行就形成了一个周期。每个阶段结束于一个主要的里程碑(Major Mileslones )。在每个阶段的结尾执行一次评估以确定这个阶段的目标是否己经满足。