Design by Contract (DbC) a fhealann ar an gcaidreamh idir modh agus an duine a thugann glaoch air mar chomhaontú foirmiúil, atá sainithe ag trí rud: réamhchoinníollacha (ar chóir don ghlaochadóir a ráthaíonn), iarchoinneolacha (ar ghealann an modh ar ais), agus invariants (cad atá fíor d'an réad ag gach am).
Trí oibleagáidí
PRECONDITION → caller's duty: inputs/state the method requires to run correctly
POSTCONDITION → method's duty: what it promises on return (if precondition held)
INVARIANT → always-true property of the object, before and after every method
