L’importanza di fare Sprint Demo

Perché fare demo del lavoro svolto nello sprint?
Si possono saltare? Meglio di no.
E’ importante tenerle con continuità per più motivi.

Descriviamo una situazione tipica…
Il vostro team fa Scrum, comincia ad avere una discreta conoscenza della metodologia ed è abbastanza rigoroso nell’esecuzione delle cerimonie.

Quindi si fa il planning, le review e le retrospective, ma – chissà perché – c’è una certa ritrosia nel fare demo aperte a tutti.
E magari vi ritrovate al penultimo giorno dell’iterazione con qualcuno che chiede: “ma dobbiamo proprio farla la demo?”.
Sì, assolutamente sì!
Non a caso la Sprint Review si chiama anche Sprint Demo…

Non è una questione di controllo (“vediamo cosa avete fatto in tutto questo tempo!”), di principio (“dobbiamo farla perché in Scrum si fa”) o di forma (“facciamo la demo così lo Scrum Master è contento”)…
Dal mio punto di vista è proprio un tema di sostanza.
Perché una review con una vera e propria demo estesa a tutti i potenziali interessati è, rispetto ad altre cerimonie, la migliore occasione che il team ha per interagire realmente con gli stakeholder e con tutti coloro che hanno una visione parziale del progetto.

Durante la demo viene illustrato l’incremento di prodotto realizzato nel corso dello sprint.
La finalità non è dimostrare agli altri quanto è stato bravo il team o esporlo al pubblico biasimo se non ha portato a termine tutto quello che era stato programmato.
Oltre all’accettazione formale delle storie da parte del Produt Owner, ci confrontiamo con il resto dell’azienda per ottenere dei feedback e far emergere aspettative che sino a quel momento non hanno avuto voce.

La finalità della demo è triplice: verificare cosa va bene, capire cosa eventualmente non va bene e capitalizzare idee.
Non accoglieremo necessariamente tutto quanto emerge dalla platea, ma avremo raccolto un piccolo patrimonio di osservazioni che potranno rivelarsi preziose nel seguito del progetto.
In alcuni casi la demo consente di portare alla luce effetti collaterali che non avevamo preso in considerazione o di cui non avevamo valutato a pieno la portata.

Mi è capitato proprio di recente.
Il team porta a termine un’iterazione e completa una user story con un elevato valore di business nell’arco delle canoniche due settimane.
Il manangement è interessato a rilasciare la funzionalità il prima possibile.
Nel corso della demo emerge che gli sviluppatori hanno trovato una soluzione semplice ed efficace per l’implementazione, ma questa scelta produce conseguenze inattese sulle altre properties. Qualcosa si è perso nella comunicazione tra il Product Owner ed il team. Nulla di grave. Può succedere e c’è sempre un modo per porvi rimedio.
Si decide di rimandare il rilascio di un’iterazione, il tempo utile per realizzare un piccolo incremento di prodotto e garantire la massima flessibilità a tutti gli altri gruppi di sviluppo.

Senza la demo questo problema non sarebbe emerso.
Avremmo rischiato di scoprirne le conseguenze solo in produzione. Avere tutti gli interlocutori seduti al medesimo tavolo ci ha consentito di intercettare per tempo la criticità e trovare la risposta più adeguata.

Inspect and adapt in ogni fase.

La comunicazione, la trasparenza e l’esporre il lavoro svolto sono passi fondamentali quando si intende perseguire un miglioramento continuo.

Dalla vision al Backlog con la Vision Board

Come si procede dalla vision iniziale alla formulazione delle singole user stories?
Quali sono i passi da seguire?

Venerdì 14 marzo si è tenuto al Politecnico di Milano una conferenza dal titolo “Agile for Innovation” aperta da uno speech di Roman Pichler sulla strategia agile di prodotto.

Il primo consiglio di Pichler è di non saltare subito all’esecuzione, bensì dedicare tempo alla formulazione di una strategia, a definire il percorso verso gli obiettivi prefissati.
Abbiamo una vision, una “big picture”, un’idea sfidante che è la nostra meta.
A questo punto è importante rispondere ad alcune domande fondamentali per elaborare la strategia: chi, perché, cosa, qual è il risultato atteso?

Proviamo a chiederci:

Chi sono gli utenti?
Ma anche chi sono i clienti, ovvero coloro che pagheranno per il nostro prodotto (non è detto che chi paga coincida sempre con l’utilizzatore finale…).

Per quale motivo potrebbero essere interessati ad usare il  prodotto? 

Perché dovrebbero comprarlo?

Che cosa rende unico il prodotto? 

Esploriamo la value proposition….
Quali sono le sue caratteristiche chiave?
E’ importante rimanere ad alto livello in questa fase; definiamo 3 key features, massimo 5.

Quali sono gli obiettivi di business? 

Per quale motivo dovremmo investire in questo progetto i nostri soldi invece che in altro?

Per guidarci nella risposta a questi quesiti Pichler ha elaborato un tool semplice e potente che può essere applicato in svariati ambiti:
la Vision Board.

E’ un foglio A4 che contiene una tabella divisa in 5 aree:
– la vision
– il target
– i bisogni che il prodotto soddisfa
– le caratteristiche chiave del prodotto
– gli obiettivi di business

Una volta che la strategia è delineata siamo pronti a partire?
Non ancora!
La vision board traduce l’idea iniziale in una strategia, ma prima di arrivare al backlog e alle singole user stories è opportuno prevedere una fase di test.
La strategia contiene indubbiamente delle ipotesi.
Fate un esame di quali sono le principali assunzioni che avete fatto ed elencate i possibili rischi. Metteteli in ordine di priorità (per esempio in base alla gravità dell’effetto che possono produrre) e procedete con interviste ad utenti e clienti.

