Технологія декомпозиції фронтенд-монолітних вебзастосунків на мікрофронтенди методом кластеризації їх гетерогенних графів

Ключові слова: оптимізація структури, графові нейронні мережі, функціональна когезія, автоматизована міграція, інтерфейсні модулі, аналіз взаємодії

Анотація

Здійснено дослідження та аналіз закономірностей декомпозиції фронтенд-монолітних вебзастосунків на мікрофронтенди методом кластеризації їх гетерогенних графів із використанням графових нейронних мереж GNN (англ. Graph Neural Networks). Досліджено вплив поєднання різних типів зв'язку між компонентами (структурних, функціональних і тестових) на якість виділення функціонально цілісних груп елементів інтерфейсу. З'ясовано, що врахування не тільки статичних залежностей, а й динамічних сценаріїв взаємодії у тестах дає змогу ідентифікувати приховані контекстні зв'язки, недоступні для стандартних методів аналізу коду. Доведено, що застосування моделі GraphSAGE (англ. Sample and AggregatE) для побудови векторного подання вузлів гетерогенного графа поєднано з кластеризацією методом k-середніх (k-means) забезпечує обґрунтованіший поділ моноліту на групи компонентів, які відповідають основним доменам функціоналу вебзастосунку. Виконано порівняльний аналіз із результатами кластеризації базовим алгоритмом алгоритму Louvain (виявлення спільнот), що дало можливість визначити переваги та обмеження запропонованого підходу. З'ясовано, що підхід на підставі графових нейронних мереж дає змогу уникнути надмірної фрагментації та об'єднати компоненти з подібними сценаріями використання, визначаючи потенційні межі майбутніх мікрофронтендів. Досліджено вплив різних підходів до формування графа на кінцевий результат декомпозиції. Виявлено, що оптимальний вибір кількості кластерів забезпечує баланс між деталізацією та узагальненням, а врахування різноманітних типів зв'язку сприяє виділенню найбільш логічних підсистем. Результати дослідження підтверджують ефективність використання кластеризації гетерогенних графів для завдань архітектурного рефакторингу та модернізації складних інформаційних систем, а також доводять, що запропонований підхід можна рекомендувати для автоматизованої підтримки процесів міграції від фронтенд-монолітів до мікрофронтендів у практиці корпоративного розроблення промислових вебзастосунків та слугувати основою для подальших досліджень у сфері вдосконалення структурних трансформацій програмних систем.

Завантаження

Дані завантаження ще не доступні.

Біографії авторів

М. О. Шестакович, Національний лісотехнічний університет України, м. Львів

магістр, аспірант, кафедра інженерії програмного забезпечення

Ю. В. Шабатура, Національна академія сухопутних військ ім. гетьмана Петра Сагайдачного, м. Львів

д-р техн. наук, професор, кафедра електроніки і електромеханіки

Посилання

Abgaz, Y., Montalvão, J. M., de Pádua, C. I. P. S., Santos, E. C. F., Sampaio, L. S., & Barreto, A. A. (2023). Decomposition of Monolith Applications Into Microservices Architectures: A Systematic Review. IEEE Transactions on Software Engineering. https://doi.org/10.1109/TSE.2023.3287297

Amorim, T. S., & Canedo, E. D. (2025). Micro-Frontend Architecture in Software Development: A Systematic Mapping Study. Proceedings of the 21st International Conference on Web Information Systems and Technologies – WEBIST. https://doi.org/10.5220/0013195800003929

Blondel, V. D., Guillaume, J.-L., Lambiotte, R., & Lefebvre, E. (2008). Fast unfolding of communities in large networks. Journal of Statistical Mechanics: Theory and Experiment, 2008(10), article P10008. https://doi.org/10.1088/1742-5468/2008/10/p10008

Cheripurathu, K. G., & Kulkarni, S. (2024). Integrating Microservices and Microfrontends: A Comprehensive Literature Review on Architecture, Design Patterns, and Implementation Challenges. Journal of Scientific Research and Technology, 2(7), 1–12. https://doi.org/10.61808/jsrt115

Dragoni, N., Lanese, I., Larsen, S. T., Mazzara, M., Mustafin, R., & Safina, L. (2017). Microservices: Yesterday, Today, and Tomorrow. In: Present and Ulterior Software Engineering, 195–216. Springer. https://doi.org/10.1007/978-3-319-67425-4_12

Fritzsch, J., Bogner, J., Zimmermann, A., & Wagner, S. (2019). From monolith to microservices: A classification of refactoring approaches. Software Evolution and Process, 31(11), article ID e2068. https://doi.org/10.1007/978-3-030-06019-0_10

