Skip to main content

An Empirical Study of Technical Debt in Open-Source Software Systems

  • Conference paper
  • First Online:
Disciplinary Convergence in Systems Engineering Research

Abstract

Technical debt (TD) is a term coined by agile software pioneer Ward Cunningham to account for the added software-system effort or cost resulting from taking early software project shortcuts. The debt metaphor reflects that debt accumulates interest: the later it is paid, the more it costs. The TD concept has achieved extensive visibility and usage in the software field, but it applies at least as strongly to cyber-physical systems. In researching the TD phenomena, we have found that open-source software projects are particularly good subjects, as they keep records of the timing, content, and rationale for each update. In this paper, we concentrate on the analysis of open-source software projects to evaluate the relationships between multiple software system characteristics and TD and the relationships between software process factors and TD.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 259.00
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Hardcover Book
USD 329.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. Cunningham W (1993) The wycash portfolio management system. ACM SIGPLAN OOPS Messenger 4(2):29–30

    Article  Google Scholar 

  2. Falessi D, Kruchten P, Nord RL, Ozkaya I (2014) Technical debt at the crossroads of research and practice: report on the fifth international workshop on managing technical debt. ACM SIGSOFT Software Eng Notes 39(2):31–33

    Article  Google Scholar 

  3. Kruchten P, Nord RL, Ozkaya I (2012) Technical debt: from metaphor to theory and practice. IEEE Softw 29(6)

    Google Scholar 

  4. Curtis B, Sappidi J, Szynkarski A (2012) Estimating the principal of an application’s technical debt. IEEE software 29(6):34–42

    Article  Google Scholar 

  5. Falessi D, Reichel A (2015) Towards an open-source tool for measuring and visualizing the interest of technical debt. In Managing Technical Debt (MTD), 2015 I.E. 7th International Workshop on IEEE, pp 1–8

    Google Scholar 

  6. Letouzey J-L, Ilkiewicz M (2012) Managing technical debt with the SQALE method. IEEE Soft 29(6):44–51

    Article  Google Scholar 

  7. Jiang Z, Naudé P, Jiang B (2007) The effects of software size on development effort and software quality. Int J Comput Inform Sci Eng 1(4):230–234

    Google Scholar 

  8. Welch B (1951) On the comparison of several mean values: an alternative approach. Biometrika 38(3/4):330–336

    Article  MathSciNet  MATH  Google Scholar 

  9. Jones C (2003) Variations in software development practices. IEEE Softw 20(6):22–27

    Article  Google Scholar 

  10. Olbrich S, Cruzes DS, Basili V, Zazworka N (2009) The evolution and impact of code smells: a case study of two open source systems. In Proceedings of the 2009 3rd international symposium on empirical software engineering and measurement. IEEE Computer Society, pp 390–400

    Google Scholar 

  11. Zazworka N, Spínola RO, Vetro A, Shull F, Seaman C (2013) A case study on effectively identifying technical debt. In Proceedings of the 17th International Conference on Evaluation and Assessment in Software Engineering ACM, pp 42–47

    Google Scholar 

  12. Marinescu R (2012) Assessing technical debt by identifying design flaws in software systems. IBM J Res Dev 56(5):9–1

    Article  Google Scholar 

  13. Zazworka N, Shaw MA, Shull F, Seaman C (2011) Investigating the impact of design debt on software quality. In Proceedings of the 2nd Workshop on Managing Technical Debt ACM, pp 17–23

    Google Scholar 

  14. Sterling C (2010) Managing software debt: building for inevitable change. Addison-Wesley Professional

    Google Scholar 

  15. Seaman C, Guo Y, Izurieta C, Cai Y, Zazworka N, Shull F, Vetrò A (2012) Using technical debt data in decision making: potential decision approaches. In Proceedings of the Third International Workshop on Managing Technical Debt IEEE Press, pp 45–48

    Google Scholar 

Download references

Acknowledgments

This material is based upon work supported in part by the U.S. Department of Defense through the Systems Engineering Research Center (SERC) under Contract H98230-08-D- 0171. SERC is a federally funded University Affiliated Research Center managed by Stevens Institute of Technology. It is also supported by the National Science Foundation grant CMMI-1408909, developing a constructive logic-based theory of value-based systems engineering. We also acknowledge the support of National Natural Science Foundation of China No. 91318301, 61432001, 91218302.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Reem Alfayez .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2018 Springer International Publishing AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Alfayez, R., Chen, C., Behnamghader, P., Srisopha, K., Boehm, B. (2018). An Empirical Study of Technical Debt in Open-Source Software Systems. In: Madni, A., Boehm, B., Ghanem, R., Erwin, D., Wheaton, M. (eds) Disciplinary Convergence in Systems Engineering Research. Springer, Cham. https://doi.org/10.1007/978-3-319-62217-0_9

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-62217-0_9

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-62216-3

  • Online ISBN: 978-3-319-62217-0

  • eBook Packages: EngineeringEngineering (R0)

Publish with us

Policies and ethics