第1章软件工程(NEW).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文档。上传文档
查看更多
第1章软件工程(NEW)

教学目标: 了解产生软件危机的原因及解决途径 理解软件工程的基本原理,了解软件工程方法学 ?掌握软件生命周期中各阶段的基本任务 了解软件过程,理解掌握4种典型的软件过程模型 1.什么是软件? 软件=程序 1983年IEEE为软件下的定义是:计算机程序、方法、规程、相关资料以及在计算机上运行程序时所必需的数据。 软件是程序、数据及相关文档的完整集合。 软件的定义 2. 软件的发展 第一阶段——20世纪60年代中期以前 硬件通用,软件专用;程序规模小,编写者和使用者为同一人(同组人),软件基本上的自己设计,自己开发,自己使用。 在这一阶段中,软件还没有系统化的开发方法,属于“个体化”开发方法。 2. 软件的发展 第二阶段——从20世纪60年代中期到70年代末期。 —手工作坊式、产品软件 —小规模设计与制造 —简单问题 —目标单一 —个人技能 2. 软件的发展 第三阶段——20世纪70年代中期到20世纪80年代末 Engineer(工程化开发) —大规模设计与制造 —复杂问题 —多人参与 —需要考虑人员管理、进度控制、成本估计、质量保证等多方面因素 2. 软件的发展 第四阶段——从20世纪80年代末期开始 这是一个软件产业大发展的时期,也是软件工程大发展的时期,人们开始采用面向对象的技术和可视化的集成开发环境。 软件危机与软件工程学 软件工程学的产生要从“软件危机”说起 1968 年,第一届 NAT0 (北大西洋公约组织的计算机科学家的国际会议)会议,“软件工程”的概念作为一种有效解决“软件危机”的途径被正式提出。 什么是软件危机? 软件危机有什么典型表现? 为什么会产生软件危机? 怎么解决软件危机? 软件危机 1.什么是软件危机? 定义 在计算机软件的开发和维护过程中遇到的一系列严重问题。 软件危机包含下述两方面的问题: 如何开发软件,以满足对软件日益增长的需求 如何维护数量不断膨胀的已有软件。 2.软件危机的表现 1.开发成本、进度无法准确估计,延迟交付甚至取消项目的现象屡见不鲜,成功率低。 2.软件危机的表现 2.用户对“已完成的”软件系统不满意的现象经常发生。 3.软件产品的质量往往靠不住,存在错误多、性能低、不可靠、不安全等质量问题 阿丽亚娜(ARIANE 5) 火箭 –1996年6月,欧洲航天局耗资70亿美元,发射37秒后爆炸 –2名法国士兵当场死亡 –发射失败的原因在于:64位浮点数转换成16位整数时产生溢出 爱国者导弹 –1991年2月,一次对抗失利中28名美国士兵丧生 –问题的症结在于:导弹软件包含一个累加计时误差 软件常常是不可维护的 程序中的错误难以改正, 程序不能适应硬件环境的改变, 不能应用户要求增加新的功能 2.软件危机的表现 软件通常没有适当的文档资料 文档的作用: 软件开发管理人员:用于管理和评价软件开发工程的进展状况 软件开发人员:用于开发人员交流的工具,还可用于对各个阶段的工作进行周密思考、全盘权衡,开发早期发现错误和不一致性,便于及时加以纠正 软件维护人员:软件维护的依据 6.软件成本在计算机系统的整个成本中所占比例越来越大。 成本比例 3. 产生软件危机的原因 主要两个原因: 与软件本身的特点有关 抽象性 软件生产没有明显的制造过程,难以衡量开发进展,也难以控制软件质量。 问题的隐蔽性 没有硬件的磨损、老化问题,但存在开发早期在分析、设计阶段的错误,修改难度较大。 3. 产生软件危机的原因 与软件开发与维护的方法不正确有关(主要原因) —忽视软件需求分析的重要性,认为软件开发就是写程序并设法使之运行 —轻视软件维护 其他产生软件危机的原因 软件开发尚未完全摆脱手工艺的开发方式。 软件成本相当昂贵,主要依靠大量复杂的、高强度的脑力劳动 软件的开发和运行常常受到计算机系统的限制,对计算机系统有着不同程度的依赖性。 软件的“可移植性”就是指的软件对硬件的依赖程度。好的可移植性依赖少。 4. 消除软件危机的途径 彻底消除“软件就是程序”的错误观念。 充分认识到软件开发是一种组织良好、管理严密、各类人员协同配合、共同完成的工程项目,不是个人独立的劳动。 推广和使用在实践中总结出来的软件开发的成功技术和方法。 开发和使用更好的软件工具 软件工程是指导计算机软件开发和维护的一门工程学科。采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来,以经济地开发出高质量的软件并有效地维护它,这就是软件工程。 其他定义(1) 1968年在第一届NATO会议上曾经给出了软件工程的一个早期定义: “软件工程就是为了经济地获得可靠的且能在实际机器上有效地运行的软件,而建立和使用完善

文档评论(0)

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

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

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档