Cos'è il manifesto agile?
Il Manifesto Agile era le dichiarazioni pubbliche fatte l'11 febbraio 2001 da 17 dei più visionari ingegneri del software sull'argomento del processo di sviluppo del software agile. Al momento di questo incontro, lo sviluppo agile del software era un nuovo concetto, con molte opzioni tra cui gli sviluppatori potevano scegliere. Il Manifesto Agile è stato uno sforzo per riunire tutte le menti brillanti dell'elaborazione agile in un unico posto, nel tentativo di concordare i principi e le idee di base di tutto il processo agile che andrà avanti.
Alcuni buoni esempi del processo di sviluppo agile includono programmazione estrema, scrum, sviluppo di software adattivo e metodo di sviluppo di sistemi dinamici (DSDM). Ognuno di questi processi tenta di creare metodi migliori per l'implementazione del software. Il miglioramento chiave con tutti questi metodi è che lo sviluppo del software dovrebbe essere prodotto in modo tale da supportare i cambiamenti nei requisiti aziendali e non richiedere processi che chiudano il circuito di feedback al cliente.
Prima delle creazioni del processo di sviluppo agile, tutto lo sviluppo del software era completato con un metodo a cascata. Il termine "cascata" viene utilizzato per definire il processo del modello di lavoro dritto che richiede che tutti i requisiti in anticipo siano completati e definiti con un finale che includerà tutte le funzionalità definite. Proprio come una cascata, c'è un chiaro inizio e fine per lo sviluppo di tutti i sistemi. Questo processo di sviluppo non consente che si verifichino cambiamenti nei requisiti prima del completamento di un'intera applicazione software.
Si è tenuto un incontro pubblico in una baita a Snowbird, nello Utah, sotto il coordinamento di Robert Martin. L'elenco dei partecipanti comprende Kent Beck, Dave Tomas, Mike Beedle, Jeff Sutherland, Arie van Bennekum, Ken Schwaber, Alistiar Cockburn, Steve Mellor, Ward Cunningham, Robert C. Martin, Martin Fowler, Brian Marick, James Grenning, John Kern, Jim Highsmith, Ron Jeffries e Andrew Hunt. Mentre tutti questi individui erano sostenitori di metodologie di sviluppo agili e leggere, ognuno aveva la propria preferenza su come implementare la metodologia.
Quattro valori chiave sono stati definiti e concordati dalle parti firmatarie del Manifesto Agile. Il primo era quello di valorizzare gli individui e le interazioni su strumenti e processi. In secondo luogo, il software che ha funzionato è stato valutato su documenti completi. La collaborazione con il cliente è stata considerata più importante della negoziazione di vincoli. Infine, il gruppo si è impegnato a valutare la risposta ai cambiamenti nel seguire un piano.
L'essenza di questo team e del Manifesto Agile era la creazione di un processo dell'ambiente di sviluppo che comprendesse l'importanza del cliente. Ciò potrebbe essere fatto, hanno creduto, collaborando apertamente e continuamente con il cliente. La comunicazione contribuirebbe a garantire che il lavoro svolto produrrebbe effettivamente valore commerciale e consentirebbe il feedback da parte del cliente.
Oltre ai valori chiave, il Manifesto Agile include anche diversi principi chiave che hanno rafforzato la convinzione che il coinvolgimento del cliente è precoce e spesso fornisce migliori applicazioni software complessive. Creando un processo software iterativo, il cliente ha la possibilità di modificare il prodotto finale consentendo modifiche ai requisiti. La percezione dell'applicazione è migliore perché un sistema funzionante è una misura primaria dei progressi compiuti sul sistema.