SEMGROMI—a semantic grouping algorithm to identifying microservices using semantic similarity of user stories

Author:

Vera-Rivera Fredy H.1ORCID,Puerto Cuadros Eduard Gilberto1,Perez Boris1ORCID,Astudillo Hernán23ORCID,Gaona Carlos4

Affiliation:

1. Grupo de Investigación GIA, Universidad Francisco de Paula Santander, Cúcuta, Norte de Santander, Colombia

2. Departamento de Informática, Universidad Técnica Federico Santa María, Santiago, Santiago, Chile

3. Instituto de Tecnología para la Innovación en Salud y Bienestar, Universidad Andrés Bello, Viña del Mar, Chile

4. Grupo de Investigación GEDI, Universidad del Valle, Cali, Valle del Cauca, Colombia

Abstract

Microservices is an architectural style for service-oriented distributed computing, and is being widely adopted in several domains, including autonomous vehicles, sensor networks, IoT systems, energy systems, telecommunications networks and telemedicine systems. When migrating a monolithic system to a microservices architecture, one of the key design problems is the “microservice granularity definition”,i.e., deciding how many microservices are needed and allocating computations among them. This article describes a semantic grouping algorithm (SEMGROMI), a technique that takes user stories, a well-known functional requirements specification technique, and identifies number and scope of candidate microservices using semantic similarity of the user stories’ textual description, while optimizing for low coupling, high cohesion, and high semantic similarity. Using the technique in four validation projects (two state-of-the-art projects and two industry projects), the proposed technique was compared with domain-driven design (DDD), the most frequent method used to identify microservices, and with a genetic algorithm previously proposed as part of the Microservices Backlog model. We found that SEMGROMI yields decompositions of user stories to microservices with high cohesion (from the semantic point of view) and low coupling, the complexity was reduced, also the communication between microservices and the estimated development time was decreased. Therefore, SEMGROMI is a viable option for the design and evaluation of microservices-based applications. The proposed semantic similarity-based technique (SEMGROMI) is part of the Microservices Backlog model, which allows to evaluate candidate microservices graphically and based on metrics to make design-time decisions about the architecture of the microservices-based application.

Funder

Colombia’s Ministry of Science and Technology

Francisco de Paula Santander University

Universidad del Valle

ANID (Chile) through Anillo

Publisher

PeerJ

Subject

General Computer Science

Reference41 articles.

1. Unsupervised learning approach for web application auto-decomposition into microservices;Abdullah;Journal of Systems and Software,2019

2. A new decomposition method for designing microservices;Al-Debagy;Periodica Polytechnica Electrical Engineering and Computer Science,2019

3. Extracting microservices’ candidates from monolithic applications: interface analysis and evaluation metrics approach;Al-Debagy,2020

4. Microservices identification through interface analysis;Baresi,2017

Cited by 2 articles. 订阅此论文施引文献 订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献

同舟云学术

1.学者识别学者识别

2.学术分析学术分析

3.人才评估人才评估

"同舟云学术"是以全球学者为主线,采集、加工和组织学术论文而形成的新型学术文献查询和分析系统,可以对全球学者进行文献检索和人才价值评估。用户可以通过关注某些学科领域的顶尖人物而持续追踪该领域的学科进展和研究前沿。经过近期的数据扩容,当前同舟云学术共收录了国内外主流学术期刊6万余种,收集的期刊论文及会议论文总量共计约1.5亿篇,并以每天添加12000余篇中外论文的速度递增。我们也可以为用户提供个性化、定制化的学者数据。欢迎来电咨询!咨询电话:010-8811{复制后删除}0370

www.globalauthorid.com

TOP

Copyright © 2019-2024 北京同舟云网络信息技术有限公司
京公网安备11010802033243号  京ICP备18003416号-3