Practical software metrics for project management and process improvement
Practical software metrics for project management and process improvement
Orthogonal Defect Classification-A Concept for In-Process Measurements
IEEE Transactions on Software Engineering - Special issue on software measurement principles, techniques, and environments
The REBOOT approach to software reuse
Journal of Systems and Software - Special issue on software reuse
An analysis of errors in a reuse-oriented development environment
Journal of Systems and Software
Experimentation in software engineering: an introduction
Experimentation in software engineering: an introduction
A case study in root cause defect analysis
Proceedings of the 22nd international conference on Software engineering
Analysis of the Effects of Software Reuse on Customer Satisfaction in an RPG Environment
IEEE Transactions on Software Engineering
An industrial study of reuse, quality, and productivity
Journal of Systems and Software
Success and Failure Factors in Software Reuse
IEEE Transactions on Software Engineering
Effects of Reuse on Quality, Productivity, and Economics
IEEE Software
Learning from Our Mistakes with Defect Causal Analysis
IEEE Software
Quantitative Analysis of Faults and Failures in a Complex Software System
IEEE Transactions on Software Engineering
The Repeatability of Code Defect Classifications
ISSRE '98 Proceedings of the The Ninth International Symposium on Software Reliability Engineering
Strategies for Software Reuse: A Principal Component Analysis of Reuse Practices
IEEE Transactions on Software Engineering
An Empirical Study of Software Reuse vs. Defect-Density and Stability
Proceedings of the 26th International Conference on Software Engineering
Conventional and Open Source Software Reuse at Orbotech - An Industrial Experience
SWSTE '05 Proceedings of the IEEE International Conference on Software - Science, Technology & Engineering
Enabling Reuse-Based Software Development of Large-Scale Systems
IEEE Transactions on Software Engineering
An Industrial Case Study on Reuse Oriented Development
ICSM '05 Proceedings of the 21st IEEE International Conference on Software Maintenance
Quality, productivity and economic benefits of software reuse: a review of industrial studies
Empirical Software Engineering
On the Value of Static Analysis for Fault Detection in Software
IEEE Transactions on Software Engineering
SPLC'05 Proceedings of the 9th international conference on Software Product Lines
Change profiles of a reused class framework vs. two of its applications
Information and Software Technology
Journal of Systems and Software
Perceived causes of software project failures - An analysis of their relationships
Information and Software Technology
Hi-index | 0.00 |
The benefits of software reuse have been studied for many years. Several previous studies have observed that reused software has a lower defect density than newly built software. However, few studies have investigated empirically the reasons for this phenomenon. To date, we have only the common sense observation that as software is reused over time, the fixed defects will accumulate and will result in high-quality software. This paper reports on an industrial case study in a large Norwegian Oil and Gas company, involving a reused Java class framework and two applications that use that framework. We analyzed all trouble reports from the use of the framework and the applications according to the Orthogonal Defect Classification (ODC), followed by a qualitative Root Cause Analysis (RCA). The results reveal that the framework has a much lower defect density in total than one application and a slightly higher defect density than the other. In addition, the defect densities of the most severe defects of the reused framework are similar to those of the applications that are reusing it. The results of the ODC and RCA analyses reveal that systematic reuse (i.e. clearly defined and stable requirements, better design, hesitance to change, and solid testing) lead to lower defect densities of the functional-type defects in the reused framework than in applications that are reusing it. However, the different "nature" of the framework and the applications (e.g. interaction with other software, number and complexity of business logic, and functionality of the software) may confound the causal relationship between systematic reuse and the lower defect density of the reused software. Using the results of the study as a basis, we present an improved overall cause---effect model between systematic reuse and lower defect density that will facilitate further studies and implementations of software reuse.