软件工程课程复习 2_生存周期.pptVIP

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

软件生存周期及模型;软件生存周期及模型; 要求;2.1 软件生存周期概论 概述:任何有生命的动物、植物和人,都有一个生存周期(Life Cycle)。 例如,人的生存周期。 ;周期序号;软件生存周期(Life cycle);软件定义时期;软件开发时期—系统设计;软件开发时期—系统实现;软件维护时期;交互设计;技术审查和管理复审 ;技术审查和管理复审;? ;软件生存周期模型概念;;生命周期各阶段的基本任务;问题定义;开发团队中的角色;瀑布模型 瀑布模型(Waterfall Model)又称流水式过程模型。它可以形象地用阶梯瀑布描述,水由上向下一个阶梯接着一个阶梯地倾泻下来,最后进入一个风平浪静的大湖,即软件企业的产品库,如图2-1所示。;特点: 上一阶段的变换结果是 下一阶段变换的输入, 相邻两个阶段具有因果 关系,紧密相联。;瀑布模型;瀑布模型特点;优点:    1) 阶段间具有顺序性和依赖性    2) 推迟实现的观点 3) 质量保证的观点。 缺点:   1)各个阶段的划分完全固定,阶段之间产生大量的文档,极大增加了工作量   2)由于开发模型是线性的,用户只有等到最后才能看到开发成果,中间提出的变更要求很难响应,增加风险   3)早期错误可能要到开发后期或测试阶段才发现,从而带来严重后果;适合的软件: 软件的需求在项目开始前很明确,在开发时期内没有或很少有需求变化; 解决方案在软件开始前也很明确,开发者对应用领域很熟 低风险项目,如开发者对目标和开发环境很熟悉; 除了在早期阶段,用户对开发工作参与很少; 系统编程要求使用面向过程的程序设计语言 类似的软件如: 公司的财务系统 库存管理系统 短期项目;增量模型;第1次集成 ;增量模型;增量模型;增量模型;优点:   1)将整个产品分解为若干个构件进行逐步交付,因此软件开发可以很好的适应需求的变化。   2)用户可以看到所开发软件的可运行中间版本降低风险 缺点:   1)由于各个构件的逐渐并入已有的软件体系中,所以加人构件必须不破坏已构造好的系统,这需要系统具备开放式体系结构。   2)开发过程中,需求的变化使得软件过程的控制失去整体性;模型适合的项目: 项目开始,明确了需求的大部分,但是需求可能会发生变化 对于市场和用户把握不是很准,需要逐步了解 对于有庞大和复杂功能的系统进行功能改进,就需要一步一步实施的。 ;银行业务系统的生存期实例;原型模型;快速原型模型;原型开发过程;快速原型模型开发步骤;原型模型的评价;原型模型的处理过程 ;项目的需求在项目开始前不明确 需要减少项目需求的不确定性 类似的项目如: 确定显示界面 第一次开发的产品,验证可行性 ;【例 2-1】1996年8月,一名高级工程师带领一个熟练的程序员,来到营口港务局通信中心,开发该中心的电话业务信息管理系统。当时,虽然他们手中并无什么“原型”,但是他俩一个是数据库设计高手,一个是编程高手,所以俩人分工负责,一人设计数据库,一人编写程序,双方配合默契,只用一个多月时间,就圆满地完成了开发任务,收回了全部开发费用,获得了客户的好评。这是一个典型的“快速原型法”例子。 快速原型法选择的条件是:项目组中有数据库分析和设计的专家,有面向对象编程的专家,文档制作有成熟的模板,而且系统或项目又不是非常大。;喷泉模型;迭代模型(RUP模型);强调项目的可控性 是一个用例驱动的基于UML和构件式架构的迭代增量式开发过程;RUP的目标;产品交付给用户后用户可能不满意; 到了预定的交付日期软件可能还未开发出来; 实际的开发成本可能超过预算; 产品完成前一些关键的开发人员“跳槽”了; 产品投入市场之前竞争对手发布了一个功能相近、价格更低的软件等。;螺旋模型;螺旋模型的基本思想;可看作在每个阶段之前都增加了风险分析过程的快速原型模型。;优点: 强调可选方案和约束条件从而支持软件的复用,有助于将软件自质量作为特殊目标熔入产品开发中。 缺点: 强调风险分析,但要求许多客户接受和相信这种分析并作出相应反映是不容易的,因此,这种模型往往适用于内部大规模软件开发。 如果执行风险分析会大大影响项目利润,进行分析风险便毫无意义,因此只适用于大规模软件。 软件开发人员应该擅长寻找可能的风险,准确分析风险,否则会带来更大的风险。;适合的项目 风险是主要的制约因素 不确定因素和风险限制了项目进度 用户对自己的需求也不是很明确 需要对一些基本的概念进行验证 可能发生一些重大的变更 项目规模很大 项目中采用了新技术;各种模型的比较; 小 结;瀑布模型;增量模型;快速原型模型;螺旋模型;课堂练习;课堂练习;课堂练习; 实例一 ?某公司计划开发二维 CAD 软件 –软件功能需求 ?基本功

文档评论(0)

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

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

1亿VIP精品文档

相关文档