Proceedings of the 2014 Winter Simulation Conference A. Tolk, S. D. Diallo, I. O. Ryzhov, L. Yilmaz, S. Buckley, and J. A. Miller, eds. A SIMULATION STUDY OF PRACTICAL METHODS FOR TECHNICAL DEBT MANAGEMENT IN AGILE SOFTWARE DEVELOPMENT Isaac Griffith Hanane Taffahi Clemente Izurieta David Claudio Department of Computer Science Department of Mechanical and Montana State University Industrial Engineering 357 EPS Building Montana State University Bozeman, MT 59717, USA Bozeman, MT 59717, USA ABSTRACT Technical debt is a well understood yet understudied phenomena. A current issue is the verification and validation of proposed methods for technical debt management in the context of agile development. In practice, such evaluations are either too costly or too time consuming to be conducted using traditional empirical methods. In this paper, we describe a set of simulations based on models of the agile development process, Scrum, and the integration of technical debt management. The purpose of this study is to identify which strategy is superior and to provide empirical evidence to support existing claims. The models presented are based upon conceptual and industry models concerning defects and technical debt. The results of the simulations provide compelling evidence for current technical debt management strategies proposed in the literature that can be immediately applied by practitioners. 1 INTRODUCTION Technical debt embodies the dichotomy between decisions focusing on the long-term effects to the quality of the software versus focusing on the short term effects on the time-to-market and business value of the software. That is, while software should be delivered on time, any debt (sacrifice in quality) against the quality of the software used to make that possible must eventually be repaid in order to ensure the overall health of the product. This has become a growing concern since as early as 1992 (Cunningham 1992), and it was not until recently that industry and researchers worked to provide strategies for incorporating technical debt management into the software development life cycle. Currently, several basic methods for managing technical debt in practice have been proposed, yet there is little empirical work supporting these claims (Ramasubbu and Kemerer 2013), due to the nature of the problem making empirical studies prohibitive. Thus, simulation provides an excellent alternative to evaluate proposed technical debt management methods, within the context of agile development processes, in a cost and time sensitive way. The problem at hand is to determine, which technical debt management strategy is superior and the most feasible to implement within an existing agile development process model. To investigate the introduction of technical debt management strategies, we have selected the Scrum agile development process (Schwaber and Beedle 2001). This paper is organized as follows: Section 2 describes background concepts and related work. Section 3 describes the conceptual model. Section 4 describes the experimental design and data collection methods used in this study. Section 5 describes the results and analysis. Section 6 concludes the paper and provides avenues of future work. 1014 978-1-4799-7486-3/14/$31.00 ©2014 IEEE