Il vero lavoro è questo: non implementare il prodotto, ma testarne il prima possibile le idee e le assunzioni (un punto di vista molto simile a quello di Eric Ries…).
In questo modo la strategia non è scolpita per sempre nella pietra, ma emerge e si arricchisce in base ai feedback degli utenti.

… e se proprio doveste accorgervi di essere fuori strada, potete sempre cambiare rotta o abortire del tutto il progetto con perdite assai contenute (comunque ben prima della fase più costosa, lo sviluppo!)

Il potere di dire no

Quando un Product Owner può definirsi veramente tale?

Pichler sostiene ci sia un test semplicissimo per capire se una persona sta ricoprendo davvero il ruolo di Product Owner.
Basta porre la fatidica domanda “Hai il diritto di dire no?

Quando dire NO
Ci troviamo a dire no in tante diverse situazioni.
Non si tratta di un’attitudine negativa nei confronti del mondo o del lavoro da fare. 
Ci sono occasioni in cui i no fanno la differenza tra il successo ed il fallimento di un progetto.

Diciamo no quando una richiesta non è allineata con gli obiettivi che stiamo perseguendo, diciamo no quando un desiderata non porta reale beneficio all’utente o quando il valore di una richiesta non è in alcun modo misurabile o testabile.

Diciamo no quando i desiderata vengono dalla pancia ma non sono argomentati né analizzati alla luce di dati reali.

Soprattutto diciamo no quando ciò che ci viene richiesto non è indispensabile per l’esito positivo del progetto. Perché tutti noi combattiamo con risorse scarse (siano esse tempi, costi o persone) ed il nostro primo pensiero è rimanere focalizzati su ciò che è davvero essenziale per la riuscita di un prodotto o un servizio escludendo ciò che è “rumore di fondo”.
Più funzionalità difficilmente sono sinonimo di prodotto migliore, se mai più complesso…

Dire NO è un esercizio difficile
Diciamocelo: il Product Owner non è un mestiere per cuori teneri o per persone alla ricerca di conferme…
Non è mai bello dire di no e “fare la parte del cattivo”, ma se non siamo in grado di farlo perché per indole vogliamo compiacere i nostri interlocutori questo ruolo non fa per noi.

Ovviamente riuscire a dire no nel modo giusto richiede pratica e dedizione. C’è modo e modo di farlo!
Dobbiamo riuscire a far comprendere che l’accettazione o il rifiuto di un desiderata non è mai una questione personale, bensì una scelta ragionata per la soddisfazione dei nostri utenti.
Siamo disponibili ad ascoltare tutte le richieste, ne analizziamo la portata e il contesto però quando si rivelano incoerenti con la strategia o la roadmap gentilmente e con fermezza diciamo no argomentandone le motivazioni.

Quando dire NO è ancora più complicato
Come si suol dire “qui casca l’asino”…
Diciamo che avete raggiunto un buon grado di confidenza nel vestire i panni del Product Owner ed avete instaurato un rapporto di fiducia con il team e lo Scrum Master.
Avete anche gentilmente rimandato al mittente alcune richieste minori provenienti dagli utenti o da colleghi della vostra stessa azienda.
Che succede però quando le richieste arrivano dall’alto?
Siete in grado di dire no anche all’amministratore delegato? Al direttore vendite? In generale a tutti quegli stakeholder che potrebbero influire sulla qualità della vostra vita professionale?

Anche in questo caso se il desiderata è campato in aria, non ha alcuna attinenza con quanto state facendo o pensate possa essere addirittura controproducente dovreste dire no.
Più facile a dirsi che a farsi, lo so.
Ma vi invito quantomeno a non arrendervi a priori. Chiedete, fate domande e argomentate la vostra posizione. Potreste scoprire di non avere elementi validi per ribattere o di non avere tutte le informazioni chiave per prendere una decisione… oppure potreste fare breccia nelle idee del capo grazie ai vostri dati alla mano.
In ogni caso vale la pena tentare e ritentare.

Quando manca la delega
Infine, un punto dolente in molte realtà lavorative (quantomeno – nella mia modestissima esperienza – in quelle italiane).
C’è una situazione peggiore rispetto a quella di non sapere o non potere dire no.
E’ quando il no o il sì del Product Owner contano poco nulla.
Se non c’è sponsorship da parte del management, se le decisioni del PO vengono regolarmente contraddette da persone “più alte in grado”, se non vengono condivise le informazioni utili per decidere, se non si ha insomma “licenza di uccidere” (si fa per dire…), non ci sono le condizioni di contesto che consentono di fare veramente Scrum.

Non c’è niente di peggio di un Product Owner ridotto a fare il portavoce o il segretario. Non serve al team, non serve al cliente finale e – di fatto – neanche a se stesso.
Anche in questo caso è meglio portare alla luce con i propri interlocutori il tema della fiducia e della mancata delega per provare a capire quali azioni correttive possono essere messe in campo.

In sintesi…
E’ importante che il Product Owner abbia la libertà ed il diritto di dire dei no motivati al cliente finale, al cliente interno e al proprio management.
Senza questo potere non è posto nelle condizioni di fare al meglio il suo lavoro e di selezionare con cura ciò che è di maggior valore per gli utenti eliminando tutto ciò che è spreco.