Questa pratica è fondamentale per mantenere la coerenza, la tracciabilità e la riproducibilità delle modifiche apportate al database nel tempo, soprattutto in ambienti di sviluppo software complessi dove più sviluppatori lavorano in modo distribuito e collaborativo e dove il database è un componente critico del sistema.