软件过程模型

来源:互联网 发布:ubuntu deb安装包下载 编辑:程序博客网 时间:2024/06/05 13:25

瀑布模型

瀑布模型是将软件生存周期中的各项活动规定为一种线性顺序连接的若干阶段的模型,包括需求分析、设计、编码、测试、运行与维护。它规定了由前至后、相互衔接的固定次序,如同瀑布流水逐级下落,瀑布模型为软件的开发和维护提供了一种有效的管理模式,根据这一模式制定开发计划,进行成本预算,组织开发力量,以项目的阶段评审和文档控制为手段有效地对整个开发过程进行指导,所以它是以文档作为驱动、适合于软件需求很明确的软件项目的模型。
优点:容易理解,管理成本低;强调开发的阶段性早期计划及需求调查和产品测试。
不足:客户必须能够完整、正确和清晰地表达他们的需要;在开始的两个或三个阶段中,很难评估真正的进度状态;当接近项目结束时,出现大量的集成和测试工作;知道项目结束前,都不能演示系统的能力。在瀑布模型中,需求或设计中的错误往往只有到了项目后期才能够被发现,对于项目风险的控制能力较弱,从而导致项目常常延期完成,开发费用超出预算。

增量模型
融合了瀑布模型的基本成分和原型实现的迭代特征,他假设可以将需求分段为一系列增量产品,每一增量可以分别开发。该模型采用随着日程时间的进展而交错的线性序列,增量模型强调没一个增量均发布一个可操作的产品。
增量模型具有瀑布模型的所有优点。此外,第一个可交付版本所需要的成本和时间很少;开发由增量表示的小系统所承担的风险不大;由于很快发布了第一个版本,因此可以减少用户需求的变更;运行增量投资,即在项目开始时,可以仅对一个或两个增量投资。
增量模型有一下不足之处:如果没有对用户的变更要求进行规划,那么产生的初始增量可能会造成后来增量的不稳定;如果需求不像早期思考的那样稳定和完整,那么一些增量可能需要重新开发,重新发布;管理发生的成本、进度和配置的复杂性可能会超出组织能力。

演化模型
1.原型模型
2.螺旋模型
制定计划,风险分析,实施工程。用户评估
螺旋模型强调风险分析
喷泉模型
适用于面向对象的开发方法,它客服了瀑布模型不支持软件重用和多项开发活动的局限性。,喷泉模型使开发活动具有迭代性和无间隙性。
喷泉模型的各个阶段没有明显的界限,开发人员可以同步进行。其优点是可以提高软件项目的开发效率,节省开发事件。
由于喷泉模型在各个开发阶段是重叠的,在开发过程中需要大量的开发人员,不利于项目管理。此外,这种模型要求严格管理文档,使得审核的难度加大。

0 0