Industry-accepted definitions exist for software errors and defects (faults), found in the ANSI/IEEE,
Glossary of Software Engineering Terminology, are
listed in Table A1.
Table A1 - IEEE Software Engineering Terminology [#!ieee!#]
Category | Definition |
Error | The difference between a computed, observed, or measured value or condition and the true, specified, or theoretically correct value or condition. |
Fault | An incorrect step, process, or data definition in a computer program. |
Debug | To detect, locate, and correct faults in a computer program. |
Failure | The inability of a system or component to perform its required functions within specified performance requirements. It is manifested as a fault. |
Testing | The process of analyzing a software item to detect the differences between existing and required conditions (that is, bugs) and to evaluate the features of the software items. |
Static analysis | The process of evaluating a system or component based on its form, structure, content, or documentation. |
Dynamic analysis | The process of evaluating a system or component based on its behavior during execution. |
Correctness | ![]() ![]() ![]() |
Verification | ![]() ![]() |
Validation | The process of evaluating a system or component during or at the end of the development process to determine whether it satisfies specified requirements. |
esmf_support@ucar.edu