TY - GEN
T1 - Microservices Backlog - A Model of Granularity Specification and Microservice Identification
AU - Vera-Rivera, Fredy H.
AU - Puerto-Cuadros, Eduard G.
AU - Astudillo, Hernán
AU - Gaona-Cuevas, Carlos Mauricio
N1 - Publisher Copyright:
© 2020, Springer Nature Switzerland AG.
PY - 2020
Y1 - 2020
N2 - 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.
AB - 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.
KW - Cohesion metrics
KW - Complexity metrics
KW - Coupling metrics
KW - Decomposition
KW - Granularity
KW - Microservices architecture
KW - User stories
UR - http://www.scopus.com/inward/record.url?scp=85091573768&partnerID=8YFLogxK
U2 - 10.1007/978-3-030-59592-0_6
DO - 10.1007/978-3-030-59592-0_6
M3 - Conference contribution
AN - SCOPUS:85091573768
SN - 9783030595913
T3 - Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
SP - 85
EP - 102
BT - Services Computing – SCC 2020 - 17th International Conference, held as part of the Services Conference Federation, SCF 2020, Proceedings
A2 - Wang, Qingyang
A2 - Xia, Yunni
A2 - Seshadri, Sangeetha
A2 - Zhang, Liang-Jie
PB - Springer Science and Business Media Deutschland GmbH
T2 - 17th International Conference on Services Computing, SCC 2020, held as part of the Services Conference Federation, SCF 2020
Y2 - 18 September 2020 through 20 September 2020
ER -