软件工程开发系列笔记:软件危机

作为不是计算机相关专业转行产品经理这个岗位的我,常常会遇到很多的困惑。虽然我已经经历了将一款产品从0到1的过程,但是总觉得在设计软件和产品开发得过程中遇到很多得问题,究其原因,我觉得是对于软件产品了解得还是不够,为了加深自己对于软件得理解,准备自学软件工程,在这个过程中,我也会将自己做的笔记分享出来,供大家一起成长。

软件工程开发系列笔记:软件危机

首先从软件危机开始学习,了解软件相关得基础知识。

软件危机:指在计算软件开发和维护过程中所遇到得一系列严重问题。这些问题绝不仅仅是不能正常运行的软件才具有的,实际上几乎所有的软件都不同程度地存在这些问题。

软件危机包含了两个方面的问题:

  1. 如何开发软件以满足对软件日益增长的需求;
  2. 如何维护数量不断膨胀的已有软件:

软件危机的主要表现:

1、对于软件开发成本和进度的估计常常不准确。

在我们实际的工作中也会遇到这样的情况,在产品开发的过程中,实际的工作量比预估的工作量要高出很多,从而经常会出现项目不断延期的情况,项目的延期又会直接增加软件的开发成本,但是这种情况又是无法避免的,我们不能为了赶进度和降低企业的成本而损坏产品的质量,这样会引起客户的不满,进而影响到企业的形象和信誉。

2、对已经完成的软件系统不满意的现象经常发生。

在我们设计产品的开始阶段,如果对于用户的要求没有深入的了解,甚至对于要解决的问题都没有完全确认下来,就着急的设计软件或者是直接编写程序,在这种开发人员和用户之间的信息没有交流充分的情况下,就闭门造车,这样肯定会导致开发出来的产品不符合用户的实际需要

3、软件产品的质量往往靠不住

软件可靠性和质量保证的确切的定量概念刚刚出现不久,软件的质量保证技术(审查、复审、程序正确性证明和测试)还没有坚持不懈的应用到软件开发的全过程中,这些导致软件产品发生质量问题

4、软件通常是不可维护的

很多程序中的错误是非常难改正的,实际上不可能使这些程序适应新的硬件环境,也不能根据用户的需要在原有程序中增加一些新的功能。”可重用的软件“还是一个没有完全做到的,正在努力追求的目标,人们仍然在重复开发类似的或者基本类似的软件。

5、软件通常没有适当的文档资料。

软件不仅仅是程序,应该包含一整套的文档资料。这些文档资料是在软件开发过程中产生的,软件产品经理等可以依据这些文档来管理和评价软件开发的进展情况,软件开发人员可以利用这些文档在开发过程中准确的交流信息,软件维护利用这些文档维护软件。如果缺乏必要的文档资料或者文档资料不合格,必然给软件的开发和维护带很多严重的困难和问题。

6、软件成本在计算机总成本中所占的比例逐年上升。

因为科学技术的发展,硬件的生产成本逐年下降,软件开发需要大量的人力,软件开发成本随着软件规模和数量的不断扩大而持续上升。

7、软件开发生产效率提高的速度远远赶不上计算机应用迅速普及深入的趋势。

软件产品”供不应求“的现象使人类不能充分利用现代计算机硬件提供的巨大潜力。

产生软件危机的原因

在软件开发和维护的过程中存在很多严重的问题,一方与软件本身的特点有关,一方面也和软件开发与维护的方法不正确有关。

1、软件是计算机系统中的逻辑部件而不是物理部件,在写出程序代码并在计算机上运行之前,软件开发过程的进展情况是很难衡量的,软件的质量也是很难评价的;而且在软件使用过程中是不可能因为使用时间的长短而用坏,如果在软件运行过程中发现了错误,一定是在软件开发过程中没有被测试出来,软件维护通常意味着改正或者修改原来的设计,这就客观上使得软件的维护是比教难的

2、软件的一个显著特点就是规模庞大,而且程序的复杂性将会随着程序规模的增加而呈指数上升,因此为了在预定的时间内开发出规模比较庞大的软件,就要进行科学的管理,使用经过实践证明是正确的方法,但是目前相当多的软件开发人员对软件的开发和维护还有这不少的糊涂观点,这可能是是软件问题发展成软件危机的主要原因。

3、对于用户的要求没有准确的认识就开始匆忙设计和开发软件是许多软件开发工程失败的主要原因。对问题和目标的正确认识是解决任何问题的前提和出发点,软件开发也是这样。

消除软件危机的途径

为了消除软件危机,我们要对计算计软件有一个正确的认识。软件是程序、数据以及相关文档的完整集合。程序是能够完成预定功能和性能的可执行的指令序列;数据是使程序能够适当的处理信息的数据结构;文档是开发、使用、和维护程序所需要图文资料。

我们要认识到软件开发不是某种个体的劳动的神密技巧,而是一种组织良好、管理严密、个类人员协同配合、共同完成的工程项目。

推广和使用在实践中总结出来的开发软件成功的技术和方法,在此基础上探索更好更有效的方法和技术,来缓解和消除软件危机。

业界动态

年终总结汇报千万别踩这6大坑

2019-12-18 8:53:19

业界动态

设计,只有基于用户的使用场景才会产生价值

2019-12-18 9:17:38

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索