In this paper, the mutation analysis method of testing programs is applied to the testing of specifications given in predicate calculus form. For this, the input-output relationships of the program have to be established. The testing scheme itself uses two major tools: a mutation system which generates mutants of the original specification, and an “estimate” system which examines the results of these changes.
In the view of this reviewer, the title of the paper is somewhat misleading since both specification and implementation have to be taken into account. Using the specification of a program as the sole base for the testing process would result in black-box testing (where the program is seen as a black box), which is inadequate by any standards. The examples used in the paper actually work such that the specification is derived from a given implementation backwards. Thus, the implementation determines the test cases essentially--as it should be.