软件危机的产生原因与解决途径

软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。在20世纪60年代中后期,大容量、高速度计算机的出现,使计算机的应用范围迅速扩大,软件开发的需求急剧增长。软件系统的规模越来越大,复杂程度越来越高,软件可靠性问题也越来越突出。原来的个人设计、个人使用的方式不再能满足要求,迫切需要改变软件生产方式,提高软件生产率,软件危机开始爆发。

软件危机的产生原因

造成软件危机的原因很多,主要有以下几点:

(1)用户需求不明确

在软件开发早期,用户自己也不清楚软件开发的具体需求,不可能完整地给出所有需求,往往在软件开发过程中,还会不断地再补充需求以及修改需求等;此外,用户在描述软件需求时可能有遗漏、二义性甚至错误;再者,软件开发人员对用户需求的理解与用户本来愿望有差异。

(2)缺乏正确的理论指导

由于软件开发不同于大多数其他工业产品,其开发过程是复杂的逻辑思维过程,其产品极大程度地依赖于开发人员高度的智力投入。由于过分地依靠程序设计人员在软件开发过程中的技巧和创造性,缺乏统一的方法学和工具方面的支持,加剧软件开发产品的个性化,也是发生软件危机的一个重要原因。

(3)软件开发规模越来越大

随着软件开发应用范围的增广,软件开发规模愈来愈大。大型软件开发项目需要组织一定的人力共同完成,而多数管理人员缺乏系统地开发大型软件的经验。各类人员的信息交流不及时、不准确、容易产生疏漏和错误。

(4)软件开发复杂度越来越高

软件开发不仅仅是在规模上快速地发展扩大,而且其逻辑关系复杂性也急剧地增加。现有的开发方法、工具及组织形式,在处理复杂问题时显得力不从心。

解决软件危机的途径

到了20世纪60年代末,软件危机已经非常严重,这促使计算机科学家们开始探索缓解危机的方法。他们提出了“软件工程”的概念,从组织管理措施和技术措施(方法和工具)两方面研究如何更好地开发和维护计算机软件,从而减轻软件危机所带来的影响。

为消除软件危机,具体来讲,首先,应该对计算机软件有一个正确的认识,彻底清除“软件就是程序”的错误概念,软件应该是程序、数据以及相关文档的完整集合;其次,充分认识到软件开发不是某种个体劳动的神秘技巧,而应该是各类人员协同配合,共同完成的工程项目,要有良好的组织、严谨的管理;再者,推广和使用在实践中总结出来的成功软件开发技术和方法,并且研究探索更好、更有效的技术和方法;最后,应该开发和使用好的软件开发工具,从而有效地提高软件的生产效率。

版权声明:本篇文章(包括图片)来自网络,由程序自动采集,著作权(版权)归原作者所有,如有侵权联系我们删除,联系方式(QQ:452038415)。http://www.apmygs.com/427.html
返回顶部