1 / 54
文档名称:

软件工程-刘强-01-SEIntro.pdf

格式:pdf   大小:556KB   页数:54页
下载后只包含 1 个 PDF 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

软件工程-刘强-01-SEIntro.pdf

上传人:Q+1243595614 2017/10/16 文件大小:556 KB

下载得到文件列表

软件工程-刘强-01-SEIntro.pdf

相关文档

文档介绍

文档介绍:软件工程概述
清华大学软件学院
引言
•软件在当今社会中发挥着重要的作用
–社会经济的发展依赖于软件
–更多的系统需要软件控制,软件质量和成本成为关键因素
•软件工程关注于开发成本和软件质量问题
–软件工程的概念开始于 1968 年的 NATO 会议
–至今尚未解决大型复杂软件开发的问题
•软件工程是一个正在兴起的年轻学科
–工业界形成了 CMM 和 ISO9000 系列标准
– IEEE 提出了软件工程知识体系
– IEEE 提出了软件工程本科教程,成为独立学科
2
一些基本问题
•什么是软件?
•如何理解软件的质量特性?
•什么是软件工程?
•什么是软件过程?
•什么是软件过程模型?
•什么是软件工程方法?
•什么是 CASE?
•当前软件工程面临什么挑战?
•软件工程学科与哪些学科相关?
3
内容提纲
•软件
You are here!
–软件的定义与软件危机
你在这儿!
–软件的本质特性
•软件工程
–定义与发展历史
–理解软件质量
–过程、方法和工具
•软件工程学科
–软件工程知识体系(SWEBOK)
–软件工程职业道德规范
4
什么是软件
•软件=程序?
•软件的定义
软件是计算机程序、规程以及运行计算机系统可能需
要的相关文档和数据。
•从软件的内容来说,软件更像是一种嵌入式的数字化
知识,其形成是一个通过交互对话和抽象理解而不断
演化的过程。
5
软件的分类
•通用软件(Generic Software)
–通用软件是由软件开发组织开发,面向市场用户公开销售的
独立运行系统,有时也被称为套装软件。
–举例:操作系统、数据库系统、字处理软件等
•定制软件(Customized Software)
–定制软件是由某个特定客户委托,软件开发组织在合同的约
束下开发的软件。
–举例:企业 ERP 系统、卫星控制系统、空中交通指挥系统等
6
软件的应用
•举例
实时系统: 空中交通控制系统
嵌入式系统: 数码相机,GPS
数据处理系统: 电话帐单,退休金
信息系统: 网站,数字图书
传感系统: 气象数据
系统软件: 操作系统,编译器
通信软件: 路由器,移动电话
办公系统: 文字处理,视频会议
科学计算软件: 仿真模拟,天气预报
图形软件: 电影制作,CAD 设计
7
软件危机
•软件危机出现于 20 世纪 60 年代末
•软件危机是指在计算机软件的开发和维护过程中遇到
的一系列严重问题。
–软件开发的成本和进度难以准确估计,
延迟交付甚至取消项目的现象屡见不鲜
–软件存在着错误多、性能低、不可靠、
不安全等质量问题
–软件维护极其困难,而且很难适应不断变化的用户需求和使
用环境
Software systems are like cathedrals; first we build them and then we pray.
8
软件错误的实例
• ARIANE 5 火箭
– 1996 年 6 月,耗资 70 亿美元,发射 37 秒后爆炸
–发射失败的原因在于软件的错误
•软件错误
–程序中试图将 64 位浮点数转换成 16 位整数时产生溢出
–缺少错误处理程序对数据溢出进行管理
–备份软件复制而成
•严格地遵守软件确认过程可以避免这种错误
9
软件错误的实例
•爱国者导弹
–曾在海湾战争期间对抗伊拉克飞毛腿导弹
– 1991 年 2 月,一次对抗失利中 28 名美国士
兵丧生
–问题的症结在于导弹软件包含一个累加计时误差
•软件错误
– target = f(velocity, time)
–计时采用系统时钟(即 1/10 秒)并使用整数表达
–(1/10)2 = **********…,24 位寄存器
存储导致误差()10
– ×100 hours×60×60×10 = seconds
10