Research on Architecting Microservices: Trends, Focus, and Potential for Industrial Adoption

Microservices are a new trend rising fast from the enterprise world. Even though the design principles around microservices have been identified, it is difficult to have a clear view of existing research solutions for architecting microservices. In this paper we apply the systematic mapping study methodology to identify, classify, and evaluate the current state of the art on architecting microservices from the following three perspectives: publication trends, focus of research, and potential for industrial adoption. More specifically, we systematically define a classification framework for categorizing the research on architecting microservices and we rigorously apply it to the 71 selected studies. We synthesize the obtained data and produce a clear overview of the state of the art. This gives a solid basis to plan for future research and applications of architecting microservices.

[1]  Kai Petersen,et al.  Guidelines for conducting systematic mapping studies in software engineering: An update , 2015, Inf. Softw. Technol..

[2]  Maria Letizia Jaccheri,et al.  Eliciting software process models with the E3 language , 1998, TSEM.

[3]  KitchenhamBarbara,et al.  A systematic review of systematic review process research in software engineering , 2013 .

[4]  Kai Petersen,et al.  Systematic Mapping Studies in Software Engineering , 2008, EASE.

[5]  Aleksi Partanen,et al.  Microservices vs. Service-oriented architecture , 2018 .

[6]  Sam Newman,et al.  Building Microservices , 2015 .

[7]  Claes Wohlin,et al.  Guidelines for snowballing in systematic literature studies and a replication in software engineering , 2014, EASE '14.

[8]  Pearl Brereton,et al.  A systematic review of systematic review process research in software engineering , 2013, Inf. Softw. Technol..

[9]  Peng Liang,et al.  Application of knowledge-based approaches in software architecture: A systematic mapping study , 2013, Inf. Softw. Technol..

[10]  Philippe Kruchten,et al.  What do software architects really do? , 2008, J. Syst. Softw..

[11]  John C. Mankins,et al.  Technology Readiness Levels-A White Paper , 1995 .

[12]  Pearl Brereton,et al.  Performing systematic literature reviews in software engineering , 2006, ICSE.

[13]  Claes Wohlin,et al.  Experimentation in Software Engineering , 2000, The Kluwer International Series in Software Engineering.

[14]  Tony Gorschek,et al.  A method for evaluating rigor and industrial relevance of technology evaluations , 2011, Empirical Software Engineering.

[15]  Per Runeson,et al.  Software product line testing - A systematic mapping study , 2011, Inf. Softw. Technol..

[16]  Henry Muccini,et al.  What Industry Needs from Architectural Languages: A Survey , 2013, IEEE Transactions on Software Engineering.

[17]  Nour Ali,et al.  A Systematic Mapping Study in Microservice Architecture , 2016, 2016 IEEE 9th International Conference on Service-Oriented Computing and Applications (SOCA).

[18]  Claus Pahl,et al.  Microservices: A Systematic Mapping Study , 2016, CLOSER.

[19]  Roel Wieringa,et al.  Requirements engineering paper classification and evaluation criteria: a proposal and a discussion , 2005, Requirements Engineering.