5.3项目的生命周期

1. 项目生命周期基础

项目生命周期的特征:
项目生命周期可以帮助项目经理确定是将可行性研究作为项目的第一个阶段还是作为一个单独的项目,初期不清楚时,最好作为一个独立项目来开展。管理项目时,可把项目生命周期划分成更小的时间段,形成具有典型提特征的项目阶段。大多数项目生命周期定义的阶段顺序是立项、开发、运维、消亡。也可以按管理活动出现的先后,把声明周期划分为启动、计划、执行和收尾。
无论如何划分,项目的每个阶段都至少包含管理工作和技术工作。


image.png

image.png
项目阶段的特征
      项目阶段都以一个或一个以上的可交付物的完成为标志。
      这个可交付物是一个可度量、可验证的工作成果,比如规格说明书、可行性研究报告。
      项目阶段由连续过程组成,这些过程按一定的顺序前后相连。

项目生命周期与产品生命周期的关系
        项目生命周期定义项目的开始与结束。假如一个项目交付特定的产品,
        那么该产品的生命期比项目生命周期长,从该产品的研发到投入使用,
        直到该产品的消亡就构成了该产品的生命周期。在一些组织中,
        一个项目只有完成了可行性研究、初步计划或者其他等同形式的分析后才能正式批准。
        在这些案例中,初步规划或分析可以采用独立项目的形式。
        例如,在确定开发最终产品之前,可以将原型的开发和测试作为单独的项目。
2. 典型的信息系统项目的生命周期模型
2.1 瀑布模型:
        也叫预测型生命周期、完全计划驱动型生命周期。在这个模型里,在项目生命周期的尽早时间,要确定项目范围及交付此范围所需的时间和成本。
        当项目需求明确、充分了解拟交付的产品、有厚实的行业实践基础,或者整批一次性交互产品有利于干系人。
      特点:
            1)从上一项开发活动接受其成果作为本次活动的输入;
            2)利用输入,实施本次互动应完成的工作内容;
            3)给出本次活动的工作成果,作为输出传给下一项开发活动;
            4)对本次活动的实施工作成果进行评审。若其工作成果得到确认,则进行下一项开发互动;否则返回前一项,甚至更前项的活动。尽量减少阶段间的反复
image.png
2.2 V模型
 V模型的左边下降的是开发过程各阶段,右边上升的是测试的各个阶段。
 在不同的组织中对测试阶段的命名可能有所不同。
 其价值在于它非常明确的标明了测试过程中存在的不同级别,
 并且清楚地描述了这些测试阶段和开发各阶段的对应关系。       
image.png
2.3 原型化模型
    原型化模型是为弥补瀑布模型的不足而产生的。原型化模型的第一步是建造一个快速原型,
    实现客户/未来用户与系统的交互,经过和用户针对原型的讨论和交流,
    弄清需求以便真正把握用户需要的软件产品是什么样子的。
    瀑布和V模型将原型化模型的思想用于需求分析环节,
    来解决因为需求不明确导致产品出现严重后果的缺陷。
    对于复杂的大型软件,开发一个原型往往达不到要求,
    为减少开发风险,在瀑布模型和原型化模型的基础上的演进,
    出现了螺旋模型以及大量使用的RUP

2.4 螺旋模型
是一个演化软件过程模型,将原型实现的迭代特征与线性顺序(瀑布)模型中控制的和系统化的方面结合起来。
使得软件的增量版本的快速开发成为可能。在螺旋模型中,
软件开发是一系列的增量发布。在早期的迭代中,发布的增量可能是一个纸上的模型/原型;
在以后的迭代中,被开发系统的更加完善的版本逐步产生。
螺旋模型强调了风险分析,特别适用于庞大而复杂的、高风险的系统。
image.png
2.5 迭代模型
传统的开发工作大部分强调过程的串行执行,也就是一个活动需要在前一个活动完成后才开始,
从而形成一个过程串。该过程串就组成了软件项目的生命周期。迭代模型中,
每个阶段都执行一次传统的、完整的串行过程串,执行一次过程串就是一次迭代。
RUP软件统一过程是一种“过程方法”,它就是迭代模型的一种。
当组织需要管理不断变化的目标/范围、组织需要降低项目的复杂性、
产品的部分交付有利于干系人,且不会影响最终或整批可交付成果的交付,就可以选用迭代模型。
大型项目往往选用迭代方式,项目团队可以在迭代过程中综合考虑反馈意见和经验教训,从而降低项目风险。
image.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容