- Design by contract (DbC) (Progettazione per contratto) è una metodologia di progettazione software
- Il progettista deve definire specifiche precise e verificabili delle interfacce dei componenti software che va a sviluppare
- Una specifica funzionale (contratto) viene creato per ogni modulo nel sistema prima di codificarlo
- L'esecuzione del programma è vista come l'interazione fra i vari moduli vincolati da questi contratti
