软件过程模型

130 阅读2分钟

持续创作,加速成长!这是我参与「掘金日新计划 · 10 月更文挑战」的第5天,点击查看活动详情

一、瀑布模型

D2EC162C77500ACB14BF306E1759F0D8.jpg 我对于瀑布模型的定义的理解是瀑布模型是将软件生存周期的各项活动规定为按固定顺序而连接的若干阶段工作,形如瀑布流水,最终得到软件产品。

它的优点是过程模型简单,执行容易;缺点是无法适应变更。

在什么情况下使用瀑布模型应该是最要关心的问题,在我的学习与经验中得出结论,在用户需求明确时用瀑布模型最为合适。这就是软件过程模型中的第一个模型,从图中能最直观的看出瀑布模型的内部过程。

二、快速原型模型

7CD84E03CF6E9812F94B4FBC29C3CEE3.jpg

快速模型产生的原因:在我的理解中,因用户与开发团队双方的知识领域有很大差异,用户难以对自己的需求准确表达,致使快速原型模型的产生。

然而这种模型的原理是什么,即这种模型是怎么解决这个问题的?

快速原型模型需要迅速建造一个可以运行的软件原型,以便用户理解和提出意见,表达诉求,使开发人员与用户达到共识最终确定方案,开发令用户满意的软件。

当然这种模型也是有一定的缺点的,例如不符合主流的发展;快速发展的结构可能会导致产品质量低下;还可能会限制开发人员的创造和创新。

三、增量模型

237F76D2EFF15001FD4817C9EB3CE656.jpg

对于增量模型最直接的理解就是增量模型将软件系统模块化,将每个模块作为一个增量组件,从而分批设计。

其实这就相当以一个模块为单位,这种模型,可以使用户及时了解项目的进展,也降低了软件开发风险,而且开发的顺序也较为灵活。但是也只适用于易被模块化的软件系统,对于难被模块化的软件系统,这将会带来很多麻烦。

以上这三种模型是我目前所了解学习到的模型,每种模型在生产中都有各种各样的优点和缺点,不过每种模型的出现都是一种进步和飞跃。