Formalization of information hiding design methods

The theory-model paradigm views the design verification problem as checking whether a database of design facts (the model) satisfies the type checking and other design rules of a design method (the theory). We present an abstract theory of modular information-hiding design methods, which captures aspects of many different languages (potentially including Modula, C, and Ada). We specialize the theory for the Turing Plus programming language, and validate it by extracting a design database from a pre-existing Turing Plus program, TXL, and verifying that it satisfies the design rules.This work is part of the Advanced Software Design Technology project, which aims to produce a prototype tool, 4Thought, to aid software designers. Design theories such as ours would become part of a 4Thought library.