软件工程概述精要.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
软件工程的发展已经历了四个重要阶段: 1、第一代软件工程 — 传统的软件工程 2、第二代软件工程 — 对象工程 3、第三代软件工程 — 过程工程 4、第四代软件工程 — 构件工程 80年代中开始,人们在软件开发的实践过程中认识到:提高软件生产率,保证软件质量的关键是“软件过程”,是软件开发和维护中的管理和支持能力,逐步形成软件过程工程。 软件工程的发展已经历了四个重要阶段: 1、第一代软件工程 — 传统的软件工程 2、第二代软件工程 — 对象工程 3、第三代软件工程 — 过程工程 4、第四代软件工程 — 构件工程 90年代起,基于构件(Component)的开发方法取得重要进展,软件系统的开发可通过使用现成的可复用构件组装完成,而无需从头开始构造,以此达到提高效率和质量,降低成本的目的。称为构件工程。 软件工程的7个原则 B. W. Boehm于1983年总结了开发软件的经验,提出了软件工程的7条基本原则。这7条原则被认为是确保软件产品质量和开发效率的原则的最小集合,又是相互独立、缺一不可、相当完备的最小集合。 使用阶段性生命周期计划的管理 进行连续的验证 保证严格的产品控制 使用现代编程工具/工程实践 保持清晰的责任分配 用更好更少的人 保持过程改进 软件工程知识体系 软件工程知识体系(IEEE) SoftWare Engineering Body Of Knowledge 需求 构建 测试 维护 配置管理 过程 质量 工程管理 工具(编码,测试等) 设计 软件工程知识体系 各主题之间的关联 软件构造 软件设计 软件测试 软件维护 过程管理 软件项目管理 方法与工具 软件质量 软件安全 软件需求 交付 升级 软件工程是一门交叉学科 计算机工程 计算机科学 管理学 数学 项目管理 质量科学 软件工程学 系统工程 。。。 软件工程与计算机科学 的差别 软件工程 计算机科学 目标 在时间、资源、人员这3个主要限制条件下构建满足用户需求的软件系统 探索正确的计算和建模方法,从而改进计算方法本身 产品 软件(比如办公包和编译器) 算法(比如希尔排序法)和抽象的问题(比如哲学家进餐问题) 进度与时间表 软件项目都有特定的进度与时间表 研究项目一般不具有设置的进度与时间表 关注点 软件工程关注如何为用户实现价值 软件理论关注的是软件本身运行的原理,比如时间复杂度,空间复杂度,和算法的正确性 变化程度 随着技术和用户需求的不断变化,软件开发人员必须时刻调整自己的开发以适应当前的需求。同时软件工程本身也处于不断的发展中 对于某一种特定问题的正确解决方法将永远不会改变 需要的其他知识 相关领域的知识 数学 软件工程与计算机科学 的差别 一些对软件工程的误解(1) M 代表误解,R 代表现实。 管理方面的误解: M1: 我们已经有一本关于软件生产的标准和过程的书,这还不能让我们学习到需要的知识吗? R1: 相比最新的大型主机,工作站和PC,这会使我们在做高质量软件开发时花费更多时间。 M2: 如果我们项目进度落后了,可以加入更多的程序员来赶进度。 R2: 软件开发的机制和手工作业不一样。在一个延迟了的软件项目中加入新的开发人员只会让它延迟更多。 M3: 如果我们将软件项目外包给第三方,我们就轻松了,让那个公司去完成它吧。 R3: 如果组织管理方不懂得如何从内部管理和控制软件项目,即使将项目外包也无济于事。 一些对软件工程的误解(2) 客户方面的误解 M1: 对目标的一般陈述就足以开始编程,我们可以今后再补充细节。 R1: 前期糟糕的项目需求定义,是导致软件失败的主要原因。 R2: 项目需求的确在不断变化,但变化所产生的影响是根据变化提出的时间不同而不同的。 需求变化的影响 一些对软件工程的误解(3) 实践者: 软件从业者积累了50 年的编程文化。在早期的软件开发中,编程被视为一种艺术形式。 M1: 一旦我们编程完毕并成功运行,我们的工作就结束了。 R1: “越早开始写代码,我们就会花费越长的时间去完成它”。工业数据显示,软件开发60%-80%的精力将耗费在软件首次提交给用户以后。 M2: 当我的程序运行之前,我没有办法评估它的质量。 R2: 一个最有效的软件质量保证机制应当在项目的正式开始启动时——可以通过技术报告体现。 一些对软件工程的误解(4) M3: 唯一可交付的工作成果是一个成功运行的项目程序。 R3: 一个可运行的程序只是软件结构的一部分,它还包含了许多其它因素。 M4: 软件工程将会让我们去创建大量不必要的文档,并且总是使我们的进度放慢。软件工程仅仅是文档而已。 R4: 软件工程并不是创建文档,而是创建质量。更好的质量减少返工的概率。更少返工会让项目更早交付。所有的文档都是提高团队沟通和质量所必须的。

文档评论(0)

宝贝计划 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档