2020年3月,新冠病毒肺炎疫情在美国暴发。随后美国国会通过了一项法案,为数量激增的失业人员提供额外的失业金。法案规定每个州发放各自的失业金,但其中超过20个州的计算机系统老旧,很难处理大量的申领要求,因而失业金经常延迟数周甚至数个月才能发放到经济困难的居民手中[1,2]。

专家调查小组发现,在美国加利福尼亚州,虽然就业部门的信息技术(IT)系统[其核心是国际商业机器公司(IBM)的大型计算机]性能极好,但也存在失业金延迟发放的问题,而且延迟发放时间在全美是最长的。系统的局限性延缓了支付速度,使失业金的申领过程复杂化[3]。例如,由于申报网站与手机不兼容,或者残疾人无法使用该系统,很多人在申报中遇到极大困难[3]。另外,数据库中记录申请人信息的家庭住址一栏太短,家庭住址较长的人提出的申请需要人工处理,速度较慢。

美国很多州在发放失业金时遇到困难,表明现存的信息技术系统落后、笨拙和低效。落后的信息技术系统也是造成银行业务中断、航空公司航班延误和安全漏洞产生的一大原因[2]。美国马萨诸塞州剑桥市哈佛大学公共政策学院讲师David Eaves说:“这些问题一直都存在,我们在现代化方面做得非常差。”

然而,对于落后的信息技术系统,并没有简单的补救措施。原因是替换或翻新老式硬件和软件是昂贵的、耗时的并且有风险。一项针对企业领导者的调查发现, 74%的信息技术系统的升级都以失败告终[4]。一些新的方法,如通过部署人工智能来改造落后的软件[5],可能会让检修工作变得更容易。然而,德国德累斯顿工业大学软件工程学助理教授Harry Sneed指出:“当系统达到一定规模后,就无法进行现代化改造。”

专家早就提出了信息技术系统落后的问题。美国政府问责局(GAO)2016年的一份报告指出了联邦机构最需要升级的10个系统[6]。美国财政部的信息技术系统保存了美国纳税人和企业数据档案,至今已有60多年的历史,是最古老的信息技术系统。然而最令人担忧的系统是美国国防部的信息技术系统。美国国防部借助20世纪70年代的IBM系列/1计算机(图1)控制了国家的核武器,该计算机如今仍在使用8 in(1 in = 2.54 cm)软盘[7]

《图1》

图1. 美国国防部如今还在使用20世纪70年代的IBM系列/1计算机来控制国家的核军火库。直到2019年,该计算机仍在使用8 in软盘。来源:US GAO(公开)。

此后美国对该系统进行了改造,不再使用落后的软盘(图2)[8],财政部目前也在更新纳税人记录[9]。美国政府问责局在2019年发布的最新一期报告中又指出了另外6个使用期限已经超过30年的重要联邦政府系统 [10]

《图2》

图2. 8 in软盘(后)目前已成为落后技术,其在1971年商业化应用时是信息存储方面的一个突破,可存储80 kb的数据。到了20世纪80 年代,其被3.5 in软盘(左)所替代,而这种软盘现在也已经落后,取而代之的是通用串行总线(USB)数据密钥(右下角),这种数据密钥目前可存储数千兆字节的数据。来源:Wikimedia(公开)。

还有很多其他有关落后信息技术系统的例子。世界金融系统主要依赖商业通用编程语言(COBOL),处理了95%的自动柜员机交易[11]。这门语言于1959年推出,目前熟悉这门语言的很多程序员的年龄与其年龄相近,平均年龄在60岁左右。最近,人们对COBOL的兴趣急剧上升[1,12]。此外,日本政府也非常依赖包括传真机等在内的落后技术,为此,他们成立了新的机构来加速信息技术系统的更新换代[13]

取代落后技术的理由不尽相同。一方面,落后的信息技术系统的运行成本较高。2019年,美国政府花费了超过80%的预算经费(约900亿美元)来维护现有的系统,这些系统中很多都是落后的信息系统技术[10]。老式硬件的运行速度较慢,也不具备现代化技术的性能。比如美国国防部的IBM系列/1计算机,其计算能力远不如一部现代智能手机[14]。美国失业率骤增问题揭露了老式系统在危机期间缺乏灵活性。2017年,马萨诸塞州将其失业信息登记系统转移到云端,当很多人因新冠病毒肺炎疫情失业时,该系统可以更快地做出响应[15]。美国规定各州必须在三周内给受助人发放完第一笔款项,马萨诸塞州在截止日期前成功完成这一任务的68%,而采用老旧技术的佛罗里达州,在疫情暴发的前几个月,只完成了这一任务的28% [15]

