软件工程11课件.ppt

  1. 1、本文档共49页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
软件工程11课件.ppt

第七章 软件工程概述 第一节 软件工程的基本概念 第二节 软件工程开发模型 第三节 软件开发工程过程 第一节 软件工程的基本概念 1、软件工程 2、软件工程过程 3、软件工程的生存周期 1、软件工程 软件工程这一概念,主要是针对20世纪60年代的“软件危机”而提出的,自这一概念提出以来,围绕软件项目,开展了有关开发模型、方法以及支持工作的研究。 1.软件工程的定义 软件工程是指导计算机软件开发和维护的一门工程科学。采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来,以经济地开发出高质量的软件并有效地维护它,这就是软件工程。 1、软件工程 1、软件工程 随着软件工程的发展过程,出现过对软件工程的各种各样的定义,其中的一些典型的定义有: 1968年在第一届NATO会议上曾经给出了软件工程的一个早期定义:“软件工程就是为了经济地获得可靠的且能在实际机器上有效地运行的软件,而建立和使用完善的工程原理。” P.Wegner和B.Boehm认为:软件工程是科学知识在设计和构造计算机程序以及开发、运作和维护这些程序所要求的有关文档编制中的实际应用。 1983年IEEE(国际电气与电子工程师协会)的软件工程术语汇编中,将软件工程定义为:对软件开发、运作、维护、退役的系统研究方法。 1、软件工程 1993年IEEE进一步给出了一个更全面更具体的定义:“软件工程是:①把系统的、规范的、可度量的途径应用于软件开发、运行和维护过程,也就是把工程应用于软件;②研究①中提到的途径。” 从以上对软件工程的不同定义中,我们可以看到对其内容的理解是逐步深入的。发展到今天,软件工程已是一门交叉性学科,它运用计算机科学、数学及管理科学等原理,借鉴传统工程的原则、方法来创建软件,从而达到提高质量、降低成本的目的。 1、软件工程 2.软件工程的基本原理 1983年B.Weohm提出了软件工程的七条基本原理,他认为,这7条原理是确保软 件产品质量和开发效率的最小集合。它们是相互独立、缺一不可的最小集合,同时,它们又是完备的。 1、软件工程 这七条原理是: ①用分阶段的生命周期计划严格管理 这一条是吸取前人的教训而提出来的。统计表明,50%以上的失败项目是由于计划不周而造成的。在软件开发与维护的漫长生命周期中,需要完成许多性质各异的工作。这条原理意味着,应该把软件生命周期分成若干阶段,并相应制定出切实可行的计划,然后严格按照计划对软件的开发和维护进行管理。在整个软件生命周期中应指定并严格执行六类计划,即项目概要计划、里程碑计划、项目控制计划、产品控制计划、验证计划和运行维护计划。 1、软件工程 ②坚持进行阶段评审 统计结果显示,大约63%的错误是在编码之前造成的,错误发现的越晚,改正它要付出的代价就越大。因此,软件的质量保证工作不能等到编码结束后再进行,应坚持进行严格的阶段评审,以便尽早发现错误。 ③实行严格的产品控制 在软件开发过程中麻烦的事情之一就是改动需求,因为改变一项需求需要付出较高的代价。但是实践告诉我们:需求的改动往往是不可避免的。由于各种客观的需要,不能禁止用户提出改变需求的要求,而只能依靠科学的产品控制技术来适应这种要求。 1、软件工程 ④采纳现代程序设计技术 从提出软件工程的概念开始,人们主要的精力都用于研究各种新的程序设计技术。从20世纪60年代的结构化软件开发技术,以及随后发展的结构化分析和结构化设计技术,已成为大多数人认为的先进程序设计技术。再加上后来又提出的面向对象技术,从第一、第二代语言到第四代语言等等。总之采用先进的技术即可以提高软件开发的效率,又可以减少软件维护的成本。 1、软件工程 ⑤结果应能清楚地审查 软件产品不同于一般的物理产品,软件是一种看不见、摸不着的逻辑产品。软件开发小组的工作进展情况可见性差,难于评价和管理。为了更好地进行管理,应根据软件开发的总目标及完成期限,尽量明确地规定开发小组的责任和产品标准,从而使所得到的标准能清楚地审查。 1、软件工程 ⑥开发小组的人员应少而精 开发人员的素质和数量是影响软件质量和开发效率的重要因素,应该少而精。这一条基于两点原因:高素质开发人员的效率比低素质开发人员的效率要高几倍到几十倍;另一方面,开发工作中犯的错误也要少的多。当开发小组为N人时,可能的通讯信道为N(N-1)/2,可见随着人数N增大,通讯开销将急剧增大。 1、软件工程 ⑦承认不断改进软件工程实践的必要性 上述六条原理只是对现有经验的总结和归纳,并不能保证赶上技术不断前进发展的步伐。而根据第七条原理,不仅要积极采纳新的软件开发技术,还要注意不断总结经验,收集进度和消耗等数据,进行出错类型和问题报告统计。这些数据既可以用来评估软件技术的效果,也可以用来指

文档评论(0)

带头大哥 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档