1. 定义
软件:是包括程序
、数据
及其相关文档
的完整集合
。
软件工程:
(1). 应用系统化
的、规范化
的、定量
的方法来开发
、运行
和维护
软件,即:将工程应用到软件
;
(2). 对(1)中各种方法的研究。
程序和数据
是构造软件的基础,文档
是软件质量的保证,也是保证软件更新及生命周期长短的必需品。
2. 特点
软件是一种逻辑实体
,具有抽象性
。
软件开发过程中没有明显的制造过程 ,应理解为“创作”。
不存在机械磨损和老化问题,但存在软件退化问题
。
软件的开发和运行受到计算机系统
的约束和限制。
软件开发至今未完全摆脱手工艺
的开发方式。
软件是复杂的原因:(1).实际需求
的复杂性 (2).程序逻辑
的复杂性
3. 分类
根据软件服务对象: (1).通用软件 (2).定制软件
根据软件完成功能所处的层次不同: (1).应用软件 (2).中间件软件 (3).系统软件(如操作系统、驱动、数据库管理软件)
4. 发展
阶段 | 时间 |
---|---|
程序设计阶段 | 20世纪50 至 60年代 |
程序系统阶段 | 20世纪60 至 70年代 |
软件工程阶段 | 20世纪70 至 90年代 |
现代软件工程阶段 | 20世纪90年代 至今 |
产生软件危机的原因:
(1). 软件系统本身的复杂性
;
(2). 软件开发的方法和技术
不合理及不成熟;
5. 软件工程的要素
三要素:方法、工具、过程。
方法:提供了如何做
的技术
工具:提供了自动或半自动
的软件支撑环境
过程:将软件工程的方法和工具综合起来
以达到合理、及时地进行计算机软件开发的目的
6. 软件工程的目标和原则
目标:生产具有正确性
、可用性
以及开销适宜
的软件产品。
最终目的:摆脱手工生产软件
的状况,逐步实现软件研制和维护
的自动化
。
研究的内容:软件开发技术
、软件工程管理
。