Write once data and repeated use of input data values are also significant contributors, but sequence patterns in data input are not. Possible applications of the model are described as a starting point for discussion. Many software development techniques and strategies have attempted to integrate the testing phase earlier into the development cycle. The Class Validation System provides additional rigor to the software development process by integrating formal specifications into software testing. It allows testing before implementation of the components via directly executing the specification and automatically testing an implementation against the specification.
Formal specification provides a way to describe software behavior precisely.
Because it is simpler and more convenient than formal proofs of correctness, software testing remains the primary method of ensuring software quality. Traditional software testing does not provide a way to easily test against a formal specification, or even to test the specification itself. This research brings formal specifications and testing together. The Class Validation System supports rigorously testing a formal specification of a software component, and a corresponding implementation. Sufficient testing of a software component is something that is important to consider when developing a software testing tool such as this one.