
第一章概论Software Engineering第一章概论
第一章 概论 第一章 概论 ■Software Engineering

第一章概论主要内容软件软件工程软件工程发展历程软件工程基本原理软件工程知识体系
第一章 概论 ■ 软件 ■ 软件工程 ■ 软件工程发展历程 ■ 软件工程基本原理 ■ 软件工程知识体系 主要内容

第一章概论1.1软件开发软件就是编写程序?软件二程序十数据十文档十知识程序是计算任务的处理对象和处理规的描述数据指的是程序能够适当地操作的信文档是为了便于了解程序所需的闸阐明性资料软件蕴含着“完成特定功能和性能”的知识和经验
第一章 概论 1.1 软件 ■ 开发软件就是编写程序? ◼ 软件 = 程序+数据+文档+知识 ◼ 程序是计算任务的处理对象和处理规则的描 述 ◼ 数据指的是程序能够适当地操作的信息 ◼ 文档是为了便于了解程序所需的阐明性资料 ◼ 软件蕴含着“完成特定功能和性能”的知识 和经验

第一章概论软件的特征软件是计算机系统中的逻辑成分相对于硬件的有形的物理特性。软件则人脑与智慧是抽象的。具有无形性软件是硬件的灵魂。硬件是软件的基础软件是智慧和知识的结晶“磨损”,软件不会而是逐步完善
第一章 概论 软件的特征 ◼ 软件是计算机系统中的逻辑成分,相 对于硬件的有形的物理特性,软件则 是抽象的,具有无形性 (人脑与智慧) ◼ 软件是硬件的灵魂,硬件是软件的基 础 ◼ 软件是智慧和知识的结晶 ◼ 软件不会“磨损”,而是逐步完善

第一章概论软件分类按软件功能划分系统软件支撑软件应用软件软件工作方式划分实时处理软件分时处理软件交互式软件批处理软件
第一章 概论 软件分类 ◼ 按软件功能划分 ◼ 系统软件 ◼ 支撑软件 ◼ 应用软件 ◼ 软件工作方式划分 ◼ 实时处理软件 ◼ 分时处理软件 ◼ 交互式软件 ◼ 批处理软件

第一章概论软件分类(续)按软件规模划分微型软件小型软件中型软件大型软件按软件服务对象划分通用软件定制软件
第一章 概论 软件分类(续) ◼ 按软件规模划分 ◼ 微型软件 ◼ 小型软件 ◼ 中型软件 ◼ 大型软件 ◼ 按软件服务对象划分 ◼ 通用软件 ◼ 定制软件

第一章概论软件的发展历程程序设计时代汇编语言程序系统时代高级语言软件工程时代60年代末-70年代中期:结构化程序设计技术70年代中期-80年代:计算机辅助软件工程80年代中期一90年代:面向对象语言和方法90年代以来:统一建模语言软件从简单到复杂,软件开发从个人行为到大型团队分工合作开发。软件开发工具和开发模式从粗糙到完善的发展历程
第一章 概论 软件的发展历程 ◼ 程序设计时代(汇编语言) ◼ 程序系统时代(高级语言) ◼ 软件工程时代 ◼ 60年代末-70年代中期:结构化程序设计技术 ◼ 70年代中期-80年代 :计算机辅助软件工程 ◼ 80年代中期-90年代 :面向对象语言和方法 ◼ 90年代以来:统一建模语言 ◼ 软件从简单到复杂,软件开发从个人行为 到大型团队分工合作开发,软件开发工具 和开发模式从粗糙到完善的发展历程

第一章概论1.2软件危机1991年海湾战争中,一枚飞毛腿导弹穿过了爱国者反导弹的防御。击中了沙特阿拉伯的Dhahran附近的一个兵营造成28名美国人死亡98人受伤。这个错误是由累积的定时错误引起的爱国者导弹每次只能工作几小时。超过这个时间后。系统时钟就会复位。可悲的是新的软件第二天才运到
第一章 概论 1.2 软件危机 ◼ 1991年海湾战争中,一枚飞毛腿导弹 穿过了爱国者反导弹的防御,击中了 沙特阿拉伯的Dhahran附近的一个兵营, 造成28名美国人死亡,98人受伤。这 个错误是由累积的定时错误引起的, 爱国者导弹每次只能工作几小时,超 过这个时间后,系统时钟就会复位。 可悲的是新的软件第二天才运到

第一章概论■美国国内税收处20世纪年代让Sperry公司建立一套联邦税收表格自动处理系统。该系统被证明不适合当前的工作量,花费几乎是预算的2倍。到1996年,共花费了40亿美元。但情况并没原因是“没有充分计划就错误改善,行事”福
第一章 概论 ◼ 美国国内税收处20世纪年代让Sperry 公司建立一套联邦税收表格自动处理 系统,该系统被证明不适合当前的工 作量,花费几乎是预算的2倍。到1996 年,共花费了40亿美元,但情况并没 改善,原因是“没有充分计划就错误 行事”

第一章概论软件危机的表现超出预算时间和成本客户对生产出的软件不满意软件有残存的错误软件产品不可维护文档资料不完整软件生产率的提高跟不上硬件的发展速度
第一章 概论 软件危机的表现 ◼ 超出预算时间和成本 ◼ 客户对生产出的软件不满意 ◼ 软件有残存的错误 ◼ 软件产品不可维护 ◼ 文档资料不完整 ◼ 软件生产率的提高跟不上硬件的发展 速度