Cerca
  • Alessandro Fantini

Metodologia Agile, che vuol dire?

Rispondere in modo adeguato ai cambiamenti, senza venirne travolti, sfruttandoli come vantaggio competitivo.



Quando è nato il metodo Agile?


Tutto ha inizio nel 2001 quando un gruppo di sviluppatori, ha deciso di riunirsi alla ricerca di una soluzione progettuale per far fronte all'avanzare veloce e inarrestabile della New Economy anche detta Net Economy.


Siamo nel pieno sviluppo dell'industria moderna dei software, il digitale ed il web stanno costruendo i nuovi asset economici a livello globale, l'economia si sta evolvendo da "statica" a "dinamica".

Nascono sempre più aziende legate al commercio elettronico; sono gli anni di Google, Amazon, Yahoo, il mercato sta ampliando i suoi orizzonti e con essi il suo modo di interagire con i suoi potenziali clienti.


Tutto quello che fino a quel giorno era di ordinaria programmazione nello sviluppo a desempio di un software, in questo nuovo scenario dominato da costanti mutamenti socio economici non trova più la sua collocazione.



Hai mai sentito parlare del Metodo a Cascata (Waterfall Metodology)?

In questa metodologia, all'inizio del progetto si definisce una lista precisa ed ordinata delle funzionalità che il software deve avere, queste premesse sono basate su un'analisi anch'essa precedente la fase di sviluppo.

Su questa lista vengono basate anche caratteristiche tecniche, tempi di lavorazione e costi.



Il problema del Waterfall


Questo approccio a cascata, funziona solo quando si lavora in un contesto a basso livello di cambiamento e di innovazione.

Se durante lo sviluppo, il contesto evolve, ad esempio: i modelli di business, le normative di mercato, sicuramente anche il software/prodotto sarà obsoleto, non rispondendo più a determinate domande/requisiti di mercato.


Ora allarghiamo questa visione a tutti i settori che necessitano di una pianificazione aziendale e strategica: una delle varianti prevedibili è l'avanzamento della tecnologica, e poi ci sono tutte quelle variabili totalmente imprevedibili, che possono in un attimo sconvolgere il tuo mercato ed il tuo business; pensiamo ad una crisi economica o climatica, ad un cambiamento socio-politico, queste variabili sono in grado di cambiare totalmente le carte in tavola e stravolgere la tua azienda.


Oggi è sotto gli occhi di tutti, lo stiamo vivendo in ogni ambito, la pandemia da Covid 19, ha cambiato le regole del mercato tirando una grande linea di divisione tra le aziende che sono in grado di rispondere alla nuova domanda e quelle rimaste indientro nell'innovazione.


Un ulteriore problema del Metodo a Cascata è nel valore prodotto.

La qualità viene definita in corrispondenza dei requisiti iniziali, senza considerare il valore che quel prodotto porta nel contesto per il quale è stato creato.

Il software funziona benissimo, ma ora è totalmente inutile. È già obsoleto.


Ogni più piccola variazione, nello sviluppo a Cascata, può recare un danno.

I mutamenti sia di mercato che organizzativi interni all'azienda sono dei veri e propri bastoni tra le ruote.


Ed ecco perchè nasce l'approccio Agile


Torniamo al 2001 ed ai nostri programmatori riuniti con un unico scopo in mente: risolvere questo gap generazionale. In quei giorni di fervido brainstorming ed analisi di mercato, fu creato un manifesto chiamato appunto Manifesto della Metodologia Agile , che potete vedere cliccando sul nome, e che riporto di seguito:


I principi sui quali il metodo Agile si basa sono:


1. Lo sviluppo iterativo.


2. Il rilascio incrementale.


3. La possibilità di cambiamento in corso d'opera.


In quest'ottica di innovazione è possibile:


- Mettere il cliente/stakeolder come parte attiva nel processo.

- Reindirizzare il progetto in base all'obiettivo.

- Ridurre tempi e costi.

- Sperimentare e raccogliere feedback fin dalla prima fase di sviluppo.

- Essere flessibbili nel modificare evitando ritardi.

- Ridurre al minimo la possibilità di errori dopo la consegna.





Intorno al Manifesto della Metodologia Agile, si sono sviluppati negli anni diversi framework basati sull'applicazione pratica di questi principi.


Il framework SCRUM è tra i più famosi grazie alla sua comprovata agilità ed alla sua perfetta integrazione con il Design Thinking.



Che cos'è SCRUM?

La parola SCRUM deriva da un termine usato nel gioco del rugby, significa "mischia", ovvero quel momento in cui tutti i giocatori sono concentrati su un unico obiettivo: portare la palla alla meta.





Una metafora che esprime in pieno il lavoro del Team in chiave olistica, dove l'obiettivo viene perseguito tutti insieme durante l'intera fase di sviluppo.


Scrum è un processo che fa parte del metodo AGILE il cui obiettivo è quello di ottenere il massimo valore nel minor tempo.


Si basa su quelli che vengono chiamati SPRINT, cioè, degli sforzi mirati al raggiungimento di determinati obiettivi.

Solitamente ogni Sprint ha una durata, massimo di 30 giorni, alla fine dei quali il Team di sviluppo è in grado di sottoporre al cliente un valore ed una funzionalità immediata.


È un framework, basato sul controllo empirico dei processi, secondo cui, da un lato la conoscenza deriva dall'esperienza e, dall'altro, le decisioni si basano su ciò che si conosce. Per questo motivo parliamo di processo iterativo con un approccio incrementale che ottimizza Sprint dopo Sprint la prevedibilità ed il controllo del rischio.


