软件工程导论课件(第六版)(张海潘编著)(1-13章).ppt

软件工程导论课件(第六版)(张海潘编著)(1-13章).ppt

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

软件工程导论(第6版);迄今为止,计算机系统已经经历了4个不同的发展阶段,但是,人们仍然没有彻底摆脱“软件危机”的困扰,软件已经成为限制计算机系统发展的瓶颈。 为了更有效地开发与维护软件,软件工作者在20世纪60年代后期开始认真研究消除软件危机的途径,从而逐渐形成了一门新兴的工程学科——计算机软件工程学。 ;;1.1 软件危机;1.1.1 软件危机的介绍;软件危机的典型表现;软件危机的典型表现;1.1.2 产生软件危机的原因;与软件本身特点有关;软件开发与维护的方法不正确有关;1.1 软件危机;1.1.3 消除软件危机的途径;;1.2.1 软件工程的介绍;1968年在第一届NATO会议上曾经给出了软件工程的一个早期定义:“软件工程就是为了经济地获得可靠的且能在实际机器上有效地运行的软件,而建立和使用完善的工程原理。”;软件具有的本质特性;1.2.2 软件工程的基本原理;1.2.3 软件工程方法学;1.2 软件工程;传统方法学 概念:传统方法学也称为生命周期方法学或结构化范型。它采用结构化技术(结构化分析、结构化设计和结构化实现)来完成软件开发的各项任务,并使用适当的软件工具或软件工程环境来支持结构化技术的运用。;传统方法学的特点: 传统方法学把软件生命周期的全过程依次划分为若干个阶段,然后顺序地完成每个阶段的任务。 每个阶段的开始和结束都有严格标准,对于任何两个相邻的阶段而言,前一阶段的结束标准就是后一阶段的开始标准。;在每一个阶段结束之前都必须进行正式严格的技术审查和管理复审。 审查的一条主要标准就是每个阶段都应该交出“最新式的”(即和所开发的软件完全一致的)高质量的文档资料,从而保证在软件开发工程结束时有一个完整准确的软件配置交付使用。;采用生命周期方法学可以大大提高软件开发的成功率,软件开发的生产率也能明显提高。 目前,传统方法学仍然是人们在开发软件时使用得十分广泛的软件工程方法学。;面向对象方法学: 概念:与传统方法相反,面向对象方法把数据和行为看成是同等重要的,它是一种以数据为主线,把数据和对数据的操作紧密地结合起来的方法。;四个要点;面向对象方法学基本原则: 尽量模拟人类习惯的思维方式,使开发软件的方法与过程尽可能接近人类认识世界、解决问题的方法与过程,从而使描述问题的问题空间(也称为问题域)与实现解法的解空间(也称为求解域)在结构上尽可能一致。;面向对象方法学: 优点: 降低了软件产品的复杂性,提高了软件的可理解性,简化了软件的开发和维护工作。 面向对象方法特有的继承性和多态性,进一步提高了面向对象软件的可重用性。;;1.3 软件生命周期;1.3 软件生命周期;1.3 软件生命周期;1.3 软件生命周期;;1.4 软件过程;1.4.1 瀑布模型;图1.2 传统的瀑布模型;按照传统的瀑布模型开发软件,有下述的几个特点。 阶段间具有顺序性和依赖性: 两重含义: ①必须等前一阶段的工作完成之后,才能开始后一阶段的工作; ②前一阶段的输出文档就是后一阶段的输入文档,因此,只有前一阶段的输出文档正确,后一阶段的工作才能获得正确的结果。;b) 推迟实现的观点 瀑布模型在编码之前设置了系统分析与系统设计的各个阶段,分析与设计阶段的基本任务规定,在这两个阶段主要考虑目标系统的逻辑模型,不涉及软件的物理实现。;c) 质量保证的观点: 软件工程的基本目标是优质、高产。为了保证所开发的软件的质量,在瀑布模型的每个阶段都应坚持两个重要做法。 每个阶段都必须完成规定的文档,没有交出合格的文档就是没有完成该阶段的任务。 每个阶段结束前都要对所完成的文档进行评审,以便尽早发现问题,改正错误。;传统的瀑布模型过于理想化了,事实上,人在工作过程中不可能不犯错误。实际的瀑布模型是带“反馈环”的,如系统图1.3所示。;1、图中实线箭头表示开发过程,虚线箭头表示维护过程。、 2、实际的瀑布模型当在后面阶段发现前面阶段的错误时,需要沿图中左侧的反馈线返回前面的阶段,修正前面阶段的产品之后再回来继续完成后面阶段的任务。;瀑布模型有许多优点: 可强迫开发人员采用规范的方法(例如,结构化技术); 严格地规定了每个阶段必须提交的文档; 要求每个阶段交出的所有产品都必须经过质量保证小组的仔细验证。;1.4.2. 快速原型模型;图1.4 中实线箭头表示开发过程 虚线箭头表示维护过程;快速原型模型是不带反馈环的,这正是这种过程模型的主要优点: 软件产品的开发基本上是线性顺序进行的。能基本上做到线性顺序开发的主要原因如下:;1.4 软件过程;1.4.3. 增量模型;图1.5 增量模型;优点:;1.4 软件过程;1.4 软件过程;1.4.4 螺旋模型;图1.7 简单得螺旋模型;图1.8完整的螺旋模型;1.4.5. 喷泉模型; 图中代表不同阶段的圆

文档评论(0)

shuwkb + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档

相关课程推荐