一、软件的定义及特点
-
软件的定义:
-
计算机系统中的过程及其文档
-
程序是计算任务的处理对象和处理规则的描述;
-
文档是为了便于了解程序所需的阐明性资料。
-
-
软件的特点
-
无形的、不可见的逻辑实体;
-
设计开发的,而不是生产制造的;
-
使用过程中没有磨损、老化的问题
-
定制开发的;
-
复杂的、开发成本高、易于复制。
-
-
软件的分类
-
系统软件:
- 居于计算机系统中最靠近硬件的一层;
-
支撑软件
- 支撑软件开发、维护与运行的软件;
- 环境数据库、接口软件等
-
应用软件
- 特定应用领域专用的软件
-
二、软件工程起源
-
1946年计算机刚诞生时,人们采用机器码编制程序,没有独立的软件的概念
-
机器码指令只是驱动计算机硬件
-
1947年,冯·诺依曼提出用流程图描述计算机运行过程,从此以后,软件开发和研究才开始独立进行
-
软件工程的定义:
-
1968年,首次NATO会议:用来建立和使用合理的工程原则,以经济的获取可靠的、且在真实机器上可高效工作的软件。
-
用来解决软件危机问题
-
三、软件工程框架
-
可定义为三元组<目标、原则、活动>
-
软件工程目标:
- 生成具有正确性、可用性和开销合宜的软件
-
软件工程活动:
-
生产一个最终满足需求且达到工程目标的软件产品所需要的步骤
-
主要包括:需求、设计、实现、确认和支持
- 需求:需求获取、需求定义、需求规约、需求验证
- 设计:总体设计、详细设计
- 实现:设计结果转换为可执行代码
- 确认:主要任务测试
- 支持:修改和完善
-
-
软件工程原则:
-
选取适宜的开发模型
-
提供高质量的工程支持
-
重视开发过程的管理
-