Quali sono i pilastri e le cerimonie di Scrum?

i pilastri e le cerimonie

I tre pilastri di Scrum

I tre pilastri di Scrum si basano sul processo di controllo empirico, e sono:
  • Trasparenza
  • Ispezione
  • Adattamento
Trasparenza. Scrum non prevede sorprese. Tutti gli stakeholder hanno una visione aggiornata su tutti gli aspetti del progetto. Gli stakeholder coinvolti:
  • aggiornano costantemente la business vision;
  • condividono lo stato di avanzamento del lavoro;
  • forniscono il supporto utile alla creazione di valore;
  • collaborano alla rimozione di ostacoli e impedimenti.
Necessità, adattamenti e criticità sono affrontate nel momento stesso in cui si manifestano, perché tutti hanno completa visibilità su tutto. L’ispezione è in altre parole il momento del feedback. Le cerimonie Scrum garantiscono una forma di monitoraggio e controllo. L'ispezione periodica e frequente, aiuta a far emergere le diverse criticità. Che possono riguardare aspetti tecnici, interpretazioni errate o miglioramenti di pratiche che non stanno portando i risultati sperati. Adattamento. A differenza degli approcci predittivi, che correttamente limitano la quantità di modifiche, gli approcci agili abbracciano il cambiamento. Sono pensati per adattare il progetto ai cambiamenti. L'acquisizione di nuove informazioni lungo il progetto, rende necessaria l'integrazione di modifiche, al fine di massimizzare il valore restituito al business.

Lo Sprint e le sue cerimonie

Gli Sprint sono il cuore di Scrum, ovvero le iterazioni che consentono l’attuazione, lo sviluppo e l’evoluzione di un prodotto. Lo Sprint è un periodo temporale predeterminato (che può durare da due a quattro settimane), al termine del quale vengono resi noti i progressi del progetto. Al termine dello Sprint si presenta il risultato del lavoro, ovvero un prodotto potenzialmente rilasciabile e utilizzabile (Potentially Shippable Product). Il risultato di uno sprint può anche essere considerato una sorta di "evoluzione del prodotto". Alcuni degli obiettivi di uno Sprint sono:
  • produrre costantemente valore
  • effettuare rilasci frequenti
  • intervenire con miglioramenti laddove necessario.
Per ogni Sprint lo Scrum Team definisce uno Sprint Goal. Lo Sprint Goal è un obiettivo ben preciso che deve portare valore e far avanzare il progetto in maniera costante. Il Framework Scrum è composto da 4 cerimonie:
  • Sprint Planning Meeting: è l’incontro di apertura di uno Sprint dove vengono chiariti i requisiti più importanti nonché l’obiettivo, lo Sprint Goal.
  • Daily Scrum Meeting: è un incontro giornaliero, che dura al massimo 15 minuti. Il team aggiorna e pianifica il lavoro da svolgere nella giornata lavorativa.
  • Sprint Review Meeting: è un incontro durante il quale il team presenta i risultati dello Sprint. I risultati vengono approvati o rifiutati e si collabora per definire i prossimi passi.
  • Sprint Retrospective: è l'incontro che chiude lo Sprint. Il team riflette su ciò che è andato bene e sui miglioramenti che si possono apportare nel prossimo Sprint. L’obiettivo è quello di ridurre i rischi e massimizzare i risultati finali. Durante lo Sprint Retrospective il Team si pone le seguenti domande:
  • Come sta procedendo il progetto fino a questo momento?
  • Quali sono le modifiche che possiamo apportare per migliorare i risultati?
  • Cosa sta funzionando e cosa invece si può eliminare?

Esistono contratti Agili? Quali sono i rischi?

Contratti Agili
Businessman pressing contract on a digital screen, concept about agreement in business

La situazione sui contratti Agili

Il Framework Scrum si sta rapidamente diffondendo nei reparti di sviluppo software delle aziende italiane. Spesso le aziende si rivolgono all'esterno per lo sviluppo del software, per questo motivo in aula mi viene posta sempre la stessa domanda: Esistono contratti Agili?

Ad oggi, in Italia, non sembrano esistere ancora dei modelli contrattuali Agili legalmente riconosciuti. È possibile fornire informazioni sui contratti Agili in generale, ma non supportati da un parere legale.

In Italia, al momento, possiamo  utilizzare tipologie contrattuali che possono essere adattate ad un contesto Agile.

L’assenza di modelli contrattuali Agili può essere un ostacolo è un problema che alcune aziende stanno affrontando in questo momento. Molte vorrebbero affidare esternamente lo sviluppo del software, potendo così beneficiare di processi Agili per la creazione rapida di valore.

Tipologie di contratti internazionali e soluzioni nazionali

All'estero sono già presenti forme contrattuali specifiche per progetti che adottano processi Agili.

Tra le prime organizzazione che hanno sviluppato modelli contrattuali agili è possibile trovare l'Agile Business Consortium. Questo il link per scaricare il modello: Agile Project Framework Contract Template. Ovviamente per utilizzarlo in Italia, oltre alla traduzione, è necessario un adattamento attraverso una consulenza legale.

Esistono anche altri modelli contrattuali di riferimento:

Per ora questi contratti possono essere utili come fonte di ispirazione per adattare contratti legalmente riconosciuti.

Nell'attuale contesto italiano i contratti che meglio possono adattarsi al framework Scrum, e in generale ad Agile, sono il Time & Material e il contratto a rimborso. Nei contratti può essere determinato un tetto massimo di costo, la durata del progetto e la durata di uno Sprint senza necessità di determinare nel dettaglio l’ambito del lavoro. Lo Sprint avrà così sempre lo stesso costo. Sarà necessario porre particolare attenzione al valore che si intende produrre in ogni Sprint, per evitare di spendere più del valore che si otterrà in cambio.

Cosa rende critico un contratto Agile?

L'aspetto considerato critico in un contratto Agile è la potenziale completa assenza di un ambito dettagliato. Oggi è frequente la possibilità che un progetto venga avviato a partire da un’idea e bisogno non ancora tradotti in requisiti tecnici e funzionali.

Una delle caratteristiche del progetto, infatti, potrebbe proprio essere quella di esplorare e apprendere qualcosa di nuovo. I processi e le pratiche Agili sono particolarmente efficaci in progetti complessi. Il modello Agile prevede che a fronte di un ambito poco o per nulla definito, si fissino due variabili : il tempo e il costo. Allo scadere del tempo e del budget, si restituisce ciò che è stato realizzato fino a quel determinato momento. Vi sembra folle? Non lo è, vediamo perché.

Alcune ricerche hanno messo in evidenza che il numero di funzionalità utilizzate da un utente in un prodotto è nettamente inferiore rispetto al loro numero totale. Semplificando potremmo dire che: il 20% delle funzionalità di un prodotto costituisce l'80% del suo valore.

Quindi possiamo affermare che: il costo di ciò che è stato prodotto, è sicuramente minore del valore creato in termini di business (profitti e/o riduzione dei costi).

Pertanto in un progetto non è necessario realizzare tutto, ma tutto ciò che ha valore.

Oggi è ancora particolarmente difficile trovare aziende disposte a fare un contratto su un ambito poco definito.

Ad esempio, cliente e fornitore si accordano per un valore economico e temporale fisso, a fronte di un ambito poco chiaro. In caso di contestazioni su cosa ci possiamo basare?

La trasparenza e la frequente comunicazione tra le parti diventano un elemento centrale per sviluppare fiducia nella collaborazione. Citando il terzo valore dell'Agile Manifesto: "La collaborazione col cliente più che la negoziazione dei contratti". Questo aspetto, a mio parere, non credo sia un elemento gradito ad un ufficio legale e non solo.

Vuoi saperne di più? Inviami le tue domande, ti risponderò nei prossimi articoli.

Cos’è il Framework Scrum? Come funziona?

Scrum
Scrum è un termine mutuato dal rugby.

Che cos'è Scrum e perché si chiama così?

Scrum è il più diffuso tra gli approcci Agili di Project Management, è un  Framework presentato per la prima volta nel 1995, che è stato creato per semplificare la gestione di progetti complessi ed innovativi. Scrum, parola inglese che letteralmente vuol dire “mischia”, è un termine mutuato dal rugby, sport dove tutti i giocatori formano un unico gruppo che spinge e fa forza per raggiungere un obiettivo comune.
Così come nel Rugby, l’obiettivo di Scrum è proprio quello di far convergere le forze di tutti i membri del team per “spingere” in un’unica direzione, affinché siano sempre coesi per raggiungere il risultato finale, produrre il massimo valore e ridurre al minimo i rischi e le perdite.

Questo vuol dire che i membri del Team lavorano per convergere su idee comuni ed essere sempre d'accordo sulle azioni da svolgere nel breve termine.
Il Framework Scrum crea le condizioni affinché le persone si sentano coinvolte nel progetto e lavorino in modo coeso durante tutte le fasi, comunicando tra loro e avendo sempre a mente l’obiettivo finale. La coesione e la comunicazione riducono al minimo l’inefficienza e le pratiche sbagliate.

Lavorare in un team spesso vuol dire far fronte quotidianamente a tante idee e tante proposte diverse, e quando si deve portare avanti un progetto ognuno ha il suo modo di vedere le cose. Gestire un progetto vuol dire raggiungere gli obiettivi attraverso uno o più risultati, e soddisfare le diverse aspettative degli stakeholder spesso non allineate fra loro. Questo, nel Project Management può portare all'insorgere di conflitti, ad un aumento dei costi, a ritardi nella consegna e a volte anche al fallimento del progetto stesso, perché ognuno segue una direzione diversa e alla fine ci si dimentica dell'obiettivo finale. Scrum aiuta a ridurre questi rischi.

Scrum non è una metodologia, è un framework

Scrum è un framework, non è una metodologia. Ma qual è la differenza tra Scrum è una metodologia classica?
Quando parliamo di metodologia ci riferiamo a un qualcosa di predefinito e strutturato, e soprattutto definitivo, che va seguito alla lettera e non prevede modifiche. Il framework è stato creato con l’idea di fornire un processo e dei ruoli ben definiti pur lasciando completa libertà alle persone di modificare gli strumenti in base all'obiettivo e alle tecniche che funzionano di più. Per questo motivo Scrum si può definire un framework aperto, senza strumenti o pratiche predefinite, a differenza delle metodologie tradizionali che sono pensate per progetti predittivi e sono ben definite e strutturate, ma soprattutto più rigide.

Vuoi saperne di più? Inviami le tue domande, ti risponderò nei prossimi articoli.