A Case Study on Design Patterns and Software Defects in Open Source Software
Open Access
- 1 January 2018
- journal article
- research article
- Published by Scientific Research Publishing, Inc. in Journal of Software Engineering and Applications
- Vol. 11 (05), 249-273
- https://doi.org/10.4236/jsea.2018.115016
Abstract
Design patterns are object oriented software design practices for solving common design problems and they affect software quality. In this study, we investigate the relationship of design patterns and software defects in a number of open source software projects. Design pattern instances are extracted from the source code repository of these open source software projects. Software defect metrics are extracted from the bug tracking systems of these projects. Using correlation and regression analysis on extracted data, we examine the relationship between design patterns and software defects. Our findings indicate that there is little correlation between the total number of design pattern instances and the number of defects. However, our regression analysis reveals that individual design pattern instances as a group have strong influences on the number of defects. Furthermore, we find that the number of design pattern instances is positively correlated to defect priority. Individual design pattern instances may have positive or negative impacts on defect priority.Keywords
This publication has 38 references indexed in Scilit:
- Human and program factors affecting the maintenance of programs with deployed design patternsInformation and Software Technology, 2012
- An empirical investigation on the reusability of design patterns and software packagesJournal of Systems and Software, 2011
- An empirical study on the influence of pattern roles on change-pronenessEmpirical Software Engineering, 2010
- Relationship between design patterns defects and crosscutting concern scattering degree: an empirical studyIET Software, 2009
- A quantitative approach for evaluating the quality of design patternsJournal of Systems and Software, 2008
- Evaluation of object-oriented design patterns in game developmentInformation and Software Technology, 2007
- Defect frequency and design patterns: an empirical study of industrial codeIEEE Transactions on Software Engineering, 2004
- Two controlled experiments assessing the usefulness of design pattern documentation in program maintenanceIEEE Transactions on Software Engineering, 2002
- A controlled experiment in maintenance: comparing design patterns to simpler solutionsIEEE Transactions on Software Engineering, 2001
- The effects of design pattern application on metric scoresJournal of Systems and Software, 2001