AI挑战COBOL语言 助力修复全球老化计算机代码 - 彭博社
Anna Irrera
20世纪60年代的大型计算机。摄影师:H. Armstrong Roberts/ClassicStock/Getty Images
克雷西米尔·穆德罗夫契克和他的程序员团队需要连续数月梳理计算机代码,这些代码的历史可能比团队最年轻成员的年龄还要长三倍。
穆德罗夫契克专精于大型机技术,这类计算机的起源可追溯至数字时代初期,有时还需运行古老的软件。升级这类系统是项艰巨的工作,通常需要筛选数百万行代码以理解特定功能的运行方式。身为IT顾问的穆德罗夫契克将之比作考古学。
不过由于生成式人工智能的广泛应用承担了部分繁重工作,这项任务正变得轻松起来。“人工智能系统就像那位聪明、经验丰富、无所不知的资深同事,“穆德罗夫契克说道。他的团队最近运用此类工具,帮助加速了某欧洲政府机构养老金系统的现代化改造。
随着解决老旧计算机代码问题的紧迫性增加,全球企业和政府机构都在开展类似工作。据知情人士透露,美国社会保障管理局计划利用人工智能升级其遗留的COBOL(面向商业的通用语言)代码库,预计该项目将耗时三年,耗资约10亿美元。
社会保障署未回应置评请求。
从网上银行应用、航空订票服务到养老金发放,关键系统往往由数十年历史的代码支撑,不仅推高成本,更增加了系统故障与网络攻击风险。美国财政部长斯科特·贝森特多次强调需彻底改革政府系统中使用的COBOL等计算机语言——这种诞生于1950年代末的编程语言至今仍在运行。
“1980年我刚上大学时,学的就是COBOL编程,“他在二月接受彭博社《Big Take DC》播客采访时表示。
斯科特·贝森特摄影师:Victor J. Blue/彭博社麦肯锡12月报告显示,《财富》500强企业使用的软件中高达70%开发于至少二十年前。研究机构IDC估计,仅全球金融机构2028年维护传统支付系统的支出就将达570亿美元——几乎相当于美国最大银行摩根大通去年的全年净利润。
麦肯锡高级合伙人Gökhan Sari表示:“你会惊讶于至今仍在使用COBOL的企业数量,甚至包括全球各大银行。“这家咨询公司已开发名为LegacyX的专用AI工具,协助银行等客户淘汰过时代码并改造系统。
在2022年底Sam Altman的OpenAI通过ChatGPT掀起生成式AI热潮之前,管理基于COBOL和PL/1等过时语言的系统意味着要依赖日益稀缺的专业人才——随着精通这些代码的资深程序员退休,相关人才库不断萎缩。当系统需要维护时,企业召回退休员工的情况并不罕见。
这对银行尤为棘手,其面向消费者的应用程序可能运行在数十年历史的系统之上,使其相对于Revolut Ltd.等新兴金融科技竞争对手处于劣势。这些层层嵌套的代码常被称为"意大利面系统”,替换工作异常精细。
荷兰ING银行前首席技术官Görkem Köseoğlu指出:“通常只有少数人了解这些成千上万行的代码,而你需要将其迁移至新语言。这类项目风险高且复杂,因为在迁移代码库的同时,还必须确保银行业务持续运转。”
全球零售银行IT支出概况
数据来源:Celent
工程师已开始运用ChatGPT、微软Github CoPilot和IBM watsonX等AI工具,使维护升级旧系统的过程更高效便捷。
程序员无需逐行检查代码,而是可以将大段代码上传或复制粘贴到AI工具中,并附上自然语言提示,如"这段COBOL程序有什么功能?"。AI随后能解释代码运行原理及各部分协作关系——甚至能将古老的计算机语言翻译成Java等现代语言。
由于遗留系统通常缺乏文档,工程师们正利用AI编写系统操作说明书。当企业需要修改或替换旧代码时,这能帮助避免耗时的逆向工程过程。
节省的时间和成本相当可观。麦肯锡报告显示,某大型金融机构使用生成式AI改造交易处理系统,将三年前需耗资超1亿美元的项目成本压缩至"不足一半”。
布鲁塞尔欧洲清算所首席信息官米哈尔·帕普罗基表示,这"堪比20年前云计算问世般的颠覆性变革”。
社保系统争议
但这不意味着AI将完全取代人工干预。一个潜在风险是"幻觉现象”——AI模型可能编造虚假答案,在处理关键系统时可能造成严重后果。在可预见的未来,仍需要经验丰富的工程师监督工作。
埃隆·马斯克领导的政府效率部改革社保局IT系统的举措已引发争议,人们担忧过快的变革可能引发混乱。
4月17日,众议院监督委员会的民主党人要求社会保障局助理监察长米歇尔·安德森调查快速改革该机构代码的计划是否会中断向超过7000万受益人的付款。弗吉尼亚州众议员杰拉尔德·康诺利表示,他从机构举报人那里获得信息,称社会保障局计划在几周或几个月内替换COBOL代码,并“在没有充分规划和准备的情况下迅速拆除和替换关键IT系统”。
在很大程度上,支撑全球商业的老化软件基础设施表现良好。但为了运行更高要求的函数而叠加的先进代码迭代开始对计算机网络造成压力,使它们成为公司和政府的财务负担。
2022年信息与软件质量联盟的一份报告估计,由于低质量软件积累的“技术债务”——本质上是替换它所需的支出——高达1.5万亿美元。
高管们表示,升级或淘汰遗留系统的潜在好处不仅仅是成本,还包括释放资源用于开发新工具和应用程序,以及更容易吸引最优秀的工程人才。一般来说,程序员更愿意使用他们受过培训的更现代计算机语言工作。
在提供交易后服务的欧洲清算所(Euroclear),遗留系统被亲切地称为“传奇系统”,因为它们承担着记录其持有的41万亿欧元(47万亿美元)托管资产的重要职能。如今,Euroclear正在测试人工智能,以帮助自动化记录现有代码的运行方式——这是为了在了解旧程序的工程师退休时,确保其系统面向未来的一种尝试。
“这就像拥有一位聪明的同事,”Euroclear的高级分析和商业智能主管Jaques Theys说。“两年前,[人工智能工具]还像新来的实习生。但它们用得越多,就变得越聪明。”
(此前位于本故事顶部的人工智能摘要已被移除,因为它过度概括了人工智能工具可能带来的节省范围。)