Scrum XP è sempre più la metodologia di riferimento per i team e alcuni concetti sono divenuti di uso comune per chiunque operi nel mondo dell’IT (sia piccole realtà sia grandi aziende). Tra questi spiccano termini come user story e Product Backlog.
L’utilizzo delle user story ha sempre più spesso rimpiazzato i tradizionali documenti di specifiche funzionali e gli use case, mentre il Product Backlog è diventato lo strumento per tracciare tutto ciò che riguarda la realizzazione di un Prodotto.
Eppure entrambi hanno una serie di punti deboli. In questo talk mi concentrerò da una parte sulla difficoltà di avere un quadro completo ed evoluto a partire dal Backlog che è aihme piatto e mono dimensionale e dall’altro parlerò di cosa vuol dire veramente avere un approccio iterativo e incrementale nello sviluppo di un sistema.
7. Canvas
as
tools
to
sharing
vision
and
create
the
backlog
Product
Idea
Product Vision board
Business Model / Lean
Canvas
User Story MappingCapture
and
validate
ini9al
assump9on
Capture
and
validate
Business
Model
Capture
and
validate
Product
features
Canvas
as
tools
to
sharing
vision
and
create
the
backlog
Canvas
as
tools
to
sharing
vision
and
create
the
backlog
8. Vision Statement
Target Group Needs Product Business Value
Write
in
one
sentence
the
aim
of
the
product
What
are
the
needs
that
this
product
will
sa=sfy?
List
of
main
features
of
the
product
What
are
the
values
that
this
product
will
generate
for
the
company?
Values
can
be
profit,
market
share,
cost
saving,
improve
KPIs
and
so
on..
Barriers
Impediments
to
sa=sfy
these
needs
Impediments
to
reach
these
values
Who is out?
List
eventually
who
is
not
the
target
Barriers
List
people
who
are
the
target
of
the
product.
People
may
be
cutsomers,
end-‐users,
internal
users
…
all
stakeholders
that
will
are
impacted
by
the
product.
Use
roles
to
iden=fy
them
Product
Vision
Board
9. Il
piu’
grande
online
store
al
mondo
Comprare
online
libri
e
altri
beni
Risparmiare
Avere
una
scelta
completa
Conoscere
i
pareri
di
chi
ha
comprato
la
stessa
cosa
Comprare
senza
recarsi
in
negozio
Scheda
libri
e
altri
beni
Ricerca
Recensioni
Carrello
e
acquisto
on-‐line
Vendere
mol=
libri
(e
altri
beni)
in
tuTo
il
mondo
Eliminare
i
cos=
fissi
dei
negozi
Consumatori
in
tuTo
il
mondo
con
connessione
a
Internet
e
Carta
di
Credito
Product
Vision
Board
–
Amazon
2005
Vision Statement
Target Group Needs Product Business Value
14. Silent
Brainstorming
• Decide
on
the
type
of
ques9on
• Step
1:
generate
ideas
individually.
One
idea
per
post-‐it
• Step
2:
read
and
put
ideas
on
the
table
• Step
3:
group
the
ideas
(clustering)
• Step
4:
Name
each
group
• Step
5:
prepare
for
vo9ng
• Step
6:
each
person
votes
for
their
top
3
• Step
7:
facilitator
tallies
the
votes
• Step
8:
act
on
the
item(s)
with
the
highest
vote!
16. Dimensional
Planning
• In
Scrum
the
Product
Backlog
is
an
ordered
list
of
features.
Unfortunately
the
linearity
of
the
ordered
list
is
not
consistent
with
the
way
us
humans
think
about
problems.
• Problems
even
in
the
business
space
are
mul9-‐
dimensional.
So,
we
probably
also
should
think
of
solving
our
problems
in
mul9ple
dimensions.
This
is
where
Dimensional
Planning
comes
in
handy
when
spli[ng
Product
Backlog
Items
in
your
Product
Backlog
during
the
Refinement
or
Grooming
mee9ngs.
17. Dimensional
Planning
• In
Scrum
the
Product
Backlog
is
an
ordered
list
of
features.
Unfortunately
the
linearity
of
the
ordered
list
is
not
consistent
with
the
way
us
humans
think
about
problems.
• Problems
even
in
the
business
space
are
mul9-‐
dimensional.
So,
we
probably
also
should
think
of
solving
our
problems
in
mul9ple
dimensions.
• This
is
where
Dimensional
Planning
comes
in
handy
when
spli[ng
Product
Backlog
Items
in
your
Product
Backlog
during
the
Refinement
or
Grooming
mee9ngs.
28. Some
defini9on
• The
post-‐its
you
create
in
Step
2
are
the
User
Tasks
(blue
post-‐its
in
the
diagram).
• The
groups
and
group
names
in
steps
3
and
4
are
the
User
Ac3vi3es
(orange
post-‐its).
Jeff
calls
these
top
two
rows
the
backbone
and
walking
skeleton
of
your
applica9on.
• The
user
stories
(yellow
post-‐its)
are
organized
under
each
User
Task
in
order
of
highest
to
lowest
priority
for
that
User
Task.
• The
chronological
order
of
how
users
will
typically
use
the
applica9on
goes
lec
to
right
(Time).
33. What User Stories are not
Tasks • Create user table
• Create password
encryption service
• Create login service
• Create CSS
• Create page template
• Add login button
34. What User Stories are not
A document • Login.docx
• “this document, by its
very size, ensures
that it will never be
read.” – Sir Winston
Churchill
35. What User Stories are…
A small piece of
functionality that
provides some value to
a user
• As a user, I want to
login with my
password, so that I
can gain access to
the site.
“A place holder for a conversation.”
36. What User Stories are…
I Independent *
N Negotiable (can be prioritized)
V Valuable (to a user)
E Estimable
S Small
T Testable
37. Formats
By the book:
As a [role],
I want to
[some action],
so that
[goal]
As a [mom]
I want to
[login with my pwd]
so that
[I can gain access to the
site]
38. Formats
Who
What
Why
As a
[mom]
I want to
[login with my pwd]
so that
[I can gain access to
the site]
The “by the book” format is great for learning, but at its
core, it is just Who/What/Why
39. Why
• It
allows
you
to
see
the
big
picture
in
your
backlog.
• It
gives
you
a
beder
tool
for
making
decisions
about
grooming
and
priori9zing
your
backlog.
• It
promotes
silent
brainstorming
and
a
collabora9ve
approach
to
genera9ng
your
user
stories.
40. Why
• It
encourages
an
itera9ve
development
approach
where
your
early
deliveries
validate
your
architecture
and
solu9on.
• It
is
a
great
visual
alterna9ve
to
tradi9onal
project
plans.
• It
is
a
useful
model
for
discussing
and
managing
scope.
• Allows
you
to
visualize
dimensional
planning
and
real
op9ons
for
your
project/product.
41. Story
…
Story
1
Story
2
Story
3
SprintN-1
SprintN
SprintN+1
Story
3
42. Story
Slicing
Story
1
Story
2
Story
3
Story
4
Story
5
Story
6
Story
7
Story
8
Story
9
SprintN-1
SprintN
SprintN+1
Wri9ng
story
tests
Automa9ng
story
tests
Implemen9ng
the
user
story
43. Risk
&
Assump9ons
• Where
are
the
risky
stories?
• Where
are
our
biggest
assump9ons?
46. How not to Slice?
Tasks • Create user table
• Create password
encryption service
• Create login service
• Create CSS
• Create page template
• Add login button
47. How to Slice?
• By screen (for basic screens
only)
• By button
• By group of fields
• By workflow step
• Optional workflow steps
• Validation
• Error handling *
• Admin functions (maintaining
drop downs, etc)
• By priority
• By applying the INVEST
model
• By acceptance criteria
• By option
• By role
• By Subjective quality
(never by objective
quality: always be
defect free)
• By value
48. Other Tips
• Keep them as stories!
• Slice them small when needed, but don’t
get silly
• Slice any time
• When you are fighting over your planning
poker estimates – slice away.
• Slice more liberally if the story is higher
priority
55. How
to
do
it?
1. Divide
into
groups
of
3-‐5
people
2. Start
by
gathering
“things
people
do”
–
the
tasks.
Write
them
down
individually
and
then
read
them
aloud
to
your
group
– Likely
they
start
with
a
verb.
– These
are
high
level
user
stories
called
“Tasks”
(walking
skeleton)
– This
forms
your
story
map
skeleton
3. Group
them
silently
(simply
because
it
is
faster)
4. Name
the
groups
and
lay
them
out
in
order
of
9me
(lec
to
right)
– These
are
called
“User
Ac3vi3es”
(backbone)
56. How
to
do
it?
5. Add
more
detailed
user
stories
below
the
main
tasks
6. Priori9ze
top
to
bodom
7. Break
into
releases
8. Assign
values
57. How to do it?
smithcdau
(@smithcdau)
11-‐08-‐11
2:12
PM
RT
@shanehas9e:
@jeffpadon
if
you're
arguing
about
sequence
it
probably
means
it
doesn't
mader.
#Agile2011
#yam