部分。契约式设计还包括后置条件和不变条件的概念。要成功执行一个子程序所需的任何关于对象状态的限制条件都定义在先决条件中。从程序开发者的角度来看，这就构成了契约中子程序调用者的一部分。调用者有义务来确保在调用子程序前满足先决条件，而被调用的子程序则以后置条件来反馈给调用者。
先决条件与继承.在继承的关系中，继承了子程序的子类必须满足先决条件。也就是说对被继承的子程序的任何实现或重新定义，也必须遵守他们所继承的契约。重新定义的子程序可以削弱先决条件，但不能增强。