DevOps

Cos’è

DevOps è una metodologia in cui i team sono responsabili dell’intero processo: dallo sviluppo delle applicazioni fino alle attività di installazione, configurazione e manutenzione in produzione, da cui DevOps. Il concetto va oltre l’implementazione di una serie di tecnologie e richiede un cambiamento completo nella cultura e nei processi. DevOps richiede gruppi di ingegneri che lavorano su piccoli componenti (invece di un’intera feature), diminuendo i passaggi di mano - una fonte comune di errori.

Quali problematiche affronta

Tradizionalmente, nelle organizzazioni complesse con applicazioni monolitiche dai componenti strettamente accoppiati, il lavoro era generalmente frammentato tra più team. Questo portava a numerosi passaggi di mano e a lunghi tempi di consegna. Ogni volta che un componente o un aggiornamento era pronto, veniva messo in coda per il team successivo. Poiché gli individui lavoravano solo su una piccola parte del progetto, questo approccio portava ad una mancanza di ownership (titolarità) sull’intero progetto. Il loro obiettivo era quello di passare il lavoro al gruppo successivo e non di consegnare la giusta funzionalità al cliente - un evidente e chiaro disallineamento delle priorità.

Quando il codice arrivava finalmente in produzione, passava da così tanti sviluppatori, stando in attesa in così tante code, che diventava difficile rintracciare l’origine del problema se il codice non funzionava. DevOps inverte questo approccio.

In che modo aiuta

Avere un team che sia responsabile dell’intero ciclo di vita di un’applicazione, porta a minimizzare i passaggi di mano, a ridurre i rischi di installazione in produzione, a migliorare la qualità del codice (perché i team sono anche responsabili di come il codice “si comporta” in produzione) e ad aumentare la soddisfazione dei dipendenti grazie alla maggiore autonomia e ownership.