METHOD OF CONVERTING THE MONOLITHIC ARCHITECTURE OF A FRONT-END APPLICATION TO MICROFRONTENDS

Authors

DOI:

https://doi.org/10.20998/2079-0023.2023.02.12

Keywords:

information system, software architecture, algorithm, monolith model of an information system, software development process, software migration, microservice architecture, single page application, method of converting to microfrontends

Abstract

Web systems have existed for a long time and quite a lot of them have been created. Modern development uses new microservice architectural to improve performance, portability, and other important characteristics. This necessitates the transformation of legacy systems from a monolithic architecture to a microservices one. Such a process is complex and costly, so improving the methods for converting old systems to a new platform is relevant. This research aims to develop a method of applying microfrontends approach for monolithic single page applications (SPA). The article proposes a method of transforming the software system architecture from monolithic to microservice architecture (MSA). Since the client part of the system is considered, the term microfrontend is proposed, as an analog of microservers in the server part of the software systems. A brief review of existing architecture reengineering research is made and the advantages of a microservice approach are identified. The proposed three-stage method differs from the methods by the selection of an additional stage of conversion, which allows to gently change the connections between parts of the monolithic application, which were implemented in the initial monolithic architecture. The first stage is reverse engineering, it is proposed to shift the focus from the search for outdated code to the functional analysis of the program as such. The second stage, a transition to a modular architecture with the allocation of functionality into separate modules is proposed. At the end of the third stage, we have several separate programs (microinterfaces) that are connected to the main program. An experiment with a typical external SPA demonstrates the operation of the proposed algorithm. The system obtained as a result of the transformation is compared with the original one according to the following measurable parameters: production builds building time, size of the main bundle, and first page average load time. All comparisons showed the advantages of the system obtained as a result of the conversion. As a result, the architecture transformation algorithm allows you to obtain a guaranteed better result, taking into account the limitations of the interface SPA, which were not considered by the authors of previous articles.

Author Biographies

Olena Nikulina, National Technical University "Kharkiv Polytechnic Institute"

Doctor of Technical Sciences, Full Professor, Head of the Department of Information Systems and Technologies of the National Technical University "Kharkiv Polytechnic Institute", Kharkiv, Ukraine

Kyrylo Khatsko, National Technical University "Kharkiv Polytechnic Institute"

Senior Lecturer of the Department of the Department of Information Systems and Technologies of the National Technical University "Kharkiv Polytechnic Institute", Graduate Student, Kharkiv, Ukraine

References

Furrer, F. J. Future-Proof Software-Systems. Springer, 2019. 376 p.

Gidey H. K., Marmsoler D., Eckhardt J. Grounded Architectures: Using Grounded Theory for the Design of Software Architectures. IEEE International Conference on Soft-ware Architecture Workshops. Available at: https://doi.org/10.1109/ICSAW.2017.41 (accessed 23.10.2023).

Terdal S. Microservices Enabled E-Commerce Web Application. International Journal for Research in Applied Science and Engineering Technology. Available at: https://doi.org/10.22214/ijraset.2022.45791 (accessed 23.10.2023).

Francesco P.D., Lago P., Malavolta I. Migrating towards microservice architectures: An industrial survey. International Conference on Software Architecture. Available at: https://doi.org/10.1109/ICSA.2018.00012. (accessed 23.10.2023).

Cruz P., Astudillo H., Hilliard R., Collado M. Assessing Migration of a 20-Year-Old System to a Micro-Service Platform Using ATAM. 2019 IEEE International Conference on Software Architecture Companion. Available at: https://doi.org/10.1109/ICSA-C.2019.00039. (accessed 23.10.2023).

Auer F., Lenarduzzi V., Felderer M., Taibi D. From monolithic systems to microservices: An assessment framework. Information and Software Technology. Available at: https://doi.org/10.1016/j.infsof.2021.106600. (accessed 23.10.2023).

Li S., Zhang H., Jia Z., Zhing C. et al. Understanding and addressing quality attributes of microservices architecture: A Systematic literature review. Information and Software Technology. Available at: https://doi.org/10.1016/j.infsof.2020.106449. (accessed 23.10.2023).

Soldani J., Tamburri D.A., Van Den Heuvel W.J. The pains and gains of microservices: a systematic grey literature review. Journal of Systems and Software. Available at: https://doi.org/10.1016/j.jss.2018.09.082. (accessed 23.10.2023).

Kazman R., Woods S. G., Carrie`re S. J. Requirements for integrating software architecture and reengineering models: Corum II. Proceedings Fifth Working Conference on Reverse Engineering. Available at: http://doi.org/10.1109/WCRE.1998.723185. (accessed 23.10.2023).

Razavian M., Lago P. Understanding SOA migration using a conceptual framework. Journal of Systems Integration, Available at: https://core.ac.uk/download/pdf/15455794.pdf (accessed 23.10.2023)

Steyer M. Enterprise Angular: Micro Frontends and Moduliths with Angular. Available at: https://www.angulararchitects.io/en/book/. (accessed 23.10.2023).

Homay A., Zoitl A., de Sousa M., Wollschlaeger M. A Survey: Microservices Architecture in Advanced Manufacturing Systems. IEEE 17th International Conference on Industrial Informatics. Available at: http://doi.org/10.1109/INDIN41052.2019.8972079. (accessed 23.10.2023).

Abdellatif M., Shatnawi A., Mili H., Moha N. et al. A Taxonomy of Service Identification Approaches for Legacy Software Systems Modernization. Journal of Systems and Software. Available at: https://doi.org/10.1016/j.jss. 2020.110868. (accessed 23.10.2023).

Hasselbring W., Steinacker G. Microservice Architectures for Scalability, Agility and Re-liability in E-Commerce. IEEE International Conference on Software Architecture Workshops. Available at: http://doi.org/10.1109/ICSAW.2017.11. (accessed 23.10.2023).

Patil M., Prajapat, S. Microservice Architecture for Scalability and Reliability in E-Commerce. International Journal of Advanced Research in Science, Communication and Technology. Available at: http://doi.org/10.48175/IJARSCT-2050. (accessed 23.10.2023).

Asrowardi I., Putra S., Subyantoro E. Designing microservice architectures for scalability and reliability in e-commerce. Journal of Physics: Conference Series. Available at: http://doi.org/10.1088/1742-6596/1450/1/012077. (accessed 23.10.2023).

Evans E. Domain-Driven Design: Tackling Complexity in the Heart of Software. Available at: https://www.amazon.com/Domain-Driven-Design-Tackling-Complexity-Soft-ware/dp/0321125215. (accessed 23.10.2023).

Blinowski G., Ojdowska A., Przybylek A. Monolithic vs. Microservice Architecture: A Performance and Scalability Evaluation. IEEE Access. Available at: https://doi.org/10.1109/access.2022.3152803. (accessed 23.10.2023).

di Francesco P., Lago P., Malavolta I. Migrating Towards Microservice Architectures: An Industrial Survey. IEEE International Conference on Software Architecture. Available at: https://doi.org/10.1109/ICSA.2018.00012. (accessed 23.10.2023).

Downloads

Published

2023-12-19

How to Cite

Nikulina, O., & Khatsko, K. (2023). METHOD OF CONVERTING THE MONOLITHIC ARCHITECTURE OF A FRONT-END APPLICATION TO MICROFRONTENDS. Bulletin of National Technical University "KhPI". Series: System Analysis, Control and Information Technologies, (2 (10), 79–84. https://doi.org/10.20998/2079-0023.2023.02.12

Issue

Section

INFORMATION TECHNOLOGY