Patent ID: 6959432

Claim:
A computer implemented process for developing mathematically validated object oriented software comprising the steps of: a) writing an abstract specification of a class, methods and expected properties of a component of the software, wherein the abstract specification of the methods includes a two-part postcondition such that when one of the methods is overridden by an overriding method in a descendent class one part of the one of the methods is inherited and another part the one of the methods is not inherited by the overriding method; b) checking the abstract specification for errors and verifying that the class has the expected properties; c) generating executable code for the class from the abstract specification; d) running and evaluating the executable code to check that the code meets requirements other than a required speed of performance; and e) evaluating the speed of performance when handling data sets commensurate to a size of data sets of the software component is required to handle.