Skip to main content

Advertisement

Log in

GTMicro—microservice identification approach based on deep NLP transformer model for greenfield developments

  • Original Research
  • Published:
International Journal of Information Technology Aims and scope Submit manuscript

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.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Subscribe and save

Springer+ Basic
¥17,985 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

Price includes VAT (Japan)

Instant access to the full article PDF.

Fig. 1

Similar content being viewed by others

Explore related subjects

Discover the latest articles, news and stories from top researchers in related subjects.

Notes

  1. https://github.com/blueperf/acmeair-monolithic-java.

  2. https://github.com/blueperf/acmeair-mainservice-java.

  3. https://huggingface.co/sentence-transformers.

  4. https://github.com/DeepaliBajajDU/GTMicro.

  5. https://github.com/mybatis/jpetstore-6.

  6. https://github.com/DeepaliBajajDU/TeacherFeedbackSystem.

  7. https://spring.io/projects/spring-boot.

  8. https://github.com/DeepaliBajajDU/JPetStoreMicroservices.

  9. https://github.com/DeepaliBajajDU/TFA-microservice.

References

  1. Söylemez M, Tekinerdogan B, Tarhan AK (2023) Microservice reference architecture design: a multi-case study. Softw Pract Exp 54(1):58–84

    Article  Google Scholar 

  2. Raj V, Bhukya H (2023) Assessing the impact of migration from SOA to microservices architecture. SN Comput Sci 4(5):577

    Article  Google Scholar 

  3. 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

    Google Scholar 

  4. 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

    Article  Google Scholar 

  5. 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

    Article  Google Scholar 

  6. 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

    Article  Google Scholar 

  7. Bajaj D, Goel A, Gupta SC (2022) GreenMicro: identifying microservices from use cases in greenfield development. IEEE Access 10:67008–67018

    Article  Google Scholar 

  8. Som S (2006) Supporting use case based requirements engineering. Inf Softw Technol 48(1):43–58

    Article  Google Scholar 

  9. 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

  10. 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

    Article  Google Scholar 

  11. 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

  12. 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

    Article  Google Scholar 

  13. 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

  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

  15. 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

  16. 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

  17. 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

  18. 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

  19. 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

  20. 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

    Article  Google Scholar 

  21. 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

  22. 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

  23. 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

  24. 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

    Article  Google Scholar 

  25. 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

  26. 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

    Google Scholar 

  27. Majumder G, Pakray P, Gelbukh A, Pinto D (2016) Semantic textual similarity methods, tools, and applications: a survey. Comput Sist 20(4):647–665

    Google Scholar 

  28. 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

    Article  Google Scholar 

  29. 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

    Google Scholar 

  30. 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

    Google Scholar 

  31. 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

  32. 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

  33. 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

  34. 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

    Google Scholar 

  35. 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

  36. 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

  37. 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

  38. 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

    Article  Google Scholar 

  39. 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

  40. 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

  41. 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

  42. 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

  43. von Zitzewitz A (2019) Mitigating technical and architectural debt with sonargraph. In: 2019 IEEE/ACM international conference on technical debt (TechDebt), pp 66–67

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Urmil Bharti.

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.

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

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

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s41870-024-01766-5

Keywords

Navigation