{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,5,13]],"date-time":"2026-05-13T05:49:24Z","timestamp":1778651364741,"version":"3.51.4"},"reference-count":36,"publisher":"Springer Science and Business Media LLC","issue":"5","license":[{"start":{"date-parts":[[2021,7,22]],"date-time":"2021-07-22T00:00:00Z","timestamp":1626912000000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/creativecommons.org\/licenses\/by\/4.0"},{"start":{"date-parts":[[2021,7,22]],"date-time":"2021-07-22T00:00:00Z","timestamp":1626912000000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/creativecommons.org\/licenses\/by\/4.0"}],"funder":[{"DOI":"10.13039\/501100003542","name":"Ministerium f\u00fcr Wissenschaft, Forschung und Kunst Baden-W\u00fcrttemberg","doi-asserted-by":"crossref","award":["Kooperatives Promotionskolleg Services Computing"],"award-info":[{"award-number":["Kooperatives Promotionskolleg Services Computing"]}],"id":[{"id":"10.13039\/501100003542","id-type":"DOI","asserted-by":"crossref"}]},{"DOI":"10.13039\/501100003542","name":"Ministerium f\u00fcr Wissenschaft, Forschung und Kunst Baden-W\u00fcrttemberg","doi-asserted-by":"publisher","award":["Kooperatives Promotionskolleg Services Computing"],"award-info":[{"award-number":["Kooperatives Promotionskolleg Services Computing"]}],"id":[{"id":"10.13039\/501100003542","id-type":"DOI","asserted-by":"publisher"}]},{"DOI":"10.13039\/501100009534","name":"Universit\u00e4t Stuttgart","doi-asserted-by":"crossref","id":[{"id":"10.13039\/501100009534","id-type":"DOI","asserted-by":"crossref"}]}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":["Empir Software Eng"],"published-print":{"date-parts":[[2021,9]]},"abstract":"<jats:title>Abstract<\/jats:title><jats:sec>\n                <jats:title>Context<\/jats:title>\n                <jats:p>Microservices as a lightweight and decentralized architectural style with fine-grained services promise several beneficial characteristics for sustainable long-term software evolution. Success stories from early adopters like Netflix, Amazon, or Spotify have demonstrated that it is possible to achieve a high degree of flexibility and evolvability with these systems. However, the described advantageous characteristics offer no concrete guidance and little is known about evolvability assurance processes for microservices in industry as well as challenges in this area. Insights into the current state of practice are a very important prerequisite for relevant research in this field.<\/jats:p>\n              <\/jats:sec><jats:sec>\n                <jats:title>Objective<\/jats:title>\n                <jats:p>We therefore wanted to explore how practitioners structure the evolvability assurance processes for microservices, what tools, metrics, and patterns they use, and what challenges they perceive for the evolvability of their systems.<\/jats:p>\n              <\/jats:sec><jats:sec>\n                <jats:title>Method<\/jats:title>\n                <jats:p>We first conducted 17 semi-structured interviews and discussed 14 different microservice-based systems and their assurance processes with software professionals from 10 companies. Afterwards, we performed a systematic grey literature review (GLR) and used the created interview coding system to analyze 295 practitioner online resources.<\/jats:p>\n              <\/jats:sec><jats:sec>\n                <jats:title>Results<\/jats:title>\n                <jats:p>The combined analysis revealed the importance of finding a sensible balance between decentralization and standardization. Guidelines like architectural principles were seen as valuable to ensure a base consistency for evolvability and specialized test automation was a prevalent theme. Source code quality was the primary target for the usage of tools and metrics for our interview participants, while testing tools and productivity metrics were the focus of our GLR resources. In both studies, practitioners did not mention architectural or service-oriented tools and metrics, even though the most crucial challenges like <jats:italic>Service Cutting<\/jats:italic> or <jats:italic>Microservices Integration<\/jats:italic> were of an architectural nature.<\/jats:p>\n              <\/jats:sec><jats:sec>\n                <jats:title>Conclusions<\/jats:title>\n                <jats:p>Practitioners relied on guidelines, standardization, or patterns like <jats:italic>Event-Driven Messaging<\/jats:italic> to partially address some reported evolvability challenges. However, specialized techniques, tools, and metrics are needed to support industry with the continuous evaluation of service granularity and dependencies. Future microservices research in the areas of maintenance, evolution, and technical debt should take our findings and the reported industry sentiments into account.<\/jats:p>\n              <\/jats:sec>","DOI":"10.1007\/s10664-021-09999-9","type":"journal-article","created":{"date-parts":[[2021,7,22]],"date-time":"2021-07-22T11:03:03Z","timestamp":1626951783000},"update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":49,"title":["Industry practices and challenges for the evolvability assurance of microservices"],"prefix":"10.1007","volume":"26","author":[{"ORCID":"https:\/\/orcid.org\/0000-0001-5788-0991","authenticated-orcid":false,"given":"Justus","family":"Bogner","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Jonas","family":"Fritzsch","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-5256-8429","authenticated-orcid":false,"given":"Stefan","family":"Wagner","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0000-0003-3352-7207","authenticated-orcid":false,"given":"Alfred","family":"Zimmermann","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"297","published-online":{"date-parts":[[2021,7,22]]},"reference":[{"issue":"3","key":"9999_CR1","doi-asserted-by":"publisher","first-page":"197","DOI":"10.1002\/smr.311","volume":"17","author":"A April","year":"2005","unstructured":"April A, Huffman Hayes J, Abran A, Dumke R (2005) Software maintenance maturity model (SMmm): the software maintenance process model. J Softw Maint Evol Res Pract 17(3):197\u2013223. https:\/\/doi.org\/10.1002\/smr.311","journal-title":"J Softw Maint Evol Res Pract"},{"issue":"4","key":"9999_CR2","doi-asserted-by":"publisher","first-page":"110","DOI":"10.4230\/DagRep.6.4.110","volume":"6","author":"P Avgeriou","year":"2016","unstructured":"Avgeriou P, Kruchten P, Ozkaya I, Seaman C (2016) Managing technical debt in software engineering. Dagstuhl Rep. 6(4):110\u2013138. https:\/\/doi.org\/10.4230\/DagRep.6.4.110","journal-title":"Dagstuhl Rep."},{"key":"9999_CR3","doi-asserted-by":"publisher","unstructured":"Bandeira A, Medeiros C A, Paixao M, Maia PH (2019) We need to talk about microservices: an analysis from the discussions on stackoverflow. In: 2019 IEEE\/ACM 16th international conference on mining software repositories, (MSR) IEEE, pp 255\u2013259. https:\/\/doi.org\/10.1109\/MSR.2019.00051","DOI":"10.1109\/MSR.2019.00051"},{"issue":"00","key":"9999_CR4","doi-asserted-by":"publisher","first-page":"1","DOI":"10.1080\/08874417.2018.1520056","volume":"00","author":"S Ba\u0161karada","year":"2018","unstructured":"Ba\u0161karada S, Nguyen V, Koronios A (2018) Architecting microservices: Practical opportunities and challenges. J Comput Inf Syst 00(00):1\u20139. https:\/\/doi.org\/10.1080\/08874417.2018.1520056","journal-title":"J Comput Inf Syst"},{"key":"9999_CR5","doi-asserted-by":"publisher","unstructured":"Bogner J, Wagner S, Zimmermann A (2017) Automatically measuring the maintainability of service- and microservice-based systems: a literature review. In: Proceedings of the 27th international workshop on software measurement and 12th international conference on software process and product measurement on - IWSM Mensura \u201917, ACM Press, New York, New York, USA, pp 107\u2013115. https:\/\/doi.org\/10.1145\/3143434.3143443","DOI":"10.1145\/3143434.3143443"},{"key":"9999_CR6","doi-asserted-by":"publisher","unstructured":"Bogner J, Fritzsch J, Wagner S, Zimmermann A (2018) Limiting technical debt with maintainability assurance: An industry survey on used techniques and differences with service- and microservice-based systems. In: Proceedings of the 2018 international conference on technical debt - TechDebt \u201918, ACM Press, New York, New York, USA, pp 125\u2013133. https:\/\/doi.org\/10.1145\/3194164.3194166","DOI":"10.1145\/3194164.3194166"},{"key":"9999_CR7","doi-asserted-by":"publisher","unstructured":"Bogner J, Fritzsch J, Wagner S, Zimmermann A (2019a) Assuring the evolvability of microservices: Insights into industry practices and challenges. In: 2019 IEEE International conference on software maintenance and evolution (ICSME), IEEE, Cleveland, Ohio, USA, pp 546\u2013556. https:\/\/doi.org\/10.1109\/ICSME.2019.00089","DOI":"10.1109\/ICSME.2019.00089"},{"key":"9999_CR8","doi-asserted-by":"publisher","unstructured":"Bogner J, Fritzsch J, Wagner S, Zimmermann A (2019b) Microservices in industry: Insights into technologies, characteristics, and software quality. In: 2019 IEEE international conference on software architecture companion (ICSA-C), IEEE, Hamburg, Germany, pp 187\u2013195. https:\/\/doi.org\/10.1109\/ICSA-C.2019.00041","DOI":"10.1109\/ICSA-C.2019.00041"},{"key":"9999_CR9","doi-asserted-by":"publisher","unstructured":"Carrasco A, van Bladel B, Demeyer S (2018) Migrating towards microservices: migration and architecture smells. In: Proceedings of the 2nd international workshop on refactoring - IWoR, 2018, ACM Press, New York, New York, USA, pp 1\u20136. https:\/\/doi.org\/10.1145\/3242163.3242164","DOI":"10.1145\/3242163.3242164"},{"issue":"1","key":"9999_CR10","doi-asserted-by":"publisher","first-page":"37","DOI":"10.1177\/001316446002000104","volume":"20","author":"J Cohen","year":"1960","unstructured":"Cohen J (1960) A coefficient of agreement for nominal scales. Educ Psychol Meas 20(1):37\u201346. https:\/\/doi.org\/10.1177\/001316446002000104","journal-title":"Educ Psychol Meas"},{"key":"9999_CR11","doi-asserted-by":"publisher","unstructured":"Easterbrook S, Singer J, Storey MA, Damian D (2008) Selecting empirical methods for software engineering research. In: Guide to advanced empirical software engineering, Springer London, London, pp 285\u2013311 https:\/\/doi.org\/10.1007\/978-1-84800-044-5_11","DOI":"10.1007\/978-1-84800-044-5_11"},{"issue":"4","key":"9999_CR12","doi-asserted-by":"publisher","first-page":"44","DOI":"10.1145\/3277539.3277541","volume":"16","author":"S Esparrachiari","year":"2018","unstructured":"Esparrachiari S, Reilly T, Rentz A (2018) Tracking and controlling microservice dependencies. Queue 16(4):44\u201365. https:\/\/doi.org\/10.1145\/3277539.3277541","journal-title":"Queue"},{"key":"9999_CR13","unstructured":"Fowler M (2019) Microservices resource guide. http:\/\/martinfowler.com\/microservices"},{"key":"9999_CR14","doi-asserted-by":"publisher","unstructured":"Fritzsch J, Bogner J, Wagner S, Zimmermann A (2019a) Microservices migration in industry: Intentions, strategies, and challenges. In: 2019 IEEE International conference on software maintenance and evolution (ICSME), IEEE, Cleveland, Ohio, USA, pp 481\u2013490. https:\/\/doi.org\/10.1109\/ICSME.2019.00081","DOI":"10.1109\/ICSME.2019.00081"},{"key":"9999_CR15","doi-asserted-by":"publisher","unstructured":"Fritzsch J, Bogner J, Zimmermann A, Wagner S (2019b) From monolith to microservices: A classification of refactoring approaches. In: Bruel JM, Mazzara M, Meyer B (eds) Software engineering aspects of continuous development and new paradigms of software production and deployment. https:\/\/doi.org\/10.1007\/978-3-030-06019-0_10. Springer, Toulouse, pp 128\u2013141","DOI":"10.1007\/978-3-030-06019-0_10"},{"key":"9999_CR16","doi-asserted-by":"publisher","unstructured":"Garousi V, Felderer M, M\u00e4ntyl\u00e4 MV (2016) The need for multivocal literature reviews in software engineering. In: Proceedings of the 20th international conference on evaluation and assessment in software engineering - EASE \u201916, ACM Press, New York, New York, USA, vol 01-03-June, pp 1\u20136 https:\/\/doi.org\/10.1145\/2915970.2916008","DOI":"10.1145\/2915970.2916008"},{"issue":"September 2018","key":"9999_CR17","doi-asserted-by":"publisher","first-page":"101","DOI":"10.1016\/j.infsof.2018.09.006","volume":"106","author":"V Garousi","year":"2019","unstructured":"Garousi V, Felderer M, M\u00e4ntyl\u00e4 MV (2019) Guidelines for including grey literature and conducting multivocal literature reviews in software engineering. Inf Softw Technol 106(September 2018):101\u2013121. https:\/\/doi.org\/10.1016\/j.infsof.2018.09.006","journal-title":"Inf Softw Technol"},{"key":"9999_CR18","unstructured":"Ghofrani J, L\u00fcbke D (2018) Challenges of microservices architecture: A survey on the state of the practice. In: 10th Central European workshop on services and their composition (ZEUS), CEUR-WS.org, Dresden, Germany, vol 10th"},{"key":"9999_CR19","doi-asserted-by":"crossref","unstructured":"Haselb\u00f6ck S, Weinreich R, Buchgeher G (2018) An expert interview study on areas of microservice design","DOI":"10.1109\/SOCA.2018.00028"},{"key":"9999_CR20","doi-asserted-by":"publisher","unstructured":"Hove S, Anda B (2005) Experiences from conducting semi-structured interviews in empirical software engineering research. In: 11th IEEE international software metrics symposium (METRICS\u201905), IEEE, Metrics, pp 23\u201323. https:\/\/doi.org\/10.1109\/METRICS.2005.24","DOI":"10.1109\/METRICS.2005.24"},{"issue":"1","key":"9999_CR21","doi-asserted-by":"publisher","first-page":"159","DOI":"10.2307\/2529310","volume":"33","author":"JR Landis","year":"1977","unstructured":"Landis JR, Koch GG (1977) The measurement of observer agreement for categorical data. Biometrics 33(1):159. https:\/\/doi.org\/10.2307\/2529310","journal-title":"Biometrics"},{"issue":"9","key":"9999_CR22","doi-asserted-by":"publisher","first-page":"1060","DOI":"10.1109\/PROC.1980.11805","volume":"68","author":"M Lehman","year":"1980","unstructured":"Lehman M (1980) Programs, life cycles, and laws of software evolution. Proc. IEEE 68(9):1060\u20131076. https:\/\/doi.org\/10.1109\/PROC.1980.11805","journal-title":"Proc. IEEE"},{"key":"9999_CR23","unstructured":"Lenarduzzi V, Taibi D (2018) Microservices, Continuous Architecture, and Technical Debt Interest: An Empirical Study. In: Euromicro SEAA Prague, Czech Republic, June"},{"key":"9999_CR24","doi-asserted-by":"publisher","unstructured":"Neri D, Soldani J, Zimmermann O, Brogi A (2019) Design principles, architectural smells and refactorings for microservices: a multivocal review. SICS Software-Intensive Cyber-Physical Systems. https:\/\/doi.org\/10.1007\/s00450-019-00407-8, 1906.01553","DOI":"10.1007\/s00450-019-00407-8"},{"key":"9999_CR25","doi-asserted-by":"publisher","unstructured":"Neto GTG, Santos WB, Endo PT, Fagundes RA (2019) Multivocal literature reviews in software engineering: Preliminary findings from a tertiary study. In: 2019 ACM\/IEEE International symposium on empirical software engineering and measurement (ESEM), IEEE, vol 2019-Septe, pp 1\u20136 https:\/\/doi.org\/10.1109\/ESEM.2019.8870142","DOI":"10.1109\/ESEM.2019.8870142"},{"key":"9999_CR26","volume-title":"Building Microservices: Designing Fine-Grained Systems","author":"S Newman","year":"2015","unstructured":"Newman S (2015) Building Microservices: Designing Fine-Grained Systems, 1st edn. O\u2019Reilly Media Sebastopol, USA","edition":"1st edn"},{"issue":"9","key":"9999_CR27","doi-asserted-by":"publisher","first-page":"e1949","DOI":"10.1002\/smr.1949","volume":"30","author":"V Rajlich","year":"2018","unstructured":"Rajlich V (2018) Five recommendations for software evolvability. J Softw Evol Process 30(9):e1949. https:\/\/doi.org\/10.1002\/smr.1949","journal-title":"J Softw Evol Process"},{"key":"9999_CR28","doi-asserted-by":"publisher","unstructured":"Rowe D, Leaney J, Lowe D (1998) Defining systems architecture evolvability - a taxonomy of change. In: International conference on the engineering of computer-based systems, IEEE, pp 45\u201352 https:\/\/doi.org\/10.1109\/ECBS.1998.10027","DOI":"10.1109\/ECBS.1998.10027"},{"issue":"2","key":"9999_CR29","doi-asserted-by":"publisher","first-page":"131","DOI":"10.1007\/s10664-008-9102-8","volume":"14","author":"P Runeson","year":"2009","unstructured":"Runeson P, H\u00f6st M (2009) Guidelines for conducting and reporting case study research in software engineering. Emp Softw Eng 14(2):131\u2013164. https:\/\/doi.org\/10.1007\/s10664-008-9102-8, 9809069v1","journal-title":"Emp Softw Eng"},{"key":"9999_CR30","doi-asserted-by":"publisher","unstructured":"Schermann G, Cito J, Leitner P (2016) All the services large and micro: Revisiting industrial practice in services computing. In: Norta A, Gaaloul W, Gangadharan GR, Dam HK (eds) Lecture notes in computer science (including subseries lecture notes in artificial intelligence and lecture notes in bioinformatics), lecture notes in computer science. https:\/\/doi.org\/10.1007\/978-3-662-50539-7_4, vol 9586. Springer, Berlin, pp 36\u201347","DOI":"10.1007\/978-3-662-50539-7_4"},{"key":"9999_CR31","doi-asserted-by":"publisher","unstructured":"Seaman CB (2008) Qualitative methods. In: Guide to advanced empirical software engineering. https:\/\/doi.org\/10.1007\/978-1-84800-044-5_2. Springer, London, pp 35\u201362","DOI":"10.1007\/978-1-84800-044-5_2"},{"key":"9999_CR32","unstructured":"Software Engineering Institute (2010) CMMI\u00ae; for Development, Version 1.3 (CMMI-DEV V1.3). Tech. rep. Software Engineering Institute"},{"issue":"September","key":"9999_CR33","doi-asserted-by":"publisher","first-page":"215","DOI":"10.1016\/j.jss.2018.09.082","volume":"146","author":"J Soldani","year":"2018","unstructured":"Soldani J, Tamburri DA, Van Den Heuvel WJ (2018) The pains and gains of microservices: A Systematic grey literature review. J Syst Softw 146 (September):215\u2013232. https:\/\/doi.org\/10.1016\/j.jss.2018.09.082","journal-title":"J Syst Softw"},{"key":"9999_CR34","doi-asserted-by":"publisher","unstructured":"Taibi D, Lenarduzzi V, Pahl C (2020) Microservices anti-patterns: A taxonomy, Springer International Publishing, Cham. https:\/\/doi.org\/10.1007\/978-3-030-31646-4_5, 1908.04101","DOI":"10.1007\/978-3-030-31646-4_5"},{"key":"9999_CR35","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-642-38571-1","volume-title":"Software Product Quality Control","author":"S Wagner","year":"2013","unstructured":"Wagner S (2013) Software Product Quality Control. Springer, Berlin. https:\/\/doi.org\/10.1007\/978-3-642-38571-1"},{"key":"9999_CR36","doi-asserted-by":"publisher","unstructured":"Wohlin C, H\u00f6st M, Henningsson K (2003) Empirical research methods in software engineering. In: Esernet. https:\/\/doi.org\/10.1007\/978-3-540-45143-3_2, vol 2765. Springer, Berlin, pp 7\u201323","DOI":"10.1007\/978-3-540-45143-3_2"}],"container-title":["Empirical Software Engineering"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/s10664-021-09999-9.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/link.springer.com\/article\/10.1007\/s10664-021-09999-9\/fulltext.html","content-type":"text\/html","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/s10664-021-09999-9.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2021,8,27]],"date-time":"2021-08-27T19:51:57Z","timestamp":1630093917000},"score":1,"resource":{"primary":{"URL":"https:\/\/link.springer.com\/10.1007\/s10664-021-09999-9"}},"subtitle":["An interview study and systematic grey literature review"],"short-title":[],"issued":{"date-parts":[[2021,7,22]]},"references-count":36,"journal-issue":{"issue":"5","published-print":{"date-parts":[[2021,9]]}},"alternative-id":["9999"],"URL":"https:\/\/doi.org\/10.1007\/s10664-021-09999-9","relation":{},"ISSN":["1382-3256","1573-7616"],"issn-type":[{"value":"1382-3256","type":"print"},{"value":"1573-7616","type":"electronic"}],"subject":[],"published":{"date-parts":[[2021,7,22]]},"assertion":[{"value":"8 June 2021","order":1,"name":"accepted","label":"Accepted","group":{"name":"ArticleHistory","label":"Article History"}},{"value":"22 July 2021","order":2,"name":"first_online","label":"First Online","group":{"name":"ArticleHistory","label":"Article History"}}],"article-number":"104"}}