agile re with user storiesre18.org/assets/downloads/tutorials/re18-tutorial-t06.pdf · agile re and...
TRANSCRIPT
![Page 1: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/1.jpg)
Agile Requirements Engineering with User Stories
Agile RE with User StoriesHalf-day tutorial at IEEE RE’18
Fabiano Dalpiaz Sjaak Brinkkemper
Requirements Engineering Lab (RE-Lab)Dept. of Information and Computing Sciences
Utrecht [email protected]
August 20, 2018
1 / 102
![Page 2: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/2.jpg)
Agile Requirements Engineering with User Stories
Preliminaries
Table of Contents
1 Preliminaries
2 Agile RE and User Stories: fundamentals
3 The Quality User Story framework
4 Extracting conceptual models
5 Taming ambiguity and incompleteness
6 Wrap up
2 / 102
![Page 3: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/3.jpg)
Agile Requirements Engineering with User Stories
Preliminaries
On this tutorialSpoiler alert!
Four parts
1 Agile RE and user stories: fundamentals
2 The Quality User Story framework
3 Extracting conceptual models
4 Taming ambiguity and incompleteness
Interaction, also via hands-on activities
3 / 102
![Page 4: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/4.jpg)
Agile Requirements Engineering with User Stories
Preliminaries
On this tutorialSpoiler alert!
Four parts
1 Agile RE and user stories: fundamentals
2 The Quality User Story framework
3 Extracting conceptual models
4 Taming ambiguity and incompleteness
Interaction, also via hands-on activities
3 / 102
![Page 5: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/5.jpg)
Agile Requirements Engineering with User Stories
Preliminaries
LiteratureKey papers behind this tutorial
Garm Lucassen, Fabiano Dalpiaz, Jan Martijn E.M. van der Werf, and SjaakBrinkkemper, Improving agile requirements: the Quality User Story frameworkand tool, Requirements Engineering 21 (2016), no. 3, 383–403
Garm Lucassen, Marcel Robeer, Fabiano Dalpiaz, Jan Martijn E. M. van derWerf, and Sjaak Brinkkemper, Extracting conceptual models from user storieswith Visual Narrator, Requirements Engineering 22 (2017), no. 3, 339–358
Fabiano Dalpiaz, Ivor van der Schalk, and Garm Lucassen, PinpointingAmbiguity and Incompleteness in Requirements Engineering via InformationVisualization and NLP, Proceedings of the 24th International WorkingConference on Requirements Engineering: Foundation for Software Quality(REFSQ’18), 2018
4 / 102
![Page 6: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/6.jpg)
Agile Requirements Engineering with User Stories
Preliminaries
Who are we?Dr. Fabiano Dalpiaz
Assistant professor in Requirements Engineeringat Utrecht University
Artificial Intelligence (NLP and more) for RE
Crowd Requirements Engineering
Engaging the stakeholders via games
Modeling languages
Local organizer of REFSQ 2018!
http://www.staff.science.uu.nl/~dalpi001/
5 / 102
![Page 7: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/7.jpg)
Agile Requirements Engineering with User Stories
Preliminaries
Who are we?Prof.dr. Sjaak Brinkkemper
Professor in Software Productionat Utrecht University
Research group of 35 staff and PhDs
Product Software: Methodology ofDevelopment, Implementation,and Entrepreneurship
http://www.uu.nl/staff/SBrinkkemper/0
6 / 102
![Page 8: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/8.jpg)
Agile Requirements Engineering with User Stories
Preliminaries
Who are you?
Name
Organization
Role
Experience with user stories
What do you expect to learn from this tutorial?
7 / 102
![Page 9: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/9.jpg)
Agile Requirements Engineering with User Stories
Preliminaries
Credits
These slides are partially based on the slides by Garm Lucassen and SjaakBrinkkemper presented at earlier tutorials and in professional courses.
8 / 102
![Page 10: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/10.jpg)
Agile Requirements Engineering with User Stories
Preliminaries
Follow the slides
Download these slides from the following URL:https://bit.ly/2OPqiCL
9 / 102
![Page 11: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/11.jpg)
Agile Requirements Engineering with User Stories
Preliminaries
Table of Contents
1 Preliminaries
2 Agile RE and User Stories: fundamentals
3 The Quality User Story framework
4 Extracting conceptual models
5 Taming ambiguity and incompleteness
6 Wrap up
10 / 102
![Page 12: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/12.jpg)
Agile Requirements Engineering with User Stories
Agile RE and User Stories: fundamentals
Table of Contents
1 Preliminaries
2 Agile RE and User Stories: fundamentals
3 The Quality User Story framework
4 Extracting conceptual models
5 Taming ambiguity and incompleteness
6 Wrap up
11 / 102
![Page 13: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/13.jpg)
Agile Requirements Engineering with User Stories
Agile RE and User Stories: fundamentals
What is agile RE?An informal definition
Agile RE [ISM+15]
The term “agile requirements engineering” is used to define the “agileway” of planning, executing and reasoning about requirementsengineering activities.
12 / 102
![Page 14: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/14.jpg)
Agile Requirements Engineering with User Stories
Agile RE and User Stories: fundamentals
Agile RE vs. Traditional REResults from a systematic literature review [ISM+15]
Seventeen practices of agile RE have been studied in the literature:
13 / 102
![Page 15: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/15.jpg)
Agile Requirements Engineering with User Stories
Agile RE and User Stories: fundamentals
Agile RE vs. Traditional REChallenges resolved by agile RE practices
Communication issues
Frequent face-to-face meeting with the customer and among teamsCollocated teams for better collaborationOnsite customer as opposed to contractsAlternate customer representations (proxy customers)Cross-functional agile teamsIntegrated RE process, closer to development
14 / 102
![Page 16: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/16.jpg)
Agile Requirements Engineering with User Stories
Agile RE and User Stories: fundamentals
Agile RE vs. Traditional REChallenges resolved by agile RE practices
Overscoping
One continuous scope flow via continuous prioritizationGradual detailing of requirementsCross-functional teams that share responsibilities
Requirements validation
Requirements prioritization done by the customer picking the mostimportant requirementsPrototyping that provide a product blueprint
15 / 102
![Page 17: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/17.jpg)
Agile Requirements Engineering with User Stories
Agile RE and User Stories: fundamentals
Agile RE vs. Traditional REChallenges resolved by agile RE practices
Overscoping
One continuous scope flow via continuous prioritizationGradual detailing of requirementsCross-functional teams that share responsibilities
Requirements validation
Requirements prioritization done by the customer picking the mostimportant requirementsPrototyping that provide a product blueprint
15 / 102
![Page 18: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/18.jpg)
Agile Requirements Engineering with User Stories
Agile RE and User Stories: fundamentals
Agile RE vs. Traditional REChallenges resolved by agile RE practices
Requirements documentation
User stories are precise, to-the-point, and prevent the need for longSRS documents that are hard to updateFace-to-face communication helps reduce ambiguities
Rare customer involvement
Requirements prioritization is done by the customer
16 / 102
![Page 19: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/19.jpg)
Agile Requirements Engineering with User Stories
Agile RE and User Stories: fundamentals
Agile RE vs. Traditional REChallenges resolved by agile RE practices
Requirements documentation
User stories are precise, to-the-point, and prevent the need for longSRS documents that are hard to updateFace-to-face communication helps reduce ambiguities
Rare customer involvement
Requirements prioritization is done by the customer
16 / 102
![Page 20: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/20.jpg)
Agile Requirements Engineering with User Stories
Agile RE and User Stories: fundamentals
Agile RE vs. Traditional REOpen challenges (1/2)
Minimal documentation: user stories and backlogs→ Poor traceability
High customer availability is demanded→ When impossible, increased rework
Inappropriate architecture due to agility→ Increased cost
Budget and time estimations affected by continuous changes→ Project delays
17 / 102
![Page 21: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/21.jpg)
Agile Requirements Engineering with User Stories
Agile RE and User Stories: fundamentals
Agile RE vs. Traditional REOpen challenges (1/2)
Minimal documentation: user stories and backlogs→ Poor traceability
High customer availability is demanded→ When impossible, increased rework
Inappropriate architecture due to agility→ Increased cost
Budget and time estimations affected by continuous changes→ Project delays
17 / 102
![Page 22: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/22.jpg)
Agile Requirements Engineering with User Stories
Agile RE and User Stories: fundamentals
Agile RE vs. Traditional REOpen challenges (2/2)
Customer inability and lack of agreement→ Increased rework
Contractual limitations hindering change→ Increased cost
Requirements change and its consequence→ Work delays
18 / 102
![Page 23: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/23.jpg)
Agile Requirements Engineering with User Stories
Agile RE and User Stories: fundamentals
Your experience with user stories
How would you describe them as requirements?
19 / 102
![Page 24: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/24.jpg)
Agile Requirements Engineering with User Stories
Agile RE and User Stories: fundamentals
What is a user story?Some examples
As a visitor, I want to purchase an event ticket
As a visitor, I want to search for new events by favorited organizers,so that I am the first to know of new events
As a visitor, I want to be notified when an event is close tobecoming sold out, so that I do not miss the event
20 / 102
![Page 25: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/25.jpg)
Agile Requirements Engineering with User Stories
Agile RE and User Stories: fundamentals
What is a user story?Some examples
As a visitor, I want to purchase an event ticket
As a visitor, I want to search for new events by favorited organizers,so that I am the first to know of new events
As a visitor, I want to be notified when an event is close tobecoming sold out, so that I do not miss the event
20 / 102
![Page 26: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/26.jpg)
Agile Requirements Engineering with User Stories
Agile RE and User Stories: fundamentals
What is a user story?Some examples
As a visitor, I want to purchase an event ticket
As a visitor, I want to search for new events by favorited organizers,so that I am the first to know of new events
As a visitor, I want to be notified when an event is close tobecoming sold out, so that I do not miss the event
20 / 102
![Page 27: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/27.jpg)
Agile Requirements Engineering with User Stories
Agile RE and User Stories: fundamentals
What is a user story?Conceptualization
As a 〈role〉, I want to 〈action〉, (so that 〈benefit〉)
User stories only capture the essential elements of a requirement
who it is for
what s/he expects from the system
why it is important (optional?)
21 / 102
![Page 28: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/28.jpg)
Agile Requirements Engineering with User Stories
Agile RE and User Stories: fundamentals
What is a user story?Conceptualization
As a 〈role〉, I want to 〈action〉, (so that 〈benefit〉)
User stories only capture the essential elements of a requirement
who it is for
what s/he expects from the system
why it is important (optional?)
21 / 102
![Page 29: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/29.jpg)
Agile Requirements Engineering with User Stories
Agile RE and User Stories: fundamentals
What is a user story?Guidelines
Don’t force a story into its format when unnatural
Business/domain/application jargon
No technical details
As a researcher,I want to receive new paper notifications,so that I can write a good literature review
22 / 102
![Page 30: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/30.jpg)
Agile Requirements Engineering with User Stories
Agile RE and User Stories: fundamentals
What is a user story?Guidelines
Don’t force a story into its format when unnatural
Business/domain/application jargon
No technical details
As a researcher,I want to receive new paper notifications,so that I can write a good literature review
22 / 102
![Page 31: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/31.jpg)
Agile Requirements Engineering with User Stories
Agile RE and User Stories: fundamentals
What is a user story?Guidelines
Don’t force a story into its format when unnatural
Business/domain/application jargon
No technical details
As a researcher,I want to receive new paper notifications,so that I can write a good literature review
22 / 102
![Page 32: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/32.jpg)
Agile Requirements Engineering with User Stories
Agile RE and User Stories: fundamentals
History
First mention in Kent Beck’s 1999 book “Extreme ProgrammingExplained”
Unstructured textSimilar to use casesRestricted in size
Jeffries 2001: card, conversation, confirmation
Widespread popularity: Mike Cohn’s “User Stories Applied” (2004)
23 / 102
![Page 33: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/33.jpg)
Agile Requirements Engineering with User Stories
Agile RE and User Stories: fundamentals
History
First mention in Kent Beck’s 1999 book “Extreme ProgrammingExplained”
Unstructured textSimilar to use casesRestricted in size
Jeffries 2001: card, conversation, confirmation
Widespread popularity: Mike Cohn’s “User Stories Applied” (2004)
23 / 102
![Page 34: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/34.jpg)
Agile Requirements Engineering with User Stories
Agile RE and User Stories: fundamentals
Some evidence of their popularityResults from academic studies
45% of practitioners employ user stories [Kas15]
In agile development, adoption is up to 90% [WZWS14]
Practitioners’ perception of impact is positive [LDvdWB16a]
9%
8%
13%
14%
7%
10%
68%
61%
54%
53%
48%
40%
23%
31%
32%
33%
45%
51%
S6. Quality guidelines
S5. Productivity guidelines
S4. Quality template
S3. Productivity template
S2. Quality
S1. Productivity
11%
15%
15%
33%
22%
37%
52%
52%
33%
30%
30%
22%
37%
33%
52%
37%
48%
41%
6. Quality − guidelines
5. Productivity − guidelines
4. Quality − template
3. Productivity − template
2. Quality
1. Productivity
Percentage
Strongly Disagree Disagree Neither Agree nor Disagree Agree Strongly Agree
non_template
24 / 102
![Page 35: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/35.jpg)
Agile Requirements Engineering with User Stories
Agile RE and User Stories: fundamentals
Some evidence of their popularityResults from academic studies
45% of practitioners employ user stories [Kas15]
In agile development, adoption is up to 90% [WZWS14]
Practitioners’ perception of impact is positive [LDvdWB16a]
9%
8%
13%
14%
7%
10%
68%
61%
54%
53%
48%
40%
23%
31%
32%
33%
45%
51%
S6. Quality guidelines
S5. Productivity guidelines
S4. Quality template
S3. Productivity template
S2. Quality
S1. Productivity
11%
15%
15%
33%
22%
37%
52%
52%
33%
30%
30%
22%
37%
33%
52%
37%
48%
41%
6. Quality − guidelines
5. Productivity − guidelines
4. Quality − template
3. Productivity − template
2. Quality
1. Productivity
Percentage
Strongly Disagree Disagree Neither Agree nor Disagree Agree Strongly Agree
non_template
24 / 102
![Page 36: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/36.jpg)
Agile Requirements Engineering with User Stories
Agile RE and User Stories: fundamentals
Exercise #1Your task
Form groups of two
Use a sheet of paper or a text editor
Write at least 10 user stories for a conference management system
About 10 minutes!
25 / 102
![Page 37: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/37.jpg)
Agile Requirements Engineering with User Stories
Agile RE and User Stories: fundamentals
Exercise #1Review
Exercise evaluation
Let us discuss a few user stories!
What are the key roles?
Discussion triggers
Is the role the actual role?
Did you specify the why part?
Have you forced the text into the format?
Did you use domain jargon?
Are there technical details?
26 / 102
![Page 38: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/38.jpg)
Agile Requirements Engineering with User Stories
Agile RE and User Stories: fundamentals
Exercise #1Review
Exercise evaluation
Let us discuss a few user stories!
What are the key roles?
Discussion triggers
Is the role the actual role?
Did you specify the why part?
Have you forced the text into the format?
Did you use domain jargon?
Are there technical details?
26 / 102
![Page 39: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/39.jpg)
Agile Requirements Engineering with User Stories
The Quality User Story framework
Table of Contents
1 Preliminaries
2 Agile RE and User Stories: fundamentals
3 The Quality User Story framework
4 Extracting conceptual models
5 Taming ambiguity and incompleteness
6 Wrap up
27 / 102
![Page 40: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/40.jpg)
Agile Requirements Engineering with User Stories
The Quality User Story framework
INVESTThe state of the practice
Several organizations use the INVEST framework – Bill Wake 2003
Independent: minimize dependencies between user stories
Negotiable: details are discussed in the iteration planning meetings
Valuable to the customer
Estimable: detailed enough to allow effort estimation
Small in effort
Testable with certain acceptance criteria
Useful, but hard to operationalize!
28 / 102
![Page 41: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/41.jpg)
Agile Requirements Engineering with User Stories
The Quality User Story framework
INVESTThe state of the practice
Several organizations use the INVEST framework – Bill Wake 2003
Independent: minimize dependencies between user stories
Negotiable: details are discussed in the iteration planning meetings
Valuable to the customer
Estimable: detailed enough to allow effort estimation
Small in effort
Testable with certain acceptance criteria
Useful, but hard to operationalize!
28 / 102
![Page 42: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/42.jpg)
Agile Requirements Engineering with User Stories
The Quality User Story framework
Understanding user storiesAn approach based on linguistics [LDvdWB16b]
Subject
User Story
EndMeans
Role 1 1..*
1 0..*
Format
Action Verb Direct Object
Indirect objectAdjective
1
Epic
1..*has
QualityClarification
0..* 0..*
11
1 1 10..* 0..*
Dependency
0..*
29 / 102
![Page 43: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/43.jpg)
Agile Requirements Engineering with User Stories
The Quality User Story framework
Understanding user storiesApplying the conceptual model, high-level analysis
As a 〈researcher〉role ,I want to 〈receive new paper notifications〉means ,so that 〈I can write a good literature review〉end
User Story
EndMeans
Role 1 1..*
1 0..*
Format0..1
1..*has_parent
1
11
30 / 102
![Page 44: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/44.jpg)
Agile Requirements Engineering with User Stories
The Quality User Story framework
Understanding user storiesApplying the conceptual model, means
Means
Direct ObjectActionRole
1 1 1
Indirect ObjectAdjective
0..*0..*
“I want to receive new paper notifications”
⇓
〈I〉role want to 〈receive〉action 〈new〉adjective 〈paper notifications〉d-object
31 / 102
![Page 45: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/45.jpg)
Agile Requirements Engineering with User Stories
The Quality User Story framework
Understanding user storiesApplying the conceptual model, means
Means
Direct ObjectActionRole
1 1 1
Indirect ObjectAdjective
0..*0..*
“I want to receive new paper notifications”
⇓
〈I〉role want to 〈receive〉action 〈new〉adjective 〈paper notifications〉d-object
31 / 102
![Page 46: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/46.jpg)
Agile Requirements Engineering with User Stories
The Quality User Story framework
Understanding user storiesApplying the conceptual model, means
Means
Direct ObjectActionRole
1 1 1
Indirect ObjectAdjective
0..*0..*
“I want to receive new paper notifications”
⇓
〈I〉role want to 〈receive〉action 〈new〉adjective 〈paper notifications〉d-object
31 / 102
![Page 47: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/47.jpg)
Agile Requirements Engineering with User Stories
The Quality User Story framework
Understanding user storiesApplying the conceptual model, end
The end may represent one or more of the following:
A clarification of the means
A quality aspect
A dependency on another user story
“so that I can write a good literature review”
⇓
〈I can write a 〈good〉quality 〈literature review〉dependency 〉clarification
32 / 102
![Page 48: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/48.jpg)
Agile Requirements Engineering with User Stories
The Quality User Story framework
Understanding user storiesApplying the conceptual model, end
The end may represent one or more of the following:
A clarification of the means
A quality aspect
A dependency on another user story
“so that I can write a good literature review”
⇓
〈I can write a 〈good〉quality 〈literature review〉dependency 〉clarification
32 / 102
![Page 49: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/49.jpg)
Agile Requirements Engineering with User Stories
The Quality User Story framework
Understanding user storiesApplying the conceptual model, end
The end may represent one or more of the following:
A clarification of the means
A quality aspect
A dependency on another user story
“so that I can write a good literature review”
⇓
〈I can write a 〈good〉quality 〈literature review〉dependency 〉clarification
32 / 102
![Page 50: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/50.jpg)
Agile Requirements Engineering with User Stories
The Quality User Story framework
Quality problems in practiceRegardless of INVEST
The conceptual model captures correct stories
In practice, however, stories
Are too longInclude unnecessary informationInclude too little informationAre inconsistentAre irrelevant for the software to-beContain ambiguity
33 / 102
![Page 51: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/51.jpg)
Agile Requirements Engineering with User Stories
The Quality User Story framework
The Quality User Story FrameworkOverview
Based on the critical analysis of hundreds of user stories
Includes insights from other frameworks such as INVEST
User Story Quality
Pragmatic
Complete
Independent
Uniform
Unique
Estimatable
Full sentence
Semantic
Conflict-free
Unambiguous
Problem-oriented
Conceptually sound
Syntactic
Minimal
Atomic
Well-formed
34 / 102
![Page 52: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/52.jpg)
Agile Requirements Engineering with User Stories
The Quality User Story framework
The Quality User Story FrameworkQuality of individual stories
Criteria DescriptionWell-formed Includes at least a role and a meansAtomic Expresses a requirement for exactly one featureMinimal Contains nothing more than role, means and endsConceptually sound The means expresses a feature and the ends a rationaleProblem-oriented Only specifies the problem, not the solution to itUnambiguous Avoids terms that lead to multiple interpretationsFull sentence Is a well-formed full sentenceEstimable Does not denote an unrefined requirement that is difficult
to plan and prioritize
35 / 102
![Page 53: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/53.jpg)
Agile Requirements Engineering with User Stories
The Quality User Story framework
The Quality User Story FrameworkQuality of user story sets
Criteria DescriptionConflict-free There should not be 2+ inconsistent user storiesUnique Duplicates shall be avoidedUniform All user stories in a specification employ the same templateIndependent A user story is self-contained and has no inherent dependencies
on other storiesComplete Implementing a set of user stories creates a feature-complete
application, no steps are missing
36 / 102
![Page 54: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/54.jpg)
Agile Requirements Engineering with User Stories
The Quality User Story framework
QUS in practiceA first set of criteria
Don’t consider all criteria upfront!
Focus on
1 Well-formed2 Atomic3 Minimal4 Conceptually sound5 Problem oriented6 Full sentence7 Uniform
37 / 102
![Page 55: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/55.jpg)
Agile Requirements Engineering with User Stories
The Quality User Story framework
QUS in practice1. Well-formed
Well-formed
A user story includes at least a role and an action
Example (Violation)
I want to revoke access to problematic event organizers
⇓ (add role)
As a TicketExpert Employee, I want to revoke access to problematicevent organizers
38 / 102
![Page 56: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/56.jpg)
Agile Requirements Engineering with User Stories
The Quality User Story framework
QUS in practice1. Well-formed
Well-formed
A user story includes at least a role and an action
Example (Violation)
I want to revoke access to problematic event organizers
⇓ (add role)
As a TicketExpert Employee, I want to revoke access to problematicevent organizers
38 / 102
![Page 57: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/57.jpg)
Agile Requirements Engineering with User Stories
The Quality User Story framework
QUS in practice2. Atomic
Atomic
A user story expresses a requirement for exactly one feature/problem
Example (Violation)
As a Visitor, I want to register for an event and create a personalaccount, so that I can quickly register for future events
⇓ (split)
1 As a Visitor, I want to register for an event, so that I am admittedto the event
2 As a Visitor, I want to create a personal account during eventregistration, so that I can quickly register for future events
39 / 102
![Page 58: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/58.jpg)
Agile Requirements Engineering with User Stories
The Quality User Story framework
QUS in practice2. Atomic
Atomic
A user story expresses a requirement for exactly one feature/problem
Example (Violation)
As a Visitor, I want to register for an event and create a personalaccount, so that I can quickly register for future events
⇓ (split)
1 As a Visitor, I want to register for an event, so that I am admittedto the event
2 As a Visitor, I want to create a personal account during eventregistration, so that I can quickly register for future events
39 / 102
![Page 59: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/59.jpg)
Agile Requirements Engineering with User Stories
The Quality User Story framework
QUS in practice3. Minimal
Minimal
A user story contains nothing more than role, action and benefit
Example (Violation)
As an Event Organizer, I want to see the personal information ofattendees (split into price levels). See: Mockup by Alice NOTE: - First
create the overview screen
⇓ (remove unnecessary information)
As an Event Organizer, I want to see the personal information ofattendees
40 / 102
![Page 60: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/60.jpg)
Agile Requirements Engineering with User Stories
The Quality User Story framework
QUS in practice3. Minimal
Minimal
A user story contains nothing more than role, action and benefit
Example (Violation)
As an Event Organizer, I want to see the personal information ofattendees (split into price levels). See: Mockup by Alice NOTE: - First
create the overview screen
⇓ (remove unnecessary information)
As an Event Organizer, I want to see the personal information ofattendees
40 / 102
![Page 61: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/61.jpg)
Agile Requirements Engineering with User Stories
The Quality User Story framework
QUS in practice4. Conceptually sound
Conceptually sound
The action expresses a feature and the benefit expresses a rationale
Example (Violation)
As an Event Organizer, I want to open the event page, so that I can seethe personal information of attendees
⇓ (end becomes a separate means)
1 As an Event Organizer, I want to open the event page, so that I canreview event related information
2 As a User, I want to see personal information of attendees, so that Iknow the demographical distribution of the event
41 / 102
![Page 62: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/62.jpg)
Agile Requirements Engineering with User Stories
The Quality User Story framework
QUS in practice4. Conceptually sound
Conceptually sound
The action expresses a feature and the benefit expresses a rationale
Example (Violation)
As an Event Organizer, I want to open the event page, so that I can seethe personal information of attendees
⇓ (end becomes a separate means)
1 As an Event Organizer, I want to open the event page, so that I canreview event related information
2 As a User, I want to see personal information of attendees, so that Iknow the demographical distribution of the event
41 / 102
![Page 63: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/63.jpg)
Agile Requirements Engineering with User Stories
The Quality User Story framework
QUS in practice5. Problem oriented
Problem oriented
A user story only specifies the problem, not the solution to it
Example (Violation)
As a Visitor, I want to download an event ticket. - Add download buttonon top right (never grayed out)
⇓ (remove solution)
As a Visitor, I want to download an event ticket
42 / 102
![Page 64: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/64.jpg)
Agile Requirements Engineering with User Stories
The Quality User Story framework
QUS in practice5. Problem oriented
Problem oriented
A user story only specifies the problem, not the solution to it
Example (Violation)
As a Visitor, I want to download an event ticket. - Add download buttonon top right (never grayed out)
⇓ (remove solution)
As a Visitor, I want to download an event ticket
42 / 102
![Page 65: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/65.jpg)
Agile Requirements Engineering with User Stories
The Quality User Story framework
QUS in practice6. Full sentence
Full sentence
A user story is a well-formed full sentence
Example (Violation)
update profile
⇓ (add ‘want to’)
As a Visitor, I want to update my profile
43 / 102
![Page 66: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/66.jpg)
Agile Requirements Engineering with User Stories
The Quality User Story framework
QUS in practice6. Full sentence
Full sentence
A user story is a well-formed full sentence
Example (Violation)
update profile
⇓ (add ‘want to’)
As a Visitor, I want to update my profile
43 / 102
![Page 67: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/67.jpg)
Agile Requirements Engineering with User Stories
The Quality User Story framework
QUS in practice7. Uniform
Uniform
All user stories follow (roughly) the same template
Example (Violation)
1 As a Visitor, I want to create an account
2 As a Visitor, I want to reset my password
3 As a TicketExpert Manager, I receive an email notification when anew user is registered
⇓ (add ‘want to’)
As an TicketExpert Manager, I want to receive an email notificationwhen a new user is registered
44 / 102
![Page 68: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/68.jpg)
Agile Requirements Engineering with User Stories
The Quality User Story framework
QUS in practice7. Uniform
Uniform
All user stories follow (roughly) the same template
Example (Violation)
1 As a Visitor, I want to create an account
2 As a Visitor, I want to reset my password
3 As a TicketExpert Manager, I receive an email notification when anew user is registered
⇓ (add ‘want to’)
As an TicketExpert Manager, I want to receive an email notificationwhen a new user is registered
44 / 102
![Page 69: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/69.jpg)
Agile Requirements Engineering with User Stories
The Quality User Story framework
The AQUSA toolThe Automatic Quality User Story Artisan
Tool developed at UU: www.aqusa.nl
Automatically assesses user story quality according to QUS
Focus on those criteria with potential for 100% recall
Well-formedAtomicMinimalExplicit dependenciesUniformUnique
45 / 102
User stories
AQUSA
Linguistic parser
Enhancer
Analyzer
Synonyms Homonyms Ontologies
Error report
Atomic Independent UniqueMinimal Uniform
Report generator
User story base
Corrections
![Page 70: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/70.jpg)
Agile Requirements Engineering with User Stories
The Quality User Story framework
Exercise #2Analyze a set of user stories
Open https://bit.ly/2nyvb7Q with your browser
Manually explore the output of the AQUSA tool
Try to identify similar defects in the user stories that you wrote
10-15 minutes!
46 / 102
![Page 71: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/71.jpg)
Agile Requirements Engineering with User Stories
The Quality User Story framework
Exercise #2Review
Exercise evaluation
What were the most common mistakes?
What is their impact?
How do your own stories compare to the data set?
Do you agree with the fixes that are suggested?
47 / 102
![Page 72: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/72.jpg)
Agile Requirements Engineering with User Stories
The Quality User Story framework
Estimating and developingApplying the other criteria
After initial fixes to sanitize the user stories, the other criteriabecome relevant
8 Unambiguous9 Conflict-free10 Estimable11 Independent12 Unique13 Complete
We focus only on some of these criteria today
48 / 102
![Page 73: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/73.jpg)
Agile Requirements Engineering with User Stories
The Quality User Story framework
Estimating and developingApplying the other criteria
After initial fixes to sanitize the user stories, the other criteriabecome relevant
8 Unambiguous9 Conflict-free10 Estimable11 Independent12 Unique13 Complete
We focus only on some of these criteria today
48 / 102
![Page 74: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/74.jpg)
Agile Requirements Engineering with User Stories
The Quality User Story framework
QUS in practice: improving the user stories8. Unambiguous
Unambiguous
A user story avoids terms that lead to multiple interpretations
Example (Violation)
As an Event Organizer, I want to edit the content that I added to anevent’s page
⇓ (clarify the term “content”)
As an Event Organizer, I want to edit video and text content that Iadded to an event’s page
More on ambiguity in the fourth part of the tutorial!
49 / 102
![Page 75: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/75.jpg)
Agile Requirements Engineering with User Stories
The Quality User Story framework
QUS in practice: improving the user stories8. Unambiguous
Unambiguous
A user story avoids terms that lead to multiple interpretations
Example (Violation)
As an Event Organizer, I want to edit the content that I added to anevent’s page
⇓ (clarify the term “content”)
As an Event Organizer, I want to edit video and text content that Iadded to an event’s page
More on ambiguity in the fourth part of the tutorial!
49 / 102
![Page 76: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/76.jpg)
Agile Requirements Engineering with User Stories
The Quality User Story framework
QUS in practice: improving the user stories8. Unambiguous
Unambiguous
A user story avoids terms that lead to multiple interpretations
Example (Violation)
As an Event Organizer, I want to edit the content that I added to anevent’s page
⇓ (clarify the term “content”)
As an Event Organizer, I want to edit video and text content that Iadded to an event’s page
More on ambiguity in the fourth part of the tutorial!
49 / 102
![Page 77: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/77.jpg)
Agile Requirements Engineering with User Stories
The Quality User Story framework
QUS in practice: improving the user stories12. Independent
Independent
A user story is self-contained and has no inherent dependencies on otherstories
Example (Violation)
1 As an Event Organizer, I am able to add a new event
2 As a Visitor, I am able to view an event page
⇓ No solution here!
It is not always possible for user stories to be fully independent
Avoid dependencies as much as possible, but be flexible!
50 / 102
![Page 78: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/78.jpg)
Agile Requirements Engineering with User Stories
The Quality User Story framework
QUS in practice: improving the user stories12. Independent
Independent
A user story is self-contained and has no inherent dependencies on otherstories
Example (Violation)
1 As an Event Organizer, I am able to add a new event
2 As a Visitor, I am able to view an event page
⇓ No solution here!
It is not always possible for user stories to be fully independent
Avoid dependencies as much as possible, but be flexible!
50 / 102
![Page 79: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/79.jpg)
Agile Requirements Engineering with User Stories
The Quality User Story framework
QUS in practice: improving the user stories13. Complete
Complete
Implementing a set of user stories creates a feature-complete application,no steps are missing
Example (Violation)
1 As an Event Organizer, I want to update an event
2 As an Event Organizer, I want to delete an event
⇓ (add story)
As an Event Organizer, I want to create an event
51 / 102
![Page 80: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/80.jpg)
Agile Requirements Engineering with User Stories
The Quality User Story framework
QUS in practice: improving the user stories13. Complete
Complete
Implementing a set of user stories creates a feature-complete application,no steps are missing
Example (Violation)
1 As an Event Organizer, I want to update an event
2 As an Event Organizer, I want to delete an event
⇓ (add story)
As an Event Organizer, I want to create an event
51 / 102
![Page 81: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/81.jpg)
Agile Requirements Engineering with User Stories
The Quality User Story framework
Exercise #3Further improve your user stories
Take a look at the user stories you have written
Check them against the additional criteria
1 Unambiguous2 Independent3 Complete
10 minutes!
52 / 102
![Page 82: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/82.jpg)
Agile Requirements Engineering with User Stories
The Quality User Story framework
Exercise #3Review
Exercise evaluation
Which was the most common defect?
How simple was the task at hand?
Share some examples!
Any1 doubts?
1. . . or many53 / 102
![Page 83: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/83.jpg)
Agile Requirements Engineering with User Stories
Extracting conceptual models
Table of Contents
1 Preliminaries
2 Agile RE and User Stories: fundamentals
3 The Quality User Story framework
4 Extracting conceptual models
5 Taming ambiguity and incompleteness
6 Wrap up
54 / 102
![Page 84: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/84.jpg)
Agile Requirements Engineering with User Stories
Extracting conceptual models
OK, so you’ve got a set of sanitized user storiesAdditional obstacles
As development goes on, the number of user stories increase
How to get a holistic view?
Team members leave, and take away their know-how
Novices need to learn the jargon
In agile development, sometimes without a glossary!
55 / 102
![Page 85: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/85.jpg)
Agile Requirements Engineering with User Stories
Extracting conceptual models
OK, so you’ve got a set of sanitized user storiesAdditional obstacles
As development goes on, the number of user stories increase
How to get a holistic view?
Team members leave, and take away their know-how
Novices need to learn the jargon
In agile development, sometimes without a glossary!
55 / 102
![Page 86: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/86.jpg)
Agile Requirements Engineering with User Stories
Extracting conceptual models
OK, so you’ve got a set of sanitized user storiesAdditional obstacles
As development goes on, the number of user stories increase
How to get a holistic view?
Team members leave, and take away their know-how
Novices need to learn the jargon
In agile development, sometimes without a glossary!
55 / 102
![Page 87: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/87.jpg)
Agile Requirements Engineering with User Stories
Extracting conceptual models
OK, so you’ve got a set of sanitized user storiesAdditional obstacles
As development goes on, the number of user stories increase
How to get a holistic view?
Team members leave, and take away their know-how
Novices need to learn the jargon
In agile development, sometimes without a glossary!
55 / 102
![Page 88: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/88.jpg)
Agile Requirements Engineering with User Stories
Extracting conceptual models
OK, so you’ve got a set of sanitized user storiesAdditional obstacles
As development goes on, the number of user stories increase
How to get a holistic view?
Team members leave, and take away their know-how
Novices need to learn the jargon
In agile development, sometimes without a glossary!
55 / 102
![Page 89: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/89.jpg)
Agile Requirements Engineering with User Stories
Extracting conceptual models
How about extracting a holistic overview?Conceptual modeling to the rescue!
Garm Lucassen, Marcel Robeer, Fabiano Dalpiaz, Jan Martijn E. M. van der Werf, and SjaakBrinkkemper, Extracting conceptual models from user stories with Visual Narrator, RequirementsEngineering 22 (2017), no. 3, 339–358
56 / 102
![Page 90: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/90.jpg)
Agile Requirements Engineering with User Stories
Extracting conceptual models
Conceptual model extractionIntuition
As a visitor, I want to buy an event ticket
⇓
visitor event ticket
ticket
buy
57 / 102
![Page 91: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/91.jpg)
Agile Requirements Engineering with User Stories
Extracting conceptual models
Conceptual model extraction1. Split on indicators
Role As a visitor,
Means I want to choose an event
End so that I can book a ticket for that event
58 / 102
![Page 92: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/92.jpg)
Agile Requirements Engineering with User Stories
Extracting conceptual models
Conceptual model extraction2. Functional role
Role As a 〈visitor〉ent ,
Means I want to choose an event
End so that I can book a ticket for that event
59 / 102
![Page 93: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/93.jpg)
Agile Requirements Engineering with User Stories
Extracting conceptual models
Conceptual model extraction3. Simplify the means
Role As a 〈visitor〉ent ,
Means 〈I〉=visitor want to choose an event
End so that I can book a ticket for that event
60 / 102
![Page 94: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/94.jpg)
Agile Requirements Engineering with User Stories
Extracting conceptual models
Conceptual model extraction4. Main relationship
Role As a 〈visitor〉ent ,
Means 〈I〉=visitor want to 〈choose〉rel an 〈event〉ent
End so that I can book a ticket for that event
61 / 102
visitor eventchoose
![Page 95: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/95.jpg)
Agile Requirements Engineering with User Stories
Extracting conceptual models
Conceptual model extraction5. Simplify the end
Role As a 〈visitor〉ent ,
Means 〈I〉=visitor want to 〈choose〉rel an 〈event〉ent
End so that 〈I〉=visitor can book a ticket for that event
62 / 102
![Page 96: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/96.jpg)
Agile Requirements Engineering with User Stories
Extracting conceptual models
Conceptual model extraction6. End relationship
Role As a 〈visitor〉ent ,
Means 〈I〉=visitor want to 〈choose〉rel an 〈event〉ent
End so that 〈I〉=visitor can 〈book〉rel a 〈ticket〉ent for that 〈event〉ent
63 / 102
visitor eventchoose
ticketbook
![Page 97: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/97.jpg)
Agile Requirements Engineering with User Stories
Extracting conceptual models
Conceptual model extractionCreate a holistic conceptual model
Repeat the described process for each story in the user story collection
Role As a visitor,
Means I want to filter on free events
End so that I can save money
64 / 102
visitor
event
free eventfilter on
money
save
![Page 98: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/98.jpg)
Agile Requirements Engineering with User Stories
Extracting conceptual models
Conceptual model extractionMerging the results
visitor eventchoose
ticketbook
visitor
event
free eventfilter on
money
save
visitor eventchoose
ticket book
free eventfilter on
moneysave
65 / 102
![Page 99: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/99.jpg)
Agile Requirements Engineering with User Stories
Extracting conceptual models
Analyzing conceptual modelsSome possible uses
The resulting conceptual model can be used for different purposes:
Possible inconsistencies
Conflict detectionDuplicate preventionAmbiguity resolution
Incompleteness mitigation
66 / 102
![Page 100: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/100.jpg)
Agile Requirements Engineering with User Stories
Extracting conceptual models
Analyzing conceptual modelsConflict detection
Systems administrator System administrator
67 / 102
![Page 101: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/101.jpg)
Agile Requirements Engineering with User Stories
Extracting conceptual models
Analyzing conceptual modelsDuplicate prevention
Separate stories for
Find flight
Search flight number
Look for flight name
68 / 102
![Page 102: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/102.jpg)
Agile Requirements Engineering with User Stories
Extracting conceptual models
Analyzing conceptual modelsAmbiguity resolution → wait for part IV of this tutorial
69 / 102
![Page 103: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/103.jpg)
Agile Requirements Engineering with User Stories
Extracting conceptual models
Analyzing conceptual modelsIncompleteness mitigation
It seems that researcher cannot search by type
70 / 102
![Page 104: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/104.jpg)
Agile Requirements Engineering with User Stories
Extracting conceptual models
Analyzing conceptual modelsTool support: extraction
Conceptual models are automatically extracted from user stories with theVisual Narrator: https://github.com/MarcelRobeer/VisualNarrator
71 / 102
![Page 105: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/105.jpg)
Agile Requirements Engineering with User Stories
Extracting conceptual models
Analyzing conceptual modelsTool support: visualization
The outputs of the Visual Narrator can be visualized by
the Interactive Narrator
WebVOWL
REVV-Light
. . .
For simplicity, today we are going to use WebVOWL
72 / 102
![Page 106: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/106.jpg)
Agile Requirements Engineering with User Stories
Extracting conceptual models
Analyzing conceptual modelsTool support: visualization
The outputs of the Visual Narrator can be visualized by
the Interactive Narrator
WebVOWL
REVV-Light
. . .
For simplicity, today we are going to use WebVOWL
72 / 102
![Page 107: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/107.jpg)
Agile Requirements Engineering with User Stories
Extracting conceptual models
Analyzing conceptual modelsFour real-life data sets
CamperPlus: turn camp management into a quick, easy and efficientexperience
Alfred: a personal interactive assistant for independent living andactive ageing
UniBath: an institutional data repository for the University of Bath
Cornell: the Cornell Photos image library supports the university’smarketing and communications needs
Find them online: https://bit.ly/2vH6sCO
73 / 102
![Page 108: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/108.jpg)
Agile Requirements Engineering with User Stories
Extracting conceptual models
Analyzing conceptual modelsFour real-life data sets
CamperPlus: turn camp management into a quick, easy and efficientexperience
Alfred: a personal interactive assistant for independent living andactive ageing
UniBath: an institutional data repository for the University of Bath
Cornell: the Cornell Photos image library supports the university’smarketing and communications needs
Find them online: https://bit.ly/2vH6sCO
73 / 102
![Page 109: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/109.jpg)
Agile Requirements Engineering with User Stories
Extracting conceptual models
Analyzing conceptual modelsUsing WebVOWL
1 Launch the WebVOWL tool: https://bit.ly/2MdZDmB
2 Load one of the four ontologies
3 Use the degree of collapsing filter to see more/less elements
4 Tick “compact notation” in the “Modes” menu
74 / 102
![Page 110: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/110.jpg)
Agile Requirements Engineering with User Stories
Extracting conceptual models
Exercise #4Explore models with WebVOWL
Explore one of the four data sets
Look for
ConflictsDuplicatesIncompleteness
75 / 102
![Page 111: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/111.jpg)
Agile Requirements Engineering with User Stories
Extracting conceptual models
Exercise #4Review
Exercise evaluation
What were the main difficulties?
How large are the models?
Could you identify defects?
76 / 102
![Page 112: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/112.jpg)
Agile Requirements Engineering with User Stories
Taming ambiguity and incompleteness
Table of Contents
1 Preliminaries
2 Agile RE and User Stories: fundamentals
3 The Quality User Story framework
4 Extracting conceptual models
5 Taming ambiguity and incompleteness
6 Wrap up
77 / 102
![Page 113: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/113.jpg)
Agile Requirements Engineering with User Stories
Taming ambiguity and incompleteness
Basic principle
Identifying requirements defects is still hard!
Natural language processing (NLP) tools do not deliver perfectaccuracy in automated defect identification
Human analysts are effective, but how do they scale?
78 / 102
![Page 114: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/114.jpg)
Agile Requirements Engineering with User Stories
Taming ambiguity and incompleteness
Basic principle
Identifying requirements defects is still hard!
Natural language processing (NLP) tools do not deliver perfectaccuracy in automated defect identification
Human analysts are effective, but how do they scale?
78 / 102
![Page 115: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/115.jpg)
Agile Requirements Engineering with User Stories
Taming ambiguity and incompleteness
Idea
To combine NLP with information visualization (InfoVis)→ automation to help humans
79 / 102
![Page 116: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/116.jpg)
Agile Requirements Engineering with User Stories
Taming ambiguity and incompleteness
Terminological ambiguity
Different stakeholders have their own viewpoints
Including different terminologies!
Do automobile and car have the same meaning?
Let JtKV1 be the denotation of term t according to viewpoint V1
80 / 102
![Page 117: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/117.jpg)
Agile Requirements Engineering with User Stories
Taming ambiguity and incompleteness
Terminological ambiguity
Different stakeholders have their own viewpoints
Including different terminologies!
Do automobile and car have the same meaning?
Let JtKV1 be the denotation of term t according to viewpoint V1
80 / 102
![Page 118: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/118.jpg)
Agile Requirements Engineering with User Stories
Taming ambiguity and incompleteness
Terminological ambiguity
Different stakeholders have their own viewpoints
Including different terminologies!
Do automobile and car have the same meaning?
Let JtKV1 be the denotation of term t according to viewpoint V1
80 / 102
![Page 119: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/119.jpg)
Agile Requirements Engineering with User Stories
Taming ambiguity and incompleteness
Terminological ambiguityViewpoints and conceptual systems [SG89]
Given two stakeholders with viewpoints V1 and V2,
1 Consensus: same terminology, same distinctionJbankKV1 = JbankKV2 = a financial institution
2 Correspondence: different terminology, same distinctionJcarKV1 = JautomobileKV2 = road vehicle
3 Conflict: same terminology, different distinction.JbankKV1 = financial institution, JbankKV2 = land alongside a river
4 Contrast: different terminology, different distinction.
81 / 102
![Page 120: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/120.jpg)
Agile Requirements Engineering with User Stories
Taming ambiguity and incompleteness
Terminological ambiguityViewpoints and conceptual systems [SG89]
Given two stakeholders with viewpoints V1 and V2,
1 Consensus: same terminology, same distinctionJbankKV1 = JbankKV2 = a financial institution
2 Correspondence: different terminology, same distinctionJcarKV1 = JautomobileKV2 = road vehicle
3 Conflict: same terminology, different distinction.JbankKV1 = financial institution, JbankKV2 = land alongside a river
4 Contrast: different terminology, different distinction.
81 / 102
![Page 121: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/121.jpg)
Agile Requirements Engineering with User Stories
Taming ambiguity and incompleteness
Terminological ambiguityViewpoints and conceptual systems [SG89]
Given two stakeholders with viewpoints V1 and V2,
1 Consensus: same terminology, same distinctionJbankKV1 = JbankKV2 = a financial institution
2 Correspondence: different terminology, same distinctionJcarKV1 = JautomobileKV2 = road vehicle
3 Conflict: same terminology, different distinction.JbankKV1 = financial institution, JbankKV2 = land alongside a river
4 Contrast: different terminology, different distinction.
81 / 102
![Page 122: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/122.jpg)
Agile Requirements Engineering with User Stories
Taming ambiguity and incompleteness
Terminological ambiguityViewpoints and conceptual systems [SG89]
Given two stakeholders with viewpoints V1 and V2,
1 Consensus: same terminology, same distinctionJbankKV1 = JbankKV2 = a financial institution
2 Correspondence: different terminology, same distinctionJcarKV1 = JautomobileKV2 = road vehicle
3 Conflict: same terminology, different distinction.JbankKV1 = financial institution, JbankKV2 = land alongside a river
4 Contrast: different terminology, different distinction.
81 / 102
![Page 123: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/123.jpg)
Agile Requirements Engineering with User Stories
Taming ambiguity and incompleteness
Terminological ambiguityWhy are consensus, correspondence, . . . relevant to RE?
Example
As a student, I want to see my professors’ research profile
As a head of department, I want to review the lecturers’ researchoutputs, so that I can perform my yearly assessment.
JprofessorKVStud?= JlecturerKVHoD
Jresearch profileKVStud?= Jresearch outputsKVHoD
82 / 102
![Page 124: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/124.jpg)
Agile Requirements Engineering with User Stories
Taming ambiguity and incompleteness
Terminological ambiguityWhy are consensus, correspondence, . . . relevant to RE?
Example
As a student, I want to see my professors’ research profile
As a head of department, I want to review the lecturers’ researchoutputs, so that I can perform my yearly assessment.
JprofessorKVStud?= JlecturerKVHoD
Jresearch profileKVStud?= Jresearch outputsKVHoD
82 / 102
![Page 125: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/125.jpg)
Agile Requirements Engineering with User Stories
Taming ambiguity and incompleteness
Terminological ambiguityWhy are consensus, correspondence, . . . relevant to RE?
Example
As a student, I want to see my professors’ research profile
As a head of department, I want to review the lecturers’ researchoutputs, so that I can perform my yearly assessment.
JprofessorKVStud?= JlecturerKVHoD
Jresearch profileKVStud?= Jresearch outputsKVHoD
82 / 102
![Page 126: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/126.jpg)
Agile Requirements Engineering with User Stories
Taming ambiguity and incompleteness
The intelligence, basics
We use Semantic Folding Theory (SFT):
Every term is associated a semantic fingerprint
Fingerprints are created by analyzing huge amounts of text
Similar fingerprints indicate similar terms
83 / 102
![Page 127: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/127.jpg)
Agile Requirements Engineering with User Stories
Taming ambiguity and incompleteness
The intelligence, applied
84 / 102
![Page 128: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/128.jpg)
Agile Requirements Engineering with User Stories
Taming ambiguity and incompleteness
The intelligence, near-synonyms
Given two terms t1 and t2
ambigt1,t2 =2 · simt1,t2 + simct1,t2
3
A combination of term similarity and context similarity
2/3 term similarity (car-automobile, etc.)1/3 context similarity: stories where exactly one of the terms appears
Weights assessed via a correlation study with humans
85 / 102
![Page 129: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/129.jpg)
Agile Requirements Engineering with User Stories
Taming ambiguity and incompleteness
The human side, information visualization
The intersecting areas show terms used by multiple roles
86 / 102
![Page 130: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/130.jpg)
Agile Requirements Engineering with User Stories
Taming ambiguity and incompleteness
The human side, information visualization
The intersecting areas show terms used by multiple roles
86 / 102
![Page 131: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/131.jpg)
Agile Requirements Engineering with User Stories
Taming ambiguity and incompleteness
Highlighting possible ambiguity
Ambiguity between terms couples is calculated as described before
87 / 102
![Page 132: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/132.jpg)
Agile Requirements Engineering with User Stories
Taming ambiguity and incompleteness
Highlighting possible ambiguity
Ambiguity between terms couples is calculated as described before
87 / 102
![Page 133: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/133.jpg)
Agile Requirements Engineering with User Stories
Taming ambiguity and incompleteness
Tool support: REVV-Light
https://bit.ly/2Mn35dK
88 / 102
![Page 134: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/134.jpg)
Agile Requirements Engineering with User Stories
Taming ambiguity and incompleteness
Scan the entire data set. . . the user stories correctly parsed by the Visual Narrator
89 / 102
![Page 135: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/135.jpg)
Agile Requirements Engineering with User Stories
Taming ambiguity and incompleteness
Analyzing ambiguity
Focus on one element (single click)
Check the associations
90 / 102
![Page 136: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/136.jpg)
Agile Requirements Engineering with User Stories
Taming ambiguity and incompleteness
Analyzing ambiguity
Focus on one element (single click) Check the associations
90 / 102
![Page 137: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/137.jpg)
Agile Requirements Engineering with User Stories
Taming ambiguity and incompleteness
Check the user stories for a termIs an ambiguity real?
Double click on a term!
91 / 102
![Page 138: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/138.jpg)
Agile Requirements Engineering with User Stories
Taming ambiguity and incompleteness
Analyzing ambiguity
Focus only on certain roles
92 / 102
![Page 139: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/139.jpg)
Agile Requirements Engineering with User Stories
Taming ambiguity and incompleteness
Side-product: analyzing incompleteness
Possible incompleteness: no user stories about Gallery, Section, NewsSection for roles “User” and “Visitor”?
93 / 102
![Page 140: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/140.jpg)
Agile Requirements Engineering with User Stories
Taming ambiguity and incompleteness
Exercise #5Analyze ambiguity with REVV-Light
Explore one of the four data sets
Use the functions of the tool to examine ambiguity between
Nouns and compound nounsVerbs / associations
You can use the printed user stories as a help
Optionally, look at incompleteness too!
94 / 102
![Page 141: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/141.jpg)
Agile Requirements Engineering with User Stories
Taming ambiguity and incompleteness
Exercise #5Review
Exercise evaluation
What were the main difficulties?
Was the tool useful?
What function of the tool was mostly useful?
What did you miss?
95 / 102
![Page 142: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/142.jpg)
Agile Requirements Engineering with User Stories
Wrap up
Table of Contents
1 Preliminaries
2 Agile RE and User Stories: fundamentals
3 The Quality User Story framework
4 Extracting conceptual models
5 Taming ambiguity and incompleteness
6 Wrap up
96 / 102
![Page 143: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/143.jpg)
Agile Requirements Engineering with User Stories
Wrap up
SummaryWhat have I learned today?
Agile RE with user stories
User stories are concise, to-the-point, popular
Writing good user stories is not that simple
Semi-automated exist to support the task, for example
The QUS framework and the AQUSA tool [LDvdWB16b]The Visual Narrator tool [LRD+17]The REVV-Light tool [DvdSL18]
Tools assist human requirements engineers, do not replace them!
97 / 102
![Page 144: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/144.jpg)
Agile Requirements Engineering with User Stories
Wrap up
SummaryWhat have I learned today?
Agile RE with user stories
User stories are concise, to-the-point, popular
Writing good user stories is not that simple
Semi-automated exist to support the task, for example
The QUS framework and the AQUSA tool [LDvdWB16b]The Visual Narrator tool [LRD+17]The REVV-Light tool [DvdSL18]
Tools assist human requirements engineers, do not replace them!
97 / 102
![Page 145: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/145.jpg)
Agile Requirements Engineering with User Stories
Wrap up
SummaryWhat have I learned today?
Agile RE with user stories
User stories are concise, to-the-point, popular
Writing good user stories is not that simple
Semi-automated exist to support the task, for example
The QUS framework and the AQUSA tool [LDvdWB16b]The Visual Narrator tool [LRD+17]The REVV-Light tool [DvdSL18]
Tools assist human requirements engineers, do not replace them!
97 / 102
![Page 146: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/146.jpg)
Agile Requirements Engineering with User Stories
Wrap up
SummaryWhat have I learned today?
Agile RE with user stories
User stories are concise, to-the-point, popular
Writing good user stories is not that simple
Semi-automated exist to support the task, for example
The QUS framework and the AQUSA tool [LDvdWB16b]
The Visual Narrator tool [LRD+17]The REVV-Light tool [DvdSL18]
Tools assist human requirements engineers, do not replace them!
97 / 102
![Page 147: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/147.jpg)
Agile Requirements Engineering with User Stories
Wrap up
SummaryWhat have I learned today?
Agile RE with user stories
User stories are concise, to-the-point, popular
Writing good user stories is not that simple
Semi-automated exist to support the task, for example
The QUS framework and the AQUSA tool [LDvdWB16b]The Visual Narrator tool [LRD+17]
The REVV-Light tool [DvdSL18]
Tools assist human requirements engineers, do not replace them!
97 / 102
![Page 148: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/148.jpg)
Agile Requirements Engineering with User Stories
Wrap up
SummaryWhat have I learned today?
Agile RE with user stories
User stories are concise, to-the-point, popular
Writing good user stories is not that simple
Semi-automated exist to support the task, for example
The QUS framework and the AQUSA tool [LDvdWB16b]The Visual Narrator tool [LRD+17]The REVV-Light tool [DvdSL18]
Tools assist human requirements engineers, do not replace them!
97 / 102
![Page 149: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/149.jpg)
Agile Requirements Engineering with User Stories
Wrap up
SummaryWhat have I learned today?
Agile RE with user stories
User stories are concise, to-the-point, popular
Writing good user stories is not that simple
Semi-automated exist to support the task, for example
The QUS framework and the AQUSA tool [LDvdWB16b]The Visual Narrator tool [LRD+17]The REVV-Light tool [DvdSL18]
Tools assist human requirements engineers, do not replace them!
97 / 102
![Page 150: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/150.jpg)
Agile Requirements Engineering with User Stories
Wrap up
Contribute to our research!What can I do?
We aim to improve the tooling to make impact on agile RE practices
What can I do?
Provide us with user story sets
Use the tools in your practice
Adapt and extend the tools (open source)
Tell us your problems
98 / 102
![Page 151: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/151.jpg)
Agile Requirements Engineering with User Stories
Wrap up
Discussion and thank youQ&A
Open questions or suggestions?
Contact me at [email protected]
99 / 102
![Page 152: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/152.jpg)
Agile Requirements Engineering with User Stories
Wrap up
Discussion and thank youQ&A
Open questions or suggestions?
Contact me at [email protected]
99 / 102
![Page 153: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/153.jpg)
Agile Requirements Engineering with User Stories
Wrap up
References I
Fabiano Dalpiaz, Ivor van der Schalk, and Garm Lucassen,Pinpointing Ambiguity and Incompleteness in RequirementsEngineering via Information Visualization and NLP, Proceedings ofthe 24th International Working Conference on RequirementsEngineering: Foundation for Software Quality (REFSQ’18), 2018.
Irum Inayat, Siti Salwah Salim, Sabrina Marczak, Maya Daneva, andShahaboddin Shamshirband, A systematic literature review on agilerequirements engineering practices and challenges, Computers inHuman Behavior 51 (2015), 915–929.
Mohamad Kassab, The changing landscape of requirementsengineering practices over the past decade, Proceedings of theInternational Workshop on Empirical Requirements Engineering(EmpiRE), IEEE, 2015, pp. 1–8.
100 / 102
![Page 154: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/154.jpg)
Agile Requirements Engineering with User Stories
Wrap up
References II
Garm Lucassen, Fabiano Dalpiaz, Jan Martijn van der Werf, andSjaak Brinkkemper, The Use and Effectiveness of User Stories inPractice, Proceedings of the 22nd International Working Conferenceon Requirements Engineering: Foundation for Software Quality(REFSQ’16), LNCS, vol. 9619, 2016, pp. 205–222.
Garm Lucassen, Fabiano Dalpiaz, Jan Martijn E.M. van der Werf,and Sjaak Brinkkemper, Improving agile requirements: the QualityUser Story framework and tool, Requirements Engineering 21(2016), no. 3, 383–403.
Garm Lucassen, Marcel Robeer, Fabiano Dalpiaz, Jan Martijn E. M.van der Werf, and Sjaak Brinkkemper, Extracting conceptual modelsfrom user stories with Visual Narrator, Requirements Engineering 22(2017), no. 3, 339–358.
101 / 102
![Page 155: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/155.jpg)
Agile Requirements Engineering with User Stories
Wrap up
References III
Mildred LG Shaw and Brian R Gaines, Comparing conceptualstructures: consensus, conflict, correspondence and contrast,Knowledge Acquisition 1 (1989), no. 4, 341–363.
Xinyu Wang, Liping Zhao, Ye Wang, and Jie Sun, The role ofrequirements engineering practices in agile development: Anempirical study, Proceedings of the Asia Pacific RequirementsEngineering Symposium (APRES), vol. 432, 2014, pp. 195–209.
102 / 102
![Page 156: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/156.jpg)
Agile Requirements Engineering with User Stories
Behavior-Driven Development (BDD)Making user stories testable
BDD promotes to write acceptance tests that
Complement the who, what, and why parts
Determine when a user story is fulfilled
Given some contextWhen some action is carried outThen a set of observable consequences occurs
Example
Given the user is interested in the RE field,When a new paper is published in the RE conferenceAnd the user is not an author,Then the user is notified of such paper.
103 / 102
![Page 157: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/157.jpg)
Agile Requirements Engineering with User Stories
Behavior-Driven Development (BDD)Making user stories testable
BDD promotes to write acceptance tests that
Complement the who, what, and why parts
Determine when a user story is fulfilled
Given some contextWhen some action is carried outThen a set of observable consequences occurs
Example
Given the user is interested in the RE field,When a new paper is published in the RE conferenceAnd the user is not an author,Then the user is notified of such paper.
103 / 102
![Page 158: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/158.jpg)
Agile Requirements Engineering with User Stories
QUS in practice: improving the user stories9. Conflict-free
Conflict-free
A user story should not be inconsistent with any other user story
Example (Violation)
1 As an Event Organizer, I’m able to edit any event
2 As an Event Organizer, I’m able to delete only the events that Iadded
⇓ (change 1)
As an Event Organizer, I’m able to edit events that I added
104 / 102
![Page 159: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/159.jpg)
Agile Requirements Engineering with User Stories
QUS in practice: improving the user stories9. Conflict-free
Conflict-free
A user story should not be inconsistent with any other user story
Example (Violation)
1 As an Event Organizer, I’m able to edit any event
2 As an Event Organizer, I’m able to delete only the events that Iadded
⇓ (change 1)
As an Event Organizer, I’m able to edit events that I added
104 / 102
![Page 160: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/160.jpg)
Agile Requirements Engineering with User Stories
QUS in practice: improving the user stories10. Estimable
Estimable
A user story does not denote an unrefined requirement that is difficult toplan and prioritize
Example (Violation)
As an Event Organizer, I want to see my task list during the event, sothat I can prepare myself (e.g., I can see when I should leave home)
⇓ (split)
1 As an Event Employee, I want to see my task list during the event,so that I can prepare myself
2 As an Event Organizer, I want to upload a task list for eventemployees
105 / 102
![Page 161: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/161.jpg)
Agile Requirements Engineering with User Stories
QUS in practice: improving the user stories10. Estimable
Estimable
A user story does not denote an unrefined requirement that is difficult toplan and prioritize
Example (Violation)
As an Event Organizer, I want to see my task list during the event, sothat I can prepare myself (e.g., I can see when I should leave home)
⇓ (split)
1 As an Event Employee, I want to see my task list during the event,so that I can prepare myself
2 As an Event Organizer, I want to upload a task list for eventemployees
105 / 102
![Page 162: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/162.jpg)
Agile Requirements Engineering with User Stories
QUS in practice: improving the user stories11. Unique
Unique
Every user story is unique, duplicates are avoided
Example (Violation)
1 As a Visitor, I’m able to see new events, so that I stay up to date
2 As a Visitor, I’m able to see new events, so that I stay up to date
⇓ (remove one)
1 As a Visitor, I’m able to see new events, so that I stay up to date
106 / 102
![Page 163: Agile RE with User Storiesre18.org/assets/downloads/Tutorials/re18-tutorial-T06.pdf · Agile RE and User Stories: fundamentals Some evidence of their popularity Results from academic](https://reader034.vdocument.in/reader034/viewer/2022042803/5f43c0d9af4034641002b923/html5/thumbnails/163.jpg)
Agile Requirements Engineering with User Stories
QUS in practice: improving the user stories11. Unique
Unique
Every user story is unique, duplicates are avoided
Example (Violation)
1 As a Visitor, I’m able to see new events, so that I stay up to date
2 As a Visitor, I’m able to see new events, so that I stay up to date
⇓ (remove one)
1 As a Visitor, I’m able to see new events, so that I stay up to date
106 / 102