Abstract
Microservice architecture (MSA) has become a new style to modernize monolithic systems. MSA comprises small, independent, and autonomous services that communicate using lightweight network protocols. Recently few studies have proposed microservice identification techniques to embrace the designing of microservices. However, majority of the existing approaches are applicable to brownfield applications where monolithic application already exists. In this paper, we introduce a novel Greenfield Transformer-based Microservice identification approach—GTMicro to identify the bounded context as microservices for greenfield applications. GTMicro makes use of Bidirectional Encoder Representations from Transformers (BERT) which is a deep Learning model. BERT is used to compute the semantic textual similarity between use cases of the application and group them semantically. We validated GTMicro on two sample benchmark monolithic Java applications and migrated them toward microservices-based architecture. We mapped GTMicro to the state-of-the-art software quality assessment metrics and have presented the gains achieved through our results.
Similar content being viewed by others
Explore related subjects
Discover the latest articles, news and stories from top researchers in related subjects.Notes
References
Söylemez M, Tekinerdogan B, Tarhan AK (2023) Microservice reference architecture design: a multi-case study. Softw Pract Exp 54(1):58–84
Raj V, Bhukya H (2023) Assessing the impact of migration from SOA to microservices architecture. SN Comput Sci 4(5):577
Bajaj D, Goel A, Gupta SC (2024) A comprehensive microservice extraction approach integrating business functions and database entities. Int Arab J Inf Technol 21(1):32–45
Knoche H, Hasselbring W (2019) Drivers and barriers for microservice adoption—a survey among professionals in Germany. Enterp Model Inf Syst Archit Int J Concept Model 14(1):1–35. https://doi.org/10.18417/emisa.14.1
Taibi D, Lenarduzzi V, Pahl C (2017) Processes, motivations, and issues for migrating to microservices architectures: an empirical investigation. IEEE Cloud Comput 4(5):22–32. https://doi.org/10.1109/MCC.2017.4250931
Bajaj D, Bharti U, Goel A, Gupta SC (2021) A prescriptive model for migration to microservices based on SDLC artifacts. J Web Eng. https://doi.org/10.13052/jwe1540-9589.20312
Bajaj D, Goel A, Gupta SC (2022) GreenMicro: identifying microservices from use cases in greenfield development. IEEE Access 10:67008–67018
Som S (2006) Supporting use case based requirements engineering. Inf Softw Technol 48(1):43–58
Chen R, Li S, Li Z (2018) From monolith to microservices: a dataflow-driven approach. In: Proc. Asia-Pacific Softw. Eng. Conf. APSEC, vol. 2017, December, pp 466–475. https://doi.org/10.1109/APSEC.2017.53
Li S et al (2019) A dataflow-driven approach to identifying microservices from monolithic applications. J Syst Softw 157:110380. https://doi.org/10.1016/j.jss.2019.07.008
Amiri MJ (2018) Object-aware identification of microservices. In: Proc. 2018 IEEE Int. Conf. Serv. Comput. SCC 2018—part 2018 IEEE World Congr. Serv., pp 253–256. https://doi.org/10.1109/SCC.2018.00042
Khoshnevis S (2023) A search-based identification of variable microservices for enterprise SaaS. Front Comput Sci. https://doi.org/10.1007/s11704-022-1390-4
Ahmadvand M, Ibrahim A (2017) Requirements reconciliation for scalable and secure microservice (de)composition. In: Proc. 2016 IEEE 24th Int. Requir. Eng. Conf. Work. REW 2016, September, pp 68–73. https://doi.org/10.1109/REW.2016.14
Stojanovic TD, Lazarevic SD, Milic M, Antovic I (2020) Identifying microservices using structured system analysis. In: 24th international conference on information technology (IT), IEEE, pp 1–4
Volynsky E, Krusche S (2022) Architect: a framework for the migration to microservices. In: 2022 International conference on computing, electronics & communications engineering (iCCECE). IEEE, pp 71–76
Baresi L, Garriga M, De Renzis A (2017) Microservices identification through interface analysis. In: Lect. Notes Comput. Sci. (including Subser. Lect. Notes Artif. Intell. Lect. Notes Bioinformatics), vol 10465. LNCS, November, pp 19–33. https://doi.org/10.1007/978-3-319-67262-5_2
Tyszberowicz S, Heinrich R, Liu B, Liu Z (2018) Identifying microservices using functional decomposition. In: Dependable software engineering. theories, tools, and applications: 4th international symposium, SETTA 2018. Springer International Publishing, Beijing, China, pp 50–65. https://doi.org/10.1007/978-3-319-99933-3_4
Fan C-Y, Ma S-P (2017) Migrating monolithic mobile application to microservice architecture: an experiment report. In: 2017 IEEE international conference on AI \& mobile services (AIMS), pp 109–112
Vera-Rivera FH, Gaona M (2020) Microservices backlog—a model of granularity specification and microservice identification. In: Services computing–SCC 2020: 17th international conference, held as part of the services conference federation, SCF 2020. Springer International Publishing, pp 85–102. https://doi.org/10.1007/978-3-030-59592-0
Daoud M, El A, Faci N, Benslimane D, Maamar Z (2021) A multi-model based microservices identification approach. J Syst Archit 118:102200. https://doi.org/10.1016/j.sysarc.2021.102200
Oberle M, Gärtner S, Yesilyurt O, Maier F, Brandt D (2022) An approach for designing and developing microservices-enabled manufacturing operations management in greenfield environments. In: Proceedings of the conference on production systems and logistics: CPSL 2022, pp 161–170
Eski S, Buzluca F (2018) An automatic extraction approach—transition to microservices architecture from monolithic application. In: ACM Int. Conf. Proceeding Ser., Part F1477, pp 1–6. https://doi.org/10.1145/3234152.3234195
Brito M, Cunha J, Saraiva J (2021) Identification of microservices from monolithic applications through topic modelling. In: Proceedings of the 36th annual ACM symposium on applied computing, pp 1409–1418
Al-Debagy O, Martinek P (2021) Dependencies-based microservices decomposition method. Int J Comput Appl 44:814–821. https://doi.org/10.1080/1206212X.2021.1915444
Jakob L, Oprescu AM (2020) Steinmetz: toward automatic decomposition of monolithic software into microservices. In: Proceedings of the seminar series on advanced techniques & tools for software evolution, Amsterdam, the Netherlands, pp 1–8
Jose MA, Cozman FG (2023) A multilingual translator to SQL with database schema pruning to improve self-attention. Int J Inf Technol 15(6):3015–3023
Majumder G, Pakray P, Gelbukh A, Pinto D (2016) Semantic textual similarity methods, tools, and applications: a survey. Comput Sist 20(4):647–665
Jiang P, Obi T, Nakajima Y (2024) Integrating prior knowledge to build transformer models. Int J Inf Technol. https://doi.org/10.1007/s41870-023-01635-7
Gupta I, Chatterjee I, Gupta N (2023) A two-staged NLP-based framework for assessing the sentiments on Indian supreme court judgments. Int J Inf Technol 15(4):2273–2282
Bajaj D, Goel A, Gupta SC, Batra H (2022) MUCE: a multilingual use case model extractor using GPT-3. Int J Inf Technol 14(3):1543–1554
Batra H et al (2021) CoVShorts: news summarization application based on deep NLP transformers for SARS-cov2. In: 2021 9th Int. Conf. Reliab. Infocom Technol. Optim. Trends Futur. Dir., pp 1–6. https://doi.org/10.1109/ICRITO51393.2021.9596520
Granchelli G, Cardarelli M, Di Francesco P (2017) Towards recovering the software architecture of microservice-based systems. In: 2017 IEEE international conference on software architecture workshops (ICSAW). IEEE, Gothenburg, Sweden, pp 46–53. https://doi.org/10.1109/ICSAW.2017.48
Cardarelli M, Iovino L, Sasso G, Di Francesco P, Di Salle A, Lago P (2019) An extensible data-driven approach for evaluating the quality of microservice architectures. In: Proceedings of the 34th ACM/SIGAPP symposium on applied computing, pp 1225–1234
Akuma S, Lubem T, Adom IT (2022) Comparing bag of words and TF-IDF with different models for hate speech detection from live tweets. Int J Inf Technol 14(7):3629–3635
Sellami K, Saied MA, Ouni A (2022) A hierarchical dbscan method for extracting microservices from monolithic applications. In: Proceedings of the 26th international conference on evaluation and assessment in software engineering, pp 201–210
Saidani I, Ouni A, Mkaouer MW, Saied A (2019) Towards automated microservices extraction using multi-objective evolutionary search. In: Lect. Notes Comput. Sci. (including Subser. Lect. Notes Artif. Intell. Lect. Notes Bioinformatics), vol 11895, March 2020, pp 58–63. https://doi.org/10.1007/978-3-030-33702-5_5
Bajaj D, Bharti U, Goel A, Gupta SC (2020) Partial migration for re-architecting a cloud native monolithic application into microservices and FaaS. In: International conference on information, communication and computing technology, pp 111–124
Jin W, Liu T, Cai Y, Kazman R, Mo R, Zheng Q (2021) Service candidate identification from monolithic systems based on execution traces. IEEE Trans Softw Eng 47(5):987–1007. https://doi.org/10.1109/TSE.2019.2910531
Desai U, Bandyopadhyay S, Tamilselvam S (2019) Graph neural network to dilute outliers for refactoring monolith application. In: Proceedings of the AAAI conference on artificial intelligence, pp 72–80
Kalia AK, Krishna R (2021) Mono2Micro: a practical and effective tool for decomposing monolithic java applications to microservices. In: Proceedings of the 29th ACM joint meeting on European software engineering, Association for Computing Machinery, pp 1214–1224. https://doi.org/10.1145/3468264.3473915
Mazlami G, Cito J, Leitner P (2017) Extraction of microservices from monolithic software architectures. In: Proc. 2017 IEEE 24th Int. Conf. Web Serv. ICWS 2017, pp 524–531. https://doi.org/10.1109/ICWS.2017.61
Jin W, Liu T, Zheng Q, Cui D, Cai Y (2018) Functionality-oriented microservice extraction based on execution trace clustering. In: Proc. 2018 IEEE Int. Conf. Web Serv. ICWS 2018—Part 2018 IEEE World Congr. Serv., pp 211–218. https://doi.org/10.1109/ICWS.2018.00034
von Zitzewitz A (2019) Mitigating technical and architectural debt with sonargraph. In: 2019 IEEE/ACM international conference on technical debt (TechDebt), pp 66–67
Author information
Authors and Affiliations
Corresponding author
Ethics declarations
Conflict of interest
The authors declare no conflict of interest.
Rights and permissions
Springer Nature or its licensor (e.g. a society or other partner) holds exclusive rights to this article under a publishing agreement with the author(s) or other rightsholder(s); author self-archiving of the accepted manuscript version of this article is solely governed by the terms of such publishing agreement and applicable law.
About this article
Cite this article
Bajaj, D., Bharti, U., Gupta, I. et al. GTMicro—microservice identification approach based on deep NLP transformer model for greenfield developments. Int. j. inf. tecnol. 16, 2751–2761 (2024). https://doi.org/10.1007/s41870-024-01766-5
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s41870-024-01766-5