State and honour what a boundary promises — preconditions as the caller's obligation, postconditions as the supplier's guarantee, class invariants, why re-checking your own precondition makes a system less reliable rather than more, and the substitutability rule for overrides. Use when writing a public method or interface, deciding who validates what, overriding a method or implementing an interface, or writing an error-handling path.