哈工大-第1章软件工程概述ppt课件

上传人:我*** 文档编号:148241265 上传时间:2020-10-18 格式:PPT 页数:38 大小:246KB
返回 下载 相关 举报
哈工大-第1章软件工程概述ppt课件_第1页
第1页 / 共38页
哈工大-第1章软件工程概述ppt课件_第2页
第2页 / 共38页
哈工大-第1章软件工程概述ppt课件_第3页
第3页 / 共38页
哈工大-第1章软件工程概述ppt课件_第4页
第4页 / 共38页
哈工大-第1章软件工程概述ppt课件_第5页
第5页 / 共38页
点击查看更多>>
资源描述

《哈工大-第1章软件工程概述ppt课件》由会员分享,可在线阅读,更多相关《哈工大-第1章软件工程概述ppt课件(38页珍藏版)》请在金锄头文库上搜索。

1、1,计算机科学与技术学院 软件工程研究室 王宇颖 ,Software Engineering,2,授课对象, 软件学院本科, 40学时 课程设计2周(下学期),高级语言程序设计、数据结构、 数据库技术等等,3,计算机科学与软件工程,Computer Science,Customer,Theories,Computer Function,Problem,Software Engineering,Tools and Techniques to Solve Problem,4,初步了解 工程? 硬件工程? 软件工程? 计算机工程?,工程: 利用自然规律,创建一个使一部分 人受益的系统.,5,计算机工

2、程 Computer Engineering 硬件工程 Hardware Engineering 研究硬件生产和硬件管理的工程学科. 计算机硬件及网络分析、制定设计方案、 选型、配置、采购、验收、安装、调试、 运行、培训、维护,6,软件工程 Software Engineering 研究软件开发、生产和管理的 工程学科 调研、可行性论证、正式立项、需求分析、 项目策划、设计、编程、测试、实施、 试运行、产品发布、用户培训、产品复制、 销售、系统维护、版本升级. 采用科学的方法指导软件的开发与维护 !,初步了解,7,软件开发模型 软件开发过程,方法与技术 软件开发环境与工具 软件管理过程(度量、

3、成本) 软件企业文化,现代软件工程研究的内容:,软 件 开 发 既 是 一 门 科 学,又 是 一 门 工 程, 也 是 一 门 艺 术,8,导读,第1章绪论- 提出问题,第2章 模型- 全局观点,第3章 项目计划- 管理观点,第4、5章分析方法,需求分析 -开发第1步最重要,第6章 软件设计- 实现的前提,第7章 实现 -初始结果,第8章 测试 质量保证- 得到可交付的结果,第9章 维护 -延长软件生命期,9,软件工程,方法与技术,软件项目管理,软件过程系列,10,史济民等,软件工程-原理、方法与应用 (第二板),高等教育出板社ISBN 7-04-011561-1 张海藩,软件工程, 人民邮

4、电出版社 2002年3月第一版 周之英,现代软件工程(上、中、下), 科学出版社 2001年4月第一版 陈明,软件工程学教程,科学出版社 2002年3月第一版 郑人杰,软件工程, 清华大学出版社,中文参考书,11,英文参考书,Software Engineering Theory and Practice(Second Edition) Author: Shari Lawrence Pfleeger (软件工程理论与实践,高等教育出版社), Software Engineering A Practitioners Approach Author: Rogers.Pressman (软件工程实践

5、者的研究方法 机械工业出版社),12,基本要求,理解软件工程的思想和方法 掌握软件开发方法和工具 学会按照工程化的方法开发和维护软件 具有阅读软件工程方面资料的能力 为实践及未来的软件开发打基础,13,听课 复习 阅读 讨论 练习,从知到会 实践,从会到通 知识方法能力,如何学习软件工程, 讲课教书 学习读书 知识课程,你们的收获不会仅仅局限 在本课程之内,课堂教学,复习,作业,参考资料,实践,渗 透,14,考试,课堂小考核,占成绩的 10% 完成一个小型软件系统的分析、设计文档,阶段性成果占成绩的20% 考试成绩占 70%,财富可以通过辛勤劳动获取, 也可能由于喜中彩票大奖获得。 但知识却必

6、须是通过一点一滴 努力学习逐渐积累 珍惜每一天,每一节课,每一分钟,诚信,15,实践作业,分析和设计下列问题之一,并写出文档. 1. 教学管理软件 2. 教学网站 3. 网上售书,网上购物 4. 超市管理 5. 食堂管理 6. 工寓管理 7. 自选,16,第1章 软件工程的概述,17,基本内容: 1.1 软件 1.2 软件工程的概念 1.3 软件工程的作用 1.4 软件工程的发展 1.5 软件工程三要素 1.6 软件工程的目标,18,1.1 软件,1.1.1 软件的定义: 20世纪五十年代 软件=程序 面向过程的程序 =算法+数据结构,20世纪六十年代 软件=程序+文档,20世纪七十年代 软件

7、=程序+文档+数据 面向对象的程序=对象+消息 面向构件的程序=构件+构架,19,1.1.2 软件的特征: 软件是一个信息变换器; 软件是产品交付使用的载体; 软件是是被开发或设计的,而不是被制造的; 软件不会磨损,但维护困难。,20,1.1.3 软件的应用 * 系统软件 * 应用软件 * 商业软件 * 工程和科学计算软件 * 嵌入式软件 * 个人计算机软件 * 人工智能软件 * 基于web软件 * 工具包软件,21,1.2 软件工程的概念,1.2.1 软件工程的提出 软件开发失败的例子 1962年6月,美国飞向金星的第1个空间探测器 (水手1号)飞行中偏移了航线,失败了. 原因:飞舱中的导航

8、程序中的一个语句的语义错. 世界上精心设计的并花费巨额投资的美国阿波 罗8号太空飞船登月飞行计划的软件的错误,使 存储器一部分信息丢失;阿波罗14号的飞行10天 中,出现18个软件错误. 原因: 软件的可靠性问题,22,19631966年IBM开发OS/360操作系统,投资几千万美元,工作量5000多人年, 拖延几年才交付使用,而且每年要发现 近100个错误。 美国肯尼迪发射的一枚“阿脱拉斯火箭,当飞地面几十英里高空时,翻转.地面控制中心被迫下令炸毁,结果损失1850万 美元 原因:飞行计划程序漏掉一个“连”接字符,23,通过比较,支持“美国航天飞机”的软件由3 百万行代码组成,包括地面控制发

9、射和飞行 的计算机,航天飞机本身就需10万行代码。 这样一个反导弹软件系统需要测试大量 的代码.此外可靠性约束是不可能测试的。,许多软件工程师认为一个“反弹道导弹系统” 只少需要1千万行代码,有人估计代码在1亿 行左右。,24,“安全临界”软件问题:安全临界是指其可 靠性至少达到10-9,也就说在工作109小时 内不能出现错误。为了观察可靠性程度, 就必须使系统至少运行109小时不会失败。 但验证109小时不出错,需要测试114,000 年,这实际上是不可能的。 这是一种无法实现的计划。,25,由上可看出: 软件需求量不断增大,复杂度越来越高, 软件可靠性无保障 软件维护费用不断上升 软件进度

10、无法预测 成本增长无法控制 程序人员无限度地增加各个方面. 上述原因导致了60年代末的“软件危机.,26,一系列软件开发的失败引起人们的思考, 1968年北大西洋公约组织(NATO)的计算机 科学家在联邦德国的幕尼黑召开的一次计 算机软件国际会议上,对软件开发的方法、 技术进行了广泛的讨论, 首次提出了“软件工程”的概念。,27,1.2.2 软件工程的含义,P.Wegner和B.Boehm认为: 科学知识在设计和构造计算机程 序,以及开发、运作和维护这些程序所需求的有关文档编制中的实际应用。,F.L.Bauer认为: 为了经济地获得软件,这个软件是可靠的并且能在实在的计算机上工作,所需要的 健

11、全的工作原理(方法)的确立和使用。,28,IEEE(83) 指出: 软件工程是开发、运行、维护和修复软件的系统方法。 IEEE(93) 指出: 软件工程是将系统化的、规范的、可度量的方法应用于软件的开发、运行和维护的过程,即将工程化的方法应用于软件开发中。,29,解决60年代出现的软件危机 解决软件当前面临的技术问题 软件可靠性、可用性、重用性、维护性等等 告诉人们怎样去开发软件、管理软件 开发软件即需要干哪些“活”,对“开发”两字做 一解析. 如何干活,即有关开发模型和开发方法等技 术问题. 如何管理,即有关CMM等管理问题.,1.3 软件工程的作用,30,现代软件开发对人才的要求 系统分析

12、人员、设计人员、软件架构师、 软件集成人员、高层管理人员、 中层项目经理、软件蓝领工人、 实施和维护人员、 软件售前人员、软件营销人员 提高软件产品的质量,降低软件开发的成本.,31,1.4 软件工程的发展,传统的软件工程时代 过程软件工程时代 对象软件工程时代 构件软件工程时代 发展方向:流水线装配软件工程的方向 发展(流水线生产,网络化, 服务化,全球化),32,为屏蔽计算机硬件的异构性,发展了操作系统,C/C+ 语言,Java 语言,为屏蔽操作系统和编程语言的异构性,发展了支撑软件和中间件,Fortran 语言,为了祢补应用软件与现实计算环境之间的距离,网 络 层,综观 软件技术 的发展

13、,图 1-2,应用系统,操作系统,支撑软件中间件,33,1)20世纪60年代末至80年代初,围绕软件项目, 开展了有关: 软件开发风范 开发方法 支持工具的研究。,20世纪 60年代末 80年代初 20世纪末 主要特点 强调技术 关注管理 “螺旋反复”,发展阶段,34,2) 20世纪80年代以来,随着软件系统规模的增大、 复杂性的提高以及在关键领域应用的开展,人 们更加关注: 软件生产技术的研究和实践 注重软件工程管理。 主要成果包括: (1)计算机辅助软件工程(CASE) (2)软件复用:如构件模型、复用机制等 (3)软件过程概念以及能力成熟度模型(CMM),35,1.5 软件工程三个要素:,图 1-5 软件工程三个要素,36,1.6 软件工程的目标 低成本 满足功能 满足性能 易于移植 维护费用低 及时交付使用 简而言之,提高软件质量,降低软件 开发和维护成本,37,本章小结,软件工程的概述,软件,软件工程 的概念,软件工程 的目标,希望认真学习 主动获取知识,软件工程 三要素,方法,过程,工具,38,习题,1 简述软件工程的发展过程。 2 软件的定义? 3 什么叫软件危机?软件危机主要有哪几 种表现? 4 软件工程要解决的问题及技术是什么 6 软件工程的目标是什么?,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > PPT模板库 > PPT素材/模板

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号