skip to main content
10.1145/1985362.1985366acmconferencesArticle/Chapter ViewAbstractPublication PagesicseConference Proceedingsconference-collections
research-article

Investigating the impact of design debt on software quality

Authors Info & Claims
Published:23 May 2011Publication History

ABSTRACT

Technical debt is a metaphor describing situations where developers accept sacrifices in one dimension of development (e.g. software quality) in order to optimize another dimension (e.g. implementing necessary features before a deadline). Approaches, such as code smell detection, have been developed to identify particular kinds of debt, e.g. design debt. What has not yet been understood is the impact design debt has on the quality of a software product. Answering this question is important for understanding how growing debt affects a software product and how it slows down development, e.g. though introducing rework such as fixing bugs. In this case study we investigate how design debt, in the form of god classes, affects the maintainability and correctness of software products by studying two sample applications of a small-size software development company. The results show that god classes are changed more often and contain more defects than non-god classes. This result complements findings of earlier research and suggests that technical debt has a negative impact on software quality, and should therefore be identified and managed closely in the development process.

References

  1. Jan Schumacher, Nico Zazworka, Forrest Shull, Carolyn Seaman, and Michele Shaw. 2010. Building empirical support for automated code smell detection. In Proceedings of the 2010 ACM-IEEE International Symposium on Empirical Software Engineering and Measurement (ESEM '10). ACM, New York, NY, USA Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Olbrich, S. M., Cruzes, D. S., Sjoberg, D. I. K. 2010. Are all code smells harmful? A study of God Classes and Brain Classes in the evolution of three open source systems. Software Maintenance, ICSM 2010, pp. 1--10, Timisoara. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Olbrich, S., Cruzes, D., Basili, V., Zazworka, N. (2009). The evolution and impact of code smells: A case study of two open source systems. Empirical Software Engineering and Measurement, 2009. ESEM 2009. 3rd International Symposium on, 390--400. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Lanza, M., Marinescu, R. 2006. Object-oriented metrics in practice. Springer. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Marinescu, R. 2004. Detection Strategies: Metrics-Based Rules for Detecting Design Flaws. In Proceedings of the 20th IEEE international Conference on Software Maintenance (September 11 - 14, 2004). ICSM. IEEE Computer Society, Washington, DC, 350--359. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Fowler, M., Beck, K. 1999. Refactoring: improving the design of existing code. Addison Wesley. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. http://c2.com/xp/CodeSmell.html, last retrieved Jan 27, 2011.Google ScholarGoogle Scholar
  8. Foutse Khomh, Massimiliano Di Penta, and Yann-Gael Gueheneuc. 2009. An Exploratory Study of the Impact of Code Smells on Software Change-proneness. In Proceedings of the 2009 16th Working Conference on Reverse Engineering (WCRE '09). IEEE Computer Society, Washington, DC, USA, 75--84. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Wei Li and Raed Shatnawi. 2007. An empirical study of the bad smells and class error probability in the post-release object-oriented system evolution. J. Syst. Softw. 80, 7 (July 2007), 1120--1128. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Nanette Brown, Yuanfang Cai, Yuepu Guo, Rick Kazman, Miryung Kim, Philippe Kruchten, Erin Lim, Alan MacCormack, Robert Nord, Ipek Ozkaya, Raghvinder Sangwan, Carolyn Seaman, Kevin Sullivan, and Nico Zazworka. 2010. Managing technical debt in software-reliant systems. In Proceedings of the FSE/SDP workshop on Future of software engineering research (FoSER '10). ACM, New York, NY, USA, 47--52. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Thode Jr., H. C.: Testing for Normality. Marcel Dekker, New York, 2002.Google ScholarGoogle ScholarCross RefCross Ref

Index Terms

  1. Investigating the impact of design debt on software quality

    Recommendations

    Comments

    Login options

    Check if you have access through your login credentials or your institution to get full access on this article.

    Sign in
    • Published in

      cover image ACM Conferences
      MTD '11: Proceedings of the 2nd Workshop on Managing Technical Debt
      May 2011
      54 pages
      ISBN:9781450305860
      DOI:10.1145/1985362

      Copyright © 2011 ACM

      Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

      Publisher

      Association for Computing Machinery

      New York, NY, United States

      Publication History

      • Published: 23 May 2011

      Permissions

      Request permissions about this article.

      Request Permissions

      Check for updates

      Qualifiers

      • research-article

      Acceptance Rates

      Overall Acceptance Rate40of92submissions,43%

      Upcoming Conference

      ICSE 2025

    PDF Format

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader