Modular Architecture Based on Service Locator for Refactoring a Monolithic Native Software System

Abstract

Monolithic native software systems, characterized by high component coupling and dependency on proprietary technologies, pose significant challenges for modernization and migration to new platforms. This work is dedicated to developing an approach to incremental refactoring of such a system, ensuring loose coupling and cross-platform compatibility. The proposed solution is based on the use of a service locator and code generation to create modular components with clear interfaces. The proposed architectural implementation of the service locator employs principles of separation of concerns and inversion of control, combining object-oriented programming patterns to ensure runtime type safety, as well as proper management of object lifecycles and their initialization sequence. The approach supports three goals: adding new functionality, reducing technical debt, and migrating to new tools and platforms to decrease vendor dependency. The developed architecture enables refactoring without halting development, simplifying integration, and reducing risks. Empirical validation on a real-world case of migrating software from the Embarcadero (Borland) C++ Builder and VCL technology stack to Microsoft Visual Studio and Qt, with subsequent porting to the Linux operating system, confirmed the applicability of the solution, which can be used for other systems with similar constraints.

Author Biography

Aleksandr Sergeevich Shumikhin, All-Russian Research Geological Oil Institute

Senior Researcher

Published
2025-07-21
How to Cite
SHUMIKHIN, Aleksandr Sergeevich. Modular Architecture Based on Service Locator for Refactoring a Monolithic Native Software System. Modern Information Technologies and IT-Education, [S.l.], v. 21, n. 2, july 2025. ISSN 2411-1473. Available at: <http://sitito.cs.msu.ru/index.php/SITITO/article/view/1200>. Date accessed: 07 feb. 2026.
Section
Research and development in the field of new IT and their applications