1
 软件工程
1.3.2.1 1.2.1 软件危机的主要特征

1.2.1 软件危机的主要特征

软件危机的主要特征体现在以下几个方面。

1)软件开发进度难以预测

软件开发过程中的拖延工期现象并不罕见,这种现象降低了软件开发组织的信誉。

2)软件开发成本难以控制

软件开发中投资一再追加,往往实际成本要比预算成本高出一个数量级。而为了赶进度和节约成本所采取的一些权宜之计往往又损害了软件产品的质量,从而不可避免地引起用户的不满。

3)产品功能难以满足用户需求

开发人员和用户之间很难沟通,矛盾很难统一,往往软件开发人员不能真正了解用户的需求,而用户又不了解计算机求解问题的模式和能力,双方无法用共同熟悉的语言进行交流和描述。在双方不充分了解的情况下,就仓促上阵设计系统,匆忙着手编写程序,这种“闭门造车”的开发方式必然导致最终的产品不符合用户的实际需要。

4)软件产品质量无法保证

系统中的错误很难消除。软件是逻辑产品,质量问题很难以统一的标准来度量,因而造成质量控制困难。软件产品并不是没有错误,而是盲目检测很难发现错误,而隐藏下来的错误往往是造成重大事故的隐患。

5)软件产品难以维护

软件产品本质上是开发人员的代码化的逻辑思维活动的产物,他人难以替代,除非是开发者本人,否则很难及时检测、排除系统故障。为使系统适应新的硬件环境,或根据用户的需要,要在原系统中增加一些新的功能,这又有可能增加系统中的错误。

6)软件缺少适当的文档资料

文档资料是软件必不可少的组成部分。缺乏必要的文档资料或文档资料不合格,将给软件开发和维护带来许多严重的困难和问题。