Microservices Backlog - A Model of Granularity Specification and Microservice Identification

Abstract

Microservices are a software development approach where applications are composed of small independent services that communicate through well-defined APIs. A major challenge of designing these applications is determining the appropriate microservices granularity, which is currently done by architects using their judgment. This article describes Microservice Backlog (MB), a fully automatic genetic-programming technique that uses the product backlog’s user stories to (1) propose a set of microservices for optimal granularity and (2) allow architects to visualize at design time their design metrics. Also, a new Granularity Metric (GM) was defined that combines existing metrics of coupling, cohesion, and associated user stories. The MB-proposed decomposition for a well-known state-of-the-art case study was compared with three existing methods (two automatics and one semi-automatic); it had consistently better GM scoring and fewer average calls among microservices, and it allowed to identify critical points. The wider availability of techniques like MB will allow architects to automate microservices identification, optimize their granularity, visually assess their design metrics, and identify at design time the system critical points.

Más información

Título según SCOPUS: Microservices Backlog - A Model of Granularity Specification and Microservice Identification
Título de la Revista: Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
Volumen: 12409
Editorial: Springer Science and Business Media Deutschland GmbH
Fecha de publicación: 2020
Año de Inicio/Término: Sept 2020
Página de inicio: 85
Página final: 102
Idioma: English
DOI:

10.1007/978-3-030-59592-0_6

Notas: SCOPUS - Scopus 10.1007/978-3-030-59592-0_6