从复杂性方面看待:
软件危机是软件可以提供的功能与计算机系统的能力以及用户的期望之间的不匹配。这在20世纪成为一个日益严重的问题,因为计算技术突飞猛进,软件无法跟上步伐。随着系统复杂性的增加,用户的需求也在增加,他们希望从软件中获得越来越高的性能。程序员可能难以跟上步伐,从而造成软件危机。
从一致性方面看待:
消费者软件通常会经历一系列缓慢的开发阶段,但只占行业业务量的一小部分。从处理海军巡洋舰上的导弹制导程序到健康保险公司的内部记录保存。该软件通常需要客户的大量投资,以及负责开发、测试和维护该软件的人员进行广泛的编程。
此类项目可能会遇到软件危机,各小系统页面常会不一样,而且随着时间和环境的演变更加不一致。在软件上工作的程序员可能不得不处理正在进行的错误修复,为客户端进行调整,并解决出现的其他问题。低质量可能是一个问题,因为程序员可能会不惜一切代价满足预算的压力越来越大,即使这意味着软件的质量不好。生成的文档也往往较少。
从易变形方面看待:
高级语言开始出现;操作系统的发展引起了计算机应用方式的变化;大量数据处理导致第一代数据库管理系统的诞生。软件系统的规模越来越大,复杂程度越来越高,软件可靠性问题也越来越突出。原来的个人设计、个人使用的方式不再能满足要求,迫切需要改变软件生产方式,提高软件生产率,软件危机开始爆发 。
从不可见性看待:
是利益相关者和开发人员之间没有足够的沟通。这将导致未充分指定的需求,这将通过增加项目的额外测试时间来大大延迟开发时间。这也会导致代价高昂的更改,由于不同部门之间缺少通信,因此在此过程中需要解决这些更改。
由于在规划阶段缺乏沟通是组织陷入软件危机的主要原因之一,因此他们需要提前制定应急计划,因此不会发生许多此类问题。
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!