- 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章软件工程学概述 - 第1章 软件工程学概述
第1章 软件工程学概述 本章目标 问题 主要内容 软件危机( Software Crisis) 软件工程( Software Engineering) 软件生命周期(Software Life Cycle) 软件过程(Software Process) 内容线索 软件危机 软件发展过程 软件危机 软件危机表现 软件危机产生原因 消除软件危机的途径 软件工程 软件生命周期 软件过程 软件发展过程… 1950’s~1960’s中:规模较小的程序,个体化的软件开发,只有程序清单 1960’s中~1970’中:“软件作坊”,广泛使用产品软件 “软件危机” 出现了 1968年北大西洋公约组织的计算机科学家在联邦德国召开国际会议,讨论软件危机问题,在这次会议上正式提出并使用了“软件工程”这个名词,一门新兴的工程学科就此诞生了 …软件发展过程… 1970’中~1980’s:微处理器的出现并广泛应用 分布式系统、嵌入智能 1980’s~:网络迅速普及 强大的桌面系统、面向对象技术、专家系统、人工智能、神经网络、并行计算、网格计算、虚拟组织 …软件发展过程 软件发展过程中存在的问题 软件开发能力不能满足人们的需要 社会对软件的依赖程度加大,人们普遍关注软件的安全和可靠性 若干年前开发的应用软件经过几十次修改已无人认识它的内部结构,己经不可维护 由于经济原因,嵌入式系统存在许多怪现象,企业不愿意投入资源再生产,而采取打补丁+时髦界面的方法 问题实例 日常生活:零元帐单 国计民生: WWMCCS计算机网络警报 医用系统:Therac-25医用线性加速器,严重过量辐射 军用系统:飞毛腿导弹 身边 浦东移动通讯瘫痪 操作系统 有趣的实验 Google和baidu Excel 问题实例 美国IBM公司在1963年至1966年开发的IBM360机的操作系统。这一项目花了5000人一年的工作量,最多时有1000人投入开发工作,写出了近100万行源程序。......据统计,这个操作系统每次发行的新版本都是从前一版本中找出1000个程序错误而修正的结果。...... 这个项目的负责人F. D. Brooks事后总结了他在组织开发过程中的沉痛教训时说:“......正像一只逃亡的野兽落到泥潭中做垂死的挣扎,越是挣扎,陷得越深,最后无法逃脱灭顶的灾难。......程序设计工作正像这样一个泥潭,......一批批程序员被迫在泥潭中拼命挣扎,......谁也没有料到问题竟会陷入这样的困境......”。IBM360操作系统的历史教训成为软件开发项目的典型事例为人们所记取。 软件危机… 软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题 典型表现: 开发成本和进度的估计常常很不准确 用户对“已完成的”软件系统不满意 “软件质量不可靠 软件常常是不可维护的 软件没有适当的文档资料 软件产品“供不应求” …软件危机 软件成本的比例逐年上升 产生软件危机的原因… 软件的规模加大、复杂性提高、性能增强 软件是逻辑产品,尚未完全认识其本质和特点 软件缺乏“可见性”:管理和控制软件开发过程相当困难 不会“用坏”:错误很可能是在开发时期引入,软件维护通常意味着修改原来的设计,这就在客观上使得软件较难维护 …产生软件危机的原因… 缺乏有效的、系统的开发、维护大型软件项目的技术手段和管理方法 用户和软件开发人员的理解鸿沟 错误的认识和作法:忽视软件需求分析的重要性,认为软件开发就是写程序并设法使之运行,轻视软件维护等 …产生软件危机的原因 消除软件危机的途径… 消除“软件就是程序”的错误观念 一个软件必须由一个完整的配置组成 软件是程序、数据及相关文档的完整集合 文档是开发、使用和维护程序所需要的图文资料 …消除软件危机的途径 软件开发不是某种个体劳动的神秘技巧,而应该是一种组织良好、管理严密、各类人员协同配合、共同完成的工程项目 成功的软件开发技术和方法 软件工具和软件工程支撑环境 内容线索 软件危机 软件工程 软件工程定义 软件工程的本质特征 软件工程的基本原理 软件工程方法学 软件生命周期 软件过程 软件工程 1968NATO(North Atlantic Treaty Organization)会议,德国Garmisch Partenkirchen (加米斯帕腾基辛),计算机科学会议 软件危机?根源?解决途径?软件工程 目的:解决“软件危机” 软件工程定义… “概括地说,软件工程是指导计算机软件开发和维护的一门工程学科。采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来,以经济地开发出高质量的软件并有效地维护它。” …软件工程定义… NATO:软件
文档评论(0)