Semantics-Driven Migration of Java Programs: A Practical Application
- Authors: Aleksyuk A.O.1, Itsykson V.M.1
-
Affiliations:
- Peter the Great St. Petersburg Polytechnic University
- Issue: Vol 52, No 7 (2018)
- Pages: 581-588
- Section: Article
- URL: https://journal-vniispk.ru/0146-4116/article/view/175583
- DOI: https://doi.org/10.3103/S0146411618070027
- ID: 175583
Cite item
Abstract
The development of a procedure supporting automated migration of Java programs to a new set of libraries is explored. Code migration is a common task in modern software projects. For example, it may arise when a project must be ported to a more secure or feature-rich library, a new platform, or a new version of an existing library. This paper presents a procedure for semantics-driven automated migration. A metamodel that applies the formalism earlier proposed by the authors and intended to describe libraries in object-oriented languages was developed for the migration procedure. The formalism specifies a library behaviour by using a system of extended finite state machines (EFSMs). The migration is split into five steps and each step is described in the paper. The procedure applies an algorithm of an equivalent path based on a breadth-first search extended for the needs of the migration task. The proposed procedure is implemented in a prototype of the migration tool. The tool includes modules for extraction of the software execution path, visualization of library models, user interaction, and migration. A library description language was developed for the tool. The prototype was tested by both artificial code and a real-world open source project. The article describes the experiments performed, the difficulties that have arisen in the process of migration of test samples, and how they are solved in the proposed procedure. The HTTP protocol and log library are used as libraries in the experiment. The results of the experiments indicate that code migration can be successfully automated through the developed procedures.
About the authors
A. O. Aleksyuk
Peter the Great St. Petersburg Polytechnic University
Author for correspondence.
Email: aleksyuk@kspt.icc.spbstu.ru
Russian Federation, St. Petersburg, 195251
V. M. Itsykson
Peter the Great St. Petersburg Polytechnic University
Author for correspondence.
Email: vlad@icc.spbstu.ru
Russian Federation, St. Petersburg, 195251
Supplementary files
