- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
软件工程考核知识点-第9章-软件开发的增量模型
软件工程考核知识点-第9章-软件开发的增量模型
9.1 概述 ?? 在瀑布模型的开发过程中,人们花费极大的努力进行严格开发,但终究难以接近理想目标,在需求说明维以完善、难以明确的情况下,由快速分析而构造一个小的原形系统,满足用户的某些要求后,使用户在使用过程中受其启发,逐步确定各种需求,因此,产生了所谓的渐增模型和快速原型模型9.1.1瀑布模型的局限性?? 瀑布模型这种模型本质上是一种线性顺序模型,因此存在着较明显的缺点,各阶段之间存在着严格的顺序性和依赖性,特别强调预先定义需求的重要性,在着手进行具体的开发工作之前,必须通过需求分析预先定义并“冻结”软件需求,然后再一步一步的实现这些需求。但是实际项目很少遵循着这种线性顺序进行的。虽然瀑布模型也允许迭代,但这种改变往往对项目开发带来混乱。在系统建立之前很难只依靠分析就确定出一套完整、准确、一致、有效的用户需求,这种预先定义需求的方法更不能适应用户需求的不断变化的情况。?? 1.需求是可变的?? 某些应用软件的需求与外部环境、公司经营策略或经营内容等密切相关,因此需求是随时变化的。?? 2.需求是模糊的?? 对于大多数更常使用的应用系统,例如管理信息系统,其需求往往很难预先准确的指定,也就是说,预先定义需求的策略所做出的假设,只对某些软件成立,对多数软件并不成立。许多用户对他们的需求最初只是模糊的概念,想要求一个对需求只有初步设想的人准确无误的说出全部需求,显然是不切实际的。人们为了充实和细化他们的初步设想,通常需要经过在某个能运行的系统上实践的过程。?? 3.用户和开发者难于沟通????大型软件的开发需要系统分析员、软件工程师、程序员、用户、领域专家等各类人员的协调配合。然而大多数用户和领域专家不熟悉计算机和软件技术,软件开发人员也往往不熟悉用户的专业领域,开发人员和用户之间很难做到完全沟通和相互理解,在需求分析阶段做出的用户需求常常是不完整、不正确的。传统的瀑布模型很难适应需求可变、模糊不定的软件系统的开发,而且在开发过程中,用户很难参与进去,只有到开发结束才能看到整个软件系统。这种理想的、线性的开发过程,缺乏灵活性,不适应实际的开发过程。9.1.2 增量模型的基本思想????为了克服瀑布模型的局限性,使开发过程具有一定的灵活性和可修改性,于是产生了增量模型。增量模型和瀑布模型之间的本质区别是:瀑布模型属于整体开发模型,它规定在开始下一个阶段的工作之前,必须完成前一阶段的所有细节。而增量模型属于非整体开发模型,它推迟某些阶段或所有阶段中的细节,从而较早的产生工作软件。????增量方式包括增量开发和增量提交。增量开发是指在项目开发周期内,以一定的时间间隔开发部分工作软件;增量提交是指在项目开发周期内,以一定的时间间隔增量方式向用户提交工作软件及相应文档。9.1.3 增量模型的分类????有多种增量模型,根据增量的方式和形式的不同,分为渐增量模型和原型模型。1.增量模型:????(1)增量构造模型。????它在瀑布模型基础上,对一些阶段进行整体开发,对另一些阶段进行增量开发。即前面的开发阶段按瀑布模型进行整体开发,后面的开发阶段按增量方式开方。????(2)演化提交模型。????它在瀑布模型的基础上,所有阶段都进行增量开发,也就是说不仅是增量开发,也是增量提交。2.原型模型????这种开发模型又称快速原型模型,它是增量型的另一种形式。它是在开发真实系统之前,构造一个原型的基础上,逐渐完成整个系统的开发工作。根据原型的不同作用,有三类原型模型:?? (1)探索模型。????这种类型的原型模型是把原型用于开发的需求分析阶段,目的是要弄清用户的需求,确定所期望的特性,并探索各种方案的可行性。它主要对开发目标模糊,用户与开发者对项目都缺乏经验的情况,通过对原型的开发来明确用户的需求。?? (2)实验型原型。????这种原型主要用于设计阶段,考核实现方案是否合适,能否实现。对于一个大型系统,若对设计方案心中没有把握时,可通过这种原型来证实设计方案的正确性。?? (3)演化型原型。????这种原型主要用于及早向用户提交一个原型系统,该原型系统或者包含系统框架,或者包含系统的主要功能,在得到用户的认可后,将原型系统不断扩充演变为最终的软件系统。它将原型的思想扩展到软件开发的全过程。
9.2渐增模型9.2.1 增量构造模型?? 需求分析阶段和设计阶段都是按瀑布模型的整体方式开发,但是编码阶段和测试阶段是按增量方式开发。9.2.2 演化提交模型?? 在该模型中,项目开发的各个阶段都是增量方式。先对某部分功能进行需求分析,然后顺序进行设计、编码测试,把该功能的软件交付给用户,然后再对另一部分功能进行开发,提交用户直至所有功能全部增量开
文档评论(0)