Come gestite le storie dipendenti nella mischia?


9

Nell'azienda su cui lavoro attualmente, abbiamo notato che a volte alcune storie sono legate l'una all'altra (come in troppi accoppiati). Potrebbe essere che appartengano alla stessa funzionalità generale o che siano funzionalità diverse, ma ce ne sono alcune che devono essere completate per poter continuare con quelle successive, ecc.

Come gestite questi casi, senza interrompere il flusso di lavoro dell'iterazione? Stiamo facendo qualcosa di sbagliato?

Risposte:


7

Questa è un'ottima domanda La teoria afferma che le storie degli utenti dovrebbero essere indipendenti, ma non sono mai stato in grado di raggiungerlo pienamente.

A mio avviso, il più importante è comunicare la dipendenza in modo che sia il team che il proprietario del prodotto ne siano consapevoli. Ciò costringerà il proprietario del prodotto a ridefinire le storie degli utenti in modo da rimuovere la dipendenza (ad esempio unendo le storie degli utenti) o definire la priorità aziendale di conseguenza in modo che la storia dell'utente principale venga implementata per prima.

In base alla priorità e alla decisione dell'OP, le implementerai entrambe nello stesso sprint o quella dipendente verrà implementata in seguito senza alcun problema, poiché l'entità principale sarà già stata eseguita.

Il caso peggiore è se A dipende da B e B dipende da A. In tal caso le storie degli utenti sono probabilmente definite in modo errato e dovrebbero probabilmente essere riscritte in A e B (per lo più indipendenti o con una sola dipendenza) e C dipendenti da A e B.


2

Pianificali di conseguenza.

Inseriscili nello stesso sprint e poiché anche le storie degli utenti hanno la priorità in un backlog di sprint, non avrai alcun problema.

Poiché la tua squadra partecipa a questo, sono consapevoli delle dipendenze, quindi non c'è nulla di cui dovresti aver paura. Sono adulti e se li spieghi sulle dipendenze (di solito te lo spiegheranno), le cose andranno bene.

In Agile, come in Waterfall, puoi fare solo una cosa alla volta. E di solito fai A prima di B se B ha bisogno di A. Questo è buon senso.


1

Le dipendenze potrebbero essere l'odore che stai tagliando le tue storie in orizzontale anziché in verticale attraverso il sistema. Lo sviluppo di una particolare funzionalità dovrebbe comportare qualsiasi cosa, dalla modifica della progettazione del database all'interfaccia utente. Se scopri che stai spendendo tutto il tuo sforzo in una user story in un livello inferiore della struttura del sistema, come, diciamo, scrivendo routine di gestori per le ricerche nel database, allora è più probabile che tu stia creando dipendenze tra le storie. E probabilmente stai scrivendo le tue storie utente sbagliate.


1
Quindi, come gestiresti la divisione delle storie in un negozio online? Gli utenti dovrebbero essere in grado di visualizzare un elenco di prodotti. Dovrebbero essere in grado di cercare, filtrare e ordinare i prodotti. Nella mia mente, ognuna di queste azioni è abbastanza grande da giustificare la propria storia. Ma puoi implementare il tipo di prodotto prima di avere l'Elenco dei prodotti in atto ....
NSjonas

0

La soluzione migliore è quella di suddividere le storie degli utenti indipendenti in bit più piccoli che possono diventare il più indipendenti possibile. Dovresti affrontare le storie che dipendono per prime (come hai detto tu: quelle che devono essere completate per prime per continuare le altre). Crea qualcosa come un indice di dipendenza: se la storia 3 ha più dipendenze della storia 1, devi prima affrontare la storia3.

Se le tue dipendenze causano troppe interruzioni, potrebbe essere una buona idea smettere del tutto di lavorare (sì proprio nel mezzo dello sprint corrente) e rivalutare le storie utente prioritarie e affrontarle prima

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.