Metodologia Agile
L’approcio con il Cliente è Agile, lo sviluppo e la realizzazione del progetto è Agile, ma soprattutto la metodologia è Agile.
Per la precisione si intende un particolare metodo per lo sviluppo del software che coinvolge quanto più possibile il committente, ottenendo in tal modo una elevata reattività alle sue richieste. Esistono un certo numero di tali metodologie, tra le quali vanno citate quelle della Agile alliance, una organizzazione no-profit creata allo scopo di diffonderle.
La gran parte dei metodi agili tentano di ridurre il rischio di fallimento sviluppando il software in finestre di tempo limitate chiamate iterazioni che, in genere, durano qualche settimana. Ogni iterazione è un piccolo progetto a sé stante e deve contenere tutto ciò che è necessario per rilasciare un piccolo incremento nelle funzionalità del software: pianificazione (planning), analisi dei requisiti, progetto, implementazione, test e documentazione.
Cicli di lavoro contenuti e mai infiniti con dei tempi e termini di consegna brevi e finiti. Alla fine di ogni ciclo di lavoro, viene verificata con il Cliente l’effettiva realizzazione dello step in questione, aggiornando, se necessario, le priorità del progetto. Anche se il risultato di ogni singola iterazione non ha sufficienti funzionalità da essere considerato completo deve essere rilasciato e, nel susseguirsi delle iterazioni, deve avvicinarsi sempre di più alle richieste del Cliente fino a che il progetto risulta essere finito secondo i termini stabiliti in partenza.