软件工程概论 什么是软件 软件的分类 软件的发展 软件些存 软件工 软件工程的目的和要求
▪ 什么是软件 ▪ 软件的分类 ▪ 软件的发展 ▪ 软件生存期 ▪ 软件工程 ▪ 软件工程的目的和要求
什么是软件? a软件是计算机系统中与硬件相互依 存的另-部分,它是包括程序,数 据及其相关文档的完整集合。 程序是按事先设计的功能和性能要 求执行的指令序列 a数据是使程序能正常操纵信息的数 据结构 a文档是与程序开发,维护和使用有 关的图文材料
软件是计算机系统中与硬件相互依 存的另一部分,它是包括程序,数 据及其相关文档的完整集合。 程序是按事先设计的功能和性能要 求执行的指令序列 数据是使程序能正常操纵信息的数 据结构 文档是与程序开发,维护和使用有 关的图文材料 什么是软件?
软件的特点 软件是一种逻辑实体,而不是具体 的物理实体。因而它具有抽象性 a软件的生产与硬件不同,在它的开 发过程中没有明显的制造过程 0在软件的运行和使用期间,没有硬 件那样的机械磨损,老化问题
软件的特点 软件是一种逻辑实体,而不是具体 的物理实体。因而它具有抽象性 软件的生产与硬件不同,在它的开 发过程中没有明显的制造过程 在软件的运行和使用期间,没有硬 件那样的机械磨损,老化问题
a软件的开发和运行常受到计算机系 统的限制,对计算机系统有着不同 程度的依赖性 a软件的开发至今尚未完全摆脱手工 艺的开发方式 a软件本身是复杂的 实际问题的复杂性 程序逻辑结构的复杂性 a软件成本相当昂贵 a相当多的软件工作涉及到社会因素
软件的开发和运行常受到计算机系 统的限制,对计算机系统有着不同 程度的依赖性 软件的开发至今尚未完全摆脱手工 艺的开发方式 软件本身是复杂的 实际问题的复杂性 程序逻辑结构的复杂性 软件成本相当昂贵 相当多的软件工作涉及到社会因素
成本% 100 80 60 硬件 40 软件 20 年份 1950 1970 1985
软件的分类 a按软件的功能进行划分: 口系统软件 g操作系统 口数据库管理系统 口设备驱动程序 口通信处理程序等
软件的分类 按软件的功能进行划分: 系统软件 操作系统 数据库管理系统 设备驱动程序 通信处理程序等
口支撑软件 口文本编辑程序 口文件格式化程序 a盘向磁带向数据传输的程序 程序库系统 口支持需求分析、设计、实现 测试和支持管理的软件
支撑软件 文本编辑程序 文件格式化程序 磁盘向磁带向数据传输的程序 程序库系统 支持需求分析、设计、实现、 测试和支持管理的软件
a应用软件 g商业数据处理软件 g工程与科学计算软件 计算机辅助设计/制造软件 口系统仿真软件 口智产品嵌入软件 口医疗、制药软件 口事务管理、办公自动化软件 口计算机辅助教学软件
应用软件 商业数据处理软件 工程与科学计算软件 计算机辅助设计/制造软件 系统仿真软件 智能产品嵌入软件 医疗、制药软件 事务管理、办公自动化软件 计算机辅助教学软件
a按软件视模进行划分 类别参加人员数研制期限源程序行数 微型 1~4同0.5k 小型1 1~6月1k~2k 中型2~5 1~2年5k~50k 大型5~202~3年50k~100k 甚大型100~10004~5年1M(=1000k) 极大型2000~50005~10年1M~10M
按软件规模进行划分: 类别 参加人员数 研制期限 源程序行数 微型 1 1~4周 0.5k 小型 1 1~6月 1k~2k 中型 2~5 1~2年 5k~50k 大型 5~20 2~3年 50k~100k 甚大型 100~1000 4~5年 1M(=1000k) 极大型 2000~5000 5~10年 1M~10M
按软件工作方式划分 实时处理软件 分时软件 g交互式软件 g批处理软件 a按软件服务对象的范围划分 a项目软件 g产品软件
按软件工作方式划分: 实时处理软件 分时软件 交互式软件 批处理软件 按软件服务对象的范围划分: 项目软件 产品软件