SlideShare a Scribd company logo
Agile Testing
Come creare UseCase Efficaci

di Stefano Trojani
By Stefano Trojani

1
Use Case Efficaci
Fase 1:

Attori, Obiettivi e Descrizioni

2
By Stefano Trojani – All rights reserved
Use Case Efficaci
Fase 1: Attori, Obiettivi e Descrizioni (parte prima)
Per iniziare è bene fare una diagramma del contesto in cui andremo a lavorare
identificando gli “attori” e gli obiettivi (o goals).
Per far ciò è necessario identificare:
Chi userà il sistema che stiamo progettando/realizzando (Attori)
Perché lo userà (lo scopo del flusso)
Una volta identificati gli obiettivi è possibile creare i primi Use Cases.
Nota: Ogni use case dovrà avere un nome con la sintassi:
VERBO (alla terza persona singolare) + NOME
(es: Fa Login alla Webmail).
By Stefano Trojani – All rights reserved

3
Use Case Efficaci
Fase 1: Attori, Obiettivi e Descrizioni (parte seconda)
Ogni Use Case deve avere una breve descrizione.
Per evitare ridondanze è possibile usare la struttura delle User Stories per descrivere
lo Use Case.

Il [nome attore] vuole [obiettivo del caso d'uso] in modo tale che [motivo per cui
vuole raggiungere tale obiettivo].
Lo use case derivato potrebbe essere:
L’Utente della WebMail vuole potersi loggarsi alla piattaforma per poter leggere le
sue Mail

4

By Stefano Trojani – All rights reserved
Use Case Efficaci
Fase 2:

Definire gli Use Case per sprint

5
By Stefano Trojani – All rights reserved
Use Case Efficaci
Fase 2: Definire gli Use Case per sprint
Una volta identificati gli Attori e fatti una serie di Use Case per un intero flusso si ha la
la struttura di base del progetto (che potrebbe essere un intero Package del Test Plan).
Nota: E’ sempre un errore entrare troppo nel dettaglio su processi ancora non
definiti: si rischia sempre di fare un doppio lavoro.
E’ bene decidere quale Use Case dovrà essere sviluppato nel prossimo sprint e
concentrarsi su quello.

6
By Stefano Trojani – All rights reserved
Use Case Efficaci
Fase 3:

Scrivere Use Case

7
By Stefano Trojani – All rights reserved
Use Case Efficaci
Fase 3: Scrivere Use Case (parte prima)
Il nucleo dello Use Case è lo scenario di successo (o Happy Ending, Success Scenario,
Positive End to End).
Ossia una lista indicativamente da 5 a 15 step che descrivono come un Attore si
interfaccia al sistema.
NOTA: Un Use Case è ben definito quando descrive in modo conciso come il sistema
si deve comportare.
E’ importante imparare a scrivere descrizioni brevi.
Ogni step deve descrivere un'azione intrapresa sia dal Sistema che dall’Attore.

8
By Stefano Trojani – All rights reserved
Use Case Efficaci
Fase 3: Scrivere Use Case (parte seconda)
Le azioni comuni rientrano in una delle seguenti categorie
Tipo di passo

Esempio

1.Il Sistema fornisce informazioni all‘Attore

Sistema visualizza i risultati della ricerca.

1.Il Sistema richiede info all‘Attore

Sistema richiede di accettare le T&C.

1.Il Sistema funziona per conto dell‘Attore

Sistema invia la richiesta al sistema di
pagamento.

1.L’Attore fa una scelta

L’utente accetta l'invito.

1.L’Attore fornisce informazioni al Sistema

L’utente inserisce i suoi dati anagrafici
9

By Stefano Trojani – All rights reserved
Use Case Efficaci
Fase 3: Scrivere Use Case (parte terza)
Per mantenere lo scenario leggibile e mantenibile è bene NON inserire informazioni
riguardanti :

•
•
•
•
•

}

l'interfaccia utente (UX)
content e testi
il formato dei dati passati
regole di business (Marketing)
prestazioni (e altri requisiti non funzionali)

By Stefano Trojani – All rights reserved

NO!
10
Use Case Efficaci
Fase 4:

adattare il livello di dettaglio

