Una volta qualcuno disse: “Il tempo scandisce la nostra vita, perciò sprecarlo è un lento suicidio”.
Il tempo è una forza intangibile e invisibile che si oppone costantemente a tutti i nostri sforzi, non riusciamo a vederla, ma ne percepiamo molto bene l’influenza che esercita su di noi. Il tempo incide su tutto ciò che facciamo: dal modo in cui lavoriamo alla durata dei processi fino ad arrivare ai successi che otteniamo. Naturalmente, valutare la bontà di un progetto prima di averlo portato a termine risulta essere un'impresa assai difficile. Spesso infatti un pessimo utilizzo del tempo a disposizione e la mancanza di feedback esterni possono portare ad un totale fallimento o ad un risultato non soddisfacente. Perciò in un progetto di business, così come nel processo di sviluppo software, imparare a gestire le tempistiche definisce la differenza tra il successo e il fallimento. Come facciamo quindi a ridurre lo spreco di tempo all'interno di un progetto?
Uno dei metodi più utilizzato si rifà al concetto di Sprint, cuore pulsante del metodo Agile e del framework Scrum, che ha come obiettivo quello di ridurre al minimo lo spreco di tempo all’interno di un progetto. Un ruolo fondamentale all'interno del metodo Agile è giocato proprio dai feedback che ci arrivano dal cliente.
Lo sprint del Metodo Agile per la realizzazione di software
Il concetto di Sprint nasce nell'ambito dello sviluppo e della consulenza software e fa riferimento alla problematica relativa ai cambiamenti continui, legati a mutamenti esterni, che influenzano un progetto digitale. Ma cosa significa applicare questo strumento?
Creare degli sprint significa suddividere il lavoro in tranche programmate, realizzabili in un breve periodo prefissato e compreso idealmente tra una e quattro settimane. Alla fine di ogni sprint l’obiettivo è realizzare qualcosa di concreto, che il cliente possa usare e toccare con mano.
Se ad esempio suddividiamo un progetto che ha come obiettivo la realizzazione di un software in sprint della durata di due settimane, l’obiettivo è quello di mostrare al cliente, alla fine di ogni sprint, un pezzo del software pienamente funzionante. Non qualcosa che funziona nella parte interna del codice o un pezzo di architettura del sistema, ma qualcosa che sia a lui accessibile, una parte del software che il cliente possa usare veramente, una caratteristica che sia pienamente implementata.
L’obiettivo dello sprint è di lavorare a tutta velocità per un breve periodo di tempo per poi fermarsi e fare il punto della situazione. All’inizio di ogni sprint i membri del team esaminano le cose che dovranno fare in quell’arco di tempo mettendole in ordine di priorità e poi si chiedono quante di quelle cose possono essere portate a termine durante le prossime due settimane.
Il processo del metodo Agile
Alla base di questo metodo di lavoro non ci sono strutture complesse o grafici articolati, l’obiettivo infatti è proprio quello di ridurre al minimo le strutture organizzative. Gli strumenti essenziali su cui si fondava il metodo Scrum ai suoi albori erano dei semplici Post-it. Ogni foglietto corrispondeva ad un task, ovvero un obiettivo che deve essere portato a termine all’interno dello sprint. Da quando questo metodo è stato ideato le cose sono un po’ cambiate e ora si usano i tool di project management che svolgono la stessa funzione, ma permettono di monitorare l'andamento dei progetti attraverso piattaforme web. Noi ad esempio utilizziamo Clickup per organizzare il lavoro e assegnare i task.
Qual è quindi l'iter di uno sprint all'interno del metodo Agile?
Semplificando al massimo il processo che caratterizza uno sprint, si può dire che questo segua tre passaggi fondamentali.
Step 1: Si prende una grande lavagna, reale o digitale che sia, si suddivide in colonne e si rende accessibile a tutti i membri di un team.
Step 2: La quantità di colonne varia molto in base alla complessità del lavoro, ma possono essere ridotte all’osso in questo modo:
Cose da fare
Lavori in corso
Cose fatte
Step 3: Nella prima colonna si inseriscono i compiti che si pensa di riuscire a completare durante lo sprint in corso. Giorno per giorno un membro del team si fa carico di uno di quei compiti e sposta il relativo foglietto nella colonna successiva. Una volta terminata l’operazione, il foglietto viene spostato nell'ultima colonna, quella dei task completati. In qualunque momento ogni membro del team può vedere su cosa stanno lavorando tutti gli altri.