二章软件过程模型.pptVIP

  1. 1、本文档共37页,可阅读全部内容。
  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文档。上传文档
查看更多
二章软件过程模型

第二章 软件过程模型 2.1 软件过程的基本概念 1)软件过程(Software Processes) 也称为软件生存周期过程或软件过程组,是指软件生存周期中的一系列相关过程(Process)。过程就是活动的集合,活动是任务的集合,任务则起到把输入加工成输出的作用。活动的执行可以是顺序的、迭代的(重复的)、并行的、嵌套的或者是有条件地引发的。 软件过程应当包含以下3个含义: 个体含义:即指软件或系统在生存周期中的某一类活动的集合,如获取过程、供应过程、开发过程、管理过程等。 整体含义:即指软件或系统在所有上述含义下的软件过程的总体。 工程含义:即指解决软件过程的工程,它应用软件工程的原则、方法来构造软件过程模型,并结合软件的具体要求进行例化,以及在用户环境中运作,以此进一步提高软件开发率、降低成本。 工程含义还可以包含如下几个方面: 软件过程不仅要有工程视面,也要有合同视面(包括系统视面和用户视面)。 软件过程包含管理视面。 软件过程应包含运作视面。 不同角色由于其视面不同,所参与的软件过程亦不相同。 2)软件生命周期 原则:低耦合,高聚合 阶段:软件定义、软件开发、软件维护 软件定义: 确定软件开发总目标;确定工程的可行性;导出实现策略及系统功能;估计资源和成本,并且制定工程进度表。 问题定义、可行性研究、需求分析 软件开发: 具体设计和实现在前一个时期定义的软件。 总体设计、详细设计、编码和单元测试、综合测试 软件维护: 使软件持久地满足用户的需要。 1 .问题定义 “要解决的问题是什么?” 确定用户要求解决的性质、工程的目标和规模。 可行性研究 “对于上一个阶段所确定的问题有行得通的解决办法吗?” 经济可行性、技术可行性、法律可行性、不同的方案 2. 需求分析 “为了解决这个问题,目标系统必须做什么” 确定系统必须具有的功能和性能,系统要求的运行环境,并且预测系统发展的前景。 规格说明书(specification)/需求说明书 3 .总体设计(概要设计) “概括地说,应该怎样实现目标系统?” 设计出实现目标系统的几种可能的方案。推荐一个最佳方案。 4. 详细设计(PAD、HIPO、PDL) “应该怎样具体地实现这个系统呢?” 设计出程序的详细规格说明。 5. 编码 写出正确的容易理解、容易维护的程序模块 6. 测试 单元测试:仔细测试编写出的每一个模块。 集成测试和验收测试,现场测试或平行运行 7. 软件维护 使系统持久地满足用户的需要。 改正性维护,适应性维护,完善性维护,预防性维护。 PAD图:问题分析图 HIPO图 2.软件过程模型 软件过程模型,也叫软件生存期模型,反映软件生存周期内各种工作应如何组织以及各个阶段应如何衔接。 软件过程模型是跨越整个软件生存周期的系统开发、运作、维护和实施的全部工作和任务的结构框架。 软件开发: 状态描述、问题定义、技术开发、解决集成 1)瀑布模型 (Waterfall model) 瀑布模型又称生存周期模型,由B.M.Boehm提出,是软件工程的基础模型。 2)V模型 (V model) V模型是瀑布模型的一种变形。(强调测试) 3)快速原型模型(Fast Prototype Model) 快速原型模型的应用范围: 对所开发的领域比较熟悉而且有快速的原型开发工具 项目招投标时,可以以原型模型作为软件的开发模型 进行产品移植或升级时,或对已有产品原型进行客户化工作时,原型模型是非常适合的 比较 瀑布模型—试图一次就获得正确的产品 快速原型—频繁变化,然后废弃 4)增量模型(Incremental Model) 又称渐增模型或有计划的产品改进模型,从一组给定的需求开始,通过构造一系列可执行中间版本来实施开发活动。 5)螺旋模型(Spiral Model) 1988年,Barry Boehm正式发表了软件系统开发的“螺旋模型”,它将瀑布模型和快速原型模型结合起来,强调了其他模型所忽视的风险分析。 该模型通常用来指导大型软件项目的开发,它将开发划分为制订计划、风险分析、实施开发和客户评估四类活动。 简化版本:瀑布模型+风险分析 每个阶段之前 确定目标,可供选择的办法及其限制条件 风险分析 每个阶段之后 评估 计划下一阶段 6)喷泉模型(Fountain Model) 在面向对象方法中,提出了与瀑布模型相对应的喷泉模型,该模型的主要特点是认为软件生命周期的各个阶段是相互重叠和多次反复的。 喷泉模型主要支持面向对象的开发方法。系统某个部分常常重复工作多次,相关功能在每次迭代中随之加入演进的系统。 在开发活动,即分析、设计和编码之间不存在明显

文档评论(0)

118books + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档