很显然,对落后的系统进行现代化改造是一种常见的作法,但各种组织却常常执着于使用落后技术。理由之一在于,在很多情况下,落后的信息技术系统仍然能够工作。英国萨里的一家软件升级公司CIMtrek的首席执行官Jon Pyke说:“有数十亿行代码在日复一日地工作,只有在发生前所未有的事件时,系统才会崩溃。” 此外,Sneed指出,用户在使用他们所熟悉的系统时往往会更有效率。

然而,落后的信息技术系统仍在运行的最大原因是存在着诸多阻碍系统更新换代的因素[2]。例如,系统升级的成本往往很高,工作可能会受到影响,成功的概率也很低。此外,Eave指出,企业和政府往往缺乏启动这些项目的动力。例如,政治家不愿意推动政府系统的全面改革。原因是很多升级过程需要十几年的时间,而且他们很可能无法享受到升级之后的功劳或利益,但同时又会招致延期或失败的批评。Sneed说信息技术经理对技术升级项目也同样犹豫不决,原因是他们担心丢掉工作。

老旧系统的复杂性也使其难以被更新换代。软件就是一个很好的例子。Sneed说,世界上很多老式代码都十分混乱。他本人曾为包括大众汽车公司和瑞士银行在内的私营和公共部门客户开展过70多个软件现代化项目。多年来,很多软件系统的规模逐步扩大,充斥着各种非功能性或冗余的代码。1979—2017年,Sneed的一个企业客户的软件系统中的代码从200万行扩展到1100 万行。与此相关的问题是文件编制不完善。Sneed回忆说,他曾提供过服务的每个组织几乎都有“满屋子积满灰尘的笔记本电脑”,据说这些笔记本电脑记录了这些组织的软件运行方式。但这些记录已经过时了,等到想要进行软件升级的时候,原来的程序员通常已经离开了。

Sneed认为,对于有问题的代码,一个解决方案是用现成的、专门编写的软件来代替。然而,这些程序可能十分烦琐。Sneed指出,用户通常被迫避开这些代码而不是用它们进行工作。这些组织也可以考虑保留原来的软件,但在此基础上需要增加一个新的界面,来提供当今用户所期望的功能,如友好的、基于图形的访问。但该解决方案并不能纠正底层系统的问题。最后, Sneed说,重新编写旧代码可能是一种“说得过去”(least bad)的方法。但是,在程序员用现代语言重新编写旧代码之前,他们可能需要分析数百万行代码,以弄清这些代码是如何工作的以及其实现了哪些功能。升级更新旧软件是一项繁重的任务,甚至连计算机巨头IBM公司都要求利用Watson人工智能系统去研究这个问题[5]

尽管存在各种障碍,但是仍有一些信息技术系统升级成功的案例。例如,位于欧洲东北部的爱沙尼亚共和国因为采用了智能信息技术战略而赢得了好评[16]。该国在20世纪90年代恢复独立时,一切从头开始,而这也使这个国家更具创新性。爱沙尼亚共和国针对落后信息技术系统采取了一种预防性的方法,即在所有关键系统使用年限达到13年之前就对其进行更换[16]。Eaves 说,对于一些组织而言,采用快捷的方法,即开发和推出执行某些操作的模块,可能比一次性开展大规模项目升级更加有效。他指出后者这种“瀑布式”(waterfall)项目失败的概率很高。

虽然新冠病毒肺炎疫情引发的失业危机仍在继续,但一些失业人员也看到了信息技术升级带来的好处。 2020年1月,美国科罗拉多州启动了现代化系统,首次允许在该州通过电子邮件或短信与收件人进行沟通 [17,18]。但其他受益人可能需要等待更长时间。俄勒冈州是美国最后一个在2020年发放完补充失业金的州,该州目前刚开始升级系统,预计新版本至少要到2025年才能上线[19]