Litcius/Paper detail

Identifying architectural technical debt, principal, and interest in microservices: A multiple-case study

Saulo S. de Toledo, Antonio Martini, Dag I. K. Sjøberg

2021Journal of Systems and Software48 citationsDOIOpen Access PDF

Abstract

Using a microservices architecture is a popular strategy for software organizations to deliver value to their customers fast and continuously. However, scientific knowledge on how to manage architectural debt in microservices is scarce. In the context of microservices applications, this paper aims to identify architectural technical debts (ATDs), their costs, and their most common solutions. We conducted an exploratory multiple case study by conducting 25 interviews with practitioners working with microservices in seven large companies. We found 16 ATD issues, their negative impact (interest), and common solutions to repay each debt together with the related costs (principal). Two examples of critical ATD issues found were the use of shared databases that, if not properly planned, leads to potential breaks on services every time the database schema changes and bad API designs, which leads to coupling among teams. We identified ATDs occurring in different domains and stages of development and created a map of the relationships among those debts. The findings may guide organizations in developing microservices systems that better manage and avoid architectural debts.

Topics & Concepts

Technical debtMicroservicesDebtComputer scienceContext (archaeology)Schema (genetic algorithms)ArchitecturePrincipal (computer security)Software engineeringWorld Wide WebKnowledge managementBusinessSoftware developmentSoftwareComputer securityFinanceOperating systemInformation retrievalCloud computingPaleontologyVisual artsBiologyArtSoftware System Performance and ReliabilitySoftware Engineering ResearchAdvanced Software Engineering Methodologies
Identifying architectural technical debt, principal, and interest in microservices: A multiple-case study | Litcius