arXiv:2505.06885cs.SEcs.IR2025-05

用知识图谱分步解析老旧系统,助力企业逐步现代化升级

Incremental Analysis of Legacy Applications Using Knowledge Graphs for Application Modernization

  • 构建可定制的代码与数据关系知识图谱,支持多语言平台
  • 通过交互式边界定义,可视化分析模块间依赖关系
  • 适合系统架构师或专家在无文档情况下推进现代化改造

银行、电信和航空等行业拥有数十载历史的大型软件系统,多数使用COBOL、PL/1、汇编等旧语言编写,文档缺失且原开发人员已离职。理解这些系统对现代化或日常维护构成挑战。复杂系统存在基于代码依赖与架构的自然边界,以及由业务功能、数据域等驱动的逻辑边界。因此,系统架构师通常分阶段沿逻辑边界实施增量式现代化。本文提出一种软件系统分析工具,允许领域专家或架构师以增量方式分析大型系统。该工具分析源码及数据模式等元数据,基于可定制本体构建知识图谱,实体与关系可适配任意编程语言与平台。基于此图谱,分析师可定义围绕程序、事务、数据库表等实体的逻辑边界,并查看其与其他系统组之间的依赖关系视图。该过程可交互重复,用于:1)识别现代化任务中关注的实体与分组;2)理解系统某部分变更对其他部分的影响。我们通过两个客户应用的初步研究验证了该工具的有效性。

原文摘要 · Abstract (English)

Industries such as banking, telecom, and airlines - o6en have large so6ware systems that are several decades old. Many of these systems are written in old programming languages such as COBOL, PL/1, Assembler, etc. In many cases, the documentation is not updated, and those who developed/designed these systems are no longer around. Understanding these systems for either modernization or even regular maintenance has been a challenge. An extensive application may have natural boundaries based on its code dependencies and architecture. There are also other logical boundaries in an enterprise setting driven by business functions, data domains, etc. Due to these complications, the system architects generally plan their modernization across these logical boundaries in parts, thereby adopting an incremental approach for the modernization journey of the entire system. In this work, we present a so6ware system analysis tool that allows a subject ma=er expert (SME) or system architect to analyze a large so6ware system incrementally. We analyze the source code and other artifacts (such as data schema) to create a knowledge graph using a customizable ontology/schema. Entities and relations in our ontology can be defined for any combination of programming languages and platforms. Using this knowledge graph, the analyst can then define logical boundaries around dependent Entities (e.g. Programs, Transactions, Database Tables etc.). Our tool then presents different views showcasing the dependencies from the newly defined boundary to/from the other logical groups of the system. This exercise is repeated interactively to 1) Identify the Entities and groupings of interest for a modernization task and 2) Understand how a change in one part of the system may affect the other parts. To validate the efficacy of our tool, we provide an initial study of our system on two client applications.

系统现代化知识图谱增量分析老旧系统

Thank you to arXiv for use of its open access interoperability. PaperDance 不是 arXiv 官方产品;中文卡片由大模型生成,请以原文为准。