Design by contract

Design by contract: assertions (Hugh Gibbons)
Invitation to Eiffel (Bertrand Meyer)