Sono passati oltre 40 anni dall'ideazione del TPS (Toyota Production System), precursore della metodologia LEAN.
Sebbene inizialmente si applicasse soprattutto in ambito industriale, a causa del progressivo aumento della complessità del software, la metodologia AGILE ha fatto il suo ingresso in ambito digitale nel 2001 con la pubblicazione del "Manifesto per lo sviluppo agile del software" (Kent Beck, Robert C. Martin, Martin Fowler) ed ha ottenuto una più larga diffusione a partire dal 2003 grazie alla pubblicazione del libro "Lean Software Development" (coniugi Poppendieck).
Negli ultimi anni, l'aumento della complessità del software si è estesa anche ai siti web (che oggi ci piace chiamare "piattaforme"), che hanno quindi beneficiato dell'introduzione delle metodologie agili.
Troppo spesso capita di sentire di siti web che non funzionano come dovrebbero, che non hanno le features richieste, che gli utenti fanno fatica ad utilizzare.
È sempre colpa degli sviluppatori? Dell'agenzia di consulenza?
Il problema, quasi sempre, deriva da un difetto di comunicazione tra chi esegue il lavoro, chi lo supervisiona e chi lo commissiona. In particolare, dal fatto che chi ha le conoscenze di marketing non ritiene necessario avere le competenze tecniche (e viceversa).
Chiariamo una cosa: la conoscenza tecnica è fondamentale per chiunque debba decidere! La conoscenza degli strumenti moltiplica in modo esponenziale le opzioni del marketing e permette la nascita di progetti innovativi e di successo.
Quindi, bisogna diventare programmatori?
No, esattamente come non si diventa meccanici per acquistare un'auto nuova. L'importante è informarsi, specialmente quando si parla di siti web, che potrebbero produrre danni economici e d'immagine ben superiori all'acquisto dell'auto sbagliata.
Tralasciamo i soliti elenchi di principi e riprendiamo due dei motivi per i quali queste metodologie sono nate:
Parleremo in un altro articolo di come approcciarsi agli sviluppatori, per il momento fissiamo alcuni punti utili.
Bisogna essere chiari e precisi nello specificare gli obiettivi, ma anche il modo in cui devono essere raggiunti.
Quando si lascia spazio all'interpretazione, la problematica deve essere risolta da chi non dovrebbe occuparsene, con quattro principali conseguenze:
Quando si introducono troppe innovazioni, comincia ad essere difficile individuare cosa funziona e cosa no. Nella metodologia AGILE questo problema viene risolto attraverso lo sviluppo di un MVP e le "iterazioni brevi".
Un MVP (Minimum Viable Product) è il minimo stadio di sviluppo per cui il prodotto può essere testato o introdotto sul mercato.
Rilasciare un MVP permette di ridurre al minimo i tempi e i costi iniziali.
Dal rilascio del MVP si può procedere ad inserire migliorie e innovazioni, una alla volta, rilasciando e misurando il feedback.
In particolar modo, iterazioni brevi e ben definite evitano le modifiche in corso d'opera, che sono spesso la principale causa dell'aumento dei costi e dei ritardi.
Basarsi sui dati è fondamentale!
A volte è difficile distinguere un luogo comune o un'impressione da un fatto oggettivo. Si tende a pensare che un'affermazione sia talmente ovvia da essere corretta, ma questo approccio nasconde delle insidie.
Molto spesso sono le affermazioni scontate che creano i maggiori problemi e a volte comportano addirittura il fallimento dell'intero progetto.
Come distinguere un'opinione da un fatto?
Abituatevi ad analizzare ogni affermazione, anche la più banale, chiedendovi se esistono dati che la confermino. Se non esistono raccoglieteli!
In un sito web sono moltissimi i dati che si possono raccogliere, è importante impostare un piano di misurazione in maniera corretta, in linea con gli obiettivi di business.
Per chi volesse approfondire, Gennaro Polito ha scritto due ottimi articoli:
Quando ci si approccia ad una metodologia agile, è importante assicurarsi che il software disponga di un'ottima capacità di modularità.
Parleremo più avanti ad esempio della differenza tra un Framework e un CMS, per il momento è sufficiente sapere che di solito i primi hanno una modularità estremamente più elevata, ma la loro implementazione è più costosa.
Un basso grado di modularità è sempre sconsigliabile, in quanto ad ogni cambiamento è necessario riscrivere molto più codice del necessario.
Il costo di un software non è fatto solo dal primo rilascio, ma anche dalla somma di tutti i costi delle successive modifiche, implementazioni e manutenzioni.
Alcune delle cose a cui fare attenzione (chiedete al vostro "meccanico di fiducia dei siti web"):
Alla base di ogni successo si trovano ottima conoscenza e perfetta esecuzione. Le metodologie agili aiutano a concentrare gli sforzi sull'acquisizione della conoscenza (attraverso i dati), sulla corretta esecuzione (attraverso le iterazioni) e sulla sinergia dei team coinvolti.
Ogni digital manager dovrebbe essere consapevole di essere parte dell'intero processo di sviluppo. Il mondo è cambiato, voi a che punto siete?