Abstract
This paper reports the experience of an architecture team of a software development department with 25 agile teams in supporting technical decisions regarding technical practices. The main motivation to use technical debt metaphor was its acknowledged potential in driving software development and maintenance decisions, especially those long term maintenance tradeoffs which are usually less visible to developers and decision makers in general. We propose the use of a "technical debt board" with main technical debt categories to manage and visualize the high-level debt, combined with tools to measure it at low-level (software metrics and other kind of static analysis). We have found that our approach improved the teams’ awareness about the technical debt, stimulated a beneficial competition between teams towards the debt payment and enhanced the communication regarding technical decisions.
Access provided by Autonomous University of Puebla. Download to read the full chapter text
Chapter PDF
Similar content being viewed by others
References
Boehm, B.: Get ready for agile methods, with care. Computer 35, 64–69 (2002)
Dinakar, K.: Agile development: overcoming a short-term focus in implementing best practices. In: Proceedings of the 24th ACM SIGPLAN Conference Companion on Object Oriented Programming Systems Languages and Applications, pp. 579–588. ACM, New York (2009)
Abrahamsson, P., Warsta, J., Siponen, M.T., Ronkainen, J.: New directions on agile methods: a comparative analysis. In: Proceedings of the 25th International Conference on Software Engineering, pp. 244–254 (2003)
Merisalo-Rantanen, H., Tuunanen, T., Rossi, M.: Is Extreme Programming Just Old Wine in New Bottles. Journal of Database Management 16, 41–61 (2005)
Mishra, D., Mishra, A.: Complex software project development: agile methods adoption. Journal of Software Maintenance and Evolution: Research and Practice 23, 549–564 (2011)
Svensson, H., Host, M.: Introducing an Agile Process in a Software Maintenance and Evolution Organization. In: 9th European Conference on Software Maintenance and Reengineering, CSMR 2005, pp. 256–264 (2005)
Cunningham, W.: The WyCash portfolio management system. SIGPLAN OOPS Mess. 4, 29–30 (1992)
Fowler, M.: Technical Debt (2009), http://martinfowler.com/bliki/TechnicalDebt.html
Sterling, C.: Managing Software Debt: Building for Inevitable Change. Addison-Wesley Professional (2010)
Lim, E., Taksande, N., Seaman, C.: A Balancing Act: What Software Practitioners Have to Say about Technical Debt. IEEE Software 29, 22–27 (2012)
Brown, N., Cai, Y., Guo, Y., Kazman, R., Kim, M., Kruchten, P., Lim, E., MacCormack, A., Nord, R., Ozkaya, I., Sangwan, R., Seaman, C., Sullivan, K., Zazworka, N.: Managing technical debt in software-reliant systems. In: Proceedings of the FSE/SDP Workshop on Future of Software Engineering Research, pp. 47–52. ACM, New York (2010)
McConnell, S.: Technical Debt, http://forums.construx.com/blogs/stevemcc/archive/2007/11/01/technical-debt-2.aspx (2007)
Klinger, T., Tarr, P., Wagstrom, P., Williams, C.: An enterprise perspective on technical debt. In: Proceedings of the 2nd Workshop on Managing Technical Debt, pp. 35–38. ACM, New York (2011)
Seaman, C., Guo, Y., Izurieta, C., Cai, Y., Zazworka, N., Shull, F., Vetro, A.: Using technical debt data in decision making: Potential decision approaches. In: 2012 Third International Workshop on Managing Technical Debt (MTD), pp. 45–48 (2012)
Seaman, C., Guo, Y.: Measuring and Monitoring Technical Debt. In: Zelkowitz, M. (ed.) Advances in Computers. Academic Press (2011)
Zazworka, N., Seaman, C., Shull, F.: Prioritizing design debt investment opportunities. In: Proceedings of the 2nd Workshop on Managing Technical Debt, pp. 39–42. ACM, New York (2011)
Vetrò, A.: Using automatic static analysis to identify technical debt. In: Proceedings of the 2012 International Conference on Software Engineering, pp. 1613–1615. IEEE Press, Piscataway (2012)
Fontana, F.A., Ferme, V., Spinelli, S.: Investigating the impact of code smells debt on quality code evaluation. In: 2012 Third International Workshop on Managing Technical Debt (MTD), pp. 15–22 (2012)
Guo, Y., Seaman, C.: A portfolio approach to technical debt management. In: Proceedings of the 2nd Workshop on Managing Technical Debt, pp. 31–34. ACM, New York (2011)
Gaudin, O.: Evaluate your technical debt with Sonar (2009), http://www.sonarsource.org/evaluate-your-technical-debt-with-sonar/
Anderson, D.: Kanban: Successful Evolutionary Change for Your Technology Business. Blue Hole Press (April 7, 2010)
Gaillot, E.: What is Coding Dojo (2012), http://codingdojo.org/cgi-bin/wiki.pl?WhatIsCodingDojo
Werbach, K.: Gamification, University of Pennsylvania (2012), https://www.coursera.org/course/gamification
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2013 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
dos Santos, P.S.M., Varella, A., Dantas, C.R., Borges, D.B. (2013). Visualizing and Managing Technical Debt in Agile Development: An Experience Report. In: Baumeister, H., Weber, B. (eds) Agile Processes in Software Engineering and Extreme Programming. XP 2013. Lecture Notes in Business Information Processing, vol 149. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-38314-4_9
Download citation
DOI: https://doi.org/10.1007/978-3-642-38314-4_9
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-38313-7
Online ISBN: 978-3-642-38314-4
eBook Packages: Computer ScienceComputer Science (R0)