Design-by-Contract