You are on page 1of 7

Ren Witte

Lecture 8

Key Points

User Stories

User Stories
Description Templates
User Stories and NFRs

Requirements Specification & Documentation (III)

Agile Development
and User Stories
User Stories and the Scrum
Backlog

SOEN 6481, Fall 2016

Burndown Charts

Notes and Further


Reading

Ren Witte
Department of Computer Science
and Software Engineering
Concordia University
8.1

Key Points

Ren Witte

Key Points
User Stories
Description Templates
User Stories and NFRs

User Stories are another way to document scenarios

Written by the whole team (in cooperation with product owner)


Popular in agile software development (e.g., XP, Scrum)
Used for:
Requirements documentation
Effort estimation (sprint planning)
Prioritization
Progress measurement
Acceptance tests

Agile Development
and User Stories
User Stories and the Scrum
Backlog
Burndown Charts

Notes and Further


Reading

8.2

Outline

Ren Witte

Key Points
User Stories

1 User Stories

Description Templates
User Stories and NFRs

Description Templates
User Stories and NFRs

Agile Development
and User Stories
User Stories and the Scrum
Backlog
Burndown Charts

Notes and Further


Reading

2 Agile Development and User Stories

User Stories and the Scrum Backlog


Burndown Charts

3 Notes and Further Reading

8.3

Outline

Ren Witte

Key Points
User Stories
Description Templates

1 User Stories

User Stories and NFRs

Description Templates
User Stories and NFRs

Agile Development
and User Stories
User Stories and the Scrum
Backlog
Burndown Charts

Notes and Further


Reading

2 Agile Development and User Stories

User Stories and the Scrum Backlog


Burndown Charts

3 Notes and Further Reading

8.4

Requirements Specification & Documentation

Ren Witte

Key Points
User Stories
Description Templates
User Stories and NFRs

Agile Development
and User Stories
User Stories and the Scrum
Backlog
Burndown Charts

Notes and Further


Reading

Copyright 2009 by John Wiley & Sons Ltd, [vL09]

8.5

User Stories

Ren Witte

Key Points

Written on index cards (or equivalent)

Acceptance Test

Title
Priority

User Stories
Description Templates
User Stories and NFRs

Story Points

Description (scenario)

Agile Development
and User Stories
User Stories and the Scrum
Backlog
Burndown Charts

Notes and Further


Reading

Example

Customer returns item


Acceptance Test: custRetItem Priority: 1 Story Points: 2
When a customer brings an item to return, its purchase shall
first be authenticated. If the item was successfully authenticated, the customer shall be credited with the purchase
amount through the same purchase method. The inventory
shall be updated with the returned item.

8.6

Description Templates

Ren Witte

Key Points

Mike Cohns Style for User Stories

Descriptions are often written in a template form:


As a <role>, I want <goal/desire> so that <benefit>
or just (shorter form)
As a <role>, I want <goal/desire>

User Stories
Description Templates
User Stories and NFRs

Agile Development
and User Stories
User Stories and the Scrum
Backlog
Burndown Charts

Notes and Further


Reading

Examples

As a forum user, I want to add a picture to my profile.


As a web user, I want to be notified when I move away from a page without
having it saved so that I do not unintentionally lose my work.

8.7

INVEST

Ren Witte

Key Points
User Stories

The INVEST checklist for user stories

Independent: stories should be independent from each other


Negotiable: stories are not fixed, can be changed by customer
Valuable to user or business: user/business must get a value out of the story
(compare with use cases)

Description Templates
User Stories and NFRs

Agile Development
and User Stories
User Stories and the Scrum
Backlog
Burndown Charts

Notes and Further


Reading

Estimable: if it cant be estimated, it doesnt go into the backlog


Small: should not take more than one sprint to finish (usually less) no epic
story
Testable: each story must be testable and the test(s) must be defined as an
acceptance criterion if it cant be tested, its not a requirement!

8.8

But what about the NFRs. . .?

Ren Witte

Key Points
User Stories
Description Templates
User Stories and NFRs

How about writing NFRs as User Stories?

We could try to address them like this:


As a user, I want to have a response from the system after at most 1sec.
so that I do not waste my time.

Agile Development
and User Stories
User Stories and the Scrum
Backlog
Burndown Charts

Notes and Further


Reading

As a system administrator, I want to be able to run 1000 users in parallel


so that I can deploy the system in our company.
(This is what some Scrum people propose Issues?)

8.9

But what about the NFRs. . .?

Ren Witte

Key Points
User Stories

Scrum doesnt have a clear concept for NFRs (unlike the UP)

Description Templates

The Scrum community didnt come up with a clear concept for this (yet):
Some propose writing NFRs as user stories they are at least captured, but do

not fit into the sprint/estimation model

User Stories and NFRs

Agile Development
and User Stories
User Stories and the Scrum
Backlog
Burndown Charts

Some propose to capture them in a different format (e.g., templates specifically

for NFRs) but then you need a new strategy for integrating them into your
sprint planning

Notes and Further


Reading

For an NFR that only applies to a single user story, it can also be captured in its

acceptance test

Some choose to ignore NFRs and hope for the best. . .

Scrum doesnt prescribe only using User Stories for a products backlog make
sure you address NFRs in a project somehow!

8.10

Outline

Ren Witte

