Benchmark Requirements for Microservices Architecture Research

Microservices have recently emerged as a new architectural style in which distributed applications are broken up into small independently deployable services, each running in its own process and communicating via lightweight mechanisms. However, there is still a lack of repeatable empirical research on the design, development and evaluation of microservices applications. As a first step towards filling this gap, this paper proposes, discusses and illustrates the use of an initial set of requirements that may be useful in selecting a community-owned architecture benchmark to support repeatable microservices research.

[1]  Chanchal Kumar Roy,et al.  Bug introducing changes: A case study with Android , 2012, 2012 9th IEEE Working Conference on Mining Software Repositories (MSR).

[2]  Dror G. Feitelson,et al.  The Linux kernel as a case study in software evolution , 2010, J. Syst. Softw..

[3]  Giuliano Antoniol,et al.  Augmenting pattern-based architectural recovery with flow analysis: Mosaic-a case study , 1996, Proceedings of WCRE '96: 4rd Working Conference on Reverse Engineering.

[4]  Wilhelm Hasselbring,et al.  Continuous Monitoring of Software Services: Design and Application of the Kieker Framework , 2009 .

[5]  Frank Buschmann,et al.  Pattern-Oriented Software Architecture, a Pattern Language for Distributed Computing , 2007 .

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

[7]  Wilhelm Hasselbring,et al.  Performance-oriented DevOps: A Research Agenda , 2015, ArXiv.

[8]  Liming Zhu,et al.  DevOps - A Software Architect's Perspective , 2015, SEI series in software engineering.

[9]  Arie van Deursen,et al.  Crosscutting concerns in J2EE applications , 2005, Seventh IEEE International Symposium on Web Site Evolution.

[10]  Anthony Finkelstein,et al.  The compliance testing of software tools with respect to the UML standards specification - The ArgoUML case study , 2009, 2009 ICSE Workshop on Automation of Software Test.

[11]  Hernán Astudillo,et al.  A pattern language for scalable microservices-based systems , 2018, ECSA.

[12]  Pooyan Jamshidi,et al.  Microservices Architecture Enables DevOps: Migration to a Cloud-Native Architecture , 2016, IEEE Software.

[13]  Jez Humble,et al.  Continuous Delivery: Reliable Software Releases Through Build, Test, and Deployment Automation , 2010 .

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

[15]  Takuya Nakaike,et al.  Workload characterization for microservices , 2016, 2016 IEEE International Symposium on Workload Characterization (IISWC).

[16]  Leon Moonen,et al.  An Integrated Crosscutting Concern Migration Strategy and its Application to JHOTDRAW , 2007, Seventh IEEE International Working Conference on Source Code Analysis and Manipulation (SCAM 2007).

[17]  Claus Pahl,et al.  Containerization and the PaaS Cloud , 2015, IEEE Cloud Computing.