软件:程序+数据+文档
程序:在运行中能提供所希望的功能和性能的指令集。
数据:使程序能够正确运行的数据。
文档:描述程序研制过程和方法使用的文档。
软件的特点: 软件是逻辑产品,硬件是物理产品
- 软件开发更依赖于开发人员的业务素质、智力、人员的组织、合作和管理。
- 软件开发、设计几乎都是从头开始,成本和进度很难估计。
- 软件存在潜伏错误,硬件错误一般都能排除。
- 软件开发成功后,只需对原版进行复制。
- 软件在使用过程中维护复杂。
软件危机:在计算机软件开发和维护过程中所遇到的一系列严重问题。
具体表现:
- 开发成本和进度估计不准。
- 用户对“已完成的”软件系统不满意。
- 软件质量往往靠不住。
- 软件常常是不可维护的。
- 软件通常没有适当的文档资料。
- 软件成本逐年上升。
- 软件开发生产率滞后于硬件硬件和计算机应用普及。
软件工程:用工程、科学和数学的原则与方法开发、维护计算机软件的有关技术及管理方法。
软件工程构成三要素:过程、方法、工具
目的:在给定成本、进度的前提下,开发满足用户需求的并具有以下特性的软件产品。
- 可修改性 2.有效性 3.可靠性 4.可理解性 5.可维护性 6.可重用性 7.可移植性 8. 可追踪性 9.