软件工程课程复习生存周期.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文档。上传文档
查看更多
软件工程课程复习生存周期.ppt

软件生存周期及模型 第 二 讲 软件生存周期(Life cycle) 软件定义时期 软件开发时期—系统设计 软件开发时期—系统实现 软件维护时期 交互设计 技术审查和管理复审 软件生存周期模型概念 生命周期各阶段的基本任务 生命周期的8各阶段: 问题定义→可行性研究→需求分析→总体设计(概要设计)→详细设计→编码和单元测试→综合测试→软件维护 各阶段的基本任务如下图。 瀑布模型 瀑布模型特点 是一个理想化过程。会掩饰项目中真正的风险,当你太晚发现它们时已无济于事。 过程逆转性很差,因为上游的错误会在下游进行发散性传播。所以逆转会造成很大损失。 缺乏灵活性;特别是无法解决软件需求不明确或不准确的问题后期错误,修正代价高 。 适用于:功能和性能明确、完整、无重大变化的软件开发,并且分析设计人员对应用领域很熟悉,项目风险低,用户很少参与开发工作的项目。 增量模型 增量模型 原型模型 快速原型模型 快速原型方法是原型模型在软件分析、设计阶段的应用,用来解决用户对软件系统在需求分析上的模糊认识。是用来获取用户需求的,或是用来试探某种设计是否有效。一旦需求或设计确定下来,原型就将被抛弃。 原型开发过程 快速原型模型开发步骤 原型模型的评价 喷泉模型 迭代模型(RUP模型) 螺旋模型 各种模型的比较 软件生存周期模型的选择 软件生存周期模型的剪裁 软件生存周期模型的剪裁 总结 掌握:软件生存期各个阶段的基本任务;软件生存期模型。 了解:软件生存期的各种模型及特点。 课堂练习 2)如果要开发“图书馆管理信息系统”,你认为采用什么开发模型比较合适?请说明理由。 答:开发“图书馆管理信息系统”采用瀑布模型比较合适。 因为瀑布模型在开发过程中各阶段非常清晰,便于评审、跟踪、管理和控制,并且“图书馆管理信息系统”也基本符合瀑布模型的条件: (1)“图书馆管理信息系统”在开发过程中需求变化很少。 (2)分析和设计人员对“图书馆管理信息系统”比较熟悉。 (3)“图书馆管理信息系统”是低风险项目。 (4)“图书馆管理信息系统”的用户使用环境比较稳定。 (5)“图书馆管理信息系统”的用户除提出需求以外,很少参与开发工作。 课堂练习 3)假设你被任命为一家软件公司的项目负责人,你的工作是管理该公司已被广泛应用的字处理软件的新版本开发。由于市场竞争激烈,公司规定了严格的完成期限并且已对外公布。你打算采用哪种软件生命周期模型?为什么? 对这个项目的一个重要要求就是严格按照已对外公布了的日期完成场频开发工作。考虑开发速度选择增量模型可以并行完成开发工作。 第一,旧版本已经相当于一个原型,通过收集用户对旧版本的反省,较容易定义新版本需求,所以无需原型; 第二,公司软件工程师对于字处理软件很熟悉; 第三,该软件收到广泛用户的喜欢,可能还要开发新版本,应该把软件的体系结构设计成开放式的,有助于改进和扩充。 实例一 ?某公司计划开发二维 CAD 软件 –软件功能需求 ?基本功能与国外 AutoCAD 产品一致 ?新增加功能三个功能:智能画线、智能标注、读取.dwg 文件 ?问题:该软件开发适于采用什么过程? 增量模型 实例二 ? 哈尔滨市交通设施设计与漫游系统 – 用户的要求 (1)完成交通设施的二维图纸设计 (2)在二维设计的基础上模拟显示设计的效果 – 现实情况 (1)二维设计部分已有工作基础,新功能开发量不大 (2)设计仿真与漫游显示部分需求不确定 (3)用户要求开发方提出可行的方案 ? 问题:采用什么方法开发仿真与漫游子系统? 快速原型模型 实例三 ? 空中交通控制系统 – 在系统运行之前需要进行安全性和可靠性的检验 ? 问题:该软件开发适于采用什么过程? 螺旋模型 1)模型应符合软件本身的性质(规模、复杂性) 2)模型应满足软件应用系统整体开发进度要求 3)模型应有可能控制并消除软件开发风险 4)模型应有可用的计算机辅助工具(如快速原型工具)的支持 5)模型应与用户和软件开发人员的知识和技能相匹配 6)模型应有利于软件开发的管理与控制 在一个成熟的IT企业或软件组织内部,通常要根据各种软件开发模型的特点,结合本单位的开发经验和行业特点的具体实际,还需要定制适合本单位的“生存周期模型裁剪指南”,有针对性地对选定的软件开发模型中定义的生存周期,进行适当剪裁,使它完全适合于本单位的需求。 增量模型 把软件产品分解成一系列的增量构件,在增量开发迭代中逐步加入。 每个构件由多个相互作用的模块构成,并且能够完成特定的功能。 增量开发方法的新演进版本叫做 “极限程序设计(Extreme Programming)”。 定义 基本需求 将需求赋予增量构件 设计系统 体系结构 开发 增量构件 确认 增量构件 集成 增量构件 确认系统 增量模

文档评论(0)

只做精品 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档