Agile è una metodologia di gestione dei progetti. Il metodo è strutturato in cicli chiamati Sprint, della durata variabile tra una e tre settimane. Ogni Sprint ha un proprio obiettivo e la responsabilità del progetto è condivisa da tutto il team, che decide in autonomia come organizzare il lavoro da svolgere.
La metodologia Agile come la conosciamo oggi risale al 2001, anno in cui un gruppo di sviluppatori software ne delineò i confini redigendone il Manifesto.
Nel documento si propone un nuovo approccio allo sviluppo del software descrivendo 4 aspetti prioritari:
- gli individui e le iterazioni sono più importanti dei processi e dei tool
- il software funzionante è più importante della documentazione esaustiva
- la collaborazione con il cliente è più importante della negoziazione e del contratto
- rispondere ai cambiamenti è più importante del seguire un piano
Secondo recenti ricerche, la metodologia agile ha condotto al successo il 98% delle aziende che hanno adottato i suoi principi, mentre il 60% registra un aumento dei profitti rispetto alle aziende che seguono un approccio tradizionale. Nel 15th Annual State Of Agile Report si dichiara che almeno il 95% delle organizzazioni pratica metodi di sviluppo agile.
La trasformazione digitale guidata dall’approccio agile
Messe in difficoltà dalle continue innovazioni, le organizzazioni hanno iniziato ad adottare sempre più strategie di trasformazione digitale per stare al passo con le imprese concorrenti in un settore in continua evoluzione. È in questo contesto che entra in gioco agile.
L’impulso principale all’adozione della metodologia agile è legato alla necessità di superare i limiti del metodo di gestione dei progetti a cascata, detto anche waterfall.
Abbiamo affrontato l’interessante questione della scelta tra i metodi waterfall e agile, in questo articolo:
Waterfall vs Agile: qual è l’approccio migliore?
Oggi la metodologia agile è alla base di molti flussi di lavoro digitali.
La trasformazione digitale è una sfida che richiede capacità da parte del team che possono essere così sintetizzate:
- reagire proattivamente al cambiamento
- lavorare con tecnologie complesse
- apprendere nuovi strumenti e processi
- gestire problemi di sicurezza
- adattare la tecnologia alle mutevoli esigenze del mercato
In questi contesti, agile è la soluzione perfetta, grazie al suo approccio iterativo time-boxed. In particolare, l’approccio agile permette la “frammentazione” del processo di trasformazione digitale in fasi di minore entità e quindi più facilmente gestibili. Il metodo assicura anche una migliore performance economica del progetto in termini di ritorno economico perché riduce il margine di errore (gli errori implicano uno spreco di risorse) e si riescono a centrare con maggiore efficacia le esigenze del mercato. Il risultato è lo sviluppo di prodotti (anche detti deliverable di progetto) di valore per il cliente e un miglior posizionamento competitivo.
Best practice per un approccio agile alla trasformazione digitale
Quali sono gli aspetti da considerare quando si adotta un approccio agile alla trasformazione digitale?
- Identificare lo scopo del processo di trasformazione aziendale e conoscere la value proposition
- Stimolare la collaborazione proattiva tra le varie unità, cercando input non solo dalla funzione IT ma coinvolgendo anche le altre funzioni aziendali, in un approccio di tipo cross-funzionale
- Incoraggiare gli stakeholder a condividere le proprie percezioni e preoccupazioni. La trasformazione agile è un approccio incentrato sul cliente e deve necessariamente coinvolgerlo in ogni fase del processo
Ma perché un progetto di digitalizzazione ha maggiori probabilità di successo se a condurlo è un’organizzazione agile?
Nei progetti gestiti con approccio tradizionale, i membri del team sono chiamati a svolgere le attività che gli sono state assegnate e a completarle rispettando determinati livelli di performance. Immaginate di lavorare in un contesto in cui gli obiettivi da raggiungere sono predeterminati e fissi e un qualsiasi risultati diverso da quello pianificato, non è ammesso. L’ambiente di lavoro sarà inevitabilmente intriso dalla paura di sbagliare e certamente non rilassato. L’ambiente di lavoro agile è esattamente l’opposto. Si ritiene che un ambiente di lavoro rilassato, in cui i membri del team si sentano a proprio agio, sia un elemento essenziale per spingere verso l’alto le performance delle persone.
La comunicazione. Lo stimolo a comunicare apertamente, frequentemente e senza timore è un altro punto di forza del metodo agile. Il confronto e la condivisione di opinioni, anche negative, sono sempre promossi. Non esiste il timore di esprimere la propria opinione, né il timore di eventuali ripercussioni. La comunicazione trasparente e l’apertura nell’accogliere feedback aiutano anche le aziende a superare l’innata resistenza al cambiamento, permette la crescita delle competenze del team e la ricerca di soluzioni innovative al problema: tutto ciò che serve per condurre al successo un progetto di trasformazione digitale.
La collaborazione. Nel team agile tutti sono responsabili del lavoro di tutti. Perché? Perché questo evita il disinteressamento del lavoro altrui e stimola la collaborazione. Il problema di un collega è un problema di tutti e quindi tutti si adopereranno per risolverlo; ancora una volta questo implica una soluzione più efficiente e rapida.
La fiducia. I migliori requisiti, architetture e progettazioni nascono da team auto-organizzati. Qui il punto è la fiducia alle persone perché le persone sono la vera forza motrice che porta al vantaggio competitivo.
Come riporta Gartner, le aziende si muovono due volte più velocemente nel loro percorso di trasformazione digitale una volta che il personale e la direzione sono concordi circa l’importanza del progetto.
La flessibilità. La trasformazione digitale è un processo continuo. Gli sviluppatori sanno che hanno bisogno di valutare costantemente i loro sistemi IT e di aggiornarsi man mano che le normative cambiano, o quando nuove infrastrutture appaiono sul mercato. Adottare un approccio agile significa rendere l’intera organizzazione aziendale flessibile, capace di adattarsi ai cambiamenti. Viene quindi abbandonata quella rigidità tipica della metodologia di gestione tradizionale.
L’approccio agile è la risposta a tutte le sfide che le aziende devono affrontare nel processo di digitalizzazione.
A cosa stare attenti quando si applica il metodo agile
Uno dei problemi che più frequentemente si verifica nei progetti agili è lo scope creep. La flessibilità tipica di un team agile, se da un lato consente di accogliere con favore il cambiamento, dall’altro potrebbe comportare un ampliamento (anche incontrollato) dell’ambito del progetto. Lo scope creep si verifica proprio quando le attività e i deliverable oltrepassano l’ambito di progetto prestabilito.
Come evitare questo rischio? Con la tecnica MoSCoW e il Definition of Done (DoD).
Per creare fiducia ed allineare le aspettative, è necessario stabilire una comprensione condivisa dei criteri di successo e dei compromessi accettabili. Accordarsi con il cliente sui criteri di successo del progetto e avere una visione comune è un aspetto fondamentale della gestione agile. Tuttavia, l’accordo con il cliente (agreement) non può essere solo a lungo termine. Occorre anche definire cosa vuol dire avere successo alla fine di ogni sprint, definendo chiaramente il concetto di ʺDoneʺ. Coinvolgere gli stakeholder, in particolare il cliente, nella definizione delle user story è un modo per condividere informazioni e aiuta nel processo di raccolta dei requisiti del prodotto da rilasciare.
La tecnica MoSCoW
Questo approccio prevede quattro categorie in cui ripartire le componenti da sviluppare:
- Must have. Si tratta di funzionalità assolutamente fondamentali per il progetto.
- Should have. Si tratta anche in questo caso di componenti fondamentali, ma potrebbero non essere così urgenti come le precedenti.
- Could have. Queste funzionalità sarebbero preferibili e migliorerebbero il risultato, ma non sono fondamentali. Se vi sarà tempo, si potrà prendere in considerazione la possibilità di integrarle.
- Won’t have. Queste caratteristiche non rappresentano un valore per il cliente e quindi per il progetto. Rappresenterebbero solo uno spreco di tempo, energia e budget.
Ti è piaciuto questo articolo? Scrivicelo nei commenti qui sotto!
Leggi anche: Come rendere agile un’azienda
0 commenti