当代软件现代化:战略、动力与研究机遇有哪些?
摘要:在当今的商业环境中,几乎每家公司都依赖于软件系统。然而,许多系统并非新兴的、时髦的技术,而是我们常说的“遗留系统”或“祖传代码”。这些系统虽然承载着多年的业务知识和核心价值,但其维护成本却高得惊人。 为了揭示软件现代化的真实面貌,我们进行了
在当今的商业环境中,几乎每家公司都依赖于软件系统。然而,许多系统并非新兴的、时髦的技术,而是我们常说的“遗留系统”或“祖传代码”。这些系统虽然承载着多年的业务知识和核心价值,但其维护成本却高得惊人。
为了揭示软件现代化的真实面貌,我们进行了一项系统性的研究,全面综述了过去十年间发表的 126 篇相关学术论文。这项分析的目的,是拨开行业流行语的迷雾,找到那些被实践和数据反复验证的真知灼见。
Wesley K. G. Assunção, Luciano Marchezan, Lawrence Arkoh, Alexander Egyed, and Rudolf Ramler. 2025. Contemporary Software Modernization: Strategies, Driving Forces, and Research Opportunities. ACM Trans. Softw. Eng. Methodol. 34, 5, Article 142 (June 2025), 35 pages. https://doi.org/10.1145/3708527
背景
一个普遍的误区是,只要是遗留系统,就必须进行现代化改造。但研究结果明确指出:现代化并非总是正确的选择。
在现有文献中,我们可以看到将传统系统向现代系统转型的三种方式:
“大爆炸式”改革,即直接用现代系统替换传统系统;
渐进式现代化,逐步用现代组件替换传统系统的部分模块;
共存模式,让传统与现代组件在同一系统中共存运作。
为了做出明智决策,研究人员在现有经典模型的基础上,提出了一个扩展版的“投资组合分析象限”(Portfolio Analysis Quadrant)决策框架。该框架建议根据系统的技术质量 (Technical Quality)、商业价值 (Business Value) 以及新增的创新潜力 (Innovation) 这三个维度,来决定其未来走向,如图1所示。
这会产生五种可能的结果:
替换:对于商业价值和技术质量都低的系统,最明智的选择是放弃,并用现成的商业解决方案取而代之。
维护:对于技术质量高但商业价值低的系统,推荐的策略是进行常规维护,保持其正常运行即可。投入巨资进行现代化改造很可能得不偿失。
演进:对于技术质量和商业价值双高的系统,应通过常规的软件演进(如添加新功能)来持续提升其价值。
重构:对于商业价值高但技术质量差(即技术债严重)的系统,应进行重构,以改善其内部质量,同时保留其核心商业价值。
迁移:当一个具有高商业价值的系统需要与新兴技术结合以驱动创新时(例如,数字化转型),无论其技术质量如何,都应考虑进行迁移。
这一发现的核心在于战略定力。在砸钱启动现代化项目之前,企业必须冷静评估系统的真实成色。对于那些运转良好但已非业务核心的系统,“什么都不做”可能反而是避免资源浪费的最佳策略。
结果与分析
表 2 列举了研究中归纳出的 8 种现代化策略,这些策略已被应用于软件工程的多个领域,例如系统云迁移、架构优化、编程语言转型、复用优化、新型硬件集成、自动化应用、数据库升级以及数字化转型。
人们通常认为,软件现代化的主要目的是为了偿还“技术债”,修复过时的代码。然而,对 126 项研究中提及的 14 个驱动力的分析显示,这一假设并不完全正确。关于驱动因素(详见表 3),研究人员将这些驱动力归纳为三大类:运营 (Operational)、技术 (Technical)和 组织 (Organizational)。令人惊讶的是,最主要的驱动力来自运营层面,而非技术层面。被提及次数最多的驱动力(在 62 项研究中出现)是降低运营成本 (reducing operational costs)*。这意味着,大多数现代化项目的根本动机是财务上的。企业希望通过现代化来减少昂贵的维护费用、硬件成本和专业人才招聘的困难。
既然现代化的首要驱动力是商业和财务目标,那么阻碍企业实现这些目标的最大技术障碍又是什么呢?出人意料的是,研究表明问题并不在于代码本身。表 4 则呈现了本次分析的研究样本中所发现的 16 项挑战。在所有被提及的挑战中,最普遍的一个是缺乏工具支持 (lack of tooling support),在 126 项研究中有 45 篇论文都提到了这一点。这表明,行业中存在一个根本性的差距:工程师们迫切需要更先进、更自动化的工具来辅助代码分析、迁移和重构工作,但现实中这类工具却严重不足。
接下来,我们将详细拆解这 8 种策略,探讨它们背后的动因、面临的挑战以及未来的研究机遇。
