Determining microservice boundaries: A case study using static and dynamic software analysis

Tiago Matias, Filipe F. Correia, Jonas Fritzsch, Justus Bogner, Hugo S. Ferreira, André Restivo

Research output: Chapter in Book / Report / Conference proceedingConference contributionAcademicpeer-review

Abstract

A number of approaches have been proposed to identify service boundaries when decomposing a monolith to microservices. However, only a few use systematic methods and have been demonstrated with replicable empirical studies. We describe a systematic approach for refactoring systems to microservice architectures that uses static analysis to determine the system’s structure and dynamic analysis to understand its actual behavior. A prototype of a tool was built using this approach (MonoBreaker) and was used to conduct a case study on a real-world software project. The goal was to assess the feasibility and benefits of a systematic approach to decomposition that combines static and dynamic analysis. The three study participants regarded as positive the decomposition proposed by our tool, and considered that it showed improvements over approaches that rely only on static analysis.
Original languageEnglish
Title of host publicationSoftware Architecture - 14th European Conference, ECSA 2020, Proceedings
EditorsA. Jansen, I. Malavolta, H. Muccini, I. Ozkaya, O. Zimmermann
PublisherSpringer Science and Business Media Deutschland GmbH
Pages315-332
ISBN (Print)9783030589226
DOIs
Publication statusPublished - 2020
Externally publishedYes
Event14th European Conference on Software Architecture, ECSA 2020 - L'Aquila, Italy
Duration: 14 Sept 202018 Sept 2020

Publication series

NameLecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
ISSN (Print)0302-9743
ISSN (Electronic)1611-3349

Conference

Conference14th European Conference on Software Architecture, ECSA 2020
Country/TerritoryItaly
CityL'Aquila
Period14/09/2018/09/20

Funding

João Paiva Pinto and Isabel Azevedo discussed different forms of this work with us. We thank them for all the precious feedback. This work is financed by National Funds through the Portuguese funding agency, FCT-Fundação para a Ciência e a Tecnologia within project UIDB/50014/2020.

FundersFunder number
Fundação para a Ciência e a TecnologiaUIDB/50014/2020

    Fingerprint

    Dive into the research topics of 'Determining microservice boundaries: A case study using static and dynamic software analysis'. Together they form a unique fingerprint.

    Cite this