Technical Debt and the Effect of Agile Software Development Practices on It: An Industry Practitioner Survey
September 2014 • Presentation
Johannes Holvitie (Turku Center for Computer Science), Ville Leppänen (Turku Center for Computer Science), Sami Hyrynsalmi (University of Turku)
The presentation presents the results of three research questions about using agile development methods to manage technical debt in software development environments.
Software Engineering Institute
This presentation was part of the Sixth International Workshop on Managing Technical Debt, held in conjunction with the 30th International Conference on Software Maintenance and Evolution (ICSME 2014).
Modern software development environments expect projects to cope with frequently changing requirements and scarce resources while efficiently delivering complete software products and services. Agile methods include processes and practices that solve a number of development issues. This has resulted in wide adoption, but these methods are not without shortcomings. Arguably, a major reason is that they are applied by individuals, which makes them sensitive to subjective decisions. Individuals base decisions on available information, and when it's not exhaustive, the results likely deviate from the optimal. Involvement of individuals ensures that there is technical debt. The presenters describe the results of three research questions: Can agile development methods manage, or at least accommodate, technical debt? Can common agile processes be mapped to practices sensitive to technical debt? And what factors could be used to aggregate a subjective mapping?