细数项目中常见的软件开发模型
熊猫速汇PandaRemit - 2023-09-12 17:59:22.0 312
软件开发模式大致可以分为两种。 第一种是以软件需求完全确定为前提的瀑布模型。 第二种是软件开发初期只能提供基本需求时采用的渐进式开发模型,如原型模型、螺旋模型等。在实践中,往往将几种模型结合使用,以充分发挥各自的优势 每个型号的。
1.瀑布模型
瀑布模型也称为软件生命周期模型,由W. Royce于1970年首次提出。
瀑布模型根据软件生命周期各阶段的任务,从系统需求分析开始,逐步进行阶段转换,直至软件产品通过验收测试并得到用户确认。 瀑布模型前一阶段的变换结果是下一阶段变换的输入。 相邻的两个阶段具有因果关系,紧密相连。
某一阶段工作的错误会蔓延到后续阶段。 为了保证软件开发的正确性,每个阶段的任务完成后,必须对其阶段产品进行评审和确认,然后才能进行下一阶段的工作。 审核过程中发现错误和遗漏后,应反馈到之前的相关阶段,纠正错误、弥补遗漏,然后重复之前的工作,直到某一阶段审核通过后,再进入下一阶段 。 这种形式的瀑布模型是带有反馈的瀑布模型,
模型中每个阶段的任务和软件开发活动如上所述。 瀑布模型在软件工程中占有重要的地位。 它为软件开发提供了一个基本框架,这比依靠“个人技能”来开发软件要好得多。 有利于大型软件开发过程中人员的组织和管理,有利于软件开发方法和工具的研究和使用,从而提高大型软件项目开发的质量和效率。
瀑布模型的主要特点是:
阶段之间的先后顺序和依赖关系,开发过程是一个严格的向下过程,即前一阶段的输出是后一阶段的输入,每个阶段工作的完成都需要确认,确认过程是 严格的追溯过程,
后一阶段出现的问题必须通过前一阶段的重新确认来解决。 因此,越晚发现问题,解决问题的成本就越高。
瀑布模型的主要缺点是:
(1)在软件开发的初始阶段明确指定软件系统的所有需求是困难的,有时甚至是不现实的。 从认识论的角度来看,人类的认识是一个多次重复的过程,实践——认识——再实践——再认识,多次认识、多次跨越,最终才能获得对客观世界更加正确的认识。 软件开发是人的一项智力认知活动,不可能一次性完成。 需要进行多次。 然而,瀑布模型中划分的几个阶段并没有体现这种认知过程的迭代性质,缺乏灵活性。
(2)软件开发是一项知识密集型的开发活动,需要人们的合作和交流。 因此,人员之间的沟通以及活动之间的并行和串行化是必要的,但这方面在瀑布模型中并没有体现。 随着软件开发项目的规模越来越大,由此带来的问题也变得更加严重。
2.快速原型方法模型 快速原型方法是针对瀑布模型(即传统的生命周期方法)提出的方法。
其基本思想是避免(或暂时避免)传统生命周期方法中的一些困难,根据用户需求快速构建原型。 让用户通过这个原型初步表达自己的需求。 在征求用户对原型的意见的过程中,进一步修改、完善、确认软件系统的需求,并达到一致的认识。 这大大避免了瀑布模型冗长的开发过程。 ,最终软件产品的原型是不可见的。 通过反复修改和改进,逐步贴近用户的所有需求,最终形成完全满足用户要求的新系统。
因此,快速原型制作方法最大的特点就是速度快,并且避免了由于不同的联合国系统而造成的许多错误。
内容转载自网络,如有侵权请联系删除