Metodo Agile vs DevOps. Quali sono le differenze?

30/08/16 10.00 Posted by Giulio Covassi - No Comments

METODO AGILE VS DEVOPS. QUALI SONO LE DIFFERENZE?In un mondo di profonde trasformazioni, le aziende di software si trovano a dover rispondere ai propri clienti in maniera veloce e continua, e hanno dovuto adattarsi alle nuove esigenze del mercato rivalutando completamente il loro metodo di lavoro. Da questi problemi nascono due metodologie di sviluppo software simili tra loro: Agile e DevOps. Vediamo cosa propongono e quali sono vantaggi e differenze.

 

Metodo Agile

La metodologia Agile è un insieme di metodi di sviluppo del software che si contrappone al tradizionale, perché si concentra sull’obiettivo da consegnare al cliente, che chiede sempre più tempi brevi, alta frequenza dei rilasci e nel contempo codice corretto e di qualità.

La metodologia Agile è più datata di quella DevOps ed è stata fondata dal “Manifesto for Agile Software development” del 2001, da cui deriva il termine, con la proposta di ridurre il rischio di fallimenti del software creando piccoli progetti chiamati iterazioni della durata di qualche settimana, in cui si sviluppano piccole porzioni del software intero. In questo modo la possibilità di introdurre bug diminuisce notevolmente, e si ottiene come risultato un software più manutenibile e stabile.

Un’altra particolarità della metodologia Agile è che per sua natura e per come viene gestito il processo di sviluppo permette di diminuire la quantità di documentazione da produrre enfatizzando invece il ritorno della comunicazione faccia a faccia in tempo reale, per snellire e velocizzare i processi.

 

Metodo DevOps

Molti credono erroneamente che Agile e DevOps siano due metodologie contrapposte ma in realtà quest’ultimo non è altro che un miglioramento dell’Agile avvenuto nel tempo.

La grande innovazione è infatti quella di proporre una collaborazione tra Developer, orientati alla creazione di cambiamenti e all'aggiunta o modifica di funzionalità, e Operation, tendenti alla creazione di stabilità e al miglioramento dei servizi, in tutte le fasi del ciclo di vita del prodotto, con la sicura convinzione che questa sinergia possa generare un enorme valore sia per la qualità del prodotto finito, sia per la velocità con cui viene realizzato.

Devops riesce quindi ad estendere gli ideali dell’Agile oltre il codice, concentrandosi sull’intero servizio.

Vediamo insieme una bellissima interpretazione di come il DevOps possa essere considerato una conseguenza dell’Agile.

 

 [Se questo articolo ti sta piacendo, seguici su Linkedin e Twitter!]

Mentre la metodologia Agile si fonda su principi che riguardano Valori, Principi, Metodi e Pratiche, DevOps aggiunge anche gli Strumenti. Secondo il Manifesto Agile infatti, gli strumenti assumono una minima importanza, ma questo ha portato nel tempo a trascurarli notevolmente con conseguenze spesso non in linea con l’obiettivo del cliente.

È bello pensare alla differenza tra i due metodi in questo modo: mentre Agile risolve i problemi della tecnologia, DevOps cerca di risolvere più ampiamente un intero problema di business attraverso un insieme di pratiche, cultura e valori che guidano il cambiamento verso software più solido, che raggiunge più presto la produzione e con meno intralci durante il suo ciclo di vita.

Infatti DevOps rende chiaro l’obiettivo comune di Developers e Operators per puntare all’ottimizzazione dell’intero sistema invece che alle ottimizzazioni locali, cioè vuole raggiungere gli obiettivi del business risolvendo il problema del cliente, che ci sia da agire su ambiti del team dei Developers che Operators.

Scarica guida DevOps gratuita

Agile, Devops