Closing the Defect Reduction Gap Between Software Inspection and Test-driven Development: Applying Mutation Analysis to Iterative, Test-first Programming

Front Cover
ProQuest, 2008 - 234 pages
0 Reviews
The main objective of this dissertation is to assist in reducing the chaotic state of the software engineering discipline by providing insights into both the effectiveness of software defect reduction methods and ways these methods can be improved. The dissertation is divided into two main parts. The first is a quasi-experiment comparing the software defect rates and initial development costs of two methods of software defect reduction: software inspection and test-driven development (TDD). Participants, consisting of computer science students at the University of Arizona, were divided into four treatment groups and were asked to complete the same programming assignment using either TDD, software inspection, both, or neither. Resulting defect counts and initial development costs were compared across groups. The study found that software inspection is more effective than TDD at reducing defects, but that it also has a higher initial cost of development. The study establishes the existence of a defect-reduction gap between software inspection and TDD and highlights the need to improve TDD because of its other benefits.
 

What people are saying - Write a review

We haven't found any reviews in the usual places.

Contents

LIST OF FIGURES
12
LITERATURE REVIEW
27
Software Inspection Overview
28
Overview of Impact Analysis Algorithms
44
COMPARISON OF SOFTWARE INSPECTION AND TESTDRIVEN
49
Reasons for Participant Exclusion
51
Treatment Conditions and Defect Counting
57
Normality Assumption Tests
64
Comparison of Total and Impacted Method Counts
104
Paired Differences to Program Size Correlations
109
Curve Fit for MuJava Execution Time
112
Curve Fit for CHAAS Peak Memory Usage
118
APPLICATION OF CHAAS TO MUTATION ANALYSIS IN
122
Mutation Analysis Enhanced TDD Method
125
CONCLUSIONS
129
FIXEDSIZE GROUPING GENETIC ALGORITHM
136

Estimated Marginal Means of Defects Remaining
66
ANOVA Summary for Initial Development Cost
70
DESIGN SCIENCE RESEARCH APPROACH
73
Role of Systems Development in IS Research
74
Simulation Program Interface
81
CHAAS AN ARBITRARY STARTING POINT CHANGE IMPACT
93
TopLevel CHAAS Activity Diagram
95
Descriptive Statistics for Comparison Variables
103
Experiment 1 Objective Value Comparison
154
JAVA AND OBJECTORIENTED DESIGN PRETEST
156
PROGRAMMING ASSIGNMENT
166
Package and Class Diagram
168
INSTRUCTIONS TO PARTICIPANTS
173
CODE PROVIDED TO PARTICIPANTS
185
CHAAS ALGORITHM PSEUDOCODE
208
Copyright

Common terms and phrases

Bibliographic information