Gysel, M., Giersche, W., Müller, O., & Hölzle, K. (2016). Service Cutter: A Systematic Approach to Service Decomposition. Service-Oriented Computing. ICSOC 2016. Lecture Notes in Computer Science, 9936, 185–200. Springer. https://doi.org/10.1007/978-3-319-44482-6_12

Hamilton, W. L., Ying, R., & Leskovec, J. (2017). Inductive representation learning on large graphs. Advances in Neural Information Processing Systems (NeurIPS), 30, 1024–1034. https://doi.org/10.48550/arXiv.1706.02216

Jackson, C. (2019). Micro Frontends. MartinFowler.com. URL: https://martinfowler.com/articles/micro-frontends.html (Accessed: 12 May 2025)

Jamshidi, P., Pahl, C., Mendonça, N. C., Lewis, J., & Tilkov, S. (2018). Microservices: The Journey So Far and Challenges Ahead. IEEE Software, 35(3), 24–35. https://doi.org/10.1109/MS.2018.2141039

Leighton, T., Meyer, A. R., & Lehman, E. (2010). Chapter 5: Graph theory. In Mathematics for computer science (MIT OpenCourseWare). Massachusetts Institute of Technology. URL: https://ocw.mit.edu/courses/6-042j-mathematics-for-computer-science-fall-2010/resources/mit6_042jf10_chap05/

MacQueen, J. (1967). Some methods for classification and analysis of multivariate observations. V Proceedings of the Fifth Berkeley Symposium on Mathematical Statistics and Probability, 1, pp. 281–297. University of California Press. URL: https://projecteuclid.org/euclid.bsmsp/1200512992

Mathai, A., R G, N., Krishna, S., M, B., & Vinod, P. (2022). Monolith to Microservices: Representing Application Software through Heterogeneous Graph Neural Network. In Proceedings of the Thirty-First International Joint Conference on Artificial Intelligence (IJCAI), 123 p. https://doi.org/10.48550/arXiv.2112.01317

Nguyen, Q.-V., Nguyen, T.-H., Le, V.-K., Le, D.-K., & Vo, D.-N. (2022). A Survey on Graph Neural Networks for Microservice-Based Cloud Applications. Sensors (Basel, Switzerland), 22(23), article ID 9492. https://doi.org/10.3390/s22239492

Oumoussa, M., & Saidi, R. (2024). Evolution of Microservices Identification in Monolith Decomposition: A Systematic Review. IEEE Access, 12, 26868–26892. https://doi.org/10.1109/ACCESS.2024.3365079

Peltonen, S., Mezzalira, L., & Taibi, D. (2021). Motivations, Benefits, and Issues for Adopting Micro-Frontends: A Multivocal Literature Review. Information and Software Technology, 136, article ID 106571. https://doi.org/10.48550/arXiv.2007.00293

Qian, Y., Yang, M., Jiang, W., & Zhang, P. (2023). Microservice extraction using graph deep clustering based on dual view fusion. Information and Software Technology, 159, article ID 107171. https://doi.org/10.1016/j.infsof.2023.107171

Rousseeuw, P. J. (1987). Silhouettes: A graphical aid to the interpretation and validation of cluster analysis. Journal of Computational and Applied Mathematics, 20, 53–65. https://doi.org/10.1016/0377-0427(87)90125-7

Santos, L., Silva, M., Santos, S., Rocha, F., & Barbosa da Silva, E. (2024). Microfront-End: Systematic Mapping. In Proceedings of the 20th International Conference on Web Information Systems and Technologies – WEBIST, SciTePress, pp. 119–130. https://doi.org/10.5220/0013015400003825

Sellami, M., Bouguerra, S., Ghorbel, A., & Ben-Abdallah, H. (2022). Combining Static and Dynamic Analysis to Decompose Monolithic Application into Microservices. In Proceedings of the 19th International Conference on Service-Oriented Computing (ICSOC 2021), Lecture Notes in Computer Science, Vol. 13121 (pp. 220–235). Springer. https://doi.org/10.1007/978-3-031-20984-0_14

Trabelsi, N. Moha, Guéhéneuc, Y. -G., & Geffard, L. (2024). Magnet: Method-based Approach using Graph Neural Network for Microservices Identification. IEEE 21st International Conference on Software Architecture (ICSA), Hyderabad, India, 2024, pp. 1–11. https://doi.org/10.1109/ICSA59870.2024.00009

Опубліковано
2025-06-26
Як цитувати
Шестакович, М. О., & Шабатура, Ю. В. (2025). Технологія декомпозиції фронтенд-монолітних вебзастосунків на мікрофронтенди методом кластеризації їх гетерогенних графів. Scientific Bulletin of UNFU, 35(4), 159-165. https://doi.org/10.36930/40350418
Розділ
Інформаційні технології

Статті цього автора (авторів), які найбільше читають