Agile manifesto

Nel febbraio 2001, in una stazione sciistica in Utah, si sono riuniti 17 programmatori software di punta, fra cui i creatori di Wiki, Scrum, XP (extreme programming) e RAD (rapid application development), ed hanno stilato il Manifesto for Agile Software Development, a cui è seguita la fondazione dell’Agile Alliance.

Ecco il testo:

Stiamo scoprendo modi migliori di creare software,
sviluppandolo e aiutando gli altri a fare lo stesso.
Grazie a questa attività siamo arrivati a considerare importanti:

  • individui e interazioni più che processi e strumenti,
  • software funzionante più che documentazione esaustiva,
  • collaborazione col cliente più che negoziazione dei contratti,
  • rispondere al cambiamento più che seguire un piano.

Ovvero, fermo restando il valore delle voci a destra,
consideriamo più importanti le voci a sinistra.”

Seguono le 17 firme.

I quattro valori della programmazione agile sono diventati il fondamento dell’agile project management e della gestione agile dell’impresa. Ad essi sono  stati aggiunti 12 principi:

  1. La nostra massima priorità è soddisfare il cliente rilasciando software di valore, fin da subito e in maniera continua.
  2. Accogliamo i cambiamenti nei requisiti, anche a stadi avanzati dello sviluppo. I processi agili sfruttano il cambiamento a favore del vantaggio competitivo del cliente.
  3. Consegniamo frequentemente software funzionante, con cadenza variabile da un paio di settimane a un paio di mesi, preferendo i periodi brevi.
  4. Committenti e sviluppatori devono lavorare insieme quotidianamente per tutta la durata del progetto.
  5. Fondiamo i progetti su individui motivati. Diamo loro l’ambiente e il supporto di cui hanno bisogno e confidiamo nella loro capacità di portare il lavoro a termine.
  6. Una conversazione faccia a faccia è il modo più efficiente e più efficace per comunicare con il team ed all’interno del team.
  7. Il software funzionante è il principale metro di misura di progresso.
  8. I processi agili promuovono uno sviluppo sostenibile. Gli sponsor, gli sviluppatori e gli utenti dovrebbero essere in grado di mantenere indefinitamente un ritmo costante.
  9. La continua attenzione all’eccellenza tecnica e alla buona progettazione esaltano l’agilità.
  10. La semplicità – l’arte di massimizzare la quantità di lavoro non svolto – è essenziale.
  11. Le architetture, i requisiti e la progettazione migliori emergono da team che si auto-organizzano.
  12. A intervalli regolari il team riflette su come diventare più efficace, dopodiché regola e adatta il proprio comportamento di conseguenza.