软件工与程第二章.ppt.pptVIP

  1. 1、本文档共74页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
软件工与程第二章.ppt

实用软件工程 (第3版);美丽的北师大珠海分校(2) 风雨过后是彩虹----赵池龙摄;Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0. Copyright 2004-2011 Aspose Pty Ltd.;第2章 软件生命周期与开发模型 ;2.1 软件生命周期模型概论 ;;为什么不同的软件生命周期模型,可能对应着不同的生命周期。 因为生命周期不同,该软件的开发阶段划分、评审次数、基线标准、产品发布、维护方式都有所不同。 软件生命周期模型能清晰、直观地表达软件开发全过程,明确规定了要完成的主要活动和任务,用来作为软件项目工作的基础。一般来说,若以时间为序,软件的生命周期可详细地划分为几个阶段,如表2-3所示。 ;;现在,让我们来回顾一下第1章中对软件生命周期模型的定义。 在【定义1-2】中指出:软件生命周期模型是指在整个软件生命周期中,软件开发过程应遵循的开发路线图。或者说,软件生命周期模型是软件开发全部过程、活动和任务的结构框架。 显而易见,这个定义不但非常全面,而且十分准确,它符合所有软件生命周期模型对生命周期的定义与解释。 ;2.2 瀑布模型 ;;1.模型的本意 在瀑布模型中,软件开发的各项活动严格按照线性方式进行,当前阶段的活动接受上一阶段活动的工作结果,实施完成所需的工作内容。 对当前阶段活动的工作结果需要进行验证,如果验证通过,则该结果作为下一阶段活动的输入,继续进行下一阶段的活动,否则返回上一阶段修改。 ;瀑布模型认为:项目经理或软件管理人员,只要控制好每级台阶的高度和宽度,在每个台阶处设立里程碑或基线,并组织好对基线的评审与审计,就可以控制好项目的开发成本、进度和质量。 早期的面向过程的结构化分析、结构化设计、结构化编程、结构化测试、结构化维护方法,很适合于瀑布模型。或者说,瀑布模型适合于结构化方法,即面向过程的软件开发方法。 ;2.模型的特点 (1)里程碑或基线驱动,或者说文档驱动。 (2)过程逆转性很差或者说不可逆转,因为根据上游的错误会在下游进行发散性传播的原理,所以逆转将会延误工期,增加成本,造成重大损失。 ;3.选择模型的条件 不是任何软件都可以采用瀑布模型的,软件项目或产品选择瀑布模型,必须满足下列条件: (1)在开发时间内需求没有或很少变化。 (2)分析设计人员对应用领域很熟悉。 (3)低风险项目(对目标、环境很熟悉)。 (4)用户使用环境很稳定。 (5)用户除提出需求以外,很少参与开发工作。 尽管上述条件比较苛刻,但是,软件企业在开发新产品或新项目时,往往还是采用瀑布模型。系统软件和工具软件的开发,也常常采用瀑布模型。 ;4.模型的优点 开发阶段清晰,便于评审、审计、跟踪、管理和控制。 5.模型的缺点 传统的项目组织方法是按顺序完成每个工作流程,即瀑布式生命周期。瀑布只能一个个台阶地往下流,不可能倒着往上流,这就是它致命的缺点。 瀑布式生命周期通常会导致在项目后期,出现“问题堆积”,更可怕的是,错误的传递会采取发散扩大的方式。 ;6. 改进措施 为了克服该模型的缺陷,微软采取严格的里程碑管理制度。 CMM/CMMI则采取阶段评审和不符合项(Noncompliance Items)的动态跟踪制度,只有前一阶段的不符合项全部改正后,才允许开发人员进入后一阶段的工作。 所谓不符合项,就是在评审中发现的问题项,它与Bug既有联系,又有区别。对于这些不符合项,软件管理部门要列出表格,记录在案,确定责任人,限定改正时间,动态跟踪到底。 ;2.3 增量模型 ;;1.模型的本意 要开发一个大的软件系统,先开发其中的一个核心模块(或子系统),然后再开发其他模块(或子系统),这样一个个模块(或子系统)地增加上去,就像搭积木一样,直至整个系统开发完毕为止。 在每增加一个模块前,先要对该模块进行模块测试。通过后再将此模块加入到系统中,然后还要进行系统集成测试。系统集成测试成功后,再增加新的模块。 这样多次循环,直到系统搭建完毕为止。 ;2.模型的特点 (1)任务或功能模块驱动,可以分阶段提交产品。 (2)有多个任务单,这些多个任务单的集合,构成项目的一个总《任务书》,或总《用户需求报告》/《需求规格说明书》。 ;3.选择模型的条件 (1)在整个项目开发过程中,需求都可能发生变化,客户接受分阶段交付。 (2)分析设计人员对应用领域不熟悉,难以一步到位。 (3)中等或高风险项目(工期过紧且可分阶段提交的系统或目标、环境不熟悉)。 (4)用户可参与到整个软件开发过程中。 (5)使用面向对象语言或第四代语言。 (6)软件公司自己有较好的类库、构件库。;4.模型的优点 (1)由于将一个大系统分解为多个小

文档评论(0)

180****5152 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档