- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
软件工程导论 第1章 软件工程概述.ppt
36 图 1.3 传统的瀑布模型 37 1.4.1 瀑布模型 几个特点: 阶段间具有顺序性和依赖性 必须等前一阶段的工作完成之后,才能开始后一阶段的工 作; 前一阶段的输出文档就是后一阶段的输入文档。 推迟实现的观点 清楚地区分逻辑设计与物理设计,尽可能推迟程序的物理 实现 质量保证的观点 每个阶段都必须完成规定的文档。 每个阶段结束前都要对所完成的文档进行评审。 38 1.4.1 瀑布模型 优点: 可强迫开发人员采用规范的方法(如结构化技术); 严格地规定了每个阶段必须提交的文档; 要求每个阶段交出的所有产品都必须经过质量保证小 组的仔细验证。 缺点: 由于瀑布模型几乎完全依赖于书面的规格说明,很可 能导致最终开发出的软件产品不能真正满足用户的需 要。 开发周期长。 前期不能出错。 39 图 1.4 实际的瀑布模型 当在后面阶段发现前面阶 段的错误时,需要沿图中 左侧的反馈线返回前面的 阶段,修正前面阶段的产 品之后再回来继续完成后 面阶段的任务 (图中实线箭头表示开发过程,虚线箭头表示维护过程) 40 1.4.2 快速原型模型 Rapid Prototype Model 所谓快速原型是快速建立起来的可以在计算机上 运行的程序,它所能完成的功能往往是最终产品 能完成的功能的一个子集。 过程: 快速建立一个能反映用户主要需求的原型系统 用户试用,提出意见 修改原型,直到用户满意 书写规格说明文档 开发软件 41 图 1.5 快速原型模型 (图中实线箭头表示开发过程, 虚线箭头表示维护过程) * 第 1 章 软 件 工 程 概 述 1.0 1.1 1.2 1.3 1.4 1.5 软件 软件危机 软件工程 软件生命周期 软件过程 小结 习题 5 1.0.1 软件的概念 软件是计算机系统中与硬件相互依存的另一部 分,它是包括程序、数据及其相关文档的完整 集合。 程序是按事先设计的功能和性能要求编写的指令序 列; 数据是使程序能正常操纵信息的数据结构; 文档是与程序开发、维护和使用有关的图文材料。 6 1.0 软件 7 1.0.2 软件的特点 软件是一种逻辑实体。 软件的开发,是人的智力的高度发挥,而不是传统 意义上的硬件制造,是一个复杂的过程。 软件维护与硬件的维修有着本质的差别。 软件的开发和运行常常受到计算机系统的限制,对 计算机系统有着不同程度的依赖性。 软件的开发至今尚未完全摆脱手工艺的开发方式, 使软件的开发效率受到很大限制,成本非常高昂。 8 1.0.3 软件的分类 1. 基于软件功能的划分 系统软件 应用软件 支撑软件 2. 基于软件工作方式的划分 实时处理软件 分时软件 交互式软件 批处理软件 9 1.1 软件危机 计算机系统已经经历了四个不同的发展阶段: 20世纪60年代中期以前,第一代,个体化。 从20世纪60年代中期到70年代中期,第二代,小作 坊。 20世纪70年代中期到80年代中期,第三代,软件工 程阶段。 从20世纪80年代中期至今,第四代,软件产业在世 界经济中已经占有举足轻重的地位。 软件危机是指在计算机软件的开发和维护过程 中所遇到的一系列严重问题。(20世纪60年代 末70年代初) 这些问题绝不仅仅是不能正常运行的软件才具 有的,实际上,几乎所有软件都不同程度地存 在这些问题。 10 1.1.1 软件危机的含义 对软件开发成本和进度的估计常常很不准确。 用户对“已完成的”软件系统不满意的现象经常发生。 软件产品的质量往往靠不住。 软件常常是不可维护的。 软件通常没有适当的文档资料。 软件成本在计算机系统总成本中所占的比例逐年上 升。 软件开发生产率提高的速度,既跟不上硬件的发展速 度,也远远跟不上计算机应用迅速普及深入的趋势。 11 1.1.2 软件危机的表现 在软件开发和维护的过程中存在这么多严重 问题,一方面与软件本身的特点有关,另一 方面也和软件开发与维护的方法不正确有 关。 12 1.1.3 产生软件危机的原因 13 图 1.1 引入同一变动付出的代价随时间变化的趋势 14 首先应该对计算机软件有一个正确的认识。 应该推广使用在实践中总结出来的开发软件的 成功的技术和方法 研究探索更好更有效的技术和方法 应该开发和使用更好的软件工具。 软件工程正是从管理和技术两方面研究如何 更好地开发和维护计算机软件的一门新兴学 科。 1.1.4 消除软件危机的途径 1.2 软件工程 1.2.1 什么是软件工
文档评论(0)