- 1、本文档共4页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
软件开发模型的优缺点和适用范围
软件开发模型大体上可以分为三种类型。第一种是以软件需求完全确定为前提的瀑布
模型;第二种是在软件开发初始阶段只能提供基本需求时采用的渐进式开发模型,如原型
模型、
螺旋模型等;第三种是以形式化开发方法为基础的的变换模型。时间中经常将几种模型组
合使用,以便充分利用各种模型的优点。
1.瀑布模型
瀑布模型也称软件生存周期模型。它在软件工程中占有重要地位,它提供了软件开发
的基本框架,这比依靠“个人技艺”开发软件好得多。它有利于大型软件开发过程中
人员的组织、管理,有利于软件开发方法和工具的研究与使用,从而提高了大型软件
项目开发的质量和效率。
瀑布模型的缺点:一是个阶段的划分完全固定,阶段之间产生大量的文档,极大地增
加了工作量;二是由于开发模型是线性的用户只有等到整个过程的末期才能见到开发
成果,从而卡增加了开发的风险;三是早期的错误可能要等到开发后期的测试阶段才
能发现,进而带来严重后果。
2.原型模型
原型模型的主要思想:先借用已有系统作为原型模型,通过“样品”不断改进,
使得最后的产品就是用户所需要的。原型模型通过向用户提供原型获取用户的反
馈,使开发出的软件能够真正反映用户的需求。
原型模型的特点:开发人员和用户在“原型”上达成一致。这样一来,可以减少
设计中的错误和开发中的风险,也减少了对用户培训的时间,而提高了系统的实
用、正确性以及用户的满意程度。缩短了开发周期,加快了工程进度。降低成
本。
原型模型的缺点:当告诉用户,还必须重新生产该产品时,用户是很难接受的。
这往往给工程继续开展带来不利因素。不宜利用原型系统作为最终产品。
3.螺旋模型
螺旋模型采用一种周期性的方法来进行系统开发。这会导致开发出众多的中间版
本。
螺旋模型的优点:
1)设计上的灵活性,可以在项目的各个阶段进行变更。
2)以小的分段来构建大型系统,使成本计算变得简单容易。
3)客户始终参与每个阶段的开发,保证了项目不偏离正确方向及项目的可控性。
。
4)随着项目推进,客户始终掌握项目的最新信息,从而他或她能够和管理层有效
地交互。
5)客户认可这种公司内部的开发方式带来的良好的沟通和高质量的产品。
螺旋模型的缺点:
很难让用户确信这种演化方法的结果是可以控制的。建设周期长,而软件技术发
展比较快,所以经常出现软件开发完毕后,和当前的技术水平有了较大的差距,
无法满足当前用户需求。
螺旋模型的项目适用:
对于新近开发,需求不明确的情况下,适合用螺旋模型进行开发,便于风险控制
和需求变更。
4.基于四代技术的模型
四代语言(4GL)是在大型数据库管理程序基础上发展起来的程序设计语言。
是面向结果的非过程式语言它独立于具体的处理机,有丰富的软件工具的支持,能统
一利用和管理各种数据资源,因此能适应不同水平用户的需要。以4GL为核心的软
件开发技术称为四代技术(4GT).软件开发者在定义软件需求、给出软件规格说
明后,4GT工具能够将开发者编写的软件规格说明自动转换成程序代码,这大大减
少了分析、设计、编码、与测试的时间。实践表明,大多数需求明确的小型应用系
统,特别是信息领域、工程和实时嵌入式小型应用系统采用4GT,在软件开发时
间、成本、质量等方面都会取得比较好的效果。对于大型的软件开发项目,由于在系
统分析、设计、测试、文档生成等方面要做大量的工作,采用4GT虽然可以节省部
分代码生成的时间,但它在整个大型软件系统开发中所占的比例是有限的。
5.变换模型
变换模型是基于形式化规格说明语言及程序变换的软件开发模型。它采用形式
化的软件开发方法对形式化的软件规格说明进行一系列自动或半自动的程序变换,最
后映射为计算机系统能够接受的程序系统。
为了确认形式化规格说明与软件需求的一致性,往往以形式化规格说明为基础开
发一个软件原型,用户可以从人机界面、系统主要功能和性能等几个
方面对原型进行评审。必要时,可以修改软件需求、形式化规格说明和原型,直至原
型被确认为止。
文档评论(0)