English

Continuous Architecting with Microservices and DevOps: A Systematic Mapping Study

Software Engineering 2019-08-28 v1

Abstract

Context: Several companies are migrating their information systems into the Cloud. Microservices and DevOps are two of the most common adopted technologies. However, there is still a lack of understanding how to adopt a microservice-based architectural style and which tools and technique to use in a continuous architecting pipeline. Objective: We aim at characterizing the different microservice architectural style principles and patterns in order to map existing tools and techniques adopted in the context of DevOps. Methodology: We conducted a Systematic Mapping Study identifying the goal and the research questions, the bibliographic sources, the search strings, and the selection criteria to retrieve the most relevant papers. Results: We identified several agreed microservice architectural principles and patterns widely adopted and reported in 23 case studies, together with a summary of the advantages, disadvantages, and lessons learned for each pattern from the case studies. Finally, we mapped the existing microservices-specific techniques in order to understand how to continuously deliver value in a DevOps pipeline. We depicted the current research, reporting gaps and trends. Conclusion: Different patterns emerge for different migration, orchestration, storage and deployment settings. The results also show the lack of empirical work on microservices-specific techniques, especially for the release phase in DevOps.

Keywords

Cite

@article{arxiv.1908.10337,
  title  = {Continuous Architecting with Microservices and DevOps: A Systematic Mapping Study},
  author = {Davide Taibi and Valentina Lenarduzzi and Claus Pahl},
  journal= {arXiv preprint arXiv:1908.10337},
  year   = {2019}
}

Comments

this paper was mistakenly uploaded as arXiv:1908.04101v2, which has been subsequently replaced to the correct state