11
By Stefano Trojani – All rights reserved
Use Case Efficaci
Fase 4: adattare il livello di dettaglio
La scrittura dello Use Case può essere lunga e complessa (nome, descrizione, scenario
di successo, precondizioni… etc..)
A volte molti di questi step possono essere omettessi per evitare di descrivere casi
d’uso inutili
ESEMPIO: Conviene omettere tutti i casi di mistmatch di un login quando si deve
dettagliare un flusso più complesso.
TIP: Per iniziare si può provare a scrivere solo il nome e la descrizione (come una user
story). Se il processo funziona non sarà necessario aggiungere altro. Se servissero altri
dettagli sarà sempre possibile aggiungere maggiori informazioni in futuro.

12

By Stefano Trojani – All rights reserved
Adesso… Fare dei buoni Use Case

It’s UP to YOU!
By Stefano Trojani – All rights reserved

13
Use Case Efficaci

Grazie!
14
By Stefano Trojani – All rights reserved

More Related Content

What's hot

Windows Incident Response is hard, but doesn't have to be
Windows Incident Response is hard, but doesn't have to beWindows Incident Response is hard, but doesn't have to be
Windows Incident Response is hard, but doesn't have to be
Michael Gough
 
How to Plan Purple Team Exercises
How to Plan Purple Team ExercisesHow to Plan Purple Team Exercises
How to Plan Purple Team Exercises
Haydn Johnson
 
Three Ways Kamailio Can Help Your FreeSWITCH Deployment
Three Ways Kamailio Can Help Your FreeSWITCH DeploymentThree Ways Kamailio Can Help Your FreeSWITCH Deployment
Three Ways Kamailio Can Help Your FreeSWITCH Deployment
Fred Posner
 
IPSec and VPN
IPSec and VPNIPSec and VPN
IPSec and VPN
Abdullaziz Tagawy
 
Staring into the eBPF Abyss
Staring into the eBPF AbyssStaring into the eBPF Abyss
Staring into the eBPF Abyss
Sasha Goldshtein
 
Interrupt Affinityについて
Interrupt AffinityについてInterrupt Affinityについて
Interrupt AffinityについてTakuya ASADA
 
Linux BPF Superpowers
Linux BPF SuperpowersLinux BPF Superpowers
Linux BPF Superpowers
Brendan Gregg
 
BPF: Tracing and more
BPF: Tracing and moreBPF: Tracing and more
BPF: Tracing and more
Brendan Gregg
 
Introduction to TLS-1.3
Introduction to TLS-1.3 Introduction to TLS-1.3
Introduction to TLS-1.3
Vedant Jain
 
Load Store Execution
Load Store ExecutionLoad Store Execution
Load Store Execution
Ramdas Mozhikunnath
 
Secure Boot on ARM systems – Building a complete Chain of Trust upon existing...
Secure Boot on ARM systems – Building a complete Chain of Trust upon existing...Secure Boot on ARM systems – Building a complete Chain of Trust upon existing...
Secure Boot on ARM systems – Building a complete Chain of Trust upon existing...
Linaro
 
Linux Locking Mechanisms
Linux Locking MechanismsLinux Locking Mechanisms
Linux Locking Mechanisms
Kernel TLV
 
RTSP Analysis Wireshark
RTSP Analysis WiresharkRTSP Analysis Wireshark
RTSP Analysis Wireshark
Yoss Cohen
 
Practical Trusted Platform Module (TPM2) Programming
Practical Trusted Platform Module (TPM2) ProgrammingPractical Trusted Platform Module (TPM2) Programming
Practical Trusted Platform Module (TPM2) Programming
Brandon Arvanaghi
 
ROP Illmatic: Exploring Universal ROP on glibc x86-64 (ja)
ROP Illmatic: Exploring Universal ROP on glibc x86-64 (ja)ROP Illmatic: Exploring Universal ROP on glibc x86-64 (ja)
ROP Illmatic: Exploring Universal ROP on glibc x86-64 (ja)
inaz2
 
Linker and loader upload
Linker and loader   uploadLinker and loader   upload
Linker and loader upload
Bin Yang
 
Mikrotik Bridge Deep Dive
Mikrotik Bridge Deep DiveMikrotik Bridge Deep Dive
Mikrotik Bridge Deep Dive
GLC Networks
 
MITRE ATT&CKcon 2018: From Automation to Analytics: Simulating the Adversary ...
MITRE ATT&CKcon 2018: From Automation to Analytics: Simulating the Adversary ...MITRE ATT&CKcon 2018: From Automation to Analytics: Simulating the Adversary ...
MITRE ATT&CKcon 2018: From Automation to Analytics: Simulating the Adversary ...
MITRE - ATT&CKcon
 
LAS16-402: ARM Trusted Firmware – from Enterprise to Embedded
LAS16-402: ARM Trusted Firmware – from Enterprise to EmbeddedLAS16-402: ARM Trusted Firmware – from Enterprise to Embedded
LAS16-402: ARM Trusted Firmware – from Enterprise to Embedded
Linaro
 
CNIT 121: 17 Remediation Introduction (Part 1)
CNIT 121: 17 Remediation Introduction (Part 1)CNIT 121: 17 Remediation Introduction (Part 1)
CNIT 121: 17 Remediation Introduction (Part 1)
Sam Bowne
 

What's hot (20)

Windows Incident Response is hard, but doesn't have to be
Windows Incident Response is hard, but doesn't have to beWindows Incident Response is hard, but doesn't have to be
Windows Incident Response is hard, but doesn't have to be
 
How to Plan Purple Team Exercises
How to Plan Purple Team ExercisesHow to Plan Purple Team Exercises
How to Plan Purple Team Exercises
 
Three Ways Kamailio Can Help Your FreeSWITCH Deployment
Three Ways Kamailio Can Help Your FreeSWITCH DeploymentThree Ways Kamailio Can Help Your FreeSWITCH Deployment
Three Ways Kamailio Can Help Your FreeSWITCH Deployment
 
IPSec and VPN
IPSec and VPNIPSec and VPN
IPSec and VPN
 
Staring into the eBPF Abyss
Staring into the eBPF AbyssStaring into the eBPF Abyss
Staring into the eBPF Abyss
 
Interrupt Affinityについて
Interrupt AffinityについてInterrupt Affinityについて
Interrupt Affinityについて
 
Linux BPF Superpowers
Linux BPF SuperpowersLinux BPF Superpowers
Linux BPF Superpowers
 
BPF: Tracing and more
BPF: Tracing and moreBPF: Tracing and more
BPF: Tracing and more
 
Introduction to TLS-1.3
Introduction to TLS-1.3 Introduction to TLS-1.3
Introduction to TLS-1.3
 
Load Store Execution
Load Store ExecutionLoad Store Execution
Load Store Execution
 
Secure Boot on ARM systems – Building a complete Chain of Trust upon existing...
Secure Boot on ARM systems – Building a complete Chain of Trust upon existing...Secure Boot on ARM systems – Building a complete Chain of Trust upon existing...
Secure Boot on ARM systems – Building a complete Chain of Trust upon existing...
 
Linux Locking Mechanisms
Linux Locking MechanismsLinux Locking Mechanisms
Linux Locking Mechanisms
 
RTSP Analysis Wireshark
RTSP Analysis WiresharkRTSP Analysis Wireshark
RTSP Analysis Wireshark
 
Practical Trusted Platform Module (TPM2) Programming
Practical Trusted Platform Module (TPM2) ProgrammingPractical Trusted Platform Module (TPM2) Programming
Practical Trusted Platform Module (TPM2) Programming
 
ROP Illmatic: Exploring Universal ROP on glibc x86-64 (ja)
ROP Illmatic: Exploring Universal ROP on glibc x86-64 (ja)ROP Illmatic: Exploring Universal ROP on glibc x86-64 (ja)
ROP Illmatic: Exploring Universal ROP on glibc x86-64 (ja)
 
Linker and loader upload
Linker and loader   uploadLinker and loader   upload
Linker and loader upload
 
Mikrotik Bridge Deep Dive
Mikrotik Bridge Deep DiveMikrotik Bridge Deep Dive
Mikrotik Bridge Deep Dive
 
MITRE ATT&CKcon 2018: From Automation to Analytics: Simulating the Adversary ...
MITRE ATT&CKcon 2018: From Automation to Analytics: Simulating the Adversary ...MITRE ATT&CKcon 2018: From Automation to Analytics: Simulating the Adversary ...
MITRE ATT&CKcon 2018: From Automation to Analytics: Simulating the Adversary ...
 
LAS16-402: ARM Trusted Firmware – from Enterprise to Embedded
LAS16-402: ARM Trusted Firmware – from Enterprise to EmbeddedLAS16-402: ARM Trusted Firmware – from Enterprise to Embedded
LAS16-402: ARM Trusted Firmware – from Enterprise to Embedded
 
CNIT 121: 17 Remediation Introduction (Part 1)
CNIT 121: 17 Remediation Introduction (Part 1)CNIT 121: 17 Remediation Introduction (Part 1)
CNIT 121: 17 Remediation Introduction (Part 1)
 

Viewers also liked

Eseguire più suite di test automatici insieme con Selenium IDE - Evolve Today!
Eseguire più suite di test automatici insieme con Selenium IDE - Evolve Today! Eseguire più suite di test automatici insieme con Selenium IDE - Evolve Today!
Eseguire più suite di test automatici insieme con Selenium IDE - Evolve Today!
Stefano Trojani
 
Presentazione Testing automatizzato
Presentazione Testing automatizzatoPresentazione Testing automatizzato
Presentazione Testing automatizzato
angelolu
 
Qualità del Software
Qualità del SoftwareQualità del Software
Qualità del SoftwareYeser Rema
 
Creare Suite di Test Automatici intelligenti con Selenium IDE
Creare Suite di Test Automatici intelligenti con Selenium IDECreare Suite di Test Automatici intelligenti con Selenium IDE
Creare Suite di Test Automatici intelligenti con Selenium IDE
Stefano Trojani
 
Come automatizzare i test con Selenium IDE
Come automatizzare i test con Selenium IDECome automatizzare i test con Selenium IDE
Come automatizzare i test con Selenium IDE
Stefano Trojani
 
Come utilizzare la PEC nella vita di tutti i giorni al massimo delle sue pote...
Come utilizzare la PEC nella vita di tutti i giorni al massimo delle sue pote...Come utilizzare la PEC nella vita di tutti i giorni al massimo delle sue pote...
Come utilizzare la PEC nella vita di tutti i giorni al massimo delle sue pote...
Stefano Trojani
 
Nikto
NiktoNikto

Viewers also liked (7)

Eseguire più suite di test automatici insieme con Selenium IDE - Evolve Today!
Eseguire più suite di test automatici insieme con Selenium IDE - Evolve Today! Eseguire più suite di test automatici insieme con Selenium IDE - Evolve Today!
Eseguire più suite di test automatici insieme con Selenium IDE - Evolve Today!
 
Presentazione Testing automatizzato
Presentazione Testing automatizzatoPresentazione Testing automatizzato
Presentazione Testing automatizzato
 
Qualità del Software
Qualità del SoftwareQualità del Software
Qualità del Software
 
Creare Suite di Test Automatici intelligenti con Selenium IDE
Creare Suite di Test Automatici intelligenti con Selenium IDECreare Suite di Test Automatici intelligenti con Selenium IDE
Creare Suite di Test Automatici intelligenti con Selenium IDE
 
Come automatizzare i test con Selenium IDE
Come automatizzare i test con Selenium IDECome automatizzare i test con Selenium IDE
Come automatizzare i test con Selenium IDE
 
Come utilizzare la PEC nella vita di tutti i giorni al massimo delle sue pote...
Come utilizzare la PEC nella vita di tutti i giorni al massimo delle sue pote...Come utilizzare la PEC nella vita di tutti i giorni al massimo delle sue pote...
Come utilizzare la PEC nella vita di tutti i giorni al massimo delle sue pote...
 
Nikto
NiktoNikto
Nikto
 

Similar to Agile Testing: Come Scrivere Use Case

TTT - Test, Tools and Tips - jug roma
TTT - Test, Tools and Tips - jug romaTTT - Test, Tools and Tips - jug roma
TTT - Test, Tools and Tips - jug roma
diego mauricio lagos morales
 
A static Analyzer for Finding Dynamic Programming Errors
A static Analyzer for Finding Dynamic Programming ErrorsA static Analyzer for Finding Dynamic Programming Errors
A static Analyzer for Finding Dynamic Programming Errors
Lino Possamai
 
Flss Test Plan
Flss Test PlanFlss Test Plan
Flss Test Plan
Sara M
 
Un'architettura di riferimento per applicazioni enterprise
Un'architettura di riferimento per applicazioni enterpriseUn'architettura di riferimento per applicazioni enterprise
Un'architettura di riferimento per applicazioni enterpriseAlberto Lagna
 
8. Come valutare l’usabilità
8. Come valutare l’usabilità8. Come valutare l’usabilità
8. Come valutare l’usabilità
Roberto Polillo
 
Na.atm validazione
Na.atm validazioneNa.atm validazione
Na.atm validazione
Dario Contini
 
Agile Testing e UX: come ottenere il massimo da QA e Design
Agile Testing e UX: come ottenere il massimo da QA e DesignAgile Testing e UX: come ottenere il massimo da QA e Design
Agile Testing e UX: come ottenere il massimo da QA e Design
Stefano Trojani
 
Unit testing 101
Unit testing 101Unit testing 101
Unit testing 101
Daniel Londero
 
Elaborazione automatica dei dati: computer e matlab
Elaborazione automatica dei dati: computer e matlabElaborazione automatica dei dati: computer e matlab
Elaborazione automatica dei dati: computer e matlab
profman
 
DDive11 - Notes Moon Attack
DDive11 - Notes Moon AttackDDive11 - Notes Moon Attack
DDive11 - Notes Moon Attack
Dominopoint - Italian Lotus User Group
 
Presentazione finale dottorato 15 aprile 2011
Presentazione finale dottorato 15 aprile 2011Presentazione finale dottorato 15 aprile 2011
Presentazione finale dottorato 15 aprile 2011steccami
 
Modulo 1 concetti di base dell'ict
Modulo 1 concetti di base dell'ictModulo 1 concetti di base dell'ict
Modulo 1 concetti di base dell'ictAndreina Concas
 
8. Valutare la usabilita'
8. Valutare la usabilita'8. Valutare la usabilita'
8. Valutare la usabilita'
Roberto Polillo
 
Detailed Model Capture
Detailed Model CaptureDetailed Model Capture
Detailed Model Capturefcospito
 
Detailed Model Capture
Detailed Model CaptureDetailed Model Capture
Detailed Model Capturefcospito
 
Alm pills - Sessione community tour Dot Net Umbria 2011
Alm pills - Sessione community tour Dot Net Umbria 2011Alm pills - Sessione community tour Dot Net Umbria 2011
Alm pills - Sessione community tour Dot Net Umbria 2011
Gian Maria Ricci
 
Il buon programmatore - consigli pratici per una vita felice
Il buon programmatore - consigli pratici per una vita feliceIl buon programmatore - consigli pratici per una vita felice
Il buon programmatore - consigli pratici per una vita felice
Andrea Dottor
 
Push Notification, Live Tile e Background Agent
Push Notification, Live Tile e Background AgentPush Notification, Live Tile e Background Agent
Push Notification, Live Tile e Background Agent
DomusDotNet
 
Figure dal libro Facile da Usare
Figure dal libro Facile da UsareFigure dal libro Facile da Usare
Figure dal libro Facile da Usare
Roberto Polillo
 

Similar to Agile Testing: Come Scrivere Use Case (20)

TTT - Test, Tools and Tips - jug roma
TTT - Test, Tools and Tips - jug romaTTT - Test, Tools and Tips - jug roma
TTT - Test, Tools and Tips - jug roma
 
A static Analyzer for Finding Dynamic Programming Errors
A static Analyzer for Finding Dynamic Programming ErrorsA static Analyzer for Finding Dynamic Programming Errors
A static Analyzer for Finding Dynamic Programming Errors
 
Flss Test Plan
Flss Test PlanFlss Test Plan
Flss Test Plan
 
Un'architettura di riferimento per applicazioni enterprise
Un'architettura di riferimento per applicazioni enterpriseUn'architettura di riferimento per applicazioni enterprise
Un'architettura di riferimento per applicazioni enterprise
 
8. Come valutare l’usabilità
8. Come valutare l’usabilità8. Come valutare l’usabilità
8. Come valutare l’usabilità
 
Na.atm validazione
Na.atm validazioneNa.atm validazione
Na.atm validazione
 
Agile Testing e UX: come ottenere il massimo da QA e Design
Agile Testing e UX: come ottenere il massimo da QA e DesignAgile Testing e UX: come ottenere il massimo da QA e Design
Agile Testing e UX: come ottenere il massimo da QA e Design
 
Unit testing 101
Unit testing 101Unit testing 101
Unit testing 101
 
Elaborazione automatica dei dati: computer e matlab
Elaborazione automatica dei dati: computer e matlabElaborazione automatica dei dati: computer e matlab
Elaborazione automatica dei dati: computer e matlab
 
DDive11 - Notes Moon Attack
DDive11 - Notes Moon AttackDDive11 - Notes Moon Attack
DDive11 - Notes Moon Attack
 
Presentazione finale dottorato 15 aprile 2011
Presentazione finale dottorato 15 aprile 2011Presentazione finale dottorato 15 aprile 2011
Presentazione finale dottorato 15 aprile 2011
 
Modulo 1 concetti di base dell'ict
Modulo 1 concetti di base dell'ictModulo 1 concetti di base dell'ict
Modulo 1 concetti di base dell'ict
 
8. Valutare la usabilita'
8. Valutare la usabilita'8. Valutare la usabilita'
8. Valutare la usabilita'
 
Detailed Model Capture
Detailed Model CaptureDetailed Model Capture
Detailed Model Capture
 
Detailed Model Capture
Detailed Model CaptureDetailed Model Capture
Detailed Model Capture
 
Alm pills - Sessione community tour Dot Net Umbria 2011
Alm pills - Sessione community tour Dot Net Umbria 2011Alm pills - Sessione community tour Dot Net Umbria 2011
Alm pills - Sessione community tour Dot Net Umbria 2011
 
Il buon programmatore - consigli pratici per una vita felice
Il buon programmatore - consigli pratici per una vita feliceIl buon programmatore - consigli pratici per una vita felice
Il buon programmatore - consigli pratici per una vita felice
 
Push Notification, Live Tile e Background Agent
Push Notification, Live Tile e Background AgentPush Notification, Live Tile e Background Agent
Push Notification, Live Tile e Background Agent
 
Figure dal libro Facile da Usare
Figure dal libro Facile da UsareFigure dal libro Facile da Usare
Figure dal libro Facile da Usare
 
Testing
TestingTesting
Testing
 

More from Stefano Trojani

Attiva le mail su Register.it e configurale su Mobile
Attiva le mail su Register.it e configurale su MobileAttiva le mail su Register.it e configurale su Mobile
Attiva le mail su Register.it e configurale su Mobile
Stefano Trojani
 
Come inviare email e newsletter senza farle finire nello SPAM
Come inviare email e newsletter  senza farle finire nello SPAMCome inviare email e newsletter  senza farle finire nello SPAM
Come inviare email e newsletter senza farle finire nello SPAM
Stefano Trojani
 
What Personas are why and how to use them
What Personas are why and how to use themWhat Personas are why and how to use them
What Personas are why and how to use them
Stefano Trojani
 
Scenari di utilizzo di una mail con Active Sync (Exchange)
Scenari di utilizzo di una mail con Active Sync (Exchange)Scenari di utilizzo di una mail con Active Sync (Exchange)
Scenari di utilizzo di una mail con Active Sync (Exchange)
Stefano Trojani
 
Plant UML come creare Grafici UML in modo facile
Plant UML come creare Grafici UML in modo facilePlant UML come creare Grafici UML in modo facile
Plant UML come creare Grafici UML in modo facile
Stefano Trojani
 
Webinar sull'utilizzo dell'Active Sync dell'email professional
Webinar sull'utilizzo dell'Active Sync dell'email professionalWebinar sull'utilizzo dell'Active Sync dell'email professional
Webinar sull'utilizzo dell'Active Sync dell'email professional
Stefano Trojani
 
Street Fight between Open Exchange vs. Office 365
Street Fight between Open Exchange vs. Office 365Street Fight between Open Exchange vs. Office 365
Street Fight between Open Exchange vs. Office 365
Stefano Trojani
 
Manuale di migrazione account Exchange 2003 su account Exchange di Office365 ...
Manuale di migrazione account Exchange 2003 su account Exchange di Office365 ...Manuale di migrazione account Exchange 2003 su account Exchange di Office365 ...
Manuale di migrazione account Exchange 2003 su account Exchange di Office365 ...
Stefano Trojani
 
Breve Storia della Street Photography
Breve Storia della Street PhotographyBreve Storia della Street Photography
Breve Storia della Street Photography
Stefano Trojani
 
Webinar sul Funzionamento della nuova mail/PIM di Register.it
Webinar sul Funzionamento della nuova mail/PIM di Register.itWebinar sul Funzionamento della nuova mail/PIM di Register.it
Webinar sul Funzionamento della nuova mail/PIM di Register.it
Stefano Trojani
 
Cosa sono le Personas e perchè usarle
Cosa sono le Personas e perchè usarleCosa sono le Personas e perchè usarle
Cosa sono le Personas e perchè usarle
Stefano Trojani
 
Webinar sulla PEC del Gestore Register.it
Webinar sulla PEC del Gestore Register.itWebinar sulla PEC del Gestore Register.it
Webinar sulla PEC del Gestore Register.it
Stefano Trojani
 

More from Stefano Trojani (12)

Attiva le mail su Register.it e configurale su Mobile
Attiva le mail su Register.it e configurale su MobileAttiva le mail su Register.it e configurale su Mobile
Attiva le mail su Register.it e configurale su Mobile
 
Come inviare email e newsletter senza farle finire nello SPAM
Come inviare email e newsletter  senza farle finire nello SPAMCome inviare email e newsletter  senza farle finire nello SPAM
Come inviare email e newsletter senza farle finire nello SPAM
 
What Personas are why and how to use them
What Personas are why and how to use themWhat Personas are why and how to use them
What Personas are why and how to use them
 
Scenari di utilizzo di una mail con Active Sync (Exchange)
Scenari di utilizzo di una mail con Active Sync (Exchange)Scenari di utilizzo di una mail con Active Sync (Exchange)
Scenari di utilizzo di una mail con Active Sync (Exchange)
 
Plant UML come creare Grafici UML in modo facile
Plant UML come creare Grafici UML in modo facilePlant UML come creare Grafici UML in modo facile
Plant UML come creare Grafici UML in modo facile
 
Webinar sull'utilizzo dell'Active Sync dell'email professional
Webinar sull'utilizzo dell'Active Sync dell'email professionalWebinar sull'utilizzo dell'Active Sync dell'email professional
Webinar sull'utilizzo dell'Active Sync dell'email professional
 
Street Fight between Open Exchange vs. Office 365
Street Fight between Open Exchange vs. Office 365Street Fight between Open Exchange vs. Office 365
Street Fight between Open Exchange vs. Office 365
 
Manuale di migrazione account Exchange 2003 su account Exchange di Office365 ...
Manuale di migrazione account Exchange 2003 su account Exchange di Office365 ...Manuale di migrazione account Exchange 2003 su account Exchange di Office365 ...
Manuale di migrazione account Exchange 2003 su account Exchange di Office365 ...
 
Breve Storia della Street Photography
Breve Storia della Street PhotographyBreve Storia della Street Photography
Breve Storia della Street Photography
 
Webinar sul Funzionamento della nuova mail/PIM di Register.it
Webinar sul Funzionamento della nuova mail/PIM di Register.itWebinar sul Funzionamento della nuova mail/PIM di Register.it
Webinar sul Funzionamento della nuova mail/PIM di Register.it
 
Cosa sono le Personas e perchè usarle
Cosa sono le Personas e perchè usarleCosa sono le Personas e perchè usarle
Cosa sono le Personas e perchè usarle
 
Webinar sulla PEC del Gestore Register.it
Webinar sulla PEC del Gestore Register.itWebinar sulla PEC del Gestore Register.it
Webinar sulla PEC del Gestore Register.it
 

Agile Testing: Come Scrivere Use Case

  • 1. Agile Testing Come creare UseCase Efficaci di Stefano Trojani By Stefano Trojani 1
  • 2. Use Case Efficaci Fase 1: Attori, Obiettivi e Descrizioni 2 By Stefano Trojani – All rights reserved
  • 3. Use Case Efficaci Fase 1: Attori, Obiettivi e Descrizioni (parte prima) Per iniziare è bene fare una diagramma del contesto in cui andremo a lavorare identificando gli “attori” e gli obiettivi (o goals). Per far ciò è necessario identificare: Chi userà il sistema che stiamo progettando/realizzando (Attori) Perché lo userà (lo scopo del flusso) Una volta identificati gli obiettivi è possibile creare i primi Use Cases. Nota: Ogni use case dovrà avere un nome con la sintassi: VERBO (alla terza persona singolare) + NOME (es: Fa Login alla Webmail). By Stefano Trojani – All rights reserved 3
  • 4. Use Case Efficaci Fase 1: Attori, Obiettivi e Descrizioni (parte seconda) Ogni Use Case deve avere una breve descrizione. Per evitare ridondanze è possibile usare la struttura delle User Stories per descrivere lo Use Case. Il [nome attore] vuole [obiettivo del caso d'uso] in modo tale che [motivo per cui vuole raggiungere tale obiettivo]. Lo use case derivato potrebbe essere: L’Utente della WebMail vuole potersi loggarsi alla piattaforma per poter leggere le sue Mail 4 By Stefano Trojani – All rights reserved
  • 5. Use Case Efficaci Fase 2: Definire gli Use Case per sprint 5 By Stefano Trojani – All rights reserved
  • 6. Use Case Efficaci Fase 2: Definire gli Use Case per sprint Una volta identificati gli Attori e fatti una serie di Use Case per un intero flusso si ha la la struttura di base del progetto (che potrebbe essere un intero Package del Test Plan). Nota: E’ sempre un errore entrare troppo nel dettaglio su processi ancora non definiti: si rischia sempre di fare un doppio lavoro. E’ bene decidere quale Use Case dovrà essere sviluppato nel prossimo sprint e concentrarsi su quello. 6 By Stefano Trojani – All rights reserved
  • 7. Use Case Efficaci Fase 3: Scrivere Use Case 7 By Stefano Trojani – All rights reserved
  • 8. Use Case Efficaci Fase 3: Scrivere Use Case (parte prima) Il nucleo dello Use Case è lo scenario di successo (o Happy Ending, Success Scenario, Positive End to End). Ossia una lista indicativamente da 5 a 15 step che descrivono come un Attore si interfaccia al sistema. NOTA: Un Use Case è ben definito quando descrive in modo conciso come il sistema si deve comportare. E’ importante imparare a scrivere descrizioni brevi. Ogni step deve descrivere un'azione intrapresa sia dal Sistema che dall’Attore. 8 By Stefano Trojani – All rights reserved
  • 9. Use Case Efficaci Fase 3: Scrivere Use Case (parte seconda) Le azioni comuni rientrano in una delle seguenti categorie Tipo di passo Esempio 1.Il Sistema fornisce informazioni all‘Attore Sistema visualizza i risultati della ricerca. 1.Il Sistema richiede info all‘Attore Sistema richiede di accettare le T&C. 1.Il Sistema funziona per conto dell‘Attore Sistema invia la richiesta al sistema di pagamento. 1.L’Attore fa una scelta L’utente accetta l'invito. 1.L’Attore fornisce informazioni al Sistema L’utente inserisce i suoi dati anagrafici 9 By Stefano Trojani – All rights reserved
  • 10. Use Case Efficaci Fase 3: Scrivere Use Case (parte terza) Per mantenere lo scenario leggibile e mantenibile è bene NON inserire informazioni riguardanti : • • • • • } l'interfaccia utente (UX) content e testi il formato dei dati passati regole di business (Marketing) prestazioni (e altri requisiti non funzionali) By Stefano Trojani – All rights reserved NO! 10
  • 11. Use Case Efficaci Fase 4: adattare il livello di dettaglio 11 By Stefano Trojani – All rights reserved
  • 12. Use Case Efficaci Fase 4: adattare il livello di dettaglio La scrittura dello Use Case può essere lunga e complessa (nome, descrizione, scenario di successo, precondizioni… etc..) A volte molti di questi step possono essere omettessi per evitare di descrivere casi d’uso inutili ESEMPIO: Conviene omettere tutti i casi di mistmatch di un login quando si deve dettagliare un flusso più complesso. TIP: Per iniziare si può provare a scrivere solo il nome e la descrizione (come una user story). Se il processo funziona non sarà necessario aggiungere altro. Se servissero altri dettagli sarà sempre possibile aggiungere maggiori informazioni in futuro. 12 By Stefano Trojani – All rights reserved
  • 13. Adesso… Fare dei buoni Use Case It’s UP to YOU! By Stefano Trojani – All rights reserved 13
  • 14. Use Case Efficaci Grazie! 14 By Stefano Trojani – All rights reserved