Leveraging LLMs for Automated Translation of Legacy Code: A Case Study on PL/SQL to Java Transformation
By: Lola Solovyeva , Eduardo Carneiro Oliveira , Shiyu Fan and more
Potential Business Impact:
Helps old computer code become new code.
The VT legacy system, comprising approximately 2.5 million lines of PL/SQL code, lacks consistent documentation and automated tests, posing significant challenges for refactoring and modernisation. This study investigates the feasibility of leveraging large language models (LLMs) to assist in translating PL/SQL code into Java for the modernised "VTF3" system. By leveraging a dataset comprising 10 PL/SQL-to-Java code pairs and 15 Java classes, which collectively established a domain model for the translated files, multiple LLMs were evaluated. Furthermore, we propose a customized prompting strategy that integrates chain-of-guidance reasoning with $n$-shot prompting. Our findings indicate that this methodology effectively guides LLMs in generating syntactically accurate translations while also achieving functional correctness. However, the findings are limited by the small sample size of available code files and the restricted access to test cases used for validating the correctness of the generated code. Nevertheless, these findings lay the groundwork for scalable, automated solutions in modernising large legacy systems.
Similar Papers
On Effective Semantic Translation for Code: A Study Based on Pseudocode
Software Engineering
Translates computer code better by explaining it first.
Translating PL/I Macro Procedures into Java Using Automatic Templatization and Large Language Models
Software Engineering
Helps computers rewrite old code into new code.
An Experimental Study of Real-Life LLM-Proposed Performance Improvements
Software Engineering
Computers write faster code, but humans write best.