Revisiting the practices and pains of microservice architecture in reality: An industrial inquiry
Xin Zhou,Shanshan Li,Lingli Cao,He Zhang,Zijia Jia,Chenxing Zhong,Zhihao Shan,Muhammad Ali Babar
DOI: https://doi.org/10.1016/j.jss.2022.111521
IF: 3.5
2023-01-01
Journal of Systems and Software
Abstract:Background:Seeking an appropriate architecture for the design of software is always a challenge. Although microservices are claimed to be a lightweight architecture style that can improve current practices with several characteristics, many practices are based on different circumstances and reflect variant effects. Empirical inquiry gives us a systematic insight into industrial practices and sufferings on microservices.Objective:This study is to investigate the gaps between ideal visions and real industrial practices in microservices and what expenses microservices bring to industrial practitioners.Method:We carried out a series of industrial interviews with practitioners from 20 software companies. The collected data were then codified using qualitative methods.Results:Eight pairs of common practices and pains of microservices in industry were obtained after synthesizing the rich and detailed data collected. Five aspects that require careful decisions were extracted to help practitioners balance the possible benefits and pains of MSA. Five research directions that need further exploration were identified based on the pains associated with MSA.Conclusion:While the benefits of microservices are confirmed from the point of view of practitioners, decisions should be carefully made and the possible problems identified must be addressed with additional expense from experience. Furthermore, some of the topics and pains outlined, e.g., systematic evaluation and assessment, organizational transformation, decomposition, distributed monitoring, and bug localization, may inspire researchers to conduct further research.
computer science, theory & methods, software engineering