|
楼主 |
发表于 2007-3-5 22:11:15
|
显示全部楼层
②所有的信息技术系统都是很脆弱的。对一个砖瓦建筑大楼,你需要拆掉几百块置于战略位置的砖才能使一面墙倒塌。但是,对于一个十万行程序的软件,只要有一两行是坏的,就会出现大问题。1991年,AT&T电话网络失灵,使一千二百万用户丢失电话服务,完全是由于一行程序中一个字符的键入错误造成的。
③另一个不成熟的IT实践是1997年美国税收服务的40亿现代化项目,美国国税局现在还继续投80亿。把税收编码翻译成软件编码基本上是不可能的。税收法规非常复杂,基于常常是含糊的法律条文,并且经常改变。从信息工程的观点来看,那是一个需求梦想。如果考虑到来自内部和外部的恶意攻击,问题就更加复杂。
④SydneyWaterCorp.是澳洲最大的水提供商,该公司的自动顾客信息和计费系统,经费3,320万美元,在2002年被取消。根据澳大利亚总审计师的研究,该项目的计划和规范不适当,使许多需求改变,而且要追加经费和推迟项目的计划。SydneyWater不得不在花费了3,320万美元之后,中断该项目。
⑤OxfordHealthPlansInc.在1997年,该公司的自动计费和索赔系统不能处理扩展的商务,导致4亿美元没有收上来,6.5亿美元没有付出去。而高级经理们对扩展牛津的生意比提供满足目前需求的计费系统更有兴趣。甚至在问题出现以后,例如服务清单送出几个月以后,经理们并不在意。当计费系统失效时,公司丢失几千万美元,股票价格一天内由68降到26美元,勾销了34亿企业价值。股东们告状,最后输掉2.25亿美元。政府部门对该公司展开调查,最后发现300万违规。
中国可靠性网KekaoXing.com
⑥在1986年,LondonStockExchange想设计一个新的股票结算系统,决定研制股票交易自动化系统。7年后,到1993年,花费了6亿美元,停止了这个系统的开发,不但因为设计太复杂、太麻烦,而且因为管理太差,太幻想化了。研究表明,虽然出现了许多问题,工期一再推迟,花费很高,但没有人对该项目的真实情况进行调查研究。
⑦2004年10月,一家英国食品上市公司注销了一个5.26亿美元投资的自动贮藏链管理系统项目。由于该系统失效,公司不得不雇用3000人来把商品从仓库送到各商店的货架上。
这种软件项目失败的例子还有很多。从这些例子中我们首先看出,发达国家的软件开发费用是很高的,软件失效的损失是惨重的。就我国目前的情况看,这两点都未做到。我们常常以为,软件不过是编码,找几个学生就可以做了,不需要很多经费。所以,一般软件项目经费较少。另一方面,软件完成以后,公司或机关并不完全依赖该软件,而是锦上添花,即使软件失效也无关大局,因而损失也不大。俗语说“便宜没好货”,越是便宜的东西,质量就越差。当然,这种情况正在改变,例如飞机场的管理系统崩溃,飞机就无法进出航空港。你也就无法期望很廉价地开发一个高可靠的飞机场管理系统。其次,我们可以看出,软件并不光是指它的编码。软件是一个过程。整个生命周期中的任何故障都可能引起软件的失效。许多信息技术专家相信,软件失效实际出现的次数比人们感知的还要多。这些故障通常不可预计,它们出现在各个国家、大公司,商业,事业单位和政府机关,造成的纳税人和股东以及投资者的金钱损失一年就是几十亿美元。随着信息技术无处不在地增长,这个问题将更加严重。今年,全世界的组织和政府将投资约1万亿元于信息技术,包括硬件、软件和服务。5-10%将半途而废,其他的将推迟或追加经费,只有少数真正成功。最大的悲剧在于,人们知道,软件失效总体来说不可避免,许多组织即使看到了危害甚至毁灭该组织的威胁,也不把预防失效看作紧急之事。这并不是由于技术上的原因,而是由于复杂的商业和社会原因。中国可靠性网http://可靠性.com
近十几年来,即使对于已成功的软件开发项目,软件代码量大增也是影响软件可靠性的大问题。例如,航天飞机机载系统有近五十万行代码,地面控制和处理系统也有大约三十五万行代码。在美国电信业中,电信线路的正常运转需要数百个软件系统的支持,其代码总量超过一亿行。有两个原因使计算机软件越来越大:一个是人们对计算机需求和依赖的与日俱增,计算机系统的规模和复杂性急剧增加;另一个是软件体系结构越来越复杂。为了提高软件生产力,软件过程趋于复杂,许多人协同工作,层次化的或网状的体系结构和层次化的开发方法,都使得计算机软件的大小以惊人的速度急剧膨胀。与此同时,计算机出现故障引起危机的可能性也逐渐增加。由于计算机硬件技术的进步,元器件可靠性的提高,硬件故障相对显得次要了。研究表明:由于软件设计故障引起的系统失效与由于硬件设计故障引起的失效之比是10:1。表1.1给出了某些成熟的计算机系统失效源的统计数据。 |
|