In questo articolo esploriamo i risultati dell'utilizzo dello strumento di analisi delle storie degli utenti, ScopeMaster on un esempio di serie di storie degli utenti (accedi agli originali qui). Le storie da noi utilizzate sono pubblicate da Mike Cohn sul sito Mountain Goat, descrivono le funzionalità di un sito web interattivo da costruire.
Informazioni sulle storie utente di esempio
Abbiamo scelto queste storie utente di esempio poiché sono disponibili gratuitamente e sono pubblicate da un noto autore di libri sull'argomento della scrittura di storie utente di software. Sono esempi che chiunque può scaricare. (Il PDF in realtà contiene esempi per tre diversi progetti). Per questo esercizio abbiamo appena esaminato le storie dei Sito web della ScrumAlliance . Scarica il CSV con le storie degli utenti di esempio
Lo scopo dell'esercizio è esplorare ciò che ScopeMaster può rivelare su un tipico insieme di storie utente.
Preparazione
Passaggio 1. Converti il PDF in un CSV
Il documento PDF contiene un elenco puntato di storie utente. Per preparare l'elenco per l'importazione, abbiamo prima copiato ciascuna storia utente su una riga in un foglio di calcolo. Il foglio di calcolo è stato quindi salvato come CSV pronto per l'importazione in ScopeMaster. Questa è stata la parte che ha richiesto più tempo dell'intero esercizio! Fortunatamente, oggigiorno la maggior parte delle storie degli utenti sono contenute in una struttura che può essere facilmente formattata come file CSV e quindi questo passaggio in genere verrebbe evitato.
In totale ci sono 98 storie di utenti. Abbiamo colto l'occasione per generare un ID di riferimento univoco per ciascuno prima di importarli. Se lo desideri, puoi riutilizzare il CSV che abbiamo creato qui: Storie utente di esempio originali di Mountain Goat: ScrumAlliance CSV
Passaggio 2. Importa in ScopeMaster
Abbiamo quindi creato un nuovo progetto in ScopeMaster e selezionato l'opzione "importa CSV".
Raccomandiamo la separazione della parte funzionale della storia dell'utente dal testo dei vantaggi, quindi abbiamo chiesto all'importazione di ScopeMaster di farlo per noi.
Passaggio 3. Analizza tutto
Abbiamo quindi avviato l'analisi automatizzata. Semplicemente premendo il pulsante verde.
Qui è dove avviene la magia. Il motore di analisi di ScopeMaster lavora a turno su ciascuna user story, la interpreta, la analizza, la testa, la dimensiona e la confronta.
Nel giusto meno di 3 minuti, ScopeMaster ha analizzato ogni parola di tutte le 98 storie degli utenti ed eseguito quasi 112.000 test.
Risultati
Ora diamo un'occhiata a cosa ci dice ScopeMaster su queste storie di utenti.
Ogni User Story: interpretata, testata e dimensionata (se possibile)
- ScopeMaster ha esaminato ogni parola di ciascuna storia utente per determinare se è possibile stabilire un chiaro intento funzionale. È chiaro?
- Se è così, ScopeMaster ha determinato chi è il utente E Che cosa vogliono/devono raggiungere. cioè. È orientato all'utente e funzionale?
- Dall'intento funzionale sopra determinato, ScopeMaster ha stimato la dimensione funzionale nei punti funzione COSMIC degli standard ISO. Qual è la misura?
Approfondimento delle storie utente di esempio
Il diagramma del modello dei casi d'uso è stato generato dall'interpretazione di l'insieme delle storie degli utenti. Questo diagramma rivela immediatamente informazioni dettagliate su molti aspetti qualitativi dell'insieme di storie utente che semplicemente non sono visibili nei repository di requisiti come Trello, Jira e Azure DevOPs. Questo diagramma rivela la relazione logica tra le storie degli utenti. Questo diagramma ti aiuta a determinare se hai i requisiti giusti?
Dalle storie degli utenti al modello di dati
Dagli intenti funzionali determinati da ScopeMaster viene determinato un diagramma di classe suggerito di tutte le classi probabili e i loro metodi dal testo delle storie degli utenti. Ciò può aiutare gli sviluppatori a capire quali dati devono prendere in considerazione e come potrebbero essere archiviati e gestiti. Questo non è un diagramma di classi definitivo ma un punto di partenza molto utile. Questo diagramma aiuta a determinare come organizzare e strutturare i dati per soddisfare i requisiti?
Test generati direttamente dalle storie degli utenti
Determinazione della dimensione del backlog
Per tutti i team, tutti i progetti, le storie degli utenti variano in termini di dimensioni e impegno per realizzarle. Questa variabilità può essere molto elevata. ScopeMaster è stato progettato fin dall'inizio per automatizzare il dimensionamento funzionale dei requisiti software scritti. Ciò significa che è stato progettato per eliminare o ridurre il lavoro amministrativo di lettura dei requisiti per determinare una stima formale delle dimensioni funzionali del software che descrivono. La dimensione funzionale è un indicatore di grandezza indipendente dalla tecnologia e orientato all’utente. ScopeMaster stima le dimensioni funzionali nei due principali standard ISO per il software di dimensionamento, vale a dire Punti funzione COSMICA E IFPUG Punti funzione. Consigliamo il primo perché è più adatto alle moderne architetture software e gestisce meglio i requisiti incompleti. ScopeMaster stima il funzionale la dimensione di tutte le storie del tuo intero arretrato in pochi minuti, evitando al team di perdere tempo in discussioni inutili sui punti della storia o sulle taglie delle magliette.
Analisi della qualità
In poco meno di 3 minuti ScopeMaster ha identificato centinaia di problemi con le storie degli utenti.
Ambiguità
51 delle 98 storie utente avevano un significato funzionale ambiguo, che se lasciato irrisolto avrebbe portato a bug. 51 difetti identificati.
Storie utente di sicurezza di base mancanti
Non è stato menzionato l'accesso, l'autenticazione, l'autorizzazione, l'autorizzazione o il logout nelle storie degli utenti. Si tratta evidentemente di un'omissione importante. In genere ci aspettiamo che ciò richieda almeno diverse storie utente. (anche se la storia della “password dimenticata” è lì). 5 difetti identificati:
• Login
• Convalidare l'e-mail
• Cambiare la password
• Disconnettersi
• E poi con ogni storia utente sensibile al ruolo ci sarebbe bisogno di un controllo del ruolo e/o delle autorizzazioni
La serie originale di storie utente non descriveva completamente la funzionalità richiesta.
Termini incoerenti per utenti/personaggi
ScopeMaster ha identificato 26 potenziali tipi di utenti. È probabile che in realtà esistano solo 10 personaggi distinti. 16 difetti identificati.
Termini incoerenti per utenti/personaggi
Allo stesso modo ScopeMaster ha identificato 41 potenziali tipi di oggetto, mentre probabilmente ce ne sono solo circa 25-30. 16 difetti identificati.
Completezza della manutenzione dei dati (analisi CRUD)
Per ogni tipo di oggetto valido dovrebbe esserci almeno 1 funzione per ogni evento CRUD. Dopo aver eliminato i tipi di oggetto ridondanti, ciò porta a circa 80 storie utente funzionali mancanti. 80 difetti identificati.
Valori anomali di capacità
Il diagramma del modello dei casi d'uso ha rivelato ulteriori requisiti mancanti basati su ruoli/personaggi. Stimiamo almeno 1 o 2 per tipologia di utente. 10 difetti identificati
Dichiarazioni di valore
ScopeMaster ha identificato che solo 58 su 98 hanno utilizzato la frase "così che", tuttavia tutti tranne 3 includono il termine "così". 3-40 difetti identificati
NFRS
Inoltre, il rilevamento dei requisiti non funzionali di ScopeMaster ha identificato che esistono diverse categorie rilevanti di NFR che non sono state menzionate in questa serie di storie utente: accessibilità, verificabilità, osservabilità. 3 Difetti identificati
Riepilogo dei risultati di qualità
In soli 3 minuti, ScopeMaster ha identificato 211 probabili problemi (97 + 114) con queste storie utente. Dall'analisi CRUD è stato inoltre dedotto che solo la metà delle probabili user story necessarie sono effettivamente elencate. (questo insieme di esempi di storie utente potrebbe essere stato deliberatamente tagliato prima della pubblicazione).
Inoltre ScopeMaster ha generato oltre 140 scenari di test essenziali, che contribuiranno ad accelerare l'iniziativa di test funzionale, una volta creata la funzionalità.
Lo scopo di questo esercizio non era quello di criticare le storie degli utenti di esempio, ma di evidenziare il valore dell'utilizzo di ScopeMaster su qualsiasi serie di storie degli utenti.
Accogliamo con favore qualsiasi commento da parte della gente di Mountain Goat.
Conclusione
Da questo esercizio possiamo vedere che ScopeMaster svolge un lavoro prezioso su questo insieme di esempi di storie utente. Esso ha:
- Rivelati oltre 200 problemi che possono essere prontamente risolti prima di diventare inavvertitamente causa di rilavorazioni.
- Rivelato ambito mancante
- Rivelato un potenziale progetto di dati
- Produzione di scenari di test di base utilizzabili per ciascuna storia utente, inclusi test sia positivi che negativi.
- Stima della dimensione funzionale di ogni piano (compresi quelli mancanti) negli standard ISO di dimensione funzionale.
Tutto ciò si aggiunge a una notevole quantità di lavoro utile, approfondito e di spostamento a sinistra che aiuta a dare certezza all’ambito e a ridurre il rischio di qualsiasi progetto software.
Sarebbe bello sentire da Mike Cohn o da chiunque abbia lavorato sul sito Web ScrumAlliance la loro esperienza nell'utilizzo di queste storie utente e le loro opinioni sull'analisi di ScopeMaster. Finora nessuno del suo team è stato disponibile a commentare.