Software decay is a key concern for large, long lived software projects. Systems degrade over time as design and implementation compromises and exceptions pile up. However, there has been little research quantifying this decay, or understanding how software projects deal with this issue. While the best approach to improve the quality of a project is to spend time on reducing both software defects (bugs) and addressing design issues (refactoring), we find that design issues are frequently ignored in favor of fixing defects. We find that design issues have a higher chance of being fixed in the early stages of a project, and that efforts to correct these stall as projects mature and code bases grow leading to a build-up of design problems. From studying a large set of open source projects, our research suggests that while core contributors tend to fix design issues more often than non-core contributors, there is no difference once the relative quantity of commits is accounted for.
Login
Links
-
Recent Posts
- ICST 2017: The Theory of Composite Faults 10/12/2016
- FSE 2016: Can Testedness be Effectively Measured? 29/05/2016
- Software Quality Journal 2016: Does The Choice of Mutation Tool Matter? 08/05/2016
- ICSTW 2016: Measuring Effectiveness of Mutant Sets 08/05/2016
- ICSE 2016: On the limits of mutation reduction strategies 15/12/2015
- ISSRE 2015: How hard does mutation analysis have to be, anyway? 20/08/2015
- ASE 2015: How Verified is My Code? Falsification-Driven Verification 20/07/2015
- ESEM 2015: An empirical study of design degradation: how software projects get worse over time 20/05/2015
- ISSRE 2014: Mutations How close are they to real faults? 06/08/2014
- Sunbelt 2014: Temporal Visualization of Dynamic Collaboration Graphs of OSS Software Forks 28/01/2014
- ICSE 2014: Code Coverage for Suite Evaluation by Developers 28/01/2014
- OSS 2014: An Exploration of Factors Affecting Code Quality in FOSS Projects 20/01/2014
- OSS 2014: Drawing the Big Picture: Temporal Visualization of Dynamic Collaboration Graphs of OSS Software Forks 10/01/2014
- CHI 2014: Abandonment of Social Networks: Shift from Use to Non-Use and Experiences of Technology Non-Use 01/01/2014
- Entries 31/12/2013