Come descrivere le storie utente usando il linguaggio Gherkin

Definizione di una storia utente

Una storia utente è una descrizione di funzionalità o parte di funzionalità scritta nel linguaggio quotidiano o aziendale che cattura ciò che un utente fa o ha bisogno di fare.

Le storie utente forniscono un modo rapido di gestire i requisiti dei clienti invece di documenti formali di requisiti e senza eseguire compiti amministrativi relativi alla loro manutenzione.

BENEFICI

Gli specialisti della nostra azienda hanno formulato i benefici dell’uso delle storie utente per ogni membro del team di Agile:

Per i PROJECT MANAGER:

  • Aiuta a realizzare correttamente l’architettura dell’applicazione;
  • Riduce il tempo di risposta alle domande sulla logica dell’applicazione a sviluppatori, designer, tester;
  • Può essere usato come documentazione e aggiornato facilmente;

Per i DESIGNER:

  • Dà un’idea della quantità di mock up necessari per coprire l’intero layout dell’applicazione;
  • Avvisa di eccesso o mancanza di certe schermate / pulsanti / caratteristiche;

Per gli sviluppatori:

  • Le caratteristiche sono la base per la scrittura di test di accettazione con lo sviluppo test-driven (TDD e BDD);
  • Aiuta ad evitare incomprensioni della documentazione (specifiche e requisiti del cliente), ed errori nella logica dell’applicazione;

FOR QA:

  • Serve come base per scrivere casi e scenari di test;
  • Aiuta a capire rapidamente la logica dell’applicazione;

PER I CLIENTI:

  • Dà una buona comprensione di un’applicazione e di come funziona;
  • Il cliente può descrivere la nuova funzionalità, usando il nostro formato di user story che previene l’errata interpretazione dei requisiti;

FORMATI DI USER STORIES

Inoltre si possono incontrare i seguenti formati di una user story:

Mike Cohn, un noto autore di storie utente, riguardo alla clausola “so che” come opzionale:

“Come < ruolo>, Voglio < obiettivo/desiderio>”

Chris Matts ha suggerito che “cacciare il valore” è il primo passo per consegnare il software con successo, e ha proposto questa alternativa come parte di Feature Injection:

“Per < ricevere beneficio> come < ruolo>, Voglio < obiettivo/desiderio>”

Altre opzioni:

“Come < ruolo>, Voglio < obiettivo/desiderio> in modo che <benefici>”

“Come < ruolo>, posso < agire con il sistema> in modo che < il beneficio esterno>”

Nella società Steelkiwi usiamo il linguaggio Gherkin per rendere una user story più leggibile e comprensibile sia per gli sviluppatori che per i clienti.

Definizione del linguaggio GHERKIN

Gherkin è un linguaggio leggibile dall’uomo per la descrizione del comportamento del sistema, che usa l’indentazione per definire la struttura del documento (spazi o tabulazioni). Ogni riga inizia con una delle parole chiave e descrive uno dei passi.

La maggior parte delle linee nel Gherkin inizia con una parola chiave speciale e consiste in caratteristiche e scenari, per esempio:

Guardiamo l’esempio precedente:

1. Caratteristica: Una descrizione breve ma completa della funzionalità richiesta, che avvia una funzione e le dà un nome.

2. Le tre righe successive descrivono il beneficio che otterremo da questa funzionalità.

3. Scenario: Una specifica situazione di business inizia lo script e contiene una descrizione.

4. Le seguenti 7 linee descrivono i passi del test, che corrispondono al codice specifico, eseguendo l’azione descritta. Le linee che sono seguite dalle parole chiave “Given”, “AND”, “Then”, ecc. vengono confrontate.

IMPLEMENTAZIONE

Di seguito, potete vedere come appare la parte iniziale di una delle nostre storie utente:

Azioni dell’utente: Come utente voglio scaricare l’applicazione dall’App Store, poi registrarmi/accedere, poi cercare le foto per artista, vedere le foto, impostare i mi piace, vedere le notizie, caricare la mia foto, aggiungere la foto nei concorsi.

1.1. Registrazione: Per iscrivermi Come utente non autorizzato voglio aprire un’applicazione scaricata, poi fare clic sul pulsante “Iscriviti”, compilare tutti i campi obbligatori (e-mail, password, ecc), connettersi a Google+/Facebook/Instagram/Twitter e aggiungere amici che sono registrati nell’applicazione PhotoCulture, poi reindirizzare alla Home page.

1.1.1. Scaricare l’applicazione: Al fine di scaricare l’applicazione da App Store Come utente voglio aprire App Store, quindi fare clic sul pulsante di ricerca, quindi inserire “____”, quindi fare clic sul pulsante “Installa”.

1.1.2. Iscriviti: Per iscriversi Come utente non autorizzato voglio aprire un’applicazione scaricata, quindi fare clic sul pulsante “Iscriviti”, quindi reindirizzare alla schermata “Iscriviti”, quindi inserire il valore corretto nel campo “email”, inserire il valore corretto nel campo “password”, duplicare il valore della password nel campo “conferma password”, quindi fare clic sul pulsante “Iscriviti”, quindi visualizzare “Controlla la tua email per completare la registrazione” pop up, quindi confermare la registrazione nella mia email.

CONCLUSIONE

Prima di scrivere una storia utente individuale, creiamo la storia che descrive lo scenario end-to-end del comportamento dell’applicazione dalla registrazione al completamento dell’applicazione (logout). In questa user story, descriviamo tutte le azioni per le quali l’applicazione è stata creata, per esempio, visualizzare le foto degli altri membri aggiungendo le proprie foto, partecipare a concorsi, ricevere premi, scrivere commenti, ecc. Di seguito, facciamo singole user story che descrivono alcune funzionalità in modo più dettagliato. Inoltre, se necessario, descriviamo le parti più dettagliate della user story precedente.

Una caratteristica distintiva della nostra azienda è che la nostra user story non è separata dalla struttura generale del progetto. Formiamo tutte le user story da applicazione in un unico documento in cui appaiono nella struttura ad albero.

VANTAGGI DEL NOSTRO APPROCCIO

  • Aiuta ad evitare user story noncompatibili con l’architettura dell’applicazione
  • Mostra come i cambiamenti influenzano la struttura dell’applicazione
  • Permette ai clienti di rendere i nuovi requisiti e desideri più comprensibili per gli sviluppatori

Link utili

  1. User story
  2. Funzioni di scrittura – gherkin

Se ti piace questo articolo – trova altri contenuti interessanti su SteelKiwi Blog!
Se hai domande – Contattaci!

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *