[软件工程导论.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文档。上传文档
查看更多
[软件工程导论

软件工程导论 孙旭光 E-MAIL:sunxuguang@ QQ:1938495 MSN:sd_xgsun@ 如何学习好课程 网络是知识的重要来源 清华、北大等名校的讲课视频 国家级、部级精品课程 卡内基梅隆、麻省理工、加州伯克利等世界顶级大学的开放课件和视频 面对面的交流,直截了当的交流思想、学习知识 学会如何提问 学习的是解决问题的方法 8个相同的球中有1个球质量偏轻,用天平称两次找出轻的球? 传统思维:三次,二叉树==》两次,三叉树 参考书目 1、《软件工程》 张海藩 人民邮电出版社 2、《敏捷开发方法—原则、模式与实践》 Robert C. Martin著 清华大学出版社 3、《人月神话》 弗雷德里克·布鲁克斯著 清华大学出版社 本节课内容 1、什么是软件 2、软件危机 3、软件开发中常见的某些观点辨析 4、如何消除软件危机 5、软件工程的定义 6、举例说明软件工程是技术和管理的结合 7、软件生命周期 8、软件工程的基本原理 参考书: 《软件工程》1.1 、1.2.1、 2.1、1.2.2 什么是软件 这里讨论的软件是几十人、上百人、上千人合作完成的软件,如Windows操作系统。 开发软件不等于编写程序 开发软件应该完成的工作远远多于编写程序应该完成的工作 软件=程序 + 数据 + 文档 什么是软件危机 软件危机的最突出的爆发: 60年代美国IBM公司开发IBM360机的操作系统,化了5000人年的工作量,完成时间一再推迟,结果却不理想。 项目负责人Brook后来对整个过程反思,总结经验和教训,写成了《人月神话》,被称为程序员的“圣经”。 软件工程学由此开始研究。 软件危机的表现 对软件开发成本和进度的估计常常很不准确。 实际成本比估计成本高出几倍甚至十几倍,实际进度比预期进度拖延几个月甚至几年的现象并不罕见。 用户对“已完成的”软件系统不满意甚至拒绝接受的现象经常发生。 软件产品的质量往往靠不住。 软件常常是不可维护的。 很多程序中的错误都非常难以改正。 软件通常没有适当的文档资料。 缺乏必要的文档资料或者文档资料不合格,必然给软件开发和维护带来许多严重的困难和问题。 软件开发生产率提高的速度,既跟不上硬件的发展速度,也远远跟不上计算机应用迅速普及的趋势。 关于软件开发,常见的一些观点,我们看看是否正确: “有一个对目标的概括描述就足以着手编写程序了,许多细节可以在以后再补充。” “所谓软件开发就是编写程序并设法使它运行。” “用户对软件的要求不断变化,然而软件是柔软而灵活的,可以轻易地改动。” “软件投入生产性运行以后需要的维护工作并不多,而且维护是一种很容易做的简单工作。” 软件维护的费用占软件总费用的55%-70% 不完善的系统定义往往是导致软件项目失败的主要原因。 只有质量差的软件产品才需要维护。 在软件开发的过程中,若能推迟暴露其中的错误,则为修复和改正错误所花费的代价就会降低。 只要我们写出了程序并使其正常运行,我们的工作就结束了。 我们拥有一套讲述如何开发软件的书籍,书中充满了标准与示例,可以帮助我们解决软件开发中遇到的任何问题。 在项目计划发生延迟的情况下,增加更多的程序员一定会加快进度。 文档是软件产品的一部分,没有文档的软件就不称其为软件。 一个成功的项目唯一提交的就是运行程序。 如何消除软件危机 充分认识到软件开发不是某种个体劳动的神秘技巧,而应该是一种组织良好、管理严密、各类人员协同配合共同完成的工程项目。 充分吸取和借鉴人类长期以来从事各种工程项目所积累的行之有效的原理、概念、技术和方法,特别要吸取几十年来人类从事计算机软硬件研究和开发的经验教训。 推广使用在实践中总结出来的开发软件的成功的技术和方法,并且研究探索更好更有效的技术和方法,尽快消除在计算机系统早期发展阶段形成的一些错误概念和做法。 开发和使用更好的软件工具。 总之,为了消除软件危机,既要有技术措施(方法和工具),又要有必要的组织管理措施。软件工程正是从管理和技术两方面研究如何更好地开发和维护计算机软件的一门新兴学科。 软件工程的定义 概括地说,软件工程是指导计算机软件开发与维护的工程学科。它采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明是正确的管理技术和目前能够得到的最有效的技术与方法结合起来,以经济地开发出高质量的软件并有效地维护它,这就是软件工程。 举例:晨后综合症的解决 “晨后综合症”: 工作了一整天,终于完成了某项工作后回家,不料第二天早晨一来却发现那项功能不再工作了。原因是什么呢?因为有人比你走的更晚,并且更改了你所依赖的某些东西! 解决第一步(技术):设计出良好的结构 解决第二步

文档评论(0)

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

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

1亿VIP精品文档

相关文档