• Passa alla navigazione primaria
  • Passa al contenuto principale
  • Passa alla barra laterale primaria
  • Passa al piè di pagina
Glue Labs

Glue Labs

Trasformiamo le tue idee in prodotti digitali di successo!

  • HOME
  • SOLUZIONI
  • NEWS
  • PRODOTTI
  • CONTATTI
  • CASE STUDY

Come scrivere ed implementare una User Story per il Behaviour Driven Development(BDD)

Il pattern Given, When, Then per garantire la qualità delle funzionalità dalla prospettiva dell'utente

Il Behaviour Driven Development(BDD) rappresenta l’evoluzione del Test Driven Development(TDD). Nel BDD i test si basano sui termini di comportamento desiderato di una determinata funzionalità e non sul mero corretto funzionamento. Per un approfondimeno puoi leggere il precedente articolo “Test-Driven Development(TDD) vs Behaviour-Driven Development(BDD)“.

Cos’è ed a cosa serve la User Story

Alla base del BDD c’è la User Story che altro non è che l’espressione della funzionalità che una determinata caratteristica di un prodotto deve fornire dal punto di vista dell’utente. Lo scopo di una User Story è quello di definire come una determinata funzionalità del prodotto può o dovrebbe fornire valore all’utente. Attraverso la User Story ti assicuri che i requisiti di business dei tuoi utenti siano portati al centro dell’attenzione durante tutte le fasi dello sviluppo.

Quando si utilizza il modello BDD occorre quindi testare le funzionalità dalla prospettiva dell’utente finale utilizzando i costrutti del linguaggio di business in modo da ridurre il rischio dell’effetto “lost-in-translation” in cui ciò che si testa non rappresenta effettivamente ciò che è necessario per garantire la qualità del prodotto.

Contattaci subito e senza impegno per introdurre il BDD all’interno del tuo processo di sviluppo applicativo.

Come creare una User Story

In poche parole, una User Story può includere:

  • un titolo in cui viene sintetizzata la funzionalità;
  • una descrizione in cui vengono delineati gli aspetti essenziali dal punto di vista dell’utente: “As a” ( per es. come utente con abbonamento gold al servizio che vuole accedere alle proprie statistiche ), “I want”( per es. voglio cliccare su un ben visibile link nella mia dashboard) e “so that” ( per es. affinchè possa ottenere in un’unica pagina le mie statistiche facilmente leggibili ed interpretabili).

Come puoi ben comprendere la User Story mette al centro l’utente e non il mero funzionamento. In un classico approccio Test Driven Development(TDD) avresti probabilmente avuto, prendendo spunto dal medesimo esempio, che un utente con abbonamento gold può accedere alle proprie statistiche tramite link nella propria dashboard. Questo approccio non prende in considerazione il design (ben visibile) e la semplicità d’uso (in un’unica pagina) e pertanto non consente di ottenere una User Experience(UX) efficace che è ciò che oggi gli utenti chiedono dalla tua applicazione.

Contattaci subito e senza impegno per assistenza e supporto nella creazione di User Story per il BDD.

I criteri di accettazione della User Story

I criteri di accettazione sono i criteri rispettati i quali una storia è accettata e può andare in produzione. I criteri di accettazione possono essere multipli per la stessa User Story in quanto la medesima User Story potrebbe essere valida per diversi scenari applicativi. I criteri di accettazione rappresentano la descrizione del comportamento che ci si aspetta da una funzionalità e comprendono:

  • Given: cioè dato uno specifico contesto;
  • When: quando una determinata azione viene effettuata;
  • Then: allora un determinato risultato può essere osservato.

Il linguaggio da utilizzare per creare la User Story ed i relativi criteri di accettazione deve essere parzialmente formale, cioè deve permettere di essere definito e compreso sia da personale tecnico sia non.

Contattaci subito e senza impegno per assistenza e supporto nella creazione di User Story per il BDD

I tool per il BDD e la test automation

Automatizzare i test è chiaramente il modo migliore per implementare il BDD all’interno dei tuoi progetti di sviluppo. Mentre nel TDD non è necessario utilizzare alcun specifico format, nel BDD i criteri di accettazione devono essere definiti secondo il format Given[ ] When[ ] Then[ ].

Per ottenere la test automation in ambito BDD puoi utilizzare degli strumenti realizzati ad hoc proprio per trasformare i criteri di accettazione in un linguaggio semi-formale e quindi in codice applicativo di test. Tra questi strumenti puoi trovare:

  • JBehave: un framework Java per il BDD integrabile nelle piattaforme di sviluppo Eclipse e IDEA;
  • Cucumber: un framework inizialmente realizzato per le applicazioni Ruby-based che oggi supporta anche Java e Javascript

Contattaci subito e senza impegno per introdurre il BDD all’interno del tuo processo di sviluppo applicativo.

Glue Labs ed il Behaviour Driven Development(BDD)

Ti supportiamo nell’introduzion del BDD all’interno dei tuoi processi di sviluppo. Attraverso Analisti Funzionali, Designer e Sviluppatori accompagniamo il tuo personale verso il miglioramento della qualità del codice e della standardizzazione documentale. Grazie all’esperienza maturata in tantissimi settori, con numerosi Clienti e con un solido gruppo aziendale realizziamo la tua Web Application, PWA e Mobile App garantendola 12 mesi da qualsiasi bug. Contattaci subito e senza impegno per maggiori informazioni.