Key Points
User Stories
Description Templates

1 User Stories

User Stories and NFRs

Description Templates
User Stories and NFRs

Agile Development
and User Stories
User Stories and the Scrum
Backlog
Burndown Charts

Notes and Further


Reading

2 Agile Development and User Stories

User Stories and the Scrum Backlog


Burndown Charts

3 Notes and Further Reading

8.11

Scrum Overview

Ren Witte

Key Points
User Stories
Description Templates
User Stories and NFRs

Agile Development
and User Stories

24 h

User Stories and the Scrum


Backlog
Burndown Charts

Notes and Further


Reading

30 days

Product Backlog

Sprint Backlog

Sprint

Working increment
of the software

Copyright Lakeworks, licensed under the Creative Commons Attribution-Share Alike 3.0 Unported

8.12

Ren Witte

Key Points
User Stories
Description Templates
User Stories and NFRs

Agile Development
and User Stories
User Stories and the Scrum
Backlog
Burndown Charts

Notes and Further


Reading

8.13

Copyright 2011 Pearson Education, Inc. [Lef11]

Requirements Meta-Model

Ren Witte

Key Points
User Stories
Description Templates
User Stories and NFRs

Agile Development
and User Stories
User Stories and the Scrum
Backlog
Burndown Charts

Notes and Further


Reading

Copyright 2011 Pearson Education, Inc. [Lef11]

8.14

Sprint Planning and User Stories

Effort Estimation

User stories must include an effort estimation field (e.g., hours, story points)
estimated by the team (Planning Poker)
typically relative estimate (story points)

used to plan the number of user stories that can go into the next sprint backlog

Ren Witte

Key Points
User Stories
Description Templates
User Stories and NFRs

Agile Development
and User Stories
User Stories and the Scrum
Backlog
Burndown Charts

Notes and Further


Reading

Priority
apply prioritization techniques as discussed before
priority increases for more detailed user stories

one person (usually product owner) has final say on prioritization


Progress tracking

using burndown charts

8.15

Burndown Charts

Ren Witte

Key Points
User Stories
Description Templates
User Stories and NFRs

Agile Development
and User Stories
User Stories and the Scrum
Backlog
Burndown Charts

Notes and Further


Reading

8.16

Dead-Tree Implementation

Ren Witte

Key Points
User Stories
Description Templates
User Stories and NFRs

Agile Development
and User Stories
User Stories and the Scrum
Backlog
Burndown Charts

Notes and Further


Reading

8.17

Outline

Copyright Drew Stephens, licensed under the Creative Commons Attribution-ShareAlike 2.0 Generic (CC BY-SA 2.0)

Ren Witte

Key Points
User Stories

1 User Stories

Description Templates
User Stories and NFRs

Description Templates
User Stories and NFRs

Agile Development
and User Stories
User Stories and the Scrum
Backlog
Burndown Charts

Notes and Further


Reading

2 Agile Development and User Stories

User Stories and the Scrum Backlog


Burndown Charts

3 Notes and Further Reading

8.18

Reading Material

Ren Witte

Key Points

Required

User Stories

[Lef11, Chapter 6]
Supplemental
[Lef11, Chapter 8] (Agile Estimating, Planning Poker)

Description Templates
User Stories and NFRs

Agile Development
and User Stories
User Stories and the Scrum
Backlog
Burndown Charts

Notes and Further


Reading

Mike Cohns blog [Coh]

Alistair Cockburns Earned-value and burn charts [Coc]


Further Reading
[Lef11] (Agile Software Requirements)
[Rub13] (Scrum)

[GB13] and http://www.interactionroom.org (Interaction Room)

8.19

References I
[Coc]

[Coh]

Alistair Cockburn.
Earned-value and burn charts.
http://alistair.cockburn.us/Earned-value+and+burn+charts.
Mike Cohn.
Mike Cohns Blog Succeeding with Agile.
http://blog.mountaingoatsoftware.com/.

[GB13]

Volker Gruhn and Matthias Book.


Tamed Agility in Developing Mobile Business Systems.
In Mobile Web Information Systems, volume 8093 of Lecture Notes in
Computer Science, pages 18. Springer Berlin Heidelberg, 2013.
http://dx.doi.org/10.1007/978-3-642-40276-0_1.

[Lef11]

Dean Leffingwell.
Agile Software Requirements: Lean Requirements Practices for Teams,
Programs, and the Enterprise.
Agile Software Development Series. Addison-Wesley Professional, 2011.
Available online at http://clues.concordia.ca/record=b2680322.

Ren Witte

Key Points
User Stories
Description Templates
User Stories and NFRs

Agile Development
and User Stories
User Stories and the Scrum
Backlog
Burndown Charts

Notes and Further


Reading

8.20

References II

Ren Witte

Key Points
User Stories
Description Templates
User Stories and NFRs

[Rub13] Kenneth S. Rubin.


Essential Scrum: A Practical Guide to the Most Popular Agile Process.
Addison-Wesley, 2013.
[vL09]

Agile Development
and User Stories
User Stories and the Scrum
Backlog
Burndown Charts

Notes and Further


Reading

Axel van Lamsweerde.


Requirements Engineering: From System Goals to UML Models to
Software Specifications.
John Wiley & Sons, 2009.

8.21

You might also like