谁都不想欠债,但在企业IT不断进化过程中,“欠债”是无法避免的一件事!这些债不是钱,通常是日积月累的“技术遗留”。比如:构建优雅架构时临时赶工的“烂摊子”,或者是版本迭代时,那些来不及升级的应用——先这样后面再改,事实上却永远没改的老旧代码。
从企业管理来看,一直欠着的“老旧技术”,比欠钱更可拍,他们不仅无法创造价值,还在每年吸企业的血!全球权威研究机构Forrester数据分析显示,近20%的IT预算被用于管理技术债务,而不是推动新功能开发;一家叫做《系统与软件杂志》的统计数据更令人扎心,开发者平均会浪费23%的工作时间处理技术债务;知名咨询公司埃森哲也算过一笔宏观账,技术债务每年造成的损失高达2.41万亿美元……
很明显,当企业的“技术债”像雪球一样,越滚越大,越来越重,这已经不是技术本身存在的问题,而是上升到战略高度,成为横在企业业务创新路上的“一座大山”。当一个企业有近1/4的时间都在与老旧系统纠缠,你拿什么去和竞争对手比拼?
那么,问题来了,为什么技术债如此难还?在AI重塑一切的全新时代,能否通过源代码翻译的方式,让那些传统应用“旧貌换新颜”?从逻辑上看,似乎没有问题,但现实情况却在“啪啪打脸”!
技术债“难还”在哪里?
在所有技术债中,大型机现代化迁移是难度最大的,而“COBOL”又是其中最难啃的骨头!
虽然,COBOL老到可以进“博物馆”,但是依然不能丢。因为,全球每天有数千亿行COBOL代码在生产环境中运行,支撑着金融、航空和政府部门的关键系统。
简单理解,我们每次刷信用卡、取社保金、订机票时,背后都可能有一个超过50年的COBOL程序在默默运行,其性能和运行效率可想而知。
为什么不能换掉这些老旧应用?IT部门不是没有想过!要想对大型机工作负载进行迁移,首先需要对COBOL这一运行在IBM计算机上的老旧编程语言进行改造。然而,懂COBOL的程序员平均年龄已超过60岁,年轻人没人愿意学这门“古董语言”。
如果让AI去读COBOL代码,然后翻译成Python、R、Java、C++等现代语言……想象很美好,但实际操作起来,业务需求和技术实现完全不在一个频道上!原因是什么?对于那些采用COBOL代码编写的老旧程序来说,文档早就丢了,代码中潜藏着的无数业务规则,比如:利息、保费、赔款等问题,没人看得懂。
如果程序员都搞不定,你把一堆几十年前的COBOL代码,扔给GitHub Copilot、Cursor等 AI智能编程工具,看起来能直接吐出干净的代码,但上线后发现:利息算错了,赔款也不对,很多代码里内置的隐藏关系没有捋顺清楚,这种差错在金融核心系统中绝对不允许出现。因为,只要一个规则不对,银行的损失动辄就是上百万美元。
技术债务之所以可怕,是因为它从来都不是“单一问题”。再以典型的Windows应用迁移为例,要想成功升级到现代化技术栈,需要冲破重重关卡。比如:底层是运行了十几年的.NET Framework应用,版本早就过时;而往上走的UI框架,可能比很多工程师的年纪还大;数据库是某个年代的SQL Server,里面存着没人敢动的存储逻辑;部署流程更是一团乱麻,不同系统彼此耦合、互相依赖,牵一发而动全身……
如何让AI只做擅长的事?
AI在老旧系统面前,也只能束手无策吗?在与400多家客户的沟通和合作过程中,亚马逊云科技找到了大型机工作负载走向现代化技术栈的实践路径!
“AI需要的不仅仅是源代码本身,还需要很多源代码无法单独提供的更多上下文信息。” Amazon Transform 项目负责人Asa Kalavade在一篇博客中,概括了AI拯救企业大型机“技术债”的一些关键点。
Asa Kalavade认为,大型机现代化改造过程可以分为两个关键阶段:第一阶段是逆向工程(reverse engineering),也就是理解现有系统到底在做什么;第二个阶段是正向工程(forward engineering),即构建新的应用程序。第一阶段,非常重要,决定了现代化改进的成败。而对于很多智能编码助手来说,最擅长的点其实是第二阶段,那就是通过一份清晰、经过验证、可追溯的文档及设计规则,快速构建出现代化应用。
而从整个实践路径来看,大型机现代化转型既需要逆向工程,也需要正向工程。至于,如何让AI真正发挥价值,只干它擅长的事?一般来说,大多数企业都会踩到以下几个坑:
1.代码是有“边界”的,但AI看不到
一个大型机的程序可能有数万行代码,同时还会引用系统中共享的数据定义,进行其他程序调用,并通过JCL(作业控制语言)进行编排。目前的AI工具, 一次只能处理有限规模的代码,如果你只给它一个程序,它根本看不到相关的Copybook、被调用的子程序、共享文件,以及把一切连接起来的JCL。这样一来,AI生成的代码看起来合理,但一旦放回整个系统,依赖关系全断,根本跑不起来。
Amazon Transform的做法是,首先以确定性的方式提取所有隐含的依赖关系,然后再向AI提供具有清晰边界且完整的代码单元,其中所有必要信息都已经被解析和补全。这样,AI就可以专注于它最擅长的事情——理解业务逻辑并生成规范说明,而不是去猜测那些它无法看到的系统连接关系。
2.同一段代码,在不同平台上行为不同
数值如何进行舍入?数据在内存中的存储方式是什么?应用程序如何与中间件进行交互?这些问题可能都是最容易被忽视的问题!
要知道,同一份COBOL源代码,在不同的编译器和运行环境下,行为可能会完全不同。很多信息根本不在源代码里,而是由代码所依赖的编译器和运行时环境决定的。几十年来形成的软硬件深度集成,不是通过简单迁移代码就能复制。
如果只给AI源代码,不给具备平台感知的上下文能力,它生成的结果可能看起来正确,但运行时就会完全不一样。
Amazon Transform的实践经验是,只有当平台相关的行为被解析和明确之后,AI才能发挥出最 佳效果。如果向AI提供的是干净且具备平台感知能力的输入,它就能够很好地完成任务;但如果只是提供原始源代码,最终生成的结果可能看起来正确,却在实际运行时表现出与原系统不同的行为。在金融系统中,一个舍入规则的差异并不是一个简单的设置问题,而是可能会造成一个实质性的错误。
3.合规的关键的不是代码,而是可追溯性
如果你所在的行业是银行、保险、政府部门,监管机构通常会问:如何证明你没有遗漏任何业务规则?显然,仅靠AI自己,根本没法满足监管和合规这一要求!
AI阅读源代码,提取业务逻辑,生成文档——整个过程是一个黑箱。监管机构不会接受“AI说就是这样”的答案。按照可追溯性要求,每一个输出结果,都必须能够以正式且可审计的方式,追溯到原始的代码和业务逻辑。
值得一提的是,对于受监管行业的客户来说,可追溯性非常重要,往往决定了一个项目的进程,是顺利推进,还是会直接停滞。
Amazon Transform的核心思路非常简单,那就是为应用构建一个完整且具有确定性的模型。专属AI Agent会从整个系统层面提取代码结构、运行时行为以及数据关系,而不是一次只分析一个程序,通常是覆盖整个系统环境,能解决跨程序依赖关系,以及中间件的交互问题,包括平台特定的一些行为。
Amazon Transform:一个可大规模实现应用现代化迁移的AI智能体平台
对于深陷“技术债”泥潭的企业来说,Amazon Transform 是一个实现大规模应用迁移的最 佳选择!
Amazon Transform 是首款专为加速企业全栈现代化而研发的代理式人工智能服务,可支持 Windows、大型主机、VMware 工作负载的现代化转换,以及代码、API、框架等的自定义转换。该服务也是亚马逊云科技二十年实践积累的沉淀,拥有丰富的迁移和现代化经验。通过专用的人工智能代理的部署,可自动执行复杂任务,例如评估、代码分析、重构、分解、依赖关系映射、验证和转换规划,因此显著缩短了项目时间。
与其他平台不同的是,Amazon Transform可以并行执行多项任务,可以帮助各个组织同时对数百个应用程序进行现代化改造,并保持高质量和控制力。在使用体验上,用户可以通过自然语言聊天的方式实现业务目标,并能共享工作空间。对于跨组织和跨职能团队来说,可以从头到尾实时协作、跟踪进度和管理转换。
Amazon Transform 自发布以来,发展势头十分强劲,得到了诸多客户的认可。通过AI智能体消除技术债务,益博睿(Experian)是个典型的案例。借助Amazon Transform,该公司实现了七个遗留的 .NET 应用的现代化,让开发者的工作量减少 40%,节省了约 300 个工程日,同时转换了数十万行代码。
再比如,通过代码转换,解决复杂性任务,加拿大航空的案例也颇具代表性。在Node.js 16 升级到 20 过程中,Amazon Transform带来了90%的工作效率提升,让预期时间和项目成本减少了 80%。通过AI智能体,可实现高质量、可重复的快速转换目标,加速推进组织范围内大规模代码迁移和应用现代化进程。
为了将大型机现代化进程,从数年缩短到数月。宝马集团使用 Amazon Transform将测试时间减少了 75%,并将测试覆盖率提高了 60%,在加速现代化时间表的同时显著降低了风险。
同样,为了大规模简化 VMware 迁移,CSL 借助Amazon Transform将初始波次规划加速了 10 倍,为跨越 29 个数据中心的 1,072 个应用节省了至少 10.5 周的工作量,同时将应用发现时间减少了 12 倍。
Amazon Transform for VMware 引入了新的AI智能体功能,从根本上改变了将 VMware 工作负载迁移到 AWS 的方式。你可以把VMware 迁移智能体当成你的协作队友,可以理解你的业务优先级,并为跨越数千台服务器的数百个应用智能地规划迁移。
总结而言,Amazon Transform是企业大规模应用升级的福利,可以明显地降低现代化应用成本,减少老旧系统的持续维护费用,全面消除遗留应用带来的企业压力。