Continua la lettura

  1. Gli 8 passi del ciclo di vita delle API

Categoria: Articoli Tags: BDD, Behaviour Driven Development, TDD, Test Driven Development, User Experience(UX), User Story

Barra laterale primaria

Cosa facciamo

  • Content Strategy
  • E-Commerce
  • Formazione avanzata Web, Mobile & Cloud
  • IoT – Sviluppo e Integrazione
  • Micro Live Learning(MLL) Web, Mobile & Cloud
  • Project Management Prince2
  • PushAPE
  • Sicurezza ICT
  • Software Aziendali
  • Sviluppo Mobile App
  • Sviluppo, Supporto, Assistenza Tecnica e Hosting Google Cloud
  • System Integration
  • Web Application
  • Web Design

Contatti

Scrivici dal form di contatto

Tel +39 06 56549766
Fax +39 06 21122581
Mail: info@glue-labs.com
Pec: gluelabs@legalmail.it

Dove siamo

Roma: Piazza Don Sturzo 15
Milano: Via Lazzaretto 19
Torino: Via San Domenico 28
Altamura: Via Maggio 1648 24

"*" indica i campi obbligatori

Nome*
Questo sito è protetto da reCAPTCHA e si applicano le Normative sulla Privacy e i Termini di Servizio di Google.
Inviando i tuoi dati accetti le condizioni sulla Privacy. Li useremo per rispondere alle tue domande e richieste.
Consenso*
*
Questo campo serve per la convalida e dovrebbe essere lasciato inalterato.

Siamo parte di

La nostra Agenzia di Marketing

Footer

Partnership



Rimaniamo in contatto

Iscriviti alla nostra newsletter

Nome
Questo campo serve per la convalida e dovrebbe essere lasciato inalterato.

Soluzioni

  • Supporto ed Integrazione di SPID e CIE con OpenID Connect
  • Consulenza e Assessment pre-formazione
  • Integrazione con le API di OpenAI e ChatGPT
  • Corso Cucumber per Javascript
  • Supporto ed Assistenza nell’implementazione ed utilizzo dei Kit di Designers Italia
  • Realizzazione di Tour Virtuali 3D
  • Conferenza/Seminario – Google Cloud Hands On
  • Corso Cacti
  • Backup-as-a-Service in Cloud: come archiviare i dati in maniera sicura ed affidabile
  • Corso Angular 14

Articoli

  • Software report del 2022 e trend per il 2023
  • Come gestire il backup di architetture complesse in maniera sicura ed efficiente
  • Perchè avere un Contact Center as a Service(CCaaS)
  • Come modernizzare applicazioni legacy
  • Cos’è Github Flow
  • Come avere una Data Quality Platform come Twitter
  • Cos’è la Dead letter queue e perchè è importante
  • Jinja: un template engine multiuso per Python
  • Cos’è l’Application Level Encryption(ALE): vantaggi e svantaggi
  • Backup e Disaster Recovery(DR) in un’unica piattaforma

Le nostre sedi

  • Roma, Piazza Don Sturzo 15
  • Milano, Via Lazzaretto 19
  • Torino, Via San Domenico 28
  • Altamura, Via Maggio 1648 24

Contatti

  • Tel. +39 06 87811067
  • Fax +39 06 99335373
  • glue-labs@legalmail.it
  • info@glue-labs.com
  • Facebook
  • LinkedIn
  • Twitter

Scarica app da App StoreScarica app da Play Store


Glue Labs © 2011–2023 | Copyright | Privacy Policy | Company Info | Cookie Policy | Gestione Cookies

Gestisci Consenso Cookie
Usiamo cookie per ottimizzare il nostro sito web ed i nostri servizi.
Funzionale Sempre attivo
La conservazione tecnica o l'accesso sono strettamente necessari al fine legittimo di consentire la fruizione di uno specifico servizio esplicitamente richiesto dall'abbonato o dall'utente, o al solo fine di effettuare la trasmissione di una comunicazione su una rete di comunicazione elettronica.
Preferenze
The technical storage or access is necessary for the legitimate purpose of storing preferences that are not requested by the subscriber or user.
Statistiche
L'archiviazione tecnica o l'accesso che viene utilizzato esclusivamente a fini statistici anonimi. Senza un mandato di comparizione, il rispetto volontario da parte del tuo provider di servizi Internet o registrazioni aggiuntive da parte di terzi, le informazioni archiviate o recuperate solo per questo scopo non possono essere generalmente utilizzate per identificarti. The technical storage or access that is used exclusively for anonymous statistical purposes. Without a subpoena, voluntary compliance on the part of your Internet Service Provider, or additional records from a third party, information stored or retrieved for this purpose alone cannot usually be used to identify you.
Marketing
L'archiviazione tecnica o l'accesso è necessario per creare profili utente per inviare pubblicità o per tracciare l'utente su un sito Web o su più siti Web per scopi di marketing simili.
Gestisci opzioni Gestisci servizi Gestisci fornitori Per saperne di più su questi scopi
Gestisci preferenze
{title} {title} {title}