
| 出版日期:1997-06-16 总期号:662 本年期号:22 |
|
2000年:亚洲的神话
谈及2000年左右将发生的“日期危机”,亚洲的许多公司都对其持有一种不真实的安全感。他们自信自己的计算机系统是相当先进的,因而自己可以幸免于这场“灾难”。然而他们想错了。下面我们就要研究一下这一“危机”所涉及的真正的挑战。 亚洲许多富有资历的信息系统与商业的经理认为,所谓的“2000年焦点问题”(见注释1)总的来说是发达经济体制的产物,因而只是西方国家的问题。这种心态是通过为确保计算机系统对2000年这一概念予以承认既不作策略上的准备,也缺乏必要的预算经费而反映出来的。虽然2000年焦点问题对于较为古老的计算机系统(主要指以cobol编写的主机应用程序,带有分离式数据库)会有更为广泛与猛烈的冲击,但亚洲的公司也休想超然于这一冲击之外。为了进一步了解局势的紧迫性,下列事实需要加以考虑。 在亚洲使用的硬件与软件与在世界其他地方使用的软件,大部分都是从相同的供应商处购置的。因此,所有的操作系统、中间件、数据库与应用程序中所存在的如何对2000年加以确认的问题,不分地理限制,都是一样的。能证明这一点的例子首当其冲是主要几家信用卡公司所应用的信用卡证明设备。据报道,2000年以后,这些证明设备中相当的一部分将丧失判认到期信用卡的能力,也就是说,有效期为3年的一张1997年签发的信用卡将会失效。而与此相同的设备也遍布亚洲。 gartnergroup的调查分析表明,全球64%的企业资源规划应用系统不具备确认2000年的功能,绝大部分的供应商只是从1997年的第一季度才开始销售具备确认2000年功能的计算机机型。这意味着凡是于一年或更早以前实施整体应用程序的机构,就很可能要面对2000年的焦点问题———2000年失效。在亚洲地区,as/400的供应商在最近5年中的销售尤其成功,亚洲的许多制造商与分销商都将自己的业务建立于从诸如ssa与jdednards这样的供应商那里购得的软件之上。不幸的是,ssa只是在最近(1997年4月)才宣布开始销售已解决了2000年焦点问题的bpcs产品。 使用自己公司内部开发的运行系统的公司同样难以逃脱2000年焦点问题。因为负责开发其公司内部应用程序的绝大部分it专业人员受训的大学或学校同样只有使用二进制记年的水平,而这正是造成2000年焦点问题的原因所在(见注释2)。 除非公司有意识地采用了最早问世的可确认2000年的计算机系统,否则其应用程序很可能也是不能对2000年加以确认的。尽管it的专业人员好几年前就对这种2000年焦点问题略知一二,但是他们中的大多数人都没意识到这种应用程序能一直运作到今天。许多政府部门与公共服务机构都因此而面临着这一严重问题。绝大多数企业只是近两年才真正意识到潜在的危机与冲击力。因此,近一年前所开发的多数计算机系统都将被这一问题所困扰。不管建立何种平台,这一事实无一例外地适用于所有的应用程序。 也曾有这样的神话说,基于相关性技术与第四代语言所建立的应用程序不存在,诸如2000年危机的问题。尽管多数的相关性数据库以包含四进制记年法的数据处理属性来解决其所存储的数据,许多的应用代码仍旧不能正确处理有关将临的新的世纪问题。 同样被忽视了的另一领域是遍布用户群体的卫星应用的趋势。这些应用程序是利用展延板与数据库在个人电脑上开发的。许多企业利用由这些应用程序得来的分析报告与数据资料来进行主要决定的处理与日常的运作。不走运的是,这些卫星应用程序中的许多程序在编写时,未考虑利用四进制进行记年的必要性。在亚洲,终端用户计算机系统于过去的几年内先是勃兴,继而又遭冷落的事实说明,许多终端用户仍旧通过不具备确认2000年功能的台式机获取数据库与信息。 最后的结果是,亚洲的许多公司因缺乏对亚洲已发生的缘于商业运作中对于2000年确认功能的实例报道的了解,从而倾向于持有一种虚假的安全感,似乎报道中的事件只是发生在美国。不幸的是,在这件事上,没有消息并不意味着是好消息。如果亚洲不采取适当的措绝与行动的话,已经发生在世界其他地区的任何不幸都很可能在亚洲重演。 结论: 亚洲的企业必须认识到这一点:他们的计算机系统同世界其他地区的系统一样,都受到了2000年危机问题的威胁与影响,因而他们必须估计这样的商业系统一旦失控将带来的风险、损失的冲击力以及其可能发生、终止的时间界限。 注释1:“2000年失效”指什么? 当计算机应用程序不能满足商业上的需求时,就会发生“2000年失效”问题。这个问题可能以3种形式出现:一是直接的失效。诸如abend,系统崩溃或其他一些会立即引起人们关注的致命的错误。二是错误计算。这是由计算机的计年系统失效引起的(并很可能导致未知的毁灭性的灾难)。三是由于对某一显示或报告的价值的曲解引起的计算上的错误。例如在用户的排印机上显示“00”,这将会导致商业决策失效。 注释2:为什么计算机系统会因为2000年的到来而失效? 造成2000年危机的原因是由于软件应用程序采用的是二进制记年方法。这就是说,“19”两个数字在程序处理时是隐蔽、看不见的,但它们被置于另外二进制表示的记年之前。对于20世纪的记年来说,这当然不会出现任何问题,(例如“96”)。但是步入21世纪之后,这就意味着大麻烦即将出现了。因为不具备2000年概念的计算机系统会把“00”无一例外地理解并显示成“1900”,从而发生计算上的错误。“00”有时还会被显示成“无效”或“已到期”等其他可怕的错误,从而给客户或终端用户造成曲解与误会。每当进行跨越世纪界限的计算时,就会出现错误。错误的形式不一而同:不精确日期作为诱因(从而使本不该发生的事件发生或阻止本该发生的事件不得发生);日期的计算不精确(即两个日期的区别计算错误);可察觉的错误(某人曲解了关于日期的显示)。可能发生的错误既有超前性的(本世纪进行的计算超越了年界,进入下一世纪),也有回溯性的(当下一个世纪到来时却还在回顾这一个世纪)。当然,目前才只发生了超前性的错例,但诸如不精确日期为诱因、日期计算不精确与可察觉错误都已发生。 |
|||||||||||||||||