软件工程学概述.ppt_第1页
软件工程学概述.ppt_第2页
软件工程学概述.ppt_第3页
软件工程学概述.ppt_第4页
软件工程学概述.ppt_第5页
已阅读5页,还剩70页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

沈阳理工大学信息学院 软件工程 Software Engineering 任世卿 沈阳理工大学信息学院 2012-2013第2学期 沈阳理工大学信息学院 1.掌握软件工程的基本原理、基本概念和 相关的技术方法 ,主要包括可行性研究、 需求分析、总体设计、详细设计、编码、 测试、维护、项目管理等方面的基本知识 与方法 ; 2.能结合所学知识,在实际项目开发中能 灵活运用,要求在课程设计或毕业设计环 节中,能正确运用软件工程的思想、方法 、技术进行软件开发。 课程目标: 沈阳理工大学信息学院 第1章 软件工程学概述 著名软件公司 目前是全球最大的电脑软件提供商。 微软公司现有雇员6.4万人,2011年营 业额699.4亿美元,其主要产品为 Windows操作系统、Internet Explorer网页浏览器及Microsoft Office办公软件套件。 沈阳理工大学信息学院 第1章 软件工程学概述 著名软件公司 1911年创立,是全球最大的信息 技术和业务解决方案公司,目前 拥有全球雇员 30多万人,业务遍 及160多个国家和地区。该公司创立时的主要业务为商用打 字机,及后转为文字处理机,然后到计算机和有关服务。 2011年营业额为1069亿美元。 软件方面,IBM软件集团整合有五大软件品牌,包括 Lotus,WebSphere,DB2,Rational,Tivoli,在各自方面 都是软件界的领先者或强有力的竞争者。1999年以后,微 软的总体规模才超过IBM软件集团。截止目前,IBM软件集 团也是世界第二大软件实体。 沈阳理工大学信息学院 第1章 软件工程学概述 著名软件公司 Oracle公司(甲骨文公司)是世 界上最大的企业软件公司,向遍 及145个国家的用户提供数据库、 工具和应用软件以及相关的咨询、 培训和支持服务。2011年雇员数目为108429人,年收入为 268.2亿美元。 主要有以下几类产品: 数据库:Oracle数据库、数据仓库、MySQL等。 中间件:数据集成、业务分析、SOA、WebCenter等。 管理软件:客户关系管理、企业绩效管理、财务管理。 沈阳理工大学信息学院 第1章 软件工程学概述 著名软件公司 Google 目前被公认为是全球规模最大的搜索引擎,它提供 了简单易用的免费服务。 2011年年营业额为380亿美元, 2011年员工数为32467。 沈阳理工大学信息学院 第1章 软件工程学概述 著名软件公司 百度是全球最大的中文搜索 引擎,2000年1月由李彦宏、 徐勇两人创立于北京中关村, 致力于向人们提供“简单, 可依赖”的信息获取方式。“百度”二字源于中国宋朝词人辛 弃疾的青玉案元夕词句“众里寻他千百度”,象征着百 度对中文信息检索技术的执著追求。 2011年年营业额:145.01亿元(约23.04亿美元) 2012年员工数:约20000人 搜索市场份额:83.6% 沈阳理工大学信息学院 第1章 软件工程学概述 著名软件公司 百度是全球最大的中文搜索 引擎,2000年1月由李彦宏、 徐勇两人创立于北京中关村, 致力于向人们提供“简单, 可依赖”的信息获取方式。“百度”二字源于中国宋朝词人辛 弃疾的青玉案元夕词句“众里寻他千百度”,象征着百 度对中文信息检索技术的执著追求。 2011年年营业额:145.01亿元(约23.04亿美元) 2012年员工数:约20000人 搜索市场份额:83.6% 沈阳理工大学信息学院 第1章 软件工程学概述 著名软件公司 东软是中国领先的IT解决方案 与服务供应商。目前,公司开 发的各种软件已被广泛运用于 工程、电力、电信、房地产、 工厂设计等行业,软件的商品 化率是国内最高的。东软以软件技术为核心,提供行业解 决方案和产品工程解决方案以及相关产品与服务。2012年7 月24日,东软集团爆出知识产权商业犯罪案,涉案人数多 达28人。 沈阳理工大学信息学院 第1章 软件工程学概述 1.1 软件危机 1.2 软件工程 1.3 软件生命周期 1.4 软件过程 第1章 软件工程学概述 沈阳理工大学信息学院 知识点: 1.软件的定义和分类 2.软件危机的含义和典型表现 3.产生软件危机的原因 4.消除软件危机的途径 第1课时 沈阳理工大学信息学院 第1章 软件工程学概述 软件 定义:软件是程序、数据及相关文档的完 整集合。 程序是能够完成预定功能和性能的可 执行的指令序列; 数据是使程序能够适当地处理信息的 数据结构; 文档是开发、使用和维护程序所需要 的图文资料。 沈阳理工大学信息学院 第1章 软件工程概述 软件 Software pervades our world, and we sometimes take for granted its role in making our lives more comfortable, efficient, and effective. 软件无处不在,有时我们想当然地认为它使我们 的生活更加舒适、方便和高效。 沈阳理工大学信息学院 第1章 软件工程学概述 软件 系统软件 应用软件 操作系统 语言处理系统 服务程序 分类 沈阳理工大学信息学院 2013年1月编程语言排行榜榜单 沈阳理工大学信息学院 第1章 软件工程学概述 1 含义:软件危机是指在计算机软件的开发 和维护过程中所遇到的一系列严重问题。 例子:IBM公司用6000人年开发了OS360,费 用高达5亿多美元。 沈阳理工大学信息学院 第1章 软件工程学概述 软件开发历史上规模最宏大的项目应当是 IBM于1961年发起的 OS360操作系统项目, 希望通过工业化的方式组织实施这个规模巨 大的软件开发计划。当时,IBM选择了经验 丰富的项目经理Fred Brooks,雇佣了最好 的系统分析员、编程员和工程管理人员。但 是,在项目将要结束的时候发现,研发费用 已经远远超过了预期,甚至比美国政府研制 第一个 原子弹的“曼哈顿计划”还要高昂, 而且项目起初制定的目标并没有最后完全实 现。 沈阳理工大学信息学院 第1章 软件工程学概述 1965年,OS360项目完成,虽然产品获得了商业 成功,但是当时的 IBM CEO Thomas Watson Jr 一直困惑为什么软件项目要比硬件项目花费大得 如此多,而且目标如此难以管理。对此,当时主 持该项目的Brooks也无法给出答案。10年 后, Brooks在他的The Mythical Man Month一书中回 答了这个问题。Brooks认为传统工业化管理的核 心在于合理分工,将工作划分为简单的步骤,并 且优化这些步骤,然后通过管理这些步骤 完成产 品的过程,而这种方法在软件产业中有很大的局 限性,无法很好操作和控制。 沈阳理工大学信息学院 第1章 软件工程学概述 MicroSoft Vista(2007年-2009年) 数以千万行计的代码,繁多的功能和缺 陷,对电脑硬件的苛刻要求,庞大的开发费 用,千奇百怪的推广活动 比尔盖茨声称开发Vista用掉的60亿美 元是他“花过的最值的钱”。 Vista有5000W行代码,开发人员有 2000人,从4000W行代码的XP到Vista只有 1000W行代码,而这两千人花费了五年时间 沈阳理工大学信息学院 第1章 软件工程学概述 2 典型表现: (1)对软件开发成本和进度的估计 常常很不准确。 无论是CMMI、ISO9000、RUP等重 量级方法学还是以极限编程XP为首 的轻量级方法学都没能成为拯救软件 开发的“银弹”,微软的Vista操作系 统、Office2007一拖再拖,软件经理 和开发人员都逃不出50%甚至以上的 超期和超资怪圈。 沈阳理工大学信息学院 第1章 软件工程学概述 2 典型表现: (2) 用户对“已完成的”软件系统不满意 的现象经常发生。 (3) 软件产品的质量往往靠不住。 (4) 软件常常是不可维护的。 沈阳理工大学信息学院 第1章 软件工程学概述 2 典型表现: (5) 软件通常没有适当的文档资料。 (6) 软件成本在计算机系统总成本中所 占的比例逐年上升。 序 号 产产品名称产产品描述价格(元) 1 Windows 7 家庭普通版 Win Home Basic 7 ChnSimp DVD380 2 Windows 7 家庭高级级版 Win Home Prem 7 ChnSimp DVD650 3 Windows 7 专业专业 版 Win Pro 7 ChnSimp DVD1,292 4 Windows 7 旗舰舰版 Win Ult 7 ChnSimp DVD2,159 沈阳理工大学信息学院 第1章 软件工程学概述 2 典型表现: (7) 软件开发生产率提高的速度,远远 跟不上计算机应用迅速普及深入的趋 势。 在19601980年期间,计算机硬件的生产由于采用 计算机辅助设计、自动生产线等先进工具,使硬件 生产率提高了100万倍,而软件生产率只提高了2倍 ,相差十分悬殊。 沈阳理工大学信息学院 1.1 软件危机 1.1.2 产生软件危机的原因 1 客观原因: 缺乏“可见性” 较难维护 规模庞大,复杂性高,须多人分工合作 第1章 软件工程学概述 沈阳理工大学信息学院 1.1 软件危机 1.1.2 产生软件危机的原因 2 主观原因: 错误的认识和作法主要表现为忽视软件需 求分析的重要性,认为软件开发就是写程序并 设法使之运行,轻视软件维护等。 第1章 软件工程学概述 沈阳理工大学信息学院 1.1 软件危机 1.1.3 消除软件危机的途径 1 首先应该对计算机软件有一个正确的认 识,彻底消除 “软件就是程序”的错误观 念。 第1章 软件工程学概述 沈阳理工大学信息学院 1.1 软件危机 1.1.3 消除软件危机的途径 2 必须充分认识到软件开发是一种组织良 好、管理严密、各类人员协同配合、共同 完成的工程项目。必须充分吸取和借鉴人 类长期以来从事各种工程项目所积累的行 之有效的原理、概念、技术和方法,并且 研究探索更好更有效的技术和方法。 第1章 软件工程学概述 沈阳理工大学信息学院 1.1 软件危机 1.1.3 消除软件危机的途径 3 开发和使用计算机辅助软件工程(CASE )工具。 第1章 软件工程学概述 沈阳理工大学信息学院 IBM Rational 2002年12月6日,IBM宣布以21亿美元收购软件 设计工具厂商Rational。能够得到蓝色巨人青 睐的公司绝非等闲之辈。截至到2002年6月30日 止,该公司在之前十二个月里的营收已经高达 六亿六千六百四十万美元,全世界几乎所有的 大型软件项目中都不同程度地采用了它的技术 、服务及软件工程环境或工具。 第1章 软件工程学概述 沈阳理工大学信息学院 1.1 软件危机 1.1.3 消除软件危机的途径 软件工程正是从管理和技术两方面研 究如何更好地开发和维护计算机软件的一 门新兴学科。 第1章 软件工程学概述 沈阳理工大学信息学院 知识点: 1.软件工程的定义和本质特征 2.软件工程的基本原理 第2课时 沈阳理工大学信息学院 一、定义:采用工程的概念、原理、技术和方法 来开发与维护软件,把经过时间考验而证明正确的 管理技术和当前能够得到的最好的技术方法结合起 来,以经济地开发出高质量的软件并有效地维护它 。 1.2 软件工程 1.2.1 软件工程的介绍 沈阳理工大学信息学院 工程: “工程”是科学的某种应用,通过这一应用 ,使自然界的物质和能源的特性能够通过各种结构 、机器、产品、系统和过程,是以时间最短的和精 而少的人力做出高效、可靠且对人类有用的东西 沈阳理工大学信息学院 万里长城 沈阳理工大学信息学院 秦始皇兵马俑 沈阳理工大学信息学院 北京故宫 沈阳理工大学信息学院 京杭大运河 沈阳理工大学信息学院 神舟飞船/天宫一号 沈阳理工大学信息学院 沈阳地铁 沈阳理工大学信息学院 二、本质特性 1. 软件工程关注于大型程序的构造 2. 软件工程的中心课题是控制复杂性 设C(x)为问题x所对应的复杂度函数, E(x)为解决问题x所需要的工作量函数。 A.如果C(P1) C(P2) ,则E(P1) E(P2) B.C(P1+P2) C(P1)+C(P2) 即解决由多个问题复合而成的大问题的复杂 度大于单独解决各个问题的复杂度之和。也 就是说,对于一个复杂问题,将其分解成多 个小问题分别解决比较容易。 沈阳理工大学信息学院 3. 软件经常变化 4. 开发软件的效率非常重要 5. 和谐地合作是开发软件的关键 遵守纪律 6. 软件必须有效地支持它的用户 7. 在软件工程领域中是由具有一种文化背景的 人替具有另一种文化背景的人创造产品 沈阳理工大学信息学院 一、软件工程的7条基本原理 1. 用分阶段的生命周期计划严格管理 有人经统计发现,在不成功的软件项目中有一半 左右是由于计划不周造成的。 1.2.2 软件工程的基本原理 沈阳理工大学信息学院 2. 坚持进行阶段评审 理由: 第一,大部分错误是在编码之前造成的, 例如,根据Boehm等人的统计,设计错误占 软件错误的63%,编码错误仅占37%; 第二,错误发现与改正得越晚,所需付出 的代价也越高。 沈阳理工大学信息学院 3. 实行严格的产品控制 沈阳理工大学信息学院 4. 采用现代程序设计技术 多核程序设计技术 多线程编程技术 线程池编程技术 敏捷技术 。 沈阳理工大学信息学院 5. 结果应能清楚地审查 多用数学,少用语文 6. 开发小组的人员应该少而精 1+1=? 7. 承认不断改进软件工程实践的必要性 与时俱进 沈阳理工大学信息学院 知识点: 1.软件工程方法学 2.软件的生命周期 第3课时 沈阳理工大学信息学院 一、传统方法学 (1)采用结构化技术(结构化分析、结构 化设计和结构化实现)来完成软件开发的各 项任务 1.2.3 软件工程方法学 沈阳理工大学信息学院 (2)把软件生命周期的全过程依次划分为 若干个阶段,然后顺序地完成每个阶段的任 务。 沈阳理工大学信息学院 (3)每一个阶段的开始和结束都有严格标 准,对于任何两个相邻的阶段而言,前一阶 段的结束标准就是后一阶段的开始标准。 (4)在每一个阶段结束之前都必须进行正 式严格的技术审查和管理复审。 沈阳理工大学信息学院 二、面向对象方法学 (1) 把对象(object)作为融合了数据及在 数据上的操作行为的统一的软件构件。也就 是说,用对象分解取代了传统方法的功能分 解。 沈阳理工大学信息学院 (2) 把所有对象都划分成类(class)。 (3) 按照父类(或称为基类)与子类(或称为 派生类)的关系,把若干个相关类组成一个 层次结构的系统(也称为类等级)。 沈阳理工大学信息学院 类图 沈阳理工大学信息学院 (4) 对象彼此间仅能通过发送消息互相联 系。 沈阳理工大学信息学院 一、组成:3个时期 1、定义时期: 问题定义:“要解决的问题是什么?” 可行性研究:是否值得去解,是否有可行 的解决办法 需求分析:目标系统必须做什么 1.3 软件生命周期 沈阳理工大学信息学院 2、开发时期: 总体设计:应该怎样实现目标系统 详细设计:怎样具体地实现这个系统 编码和单元测试:写出正确的容易理解、 容易维护的程序模块 综合测试:通过各种类型的测试(及相应的 调试)使软件达到预定的要求。 沈阳理工大学信息学院 3、维护时期: 软件维护:通过各种必要的维护活动使系 统持久地满足用户的需要。 沈阳理工大学信息学院 知识点: 1.软件过程 2.可行性研究: 数据流图和数据字典 成本/效益分析 第4课时 沈阳理工大学信息学院 软件过程是完成各项任务的工作步骤,通 常使

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论