Abstract
Software often constitutes a large share of today's products. To deliver a product with the level of software quality expected by the customer, software development organizations need to manage quality achievement and assessment.
In practice, quality is often referred to as the lack of bugs. The research in this thesis is focused on how to improve software quality through effective and efficient detection of those software faults, and how to assess the level of software quality through analysis of the software faults. The research also further evaluates previous work, for example by replications, to continue building empirical knowledge in the field of software engineering.
In a literature survey of empirical studies on inspections and testing, it is shown that the choice of detection method depends on several factors. Examples of factors that affect effectiveness and efficiency of fault detection include the type of fault and the type of artifact in which the faults occur. An experiment is conducted to compare the performance of inspections and testing on faults originating from the design. The fault detection effectiveness is also examined in a software process simulation study, validated with empirical data, to illustrate the impact of different factors in the process.
A large case study was launched iteratively in an industrial context, investigating three development projects where the product quality is measured by analysis of the detected software faults. The analysis is guided with the purpose of generalizing findings obtained from other research studies. Fault distributions are examined, in terms of detection phase, location of faults, and fault density. In addition, a selection method for software reliability growth models is evaluated by application to fault data.
The contribution of this thesis straddles both research and practice. The conclusions of the thesis with its replicative approach are that to generalize any finding it is necessary to explore the applicability of the techniques investigated by gradually changing their parameters in additional studies.
In practice, quality is often referred to as the lack of bugs. The research in this thesis is focused on how to improve software quality through effective and efficient detection of those software faults, and how to assess the level of software quality through analysis of the software faults. The research also further evaluates previous work, for example by replications, to continue building empirical knowledge in the field of software engineering.
In a literature survey of empirical studies on inspections and testing, it is shown that the choice of detection method depends on several factors. Examples of factors that affect effectiveness and efficiency of fault detection include the type of fault and the type of artifact in which the faults occur. An experiment is conducted to compare the performance of inspections and testing on faults originating from the design. The fault detection effectiveness is also examined in a software process simulation study, validated with empirical data, to illustrate the impact of different factors in the process.
A large case study was launched iteratively in an industrial context, investigating three development projects where the product quality is measured by analysis of the detected software faults. The analysis is guided with the purpose of generalizing findings obtained from other research studies. Fault distributions are examined, in terms of detection phase, location of faults, and fault density. In addition, a selection method for software reliability growth models is evaluated by application to fault data.
The contribution of this thesis straddles both research and practice. The conclusions of the thesis with its replicative approach are that to generalize any finding it is necessary to explore the applicability of the techniques investigated by gradually changing their parameters in additional studies.
Original language | English |
---|---|
Qualification | Doctor |
Awarding Institution |
|
Supervisors/Advisors |
|
Award date | 2006 May 5 |
Publisher | |
Publication status | Published - 2006 |
Bibliographical note
Defence detailsDate: 2006-05-05
Time: 13:15
Place: Room E:1406, E-building, Ole Römers väg 3, Lund Institute of Technology
External reviewer(s)
Name: Hall, Tracy
Title: Dr.
Affiliation: University of Hertfordshire, UK
---
Subject classification (UKÄ)
- Computer Science
Free keywords
- kontroll
- numerisk analys
- Data- och systemvetenskap
- Software engineering
- Software fault detection
- numerical analysis
- Computer science
- systems
- Datalogi
- control
- computer technology
- Quality management
- Systems engineering
- system