Source: The following definitions are taken from GLOSSARY OF COMPUTERIZED SYSTEM AND SOFTWARE
DEVELOPMENT TERMINOLOGY
audit. (1) (IEEE) An independent examination of a work product or set of work products to assess compliance
with specifications, standards, contractual agreements, or other criteria. See: functional configuration audit,
physical configuration audit. (2) (ANSI) To conduct an independent review and examination of system records
and activities in order to test the adequacy and effectiveness of data security and data integrity procedures, to
ensure compliance with established policy and operational procedures, and to recommend any necessary
changes. See: computer system audit, software audit.
boundary value. (1) (IEEE) A data value that corresponds to a minimum or maximum input, internal, or output
value specified for a system or component. (2) A value which lies at, or just inside or just outside a specified
range of valid input and output values.
boundary value analysis. (NBS) A selection technique in which test data are chosen to lie along “boundaries”
of the input domain [or output range] classes, data structures, procedure parameters, etc. Choices often include
maximum, minimum, and trivial values or parameters. This technique is often called stress testing. See: testing,
boundary value.
branch coverage. (NBS) A test coverage criteria which requires that for each decision point each possible
branch be executed at least once. Syn: decision coverage. Contrast with condition coverage, multiple condition
coverage, path coverage, statement coverage. See: testing, branch.
bug. A fault in a program which causes the program to perform in an unintended or unanticipated manner. See:
anomaly, defect, error, exception, fault.
cause effect graph. (Myers) A Boolean graph linking causes and effects. The graph is actually a digital-logic
circuit (a combinatorial logic network) using a simpler notation than standard electronics notation.
cause effect graphing. (1) (NBS) Test data selection technique. The input and output domains are partitioned
into classes and analysis is performed to determine which input classes cause which effect. A minimal set of
inputs is chosen which will cover the entire effect set. (2) (Myers) A systematic method of generating test cases
representing combinations of conditions. See: testing, functional.
code inspection. (Myers/NBS) A manual [formal] testing [error detection] technique where the programmer
reads source code, statement by statement, to a group who ask questions analyzing the program logic, analyzing
the code with respect to a checklist of historically common programming errors, and analyzing its compliance
with coding standards. Contrast with code audit, code review, code walkthrough. This technique can also be
applied to other software and configuration items. Syn: Fagan Inspection. See: static analysis.
code review. (IEEE) A meeting at which software code is presented to project personnel, managers, users,
customers, or other interested parties for comment or approval. Contrast with code audit, code inspection, code
walkthrough.
code walkthrough. (Myers/NBS) A manual testing [error detection] technique where program [source code]
logic [structure] is traced manually [mentally] by a group with a small set of test cases, while the state of
program variables is manually monitored, to analyze the programmer’s logic and assumptions. Contrast with code
audit, code inspection, code review. See: static analysis.
coverage analysis. (NIST) Determining and assessing measures associated with the invocation of program
structural elements to determine the adequacy of a test run. Coverage analysis is useful when attempting to
execute each statement, branch, path, or iterative structure in a program. Tools that capture this data and
provide reports summarizing relevant information have this feature. See: testing, branch; testing, path; testing,
statement.
crash. (IEEE) The sudden and complete failure of a computer system or component.
