Sono nelle prime fasi dell'apprendimento della progettazione per contratto (DbC). E penso che se seguito correttamente, può produrre software di altissima qualità. Questo mi chiede se ... perché non è usato molto? Ci sono alcuni problemi nell'usarlo efficacemente nel tipico processo di sviluppo del software? Ad esempio, rende difficile cambiare i requisiti a metà strada di un progetto?
So che per alcuni problemi è difficile esprimere la soluzione usando DbC. Ma penso che se praticato correttamente, può salvare le squadre dai mal di testa di manutenzione. E considerando la quantità di risorse spesa per la manutenzione del software, il costo iniziale dell'utilizzo di DbC durante la fase di progettazione potrebbe valerne la pena.