Technical debt payment and prevention through the lenses of software architects
Autor: | Nicolli Rios, Dario Correal, Sávio Freire, Clemente Izurieta, Camilo Castellanos, Boris Perez, Rodrigo O. Spínola, Carolyn Seaman |
---|---|
Rok vydání: | 2021 |
Předmět: |
FOS: Computer and information sciences
Process management Scope (project management) business.industry media_common.quotation_subject Context (language use) Technical debt management Technical debt Payment computer.software_genre Payment practices Computer Science Applications Software Code refactoring Software architects Debt Preventive actions Architecture InsighTD business computer Information Systems media_common |
Zdroj: | Repositorio Digital UFPS UNIVERSIDAD FRANCISCO DE PAULA SANTANDER instacron:Universidad Francisco de Paula Santander |
ISSN: | 0950-5849 |
DOI: | 10.1016/j.infsof.2021.106692 |
Popis: | Context: Architectural decisions are considered one of the most common sources of technical debt (TD). Thus, it is necessary to understand how TD is perceived by software architects, particularly, the practices supporting the elimination of debt items from projects, and the practices used to reduce the chances of TD occurrence. Objective: This paper investigates the most commonly used practices to pay off TD and to prevent debt occurrence in software projects from the architect’s point of view. Method: We used the available data from InsighTD, which is a globally distributed family of industrial surveys on the causes, effects, and management of TD. We analyze responses from a corpus of 72 software architects from Brazil, Chile, Colombia, and the United States. Results: Results showed that refactoring (30.2%) was the main practice related to TD payment, followed by design improvements (14.0%). Refactoring, design improvements, and test improvements are the most cited payment practices among cases of code, design and test debt. Concerning the TD preventive practices, we find that having a well-defined architecture and design is the most cited practice (13.6%), followed by having a well-defined scope and requirements. This last practice is the most cited one for expert software architects. Finally, when comparing preventive practices among the three major roles derived from the survey (software architects, engineer roles, and management roles), we found that none of the roles shared the most cited practice, meaning that each role had its worries and focus on different strategies to reduce TD’s presence in the software. Conclusion: The lists of TD payment and prevention practices can guide software teams by having a catalog of practices to keep debt controlled or reduced. |
Databáze: | OpenAIRE |
Externí odkaz: |