软件危机
-
1968年,NATO在联邦德国的国际学术会议上提出软件危机一词,并提出软件工程一词。
原因:需求不明、方法不对、规模变大、复杂度变高等。 -
中国软件危机:民族软件的严重短缺。
-
软件危机目前仍然以各种形式的“软件困境”的形式错在与各类信息化项目中。
软件工程定义
中文名:软件工程
外文名:Softwave Engineering
简称:SE
常见的定义:
-
BarryBoehm:运用现代科学技术知识来设计并构造计算机程序及为开发、运行和维护这些程序所必需的相关文件资料。
-
IEEE:在软件工程术语汇编中的定义:软件工程是:1.将系统化的、严格约束的、可量化的方法应用于软件的开发、运行和维护,即将工程化应用于软件;2.在1中所述方法的研究
-
FritzBauer在NATO会议上给出的定义:建立并使用完善的工程化原则,以较经济的手段获得,能在实际机器上有效运行的可靠软件的一系列方法。
还有《计算机科学技术百科全书》以及行业内的一些约定俗成的各类定义。
软件工程三要素
工具
方法
过程
最终落在软件的质量上。
软件过程
软件过程(Software Procedure)是指:软件声明周期所设计的一系列相关过程。
- 软件过程=软件生命周期过程
- 过程:事务发展的阶段(区间段落)
- 过程是活动的集合,活动是任务的集合
- 如需求活动、设计活动。
- 需求活动下要分为若干任务
- 常见的软件过程模型:瀑布模型、快速原型模型、增量模型、螺旋模型、喷泉模型、Rational统一过程、敏捷过程与极限编程等。
软件方法
方法是一个汉语词汇,方法的含义较广泛,一般是指为获得某种东西或达到某种目的而采取的手段与行动方式。
在分析和设计的方法主要有:
- SASD方法,1978年,E.Yourdon和L.L.Constantine
- 面向数据结构的软件开发方法,Jackson程序结构图
- OMT(Object Modelling Technique)
- 可视化开发方法
- ICASE(Integrated Computer-Aided Software Engineering)
- 软件重用和组件连接
其它的方法还包括: - 项目计划与进度跟踪方法
- 成本估算方法
- 质量管理方法
软件工具
软件工具是指为支持计算机软件的开发、维护、模拟、移植或管理而研制的程序系统。
- 项目管理工具。
- 配置管理工具。
- 分析和设计工具。
- 测试工具。
- 维护工具。
常见工具: