SlideShare a Scribd company logo
Forging High-Quality
User Stories
Garm Lucassen, Fabiano Dalpiaz, Jan Martijn E.M. van der Werf, Sjaak Brinkkemper

August 27 2015
Towards a Discipline for Agile Requirements (R13)
Garm LucassenRE’15 August 27 2015
Meet Anne
• Project manager web dev team
• Writes high quality user stories
• Developers do not
• Confused clients
2
Garm LucassenRE’15 August 27 2015
In this presentation
Foundations for:
• Solve Anne’s problem
• Help practitioners write higher quality user stories
• Conduct advanced analyses in future work
3
Garm LucassenRE’15 August 27 2015
What is a user story?
• User stories represent customer requirements in a card,
leading to conversation and confirmation (Jeffries, 2001)
• User stories only capture the essential elements of a
requirement:

- who it is for 

- what it expects from the system

- why it is important (optional)
• Simple format:
4
who what why
(Mike Cohn)
(Yu and Mylopoulos, 1994)
As a role I want to action (so that benefit, , )
Garm LucassenRE’15 August 27 2015
What is a user story?
• “As a User, I want to purchase an event ticket”
• “As a User, I want to be notified when an event is
close to becoming sold out, so that I do not miss
the event”
5
“As a User I want to search for new events by favorited organizers
so that I am the first to know of new events”
, ,
Garm LucassenRE’15 August 27 2015
Overview
1. Quality User Story Framework
2. Conceptual Model of User Stories
3. Cross-Story Relationships
4. Automatic Quality User Story Artisan (AQUSA)
6
1. What is user story quality?
2. Conceptualizing a user story
3. Cross-story relationships
4. Automating the QUS Framework
Garm LucassenRE’15 August 27 2015
Quality User Story Framework
Introduction
• Defines 14 quality criteria for individual and sets
of user stories
• All derivable from user story text
• Ignores requirements management concerns
such as effort estimation and comments
8
Garm LucassenRE’15 August 27 2015
Quality User Story Framework
Overview
9
Garm LucassenRE’15 August 27 2015 10
Atomic
A user story expresses a requirement for exactly one feature
Quality defect example
As a User, I want to click a particular location from the map and thereby perform a
search of landmarks associated with that latitude longitude combination
➡
1. As a User, I want to click a particular location from the map 

2. As a User, I want to search landmarks associated with a location based on lat long
split
Example 1- syntactic
Garm LucassenRE’15 August 27 2015
Example 2 - semantic
11
Problem-oriented
A user story only specifies the problem, not the solution to it
Quality defect example
As a care professional I want to save a reimbursement. - Add save button on top
right (never grayed out)
➡
As a care professional I want to save a reimbursement
remove solution
Garm LucassenRE’15 August 27 2015
Example 3 - pragmatic
12
Uniform
All user stories follow roughly the same template
Quality defect example
1. As a User, I want to create an account

2. As a User, I want to reset my password

3. As an Administrator, I receive an email notification when a new user is registered
➡
As an Administrator, I want to receive an email notification when a new user is
registered
add want to
2. Conceptualizing a user story
1. What is user story quality?
3. Cross-story relationships
4. Automating the QUS Framework
Garm LucassenRE’15 August 27 2015
Conceptual model
14
Subject
User Story
EndMeans
Role
1 1..*
1
0..*
Format0..1
1..*
has_parent
Action Verb
Direct
Object
Indirect
object
Adjective
1
Epic
1..*
has
QualityClarification
0..* 0..*
11
1 1 10..* 0..*
Dependency
0..*
Garm LucassenRE’15 August 27 2015
“As a User, I want to search for new events by favorited organizers,
so that I am the first to know of new events”
Conceptual model
15
User Story
EndMeans
Role
1 1..*
1
0..*
Format0..1
1..*
has_parent
1
11
Garm LucassenRE’15 August 27 2015 16
User Story
EndMeans
Role
1 1..*
1
0..*
Format
1
11
0..1
1..*
has_parent
“As a User I want to search for new events by favorited organizers
so that I am the first to know of new events”
, ,
Garm LucassenRE’15 August 27 2015
Means concepts
17
Subject
Means
Action Verb
Direct
Object
Indirect
object
Adjective
1 1 10..* 0..*
“I want to search for new events by favorited organizers”I search eventsnew
Subject Action Verb
Direct
Object
Adjective
Indirect
object
favorited organizers
Garm LucassenRE’15 August 27 2015
Ends concepts
“so that I am the first to know of new events”
18
End
QualityClarification
0..* 0..*
Dependency
0..*
“so that I am the first to know of new events”new events
DependencyClarification Quality
the first
Garm LucassenRE’15 August 27 2015
Conceptual model
19
Subject
User Story
EndMeans
Role
1 1..*
1
0..*
Format0..1
1..*
has_parent
Action Verb
Direct
Object
Indirect
object
Adjective
1
Epic
1..*
has
QualityClarification
0..* 0..*
11
1 1 10..* 0..*
Dependency
0..*
1. What is user story quality?
2. Conceptualizing a user story
4. Automating the QUS Framework
3. Cross-story relationships
- Complete
- Independent
- Uniform
- Unique
Garm LucassenRE’15 August 27 2015
Cross-story relationships (1)
Complete
When user stories imply necessity of functionality not yet captured in
another user story, the set is incomplete
Example: to read, update or delete an item you must first create it
Example:
US1: As a User, I want to delete an event
US2: As a User, I want to update an event
US3: As a User, I want to create an event
21
Requires➡
Garm LucassenRE’15 August 27 2015
Cross-story relationships (2)
Independent
There are many ways in which user stories are dependent on another user
story. Two examples are causality and superclasses:
Example: ‘content’ can refer to different types of multimedia. Audio, video,
photographs, annotated text, …
Example:
US1: As a User, I want to edit profile content
US2: As a User, I want to upload a profile photo
US3: As a User, I want to provide profile text
22
refers to➡
Garm LucassenRE’15 August 27 2015
Cross-story relationships (3)
Uniform
A user story has a format that is consistent with the format of all other
user stories
Example: all user stories (roughly) follow the template
Example:
US1. As a User, I want to create an account

US2. As a User, I want to reset my password

US3. As an Administrator, I receive an email notification when a new user is registered
US3’. As an Administrator, I want to receive an email notification when a new user is
registered
23
change to➡
As a role I want to action (so that benefit, , )
Garm LucassenRE’15 August 27 2015
Cross-story relationships (4)
Unique
No other user story is identically or semantically the same or too
similar. Many different ways: exact or semantic duplicate, 

different role or ends = means
Example:
US1: As a User, I want to edit an event
US2: As a User, I want to change an event
24
4. Automating the QUS Framework
1. What is user story quality?
2. Conceptualizing a user story
3. Cross-story relationships
Garm LucassenRE’15 August 27 2015
Automatic Quality User
Story Artisan
• Automatically assess user story quality
• Restrict ourselves to criteria with potential for 100% recall
• Syntactic:

Well-formed

Atomic

Minimal
• Semantic 100% recall unachievable
• Selection of pragmatic:

Explicit dependencies

Uniform

Unique
26
(Daniel Berry et al., 2012)
User
Stories
AQUSA
Linguistic
Parser
Enhancer
Analyzer
Synonyms Homonyms Ontologies
Error
Report
Atomic
Explicit
dependencies UniqueMinimal Uniform
Report
generator
User story
base
(Ryan, 1993)
Garm LucassenRE’15 August 27 2015 27
Automatic Quality User
Story Artisan
Well-formedAtomic Minimal Uniform Unique
AQUSA
√
only one feature no unnecessary text follows the template has a role and meansno duplicates
(with my name)
“As a Visitor, I want to supply my personal details, so that
the ticket is personalized ”
√√√⤫
“As a Visitor, I want to supply my personal details, so that
the ticket is personalized (with my name)”
error
!
none found
√Explicit
dependencies
Garm LucassenRE’15 August 27 2015 28
Automatic Quality User
Story Artisan
Well-formedAtomic Minimal Uniform Unique
AQUSA
√
only one feature no unnecessary text follows the template has a role and meansno duplicates
√√√
“As a Visitor, I want to supply my personal details, so that
the ticket is personalized”
none found
√Explicit
dependencies
√ “As a Visitor, I want to supply my personal details, so that
the ticket is personalized”
√
perfect
story
Garm LucassenRE’15 August 27 2015
Automatic Quality User
Story Artisan
29
Garm LucassenRE’15 August 27 2015
AQUSA evaluation
• Measure:

Accuracy

Precision

Recall

Most common violations
• Apply mechanics to three datasets
1. Tailor made software project from small NL comp (98 US)
2. POS prod by Belgian team outsources to Romania (124 US)
3. Advanced health care product recently adopted US (24 US)
30
Garm LucassenRE’15 August 27 2015
AQUSA evaluation
• 25% of selected stories violate one or more quality criteria
• These data sets: 100% recall and 71% precision
31
Set 1 (n=96) Set 2 (n=24) Set 3 (n=124)
V FP V FP V FP
Atomic 7 5 10 3 17 12
Minimal 0 - 17 - 16 -
Well-formed 8 - 2 - 6 -
Explicit
dependencies 0 - 1 - 0 -
Uniform 14 4 2 - 1 -
Unique 2 - 0 - 0 -
Total US 

with errors 27 9 19 3 37 12
Garm LucassenRE’15 August 27 2015
AQUSA evaluation
• Violation types vary: uniform, minimal, atomic
• Sneak preview: in new tests more diverse violations
and larger number of edge cases
32
Set 1 (n=96) Set 2 (n=24) Set 3 (n=124)
V FP V FP V FP
Atomic 7 5 10 3 17 12
Minimal 0 - 17 - 16 -
Well-formed 8 - 2 - 6 -
Explicit
dependencies 0 - 1 - 0 -
Uniform 14 4 2 - 1 -
Unique 2 - 0 - 0 -
Total US 

with errors 27 9 19 3 37 12
Garm LucassenRE’15 August 27 2015
Conclusion
• Presented the theoretical foundation for improving
user story quality using NLP:
• QUS Framework
• Conceptual model
• Cross-story relationships
• Applying AQUSA shows
• Relevant quality defects present in real-world
data
• Feasible to automatically detect quality defects
33
Garm LucassenRE’15 August 27 2015
Future work
• Realize and evaluate AQUSA (started)

Please contribute: https://github.com/gglucass/AQUSA
• Explore role of domain & foundational ontologies
• How do practitioners use user stories? (ongoing)
• Longitudinal study w/ AQUSA in multiple software
companies
34
Garm Lucassen: g.lucassen@uu.nl
Fabiano Dalpiaz: f.dalpiaz@uu.nl
Jan Martijn van der Werf: j.m.e.m.vanderwerf@uu.nl
Sjaak Brinkkemper: s.brinkkemper@uu.nl
Thank you!
Garm LucassenRE’15 August 27 2015
References
• M. Cohn, User Stories Applied: for Agile Software Development. Red- wood City, CA,
USA: Addison Wesley Longman Publishing Co., Inc., 2004.
• O. I. Lindland, G. Sindre, and A. Sølvberg, “Understanding Quality in Conceptual
Modeling,” IEEE Software, vol. 11, no. 2, pp. 42–49, 1994.
• D. Berry, R. Gacitua, P. Sawyer, and S. Tjong, “The Case for Dumb Requirements
Engineering Tools,” in Proc. of Requirements Engineer- ing: Foundation for Software
Quality. Springer, 2012, vol. 7195, pp. 211–217.
• IEEE Computer Society, “IEEE Recommended Practice for Software Requirements
Specifications,” IEEE Std 830-1993, 1994.
• Jeffries, Ron. “Essential XP: Card, Conversation, and Confirmation.” XP Magazine
(August 30, 2001)
• P. Heck and A. Zaidman, “A Quality Framework for Agile Requirements: A
Practitioner’s Perspective,” CoRR, vol. abs/1406.4692, 2014. [Online]. Available: http://
arxiv.org/abs/1406.4692
36
Garm LucassenRE’15 August 27 2015
AQUSA Architecture
37
User
Stories
AQUSA
Linguistic
Parser
Enhancer
Analyzer
Synonyms Homonyms Ontologies
Error
Report
Atomic
Explicit
dependencies UniqueMinimal Uniform
Report
generator
User story
base

More Related Content

Similar to "Forging High Quality User Stories: Towards a Discipline for Agile Requirements" - Requirements Engineering 2015

Use case diagrams
Use case diagramsUse case diagrams
Use case diagrams
Fajar Baskoro
 
Use case diagrams
Use case diagramsUse case diagrams
Use case diagrams
mohamed tahoon
 
User stories — how to cook a cat?
User stories — how to cook a cat?User stories — how to cook a cat?
User stories — how to cook a cat?
Vladimir Tarasov
 
Lecture no 8 use case modeling and use case diagrams
Lecture no 8 use case modeling and use case diagramsLecture no 8 use case modeling and use case diagrams
Lecture no 8 use case modeling and use case diagrams
naveed428
 
User Story vs. UseCase : Introductory Primer
User Story vs. UseCase : Introductory PrimerUser Story vs. UseCase : Introductory Primer
User Story vs. UseCase : Introductory Primer
Kristyn Greenwood
 
Random Walk by User Trust and Temporal Issues toward Sparsity Problem in Soci...
Random Walk by User Trust and Temporal Issues toward Sparsity Problem in Soci...Random Walk by User Trust and Temporal Issues toward Sparsity Problem in Soci...
Random Walk by User Trust and Temporal Issues toward Sparsity Problem in Soci...
Sc Huang
 
scenario testing in software testing
 scenario testing in software testing scenario testing in software testing
scenario testing in software testing
durgaaarthi
 
Session15+16-User Story (2).pdf
Session15+16-User Story (2).pdfSession15+16-User Story (2).pdf
Session15+16-User Story (2).pdf
PeterTran514407
 
SE_RE-II-CH5 (3).pdf
SE_RE-II-CH5 (3).pdfSE_RE-II-CH5 (3).pdf
SE_RE-II-CH5 (3).pdf
AZKANAAZ1
 
Requirements Analysis
Requirements AnalysisRequirements Analysis
Requirements Analysis
Sibel Kuzgun AKIN
 
Use Case Model with components in software.ppt
Use Case Model with components in software.pptUse Case Model with components in software.ppt
Use Case Model with components in software.ppt
TalhaTajammal1
 
User stories — broken vision broke the knees
User stories — broken vision broke the kneesUser stories — broken vision broke the knees
User stories — broken vision broke the knees
Vladimir Tarasov
 
Use Case Modelling.pptx
Use Case Modelling.pptxUse Case Modelling.pptx
Use Case Modelling.pptx
azida3
 
User stories explained
User stories explainedUser stories explained
Defining The System
Defining The SystemDefining The System
Defining The System
Sandeep Ganji
 
Process exploration: Web application user experience
Process exploration: Web application user experienceProcess exploration: Web application user experience
Process exploration: Web application user experience
Valarie Martin Stuart
 
Presentation Use Case Diagram and Use Case Specification.pptx
Presentation Use Case Diagram and Use Case Specification.pptxPresentation Use Case Diagram and Use Case Specification.pptx
Presentation Use Case Diagram and Use Case Specification.pptx
azida3
 
Use case modeling
Use case modelingUse case modeling
Use case modeling
Wajahat Hasnain
 
chapter_5_5.ppt
chapter_5_5.pptchapter_5_5.ppt
chapter_5_5.ppt
MonirHossain707319
 
Lecture 3 OOSE.pdf
Lecture 3 OOSE.pdfLecture 3 OOSE.pdf
Lecture 3 OOSE.pdf
amanuel236786
 

Similar to "Forging High Quality User Stories: Towards a Discipline for Agile Requirements" - Requirements Engineering 2015 (20)

Use case diagrams
Use case diagramsUse case diagrams
Use case diagrams
 
Use case diagrams
Use case diagramsUse case diagrams
Use case diagrams
 
User stories — how to cook a cat?
User stories — how to cook a cat?User stories — how to cook a cat?
User stories — how to cook a cat?
 
Lecture no 8 use case modeling and use case diagrams
Lecture no 8 use case modeling and use case diagramsLecture no 8 use case modeling and use case diagrams
Lecture no 8 use case modeling and use case diagrams
 
User Story vs. UseCase : Introductory Primer
User Story vs. UseCase : Introductory PrimerUser Story vs. UseCase : Introductory Primer
User Story vs. UseCase : Introductory Primer
 
Random Walk by User Trust and Temporal Issues toward Sparsity Problem in Soci...
Random Walk by User Trust and Temporal Issues toward Sparsity Problem in Soci...Random Walk by User Trust and Temporal Issues toward Sparsity Problem in Soci...
Random Walk by User Trust and Temporal Issues toward Sparsity Problem in Soci...
 
scenario testing in software testing
 scenario testing in software testing scenario testing in software testing
scenario testing in software testing
 
Session15+16-User Story (2).pdf
Session15+16-User Story (2).pdfSession15+16-User Story (2).pdf
Session15+16-User Story (2).pdf
 
SE_RE-II-CH5 (3).pdf
SE_RE-II-CH5 (3).pdfSE_RE-II-CH5 (3).pdf
SE_RE-II-CH5 (3).pdf
 
Requirements Analysis
Requirements AnalysisRequirements Analysis
Requirements Analysis
 
Use Case Model with components in software.ppt
Use Case Model with components in software.pptUse Case Model with components in software.ppt
Use Case Model with components in software.ppt
 
User stories — broken vision broke the knees
User stories — broken vision broke the kneesUser stories — broken vision broke the knees
User stories — broken vision broke the knees
 
Use Case Modelling.pptx
Use Case Modelling.pptxUse Case Modelling.pptx
Use Case Modelling.pptx
 
User stories explained
User stories explainedUser stories explained
User stories explained
 
Defining The System
Defining The SystemDefining The System
Defining The System
 
Process exploration: Web application user experience
Process exploration: Web application user experienceProcess exploration: Web application user experience
Process exploration: Web application user experience
 
Presentation Use Case Diagram and Use Case Specification.pptx
Presentation Use Case Diagram and Use Case Specification.pptxPresentation Use Case Diagram and Use Case Specification.pptx
Presentation Use Case Diagram and Use Case Specification.pptx
 
Use case modeling
Use case modelingUse case modeling
Use case modeling
 
chapter_5_5.ppt
chapter_5_5.pptchapter_5_5.ppt
chapter_5_5.ppt
 
Lecture 3 OOSE.pdf
Lecture 3 OOSE.pdfLecture 3 OOSE.pdf
Lecture 3 OOSE.pdf
 

More from Garm Lucassen

ISPMA Company Membership Information
ISPMA Company Membership InformationISPMA Company Membership Information
ISPMA Company Membership Information
Garm Lucassen
 
SPM1 - Introductie
SPM1 - IntroductieSPM1 - Introductie
SPM1 - Introductie
Garm Lucassen
 
NISI Introductie Continuous Delivery 3.0
NISI Introductie Continuous Delivery 3.0NISI Introductie Continuous Delivery 3.0
NISI Introductie Continuous Delivery 3.0
Garm Lucassen
 
SPM Cursus introductie
SPM Cursus introductieSPM Cursus introductie
SPM Cursus introductie
Garm Lucassen
 
SPM lecture2 Requirements Management and Identification
SPM lecture2 Requirements Management and IdentificationSPM lecture2 Requirements Management and Identification
SPM lecture2 Requirements Management and Identification
Garm Lucassen
 
SPM Lecture 1 - Introduction
SPM Lecture 1 - IntroductionSPM Lecture 1 - Introduction
SPM Lecture 1 - Introduction
Garm Lucassen
 
SPM 5 - Release Planning
SPM 5 - Release PlanningSPM 5 - Release Planning
SPM 5 - Release Planning
Garm Lucassen
 
AAMA Prototype
AAMA PrototypeAAMA Prototype
AAMA Prototype
Garm Lucassen
 

More from Garm Lucassen (8)

ISPMA Company Membership Information
ISPMA Company Membership InformationISPMA Company Membership Information
ISPMA Company Membership Information
 
SPM1 - Introductie
SPM1 - IntroductieSPM1 - Introductie
SPM1 - Introductie
 
NISI Introductie Continuous Delivery 3.0
NISI Introductie Continuous Delivery 3.0NISI Introductie Continuous Delivery 3.0
NISI Introductie Continuous Delivery 3.0
 
SPM Cursus introductie
SPM Cursus introductieSPM Cursus introductie
SPM Cursus introductie
 
SPM lecture2 Requirements Management and Identification
SPM lecture2 Requirements Management and IdentificationSPM lecture2 Requirements Management and Identification
SPM lecture2 Requirements Management and Identification
 
SPM Lecture 1 - Introduction
SPM Lecture 1 - IntroductionSPM Lecture 1 - Introduction
SPM Lecture 1 - Introduction
 
SPM 5 - Release Planning
SPM 5 - Release PlanningSPM 5 - Release Planning
SPM 5 - Release Planning
 
AAMA Prototype
AAMA PrototypeAAMA Prototype
AAMA Prototype
 

Recently uploaded

Unveiling the Dynamic Personalities, Key Dates, and Horoscope Insights: Gemin...
Unveiling the Dynamic Personalities, Key Dates, and Horoscope Insights: Gemin...Unveiling the Dynamic Personalities, Key Dates, and Horoscope Insights: Gemin...
Unveiling the Dynamic Personalities, Key Dates, and Horoscope Insights: Gemin...
my Pandit
 
Anny Serafina Love - Letter of Recommendation by Kellen Harkins, MS.
Anny Serafina Love - Letter of Recommendation by Kellen Harkins, MS.Anny Serafina Love - Letter of Recommendation by Kellen Harkins, MS.
Anny Serafina Love - Letter of Recommendation by Kellen Harkins, MS.
AnnySerafinaLove
 
Maksym Vyshnivetskyi: PMO KPIs (UA) (#12)
Maksym Vyshnivetskyi: PMO KPIs (UA) (#12)Maksym Vyshnivetskyi: PMO KPIs (UA) (#12)
Maksym Vyshnivetskyi: PMO KPIs (UA) (#12)
Lviv Startup Club
 
❼❷⓿❺❻❷❽❷❼❽ Dpboss Matka Result Satta Matka Guessing Satta Fix jodi Kalyan Fin...
❼❷⓿❺❻❷❽❷❼❽ Dpboss Matka Result Satta Matka Guessing Satta Fix jodi Kalyan Fin...❼❷⓿❺❻❷❽❷❼❽ Dpboss Matka Result Satta Matka Guessing Satta Fix jodi Kalyan Fin...
❼❷⓿❺❻❷❽❷❼❽ Dpboss Matka Result Satta Matka Guessing Satta Fix jodi Kalyan Fin...
❼❷⓿❺❻❷❽❷❼❽ Dpboss Kalyan Satta Matka Guessing Matka Result Main Bazar chart
 
GKohler - Retail Scavenger Hunt Presentation
GKohler - Retail Scavenger Hunt PresentationGKohler - Retail Scavenger Hunt Presentation
GKohler - Retail Scavenger Hunt Presentation
GraceKohler1
 
2024-6-01-IMPACTSilver-Corp-Presentation.pdf
2024-6-01-IMPACTSilver-Corp-Presentation.pdf2024-6-01-IMPACTSilver-Corp-Presentation.pdf
2024-6-01-IMPACTSilver-Corp-Presentation.pdf
hartfordclub1
 
DearbornMusic-KatherineJasperFullSailUni
DearbornMusic-KatherineJasperFullSailUniDearbornMusic-KatherineJasperFullSailUni
DearbornMusic-KatherineJasperFullSailUni
katiejasper96
 
Hamster Kombat' Telegram Game Surpasses 100 Million Players—Token Release Sch...
Hamster Kombat' Telegram Game Surpasses 100 Million Players—Token Release Sch...Hamster Kombat' Telegram Game Surpasses 100 Million Players—Token Release Sch...
Hamster Kombat' Telegram Game Surpasses 100 Million Players—Token Release Sch...
SOFTTECHHUB
 
HOW TO START UP A COMPANY A STEP-BY-STEP GUIDE.pdf
HOW TO START UP A COMPANY A STEP-BY-STEP GUIDE.pdfHOW TO START UP A COMPANY A STEP-BY-STEP GUIDE.pdf
HOW TO START UP A COMPANY A STEP-BY-STEP GUIDE.pdf
46adnanshahzad
 
Top 10 Free Accounting and Bookkeeping Apps for Small Businesses
Top 10 Free Accounting and Bookkeeping Apps for Small BusinessesTop 10 Free Accounting and Bookkeeping Apps for Small Businesses
Top 10 Free Accounting and Bookkeeping Apps for Small Businesses
YourLegal Accounting
 
Lundin Gold Corporate Presentation - June 2024
Lundin Gold Corporate Presentation - June 2024Lundin Gold Corporate Presentation - June 2024
Lundin Gold Corporate Presentation - June 2024
Adnet Communications
 
The Steadfast and Reliable Bull: Taurus Zodiac Sign
The Steadfast and Reliable Bull: Taurus Zodiac SignThe Steadfast and Reliable Bull: Taurus Zodiac Sign
The Steadfast and Reliable Bull: Taurus Zodiac Sign
my Pandit
 
Profiles of Iconic Fashion Personalities.pdf
Profiles of Iconic Fashion Personalities.pdfProfiles of Iconic Fashion Personalities.pdf
Profiles of Iconic Fashion Personalities.pdf
TTop Threads
 
Best Competitive Marble Pricing in Dubai - ☎ 9928909666
Best Competitive Marble Pricing in Dubai - ☎ 9928909666Best Competitive Marble Pricing in Dubai - ☎ 9928909666
Best Competitive Marble Pricing in Dubai - ☎ 9928909666
Stone Art Hub
 
Satta Matka Dpboss Matka Guessing Kalyan Chart Indian Matka Kalyan panel Chart
Satta Matka Dpboss Matka Guessing Kalyan Chart Indian Matka Kalyan panel ChartSatta Matka Dpboss Matka Guessing Kalyan Chart Indian Matka Kalyan panel Chart
Satta Matka Dpboss Matka Guessing Kalyan Chart Indian Matka Kalyan panel Chart
➒➌➎➏➑➐➋➑➐➐Dpboss Matka Guessing Satta Matka Kalyan Chart Indian Matka
 
The Genesis of BriansClub.cm Famous Dark WEb Platform
The Genesis of BriansClub.cm Famous Dark WEb PlatformThe Genesis of BriansClub.cm Famous Dark WEb Platform
The Genesis of BriansClub.cm Famous Dark WEb Platform
SabaaSudozai
 
The Most Inspiring Entrepreneurs to Follow in 2024.pdf
The Most Inspiring Entrepreneurs to Follow in 2024.pdfThe Most Inspiring Entrepreneurs to Follow in 2024.pdf
The Most Inspiring Entrepreneurs to Follow in 2024.pdf
thesiliconleaders
 
一比一原版新西兰奥塔哥大学毕业证(otago毕业证)如何办理
一比一原版新西兰奥塔哥大学毕业证(otago毕业证)如何办理一比一原版新西兰奥塔哥大学毕业证(otago毕业证)如何办理
一比一原版新西兰奥塔哥大学毕业证(otago毕业证)如何办理
taqyea
 
Industrial Tech SW: Category Renewal and Creation
Industrial Tech SW:  Category Renewal and CreationIndustrial Tech SW:  Category Renewal and Creation
Industrial Tech SW: Category Renewal and Creation
Christian Dahlen
 
Dpboss Matka Guessing Satta Matta Matka Kalyan panel Chart Indian Matka Dpbos...
Dpboss Matka Guessing Satta Matta Matka Kalyan panel Chart Indian Matka Dpbos...Dpboss Matka Guessing Satta Matta Matka Kalyan panel Chart Indian Matka Dpbos...
Dpboss Matka Guessing Satta Matta Matka Kalyan panel Chart Indian Matka Dpbos...
➒➌➎➏➑➐➋➑➐➐Dpboss Matka Guessing Satta Matka Kalyan Chart Indian Matka
 

Recently uploaded (20)

Unveiling the Dynamic Personalities, Key Dates, and Horoscope Insights: Gemin...
Unveiling the Dynamic Personalities, Key Dates, and Horoscope Insights: Gemin...Unveiling the Dynamic Personalities, Key Dates, and Horoscope Insights: Gemin...
Unveiling the Dynamic Personalities, Key Dates, and Horoscope Insights: Gemin...
 
Anny Serafina Love - Letter of Recommendation by Kellen Harkins, MS.
Anny Serafina Love - Letter of Recommendation by Kellen Harkins, MS.Anny Serafina Love - Letter of Recommendation by Kellen Harkins, MS.
Anny Serafina Love - Letter of Recommendation by Kellen Harkins, MS.
 
Maksym Vyshnivetskyi: PMO KPIs (UA) (#12)
Maksym Vyshnivetskyi: PMO KPIs (UA) (#12)Maksym Vyshnivetskyi: PMO KPIs (UA) (#12)
Maksym Vyshnivetskyi: PMO KPIs (UA) (#12)
 
❼❷⓿❺❻❷❽❷❼❽ Dpboss Matka Result Satta Matka Guessing Satta Fix jodi Kalyan Fin...
❼❷⓿❺❻❷❽❷❼❽ Dpboss Matka Result Satta Matka Guessing Satta Fix jodi Kalyan Fin...❼❷⓿❺❻❷❽❷❼❽ Dpboss Matka Result Satta Matka Guessing Satta Fix jodi Kalyan Fin...
❼❷⓿❺❻❷❽❷❼❽ Dpboss Matka Result Satta Matka Guessing Satta Fix jodi Kalyan Fin...
 
GKohler - Retail Scavenger Hunt Presentation
GKohler - Retail Scavenger Hunt PresentationGKohler - Retail Scavenger Hunt Presentation
GKohler - Retail Scavenger Hunt Presentation
 
2024-6-01-IMPACTSilver-Corp-Presentation.pdf
2024-6-01-IMPACTSilver-Corp-Presentation.pdf2024-6-01-IMPACTSilver-Corp-Presentation.pdf
2024-6-01-IMPACTSilver-Corp-Presentation.pdf
 
DearbornMusic-KatherineJasperFullSailUni
DearbornMusic-KatherineJasperFullSailUniDearbornMusic-KatherineJasperFullSailUni
DearbornMusic-KatherineJasperFullSailUni
 
Hamster Kombat' Telegram Game Surpasses 100 Million Players—Token Release Sch...
Hamster Kombat' Telegram Game Surpasses 100 Million Players—Token Release Sch...Hamster Kombat' Telegram Game Surpasses 100 Million Players—Token Release Sch...
Hamster Kombat' Telegram Game Surpasses 100 Million Players—Token Release Sch...
 
HOW TO START UP A COMPANY A STEP-BY-STEP GUIDE.pdf
HOW TO START UP A COMPANY A STEP-BY-STEP GUIDE.pdfHOW TO START UP A COMPANY A STEP-BY-STEP GUIDE.pdf
HOW TO START UP A COMPANY A STEP-BY-STEP GUIDE.pdf
 
Top 10 Free Accounting and Bookkeeping Apps for Small Businesses
Top 10 Free Accounting and Bookkeeping Apps for Small BusinessesTop 10 Free Accounting and Bookkeeping Apps for Small Businesses
Top 10 Free Accounting and Bookkeeping Apps for Small Businesses
 
Lundin Gold Corporate Presentation - June 2024
Lundin Gold Corporate Presentation - June 2024Lundin Gold Corporate Presentation - June 2024
Lundin Gold Corporate Presentation - June 2024
 
The Steadfast and Reliable Bull: Taurus Zodiac Sign
The Steadfast and Reliable Bull: Taurus Zodiac SignThe Steadfast and Reliable Bull: Taurus Zodiac Sign
The Steadfast and Reliable Bull: Taurus Zodiac Sign
 
Profiles of Iconic Fashion Personalities.pdf
Profiles of Iconic Fashion Personalities.pdfProfiles of Iconic Fashion Personalities.pdf
Profiles of Iconic Fashion Personalities.pdf
 
Best Competitive Marble Pricing in Dubai - ☎ 9928909666
Best Competitive Marble Pricing in Dubai - ☎ 9928909666Best Competitive Marble Pricing in Dubai - ☎ 9928909666
Best Competitive Marble Pricing in Dubai - ☎ 9928909666
 
Satta Matka Dpboss Matka Guessing Kalyan Chart Indian Matka Kalyan panel Chart
Satta Matka Dpboss Matka Guessing Kalyan Chart Indian Matka Kalyan panel ChartSatta Matka Dpboss Matka Guessing Kalyan Chart Indian Matka Kalyan panel Chart
Satta Matka Dpboss Matka Guessing Kalyan Chart Indian Matka Kalyan panel Chart
 
The Genesis of BriansClub.cm Famous Dark WEb Platform
The Genesis of BriansClub.cm Famous Dark WEb PlatformThe Genesis of BriansClub.cm Famous Dark WEb Platform
The Genesis of BriansClub.cm Famous Dark WEb Platform
 
The Most Inspiring Entrepreneurs to Follow in 2024.pdf
The Most Inspiring Entrepreneurs to Follow in 2024.pdfThe Most Inspiring Entrepreneurs to Follow in 2024.pdf
The Most Inspiring Entrepreneurs to Follow in 2024.pdf
 
一比一原版新西兰奥塔哥大学毕业证(otago毕业证)如何办理
一比一原版新西兰奥塔哥大学毕业证(otago毕业证)如何办理一比一原版新西兰奥塔哥大学毕业证(otago毕业证)如何办理
一比一原版新西兰奥塔哥大学毕业证(otago毕业证)如何办理
 
Industrial Tech SW: Category Renewal and Creation
Industrial Tech SW:  Category Renewal and CreationIndustrial Tech SW:  Category Renewal and Creation
Industrial Tech SW: Category Renewal and Creation
 
Dpboss Matka Guessing Satta Matta Matka Kalyan panel Chart Indian Matka Dpbos...
Dpboss Matka Guessing Satta Matta Matka Kalyan panel Chart Indian Matka Dpbos...Dpboss Matka Guessing Satta Matta Matka Kalyan panel Chart Indian Matka Dpbos...
Dpboss Matka Guessing Satta Matta Matka Kalyan panel Chart Indian Matka Dpbos...
 

"Forging High Quality User Stories: Towards a Discipline for Agile Requirements" - Requirements Engineering 2015

  • 1. Forging High-Quality User Stories Garm Lucassen, Fabiano Dalpiaz, Jan Martijn E.M. van der Werf, Sjaak Brinkkemper
 August 27 2015 Towards a Discipline for Agile Requirements (R13)
  • 2. Garm LucassenRE’15 August 27 2015 Meet Anne • Project manager web dev team • Writes high quality user stories • Developers do not • Confused clients 2
  • 3. Garm LucassenRE’15 August 27 2015 In this presentation Foundations for: • Solve Anne’s problem • Help practitioners write higher quality user stories • Conduct advanced analyses in future work 3
  • 4. Garm LucassenRE’15 August 27 2015 What is a user story? • User stories represent customer requirements in a card, leading to conversation and confirmation (Jeffries, 2001) • User stories only capture the essential elements of a requirement:
 - who it is for 
 - what it expects from the system
 - why it is important (optional) • Simple format: 4 who what why (Mike Cohn) (Yu and Mylopoulos, 1994) As a role I want to action (so that benefit, , )
  • 5. Garm LucassenRE’15 August 27 2015 What is a user story? • “As a User, I want to purchase an event ticket” • “As a User, I want to be notified when an event is close to becoming sold out, so that I do not miss the event” 5 “As a User I want to search for new events by favorited organizers so that I am the first to know of new events” , ,
  • 6. Garm LucassenRE’15 August 27 2015 Overview 1. Quality User Story Framework 2. Conceptual Model of User Stories 3. Cross-Story Relationships 4. Automatic Quality User Story Artisan (AQUSA) 6
  • 7. 1. What is user story quality? 2. Conceptualizing a user story 3. Cross-story relationships 4. Automating the QUS Framework
  • 8. Garm LucassenRE’15 August 27 2015 Quality User Story Framework Introduction • Defines 14 quality criteria for individual and sets of user stories • All derivable from user story text • Ignores requirements management concerns such as effort estimation and comments 8
  • 9. Garm LucassenRE’15 August 27 2015 Quality User Story Framework Overview 9
  • 10. Garm LucassenRE’15 August 27 2015 10 Atomic A user story expresses a requirement for exactly one feature Quality defect example As a User, I want to click a particular location from the map and thereby perform a search of landmarks associated with that latitude longitude combination ➡ 1. As a User, I want to click a particular location from the map 
 2. As a User, I want to search landmarks associated with a location based on lat long split Example 1- syntactic
  • 11. Garm LucassenRE’15 August 27 2015 Example 2 - semantic 11 Problem-oriented A user story only specifies the problem, not the solution to it Quality defect example As a care professional I want to save a reimbursement. - Add save button on top right (never grayed out) ➡ As a care professional I want to save a reimbursement remove solution
  • 12. Garm LucassenRE’15 August 27 2015 Example 3 - pragmatic 12 Uniform All user stories follow roughly the same template Quality defect example 1. As a User, I want to create an account
 2. As a User, I want to reset my password
 3. As an Administrator, I receive an email notification when a new user is registered ➡ As an Administrator, I want to receive an email notification when a new user is registered add want to
  • 13. 2. Conceptualizing a user story 1. What is user story quality? 3. Cross-story relationships 4. Automating the QUS Framework
  • 14. Garm LucassenRE’15 August 27 2015 Conceptual model 14 Subject User Story EndMeans Role 1 1..* 1 0..* Format0..1 1..* has_parent Action Verb Direct Object Indirect object Adjective 1 Epic 1..* has QualityClarification 0..* 0..* 11 1 1 10..* 0..* Dependency 0..*
  • 15. Garm LucassenRE’15 August 27 2015 “As a User, I want to search for new events by favorited organizers, so that I am the first to know of new events” Conceptual model 15 User Story EndMeans Role 1 1..* 1 0..* Format0..1 1..* has_parent 1 11
  • 16. Garm LucassenRE’15 August 27 2015 16 User Story EndMeans Role 1 1..* 1 0..* Format 1 11 0..1 1..* has_parent “As a User I want to search for new events by favorited organizers so that I am the first to know of new events” , ,
  • 17. Garm LucassenRE’15 August 27 2015 Means concepts 17 Subject Means Action Verb Direct Object Indirect object Adjective 1 1 10..* 0..* “I want to search for new events by favorited organizers”I search eventsnew Subject Action Verb Direct Object Adjective Indirect object favorited organizers
  • 18. Garm LucassenRE’15 August 27 2015 Ends concepts “so that I am the first to know of new events” 18 End QualityClarification 0..* 0..* Dependency 0..* “so that I am the first to know of new events”new events DependencyClarification Quality the first
  • 19. Garm LucassenRE’15 August 27 2015 Conceptual model 19 Subject User Story EndMeans Role 1 1..* 1 0..* Format0..1 1..* has_parent Action Verb Direct Object Indirect object Adjective 1 Epic 1..* has QualityClarification 0..* 0..* 11 1 1 10..* 0..* Dependency 0..*
  • 20. 1. What is user story quality? 2. Conceptualizing a user story 4. Automating the QUS Framework 3. Cross-story relationships - Complete - Independent - Uniform - Unique
  • 21. Garm LucassenRE’15 August 27 2015 Cross-story relationships (1) Complete When user stories imply necessity of functionality not yet captured in another user story, the set is incomplete Example: to read, update or delete an item you must first create it Example: US1: As a User, I want to delete an event US2: As a User, I want to update an event US3: As a User, I want to create an event 21 Requires➡
  • 22. Garm LucassenRE’15 August 27 2015 Cross-story relationships (2) Independent There are many ways in which user stories are dependent on another user story. Two examples are causality and superclasses: Example: ‘content’ can refer to different types of multimedia. Audio, video, photographs, annotated text, … Example: US1: As a User, I want to edit profile content US2: As a User, I want to upload a profile photo US3: As a User, I want to provide profile text 22 refers to➡
  • 23. Garm LucassenRE’15 August 27 2015 Cross-story relationships (3) Uniform A user story has a format that is consistent with the format of all other user stories Example: all user stories (roughly) follow the template Example: US1. As a User, I want to create an account
 US2. As a User, I want to reset my password
 US3. As an Administrator, I receive an email notification when a new user is registered US3’. As an Administrator, I want to receive an email notification when a new user is registered 23 change to➡ As a role I want to action (so that benefit, , )
  • 24. Garm LucassenRE’15 August 27 2015 Cross-story relationships (4) Unique No other user story is identically or semantically the same or too similar. Many different ways: exact or semantic duplicate, 
 different role or ends = means Example: US1: As a User, I want to edit an event US2: As a User, I want to change an event 24
  • 25. 4. Automating the QUS Framework 1. What is user story quality? 2. Conceptualizing a user story 3. Cross-story relationships
  • 26. Garm LucassenRE’15 August 27 2015 Automatic Quality User Story Artisan • Automatically assess user story quality • Restrict ourselves to criteria with potential for 100% recall • Syntactic:
 Well-formed
 Atomic
 Minimal • Semantic 100% recall unachievable • Selection of pragmatic:
 Explicit dependencies
 Uniform
 Unique 26 (Daniel Berry et al., 2012) User Stories AQUSA Linguistic Parser Enhancer Analyzer Synonyms Homonyms Ontologies Error Report Atomic Explicit dependencies UniqueMinimal Uniform Report generator User story base (Ryan, 1993)
  • 27. Garm LucassenRE’15 August 27 2015 27 Automatic Quality User Story Artisan Well-formedAtomic Minimal Uniform Unique AQUSA √ only one feature no unnecessary text follows the template has a role and meansno duplicates (with my name) “As a Visitor, I want to supply my personal details, so that the ticket is personalized ” √√√⤫ “As a Visitor, I want to supply my personal details, so that the ticket is personalized (with my name)” error ! none found √Explicit dependencies
  • 28. Garm LucassenRE’15 August 27 2015 28 Automatic Quality User Story Artisan Well-formedAtomic Minimal Uniform Unique AQUSA √ only one feature no unnecessary text follows the template has a role and meansno duplicates √√√ “As a Visitor, I want to supply my personal details, so that the ticket is personalized” none found √Explicit dependencies √ “As a Visitor, I want to supply my personal details, so that the ticket is personalized” √ perfect story
  • 29. Garm LucassenRE’15 August 27 2015 Automatic Quality User Story Artisan 29
  • 30. Garm LucassenRE’15 August 27 2015 AQUSA evaluation • Measure:
 Accuracy
 Precision
 Recall
 Most common violations • Apply mechanics to three datasets 1. Tailor made software project from small NL comp (98 US) 2. POS prod by Belgian team outsources to Romania (124 US) 3. Advanced health care product recently adopted US (24 US) 30
  • 31. Garm LucassenRE’15 August 27 2015 AQUSA evaluation • 25% of selected stories violate one or more quality criteria • These data sets: 100% recall and 71% precision 31 Set 1 (n=96) Set 2 (n=24) Set 3 (n=124) V FP V FP V FP Atomic 7 5 10 3 17 12 Minimal 0 - 17 - 16 - Well-formed 8 - 2 - 6 - Explicit dependencies 0 - 1 - 0 - Uniform 14 4 2 - 1 - Unique 2 - 0 - 0 - Total US 
 with errors 27 9 19 3 37 12
  • 32. Garm LucassenRE’15 August 27 2015 AQUSA evaluation • Violation types vary: uniform, minimal, atomic • Sneak preview: in new tests more diverse violations and larger number of edge cases 32 Set 1 (n=96) Set 2 (n=24) Set 3 (n=124) V FP V FP V FP Atomic 7 5 10 3 17 12 Minimal 0 - 17 - 16 - Well-formed 8 - 2 - 6 - Explicit dependencies 0 - 1 - 0 - Uniform 14 4 2 - 1 - Unique 2 - 0 - 0 - Total US 
 with errors 27 9 19 3 37 12
  • 33. Garm LucassenRE’15 August 27 2015 Conclusion • Presented the theoretical foundation for improving user story quality using NLP: • QUS Framework • Conceptual model • Cross-story relationships • Applying AQUSA shows • Relevant quality defects present in real-world data • Feasible to automatically detect quality defects 33
  • 34. Garm LucassenRE’15 August 27 2015 Future work • Realize and evaluate AQUSA (started)
 Please contribute: https://github.com/gglucass/AQUSA • Explore role of domain & foundational ontologies • How do practitioners use user stories? (ongoing) • Longitudinal study w/ AQUSA in multiple software companies 34
  • 35. Garm Lucassen: g.lucassen@uu.nl Fabiano Dalpiaz: f.dalpiaz@uu.nl Jan Martijn van der Werf: j.m.e.m.vanderwerf@uu.nl Sjaak Brinkkemper: s.brinkkemper@uu.nl Thank you!
  • 36. Garm LucassenRE’15 August 27 2015 References • M. Cohn, User Stories Applied: for Agile Software Development. Red- wood City, CA, USA: Addison Wesley Longman Publishing Co., Inc., 2004. • O. I. Lindland, G. Sindre, and A. Sølvberg, “Understanding Quality in Conceptual Modeling,” IEEE Software, vol. 11, no. 2, pp. 42–49, 1994. • D. Berry, R. Gacitua, P. Sawyer, and S. Tjong, “The Case for Dumb Requirements Engineering Tools,” in Proc. of Requirements Engineer- ing: Foundation for Software Quality. Springer, 2012, vol. 7195, pp. 211–217. • IEEE Computer Society, “IEEE Recommended Practice for Software Requirements Specifications,” IEEE Std 830-1993, 1994. • Jeffries, Ron. “Essential XP: Card, Conversation, and Confirmation.” XP Magazine (August 30, 2001) • P. Heck and A. Zaidman, “A Quality Framework for Agile Requirements: A Practitioner’s Perspective,” CoRR, vol. abs/1406.4692, 2014. [Online]. Available: http:// arxiv.org/abs/1406.4692 36
  • 37. Garm LucassenRE’15 August 27 2015 AQUSA Architecture 37 User Stories AQUSA Linguistic Parser Enhancer Analyzer Synonyms Homonyms Ontologies Error Report Atomic Explicit dependencies UniqueMinimal Uniform Report generator User story base