Oggi per rispondere al mercato, bisogna seguire una metodologia che CREI VALORE IMMEDIATO, non solo al termine dello sviluppo.



Scrum Agile method
Scrum Process

Il metodo SCRUM si basa su tre principi:

  • trasparenza

  • ispezione

  • adattamento

Si raccolgono tutte le informazioni, si dividono, si pianificano e si organizzano gli Sprint di azione.


I ruoli principali


1. Product Owner

Rappresenta il cliente o gli stakeholders, conosce tutti i requisiti del prodotto, ha come scopo quello di massimizzare il valore del prodotto e del lavoro svolto dal Team di sviluppo:

  • Definisce le caratteristiche.

  • Decide le tempistiche.

  • Per ogni Sprint rivede caratteristiche e priorità.

  • Accetta o rifiuta i risultati ottenuti.


2. Scrum Master

Ha la responsabilità di coordinare e facilitare le attività e l'esecuzione del processo eliminando gli ostacoli.

È una figura chiave in quanto lavora come un coach e problem solver.


Ogni giorno si incontra brevemente con il team (Daily Scrum).

E alla fine di ogni Sprint, tiene una riunione di valutazione con il team (Sprint Retrospective) per discutere dei progressi e trarne le conclusioni.


Il suo compito è quello di aiutare ed aumentre il livello di conoscenza del team e accrescere la motivazione interne.


3. Team Scrum = Team cross-funzionale

È formato da non più di 9 elementi.

Hanno completa autonomia su organizzazione e mansioni distribuite.

Non ci sono ruoli fissi, ogni membro deve essere in grado di scambiare le task con un altro membro, è un lavoro tra esperti e come tali devono avere capacità alla pari. Hanno la responsabilità di organizzare le priorità in task da completare per portare a termine quel determinato Sprint.


La fasi principali che compongono lo Scrum:


Backlog Item:

In questa prima fase, il Product Owner compila una lista denominata Product Backlog che comprende tutte i requisiti necessari per la realizzazione del progetto: correzioni, nuove implementazioni, migliorie, ecc.

È responsabile del suo contenuto, dei suoi elementi basati sulle rispettive priorità di svolgimento


Fissati gli obiettivi, il Backlog viene suddiviso in Sprint in scala di priorità, ogni Sprint dovrà creare un valore aggiuntivo di business ed identificare una nuova funzionalità concordata dal Team Scrum per garantire un prodotto utilizzabile.


Gli eventi:


Lo Sprint planning:

Ogni Sprint ha una durata massima di 30 giorni.

Il Product Owner presenta al Team Scrum e allo Scrum Master il Product Backlog, descrivendono gli item più importanti e l'obiettivo da raggiungere nello Sprint successivo.

Al termine della riunione lo Scrum Master compila lo Sprint Backlog.


Daily Scrum:

È un appuntamento fisso, ogni giorno alla stessa ora lo Scrum Master ed il Team si incontrano per massimo 20minuti. In questa riunione l'obiettivo è quello di eliminare ogni possibile ostacolo che potrebbe rallentare il lavoro.

  • Che cosa hai fatto dall’ultima riunione?

  • Che cosa farai adesso fino alla prossima riunione?

  • C’è qualcosa che ti impedisce di fare quello che hai pianificato?

Tre semplici domande aiutano i partecipanti ad avere una visione generale ed allo stesso tempo dettagliata di come stia procedendo, elimando eventuali problemi sorti in fase precedente e che potrebbero deficitare la fase successiva.


Finished Work:


Ogni Sprint finisce con una dimostrazione, durante la quale sono presenti i committenti il management aziendale e tutto il team. Viene presentato il progetto con una finalità, creare un punto di partenza per lo Sprint successivo.


Sprint Review

Una riunione a fine Sprint per valutare se l'obiettivo prefissato è stato raggiunto e con quali risultati. Partecipano il Team Scrum, il Master Scrum e il committente che vedrà il lavoro svolto fino a quello Sprint.


Sprint Retrospective

Un analisi retrospettiva dove partecipa il Master Scrum e il Team Scrum, serve a valutare cosa continuare a fare e cosa smettere di fare, cosa migliorare per lo sprint successivo per conseguire performance ancora più efficienti.



Il valore aggiunto:

Questa metodologia interattiva e smart, permette di avere risposte immediate, generando un valore lungo tutta la fase di creazione e di sviluppo.


È una visone che porta all'ottimizzazione di ogni risolsa:


Velocità di esecuzione con una minore dispersione delle risorse, contribuisce ad una migliore relazione con il cliente ed alla sua maggior soddisfazione finale.


Responsabilizza il team, mostrando in tempo reale l'efficacia del lavoro svolto con una conseguente empowerment.


Consente al management un allineamento più semplice con il business, con pianificazioni e monitoraggi efficienti, consentendo una risoluzione immediata di eventuali problemi conferendo una panoramica chiara dello stato complessivo del progetto.

Questo porta a molteplici opportunità di correzione ed ottimizazione delle linee stragechiche.




Scegliere di cambiare approccio, abbandonando le vecchie abitudini progettuali, può rivelarsi vitale, portando dei risultati in tempi molto più ristretti, a dei costi decisamente inferiori. Il confronto interno del team ed il feedback esterno del cliente in ogni fase di sviluppo sono un'ulteriore valore che da competitività al prodotto o al servizio offerto.



Se ti va di raccontarmi e confrontarci sul tuo progetto clicca qui


26 visualizzazioni0 commenti

Post recenti

Mostra tutti