<8.,4.*/"<$($-"&-)48912"=2.*/
=2$-">1)-?"@'AA.*/




#$%"&'()*
BA'()*C'9;6)-/
5556'/.,$A-)48914$2./*69);
!"#$%"&'()*+"',,"...
<8-"/)',2"'*4"'/$*4'"1)4'=
!"#$%&'(#)*&+"&,-(&+.(&,-()&-+")/&0#12$"3&#-&#&4#/&+"&
5(-1)60(&,-()7-&(89()6(*1(&46+.&/",)&9)"...
Starting with the
                               User Story
                                 What do you know about user s...
<2$-"=1)-.$2"'-$"4.%$-$*1"10.*/2"1)"
4.%$-$*1">$)>,$666




          !"?@A"=184.)2
!"#$%"&'()*+"',,"-./012"-$2$-3$4+"5556...
<2$-"=1)-.$2"'-$";8,>?@8-@)2$"10.*/2
=1)-.$2"'-$"'A
      ! <2$-B2"*$$4
      ! &-)4891"4$29-.@>)*
      ! &,'**.*/".1$;  ...
<1)-.$2"/'.*"4$1'.,")3$-"=;$
>6 <1'-1"5.10"!"#$%&
?6 744"'"'()'*+&",&+'-*.#()"
   2);$"82$"10.2"82$@8,"1$;A,'1$B
         ...
7/.,$"9821);$-2")-"<-)4891")5*$-"
<-.)-.=>$"21)-.$2".*1)"'"?'9@,)/
7"9),,$9=)*")A"21)-.$2"A)-"'"
2)B5'-$"<-)4891".2"
-$A$-...
Let’s talk about the nature
        of multi-purpose things
                                       (yes I’m going meta)


...
<2$-"=1)-.$2"'-$"!"#$%&'()"!*+,-.
?$-$@2"10$"A*$"B-.*1")*"C)8*4'-D")CE$912F
G7"C)8*4'-D")CE$91".2"'"9)*9$B1".*"2)9.),)/D"1...
<2$-"=1)-.$2"'91"'2"10$">)8*4'-?"1)"@'9.,.1'1$"
9)*3$-2'A)*">$15$$*";'*?"B$)B,$
                              How
        ...
<81"2.=$"',5'>2";'($-2666
?)5"@./".2"10$"21)->"5$"
5'*1"1)"1',A"'@)81B




!"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4...
7*4+".1<2"$'2="1)"/$1",)21".*"10$"20$$-"
*8;>$-")?"10$;




!"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69);  ...
7*4+"'2"5$"21'-1";)3.*/"<)-5'-4+"0)5"4)"
5$"21'=")*"1-'9>?




!"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69)...
<2$-"=1)->"?'@@.*/".2"'*"'*"'@@-)'90"1)"
!"#$%&'&%#"!"#"("&)"&*'&%#+82$-"21)-.$2
                                         ...
<2$-"=1)->"?'@@.*/".2"'*"'*"'@@-)'90"1)"
!"#$%&'&%#"!"#"("&)"&*'&%#+82$-"21)-.$2




                                     ...
The foundational building
        block of a stories that say
          what people are doing
               (user tasks)
...
<.-21",$1=2"4)"'"!"#$%&'()*)#+,-)(1)"
8*4$-21'*4"'">$5"9)*9$?12




@0'1"5$-$"',,"10$"10.*/2"A)8"4.4"1)"/$1"-$'4A"1)"B$"
0...
What’s common about the items
           each of you wrote down?
                              What was different?


!"#$%...
&$)<,$"'90.$3$"/)',2"10-)8/0".*1$-'9=)*
                                                problem or
                       ...
<0.*=")>"10-$$",$3$,2?"/)',+"1'2=+"'*4"1)),
                                                problem or
                   ...
<0.*=")>"10-$$",$3$,2?"/)',+"1'2=+"'*4"1)),

                                                  goal

                     ...
<)=5'-$"9)*1'.*2">$'18-$2"10'1"28??)-1"'"
3'-.$1@")>"1'2A2"'*4"'"3'-.$1@")>"/)',2

                                       ...
User tasks make ideal
                     user stories:
                          Title: Take a shower
                  ...
<*"=-'9>9$"82$-"21)-.$2";'?"@$"5-.($*"1)"4$29-.@$"
82$-"1'2A2")-"10$"1)),2"10'1"28==)-1"10$;""


                         ...
Organize user stories into a
      map that communicates
            experience

!"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/....
<="'--'*/.*/"'9>3.1="'*4"1'2?@9$*1-.9"21)-="
9'-42"2A'>',,=+"5$"9'*"1$,,"B.//$-"21)-.$2
C$,,"'"B./"21)-=")D"10$"A-)4891"B=...
<="'--'*/.*/"1'2>?9$*1-.9"21)-="9'-42"
2@'A',,=+"5$"9'*"1$,,"B.//$-"21)-.$2
744"1'2>?9$*1-.9"21)-.$2".*"8*4$-"$'90"'9A3.1=...
<="'--'*/.*/"1'2>?9$*1-.9"21)-="9'-42"
2@'A',,=+"5$"9'*"1$,,"B.//$-"21)-.$2
C3$-,'@"82$-"1'2>2"3$-A9',,=".D"'"82$-";'="4)"...
<0$";'="20)52"4$9);=)2.>)*"'*4"
1?=.9',"@)5"'9-)22"10$"$*>-$"2?21$;
A$'4.*/"10$"'9>3.>$2"'9-)22"10$"1)=")B"10$"2?21$;"0$,=...
&-)4891":.29)3$-<"=)->20)?2
@2$"?-)4891"4.29)3$-<"5)->20)?2"
1)"8*4$-21'*4"10$"?-)4891"5$A-$"
B8.,4.*/"'2"'"82$-"21)-<";'?...
&-)4891":.29)3$-<"=)->20)?2
=0)"?'-@9.?'1$2A
      ! !"#$%&'()*#+"B"10)2$"50)"C-.*/"
        .*D)-;'@)*+"28CE$91";'($-"
  ...
<8.,4.*/"'"21)-=";'>"0$,>2"?'9.,.1'1$"
4.29822.)*"@"A81"-$B8.-$2"'"A.1")?"2>'9$




Gary Levitt, owner & designer of Mad M...
7"21)-<";'=">)-"'"-$'2)*'?,$"2.@$4"2<21$;"
9'*"A,,"'"-));




!"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69);...
Product Discovery Looks Like this:




!"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69);   <=
<1)-=">'?"@'-.'A)*2
• >'?2"'B)81"2=21$;"
   B$0'3.)-

• C$'18-$D9$*1-.9"
   ;'?2

• 72D.2"?-)4891";'?2


• E0'1"$,2$F




...
The easiest way to write
            user stories is by telling
                   user stories
           (hopefully this...
Let’s try one together...



!"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69);   <=
Discuss, fill in, refine the
              map, and test for
                completeness

!"#$%"&'()*+"',,"-./012"-$2$-3$4+...
:.29822.)*2")3$-"21)-<";'=2"0$,="4-.3$"
)81";)-$"4$1'.,2




                  Repeated review of the story map with
     ...
<-$'=*/">$-2)*'2"?)-"4.%$-$*1"@.*42")?"
>$)>,$"82.*/"A)8-"2A21$;




!"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2...
7"<-'/;'=9"<$-2)*'".2"'">8.9?"$@<,)-'=)*"
)A"50'1"5$"?*)5"'B)81")8-"82$-2
                                                ...
<=$190"'">-'/;'?9">$-2)*'"10.*=.*/"
'@)81"2);$)*$"4.%$-$*1"A-);"B)8-2$,A




!"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-...
<="'--'*/.*/"'9>3.1="'*4"1'2?@9$*1-.9"21)-="
9'-42"2A'>',,=+"5$"9'*"1$,,"B.//$-"21)-.$2
744"'"3$->9',"'C.2"1)".*4.9'1$"*$9...
<="'--'*/.*/"'9>3.1="'*4"1'2?@9$*1-.9"21)-="
9'-42"2A'>',,=+"5$"9'*"1$,,"B.//$-"21)-.$2
C$21"10$"D1)-="E'A"B="1$,,.*/"B.//...
<="'--'*/.*/"'9>3.1="'*4"1'2?@9$*1-.9"21)-="
9'-42"2A'>',,=+"5$"9'*"1$,,"B.//$-"21)-.$2
  “Steve knows the title of what h...
<0$"82$-"21)-=";'>"9)*1'.*2"15)"
.;>)-1'*1"'*'1);.9',"?$'18-$2
<0$"!"#$!%&'")?"10$"'>>,.9'@)*".2"10$",.21")?"
$22$*@',"'9@...
<2.*/"4.29822.)*+"=,,".*">)8-"21)->";'?

                                            @)-A"1)/$10$-"'2"'"1$';
             ...
Slice the map to find ideal
           incremental releases


!"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); ...
<.3$*"21)-=";'>")-/'*.?$4"3$-@9',,="A="
 *$9$22.1=+"5$"*$$4")*,="2,.9$"1)">,'*

                                          ...
<.3$*"21)-=";'>")-/'*.?$4"3$-@9',,="A="
*$9$22.1=+"5$"*$$4")*,="2,.9$"1)">,'*




!"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/...
It’s easy to make release
                “slices” and move
           detailed stories into them

!"#$%"&'()*+"',,"-./012...
744.*/"1'<$",.*$2"1)"10$"5',,",$12"
<'-=9.<'*12")-/'*.>$"21)-.$2".*1)",'?$-2




!"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/....
744.*/"1'<$",.*$2"1)"10$"5',,",$12"
<'-=9.<'*12")-/'*.>$"21)-.$2".*1)",'?$-2




!"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/....
744.*/"1'<$",.*$2"1)"10$"5',,",$12"
<'-=9.<'*12")-/'*.>$"21)-.$2".*1)",'?$-2




!"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/....
&,'**.*/".*9-$;$*1',"-$,$'2$2"9'*"<$"
='9.,.1'1$4"'2"'"9),,'<)-'>3$"$3$*1




!"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&...
<8.,4.*/"<$($-"&-)48912"=2.*/
=2$-">1)-?"@'AA.*/




#$%"&'()*
BA'()*C'9;6)-/
5556'/.,$A-)48914$2./*69);
!"#$%"&'()*+"',,"...
Bonus Material
    (Not addressed in the Story Mapping session)




!"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2....
Iteratively and
                incrementally construct
                        software

!"#$%"&'()*+"',,"-./012"-$2$-3$4...
<-'4.=)*',"2)>5'-$"4$3$,)?;$*1"@A$2"29)?$"
10$*"$2=;'1$2+"'*4"'($;?12"1)"@A"=;$"'*4"9)21


                               ...
7/.,$"4$3$,)<;$*1"=>$2"?;$"'*4"9)21+"10$*",$3$-'/$2"
.1$-'?)*"'*4".*9-$;$*?*/"1)";'>.;.@$"29)<$"

                        ...
<$3$-'/$"'"20'-$4"8*4$-21'*4.*/")="4$2.-$4">-)4891"
/)',2"1)";.*.;.?$"29)>$"50.,$";'@.;.?.*/"3',8$

                      ...
To release benefit on a
              schedule we’ll need to
            leverage incremental and
                iterative...
<.*9-$;$*=*/>"?8.,42"'"?.1"'1"'"=;$

                                                       Incrementing calls for a fully...
<.1$-'=*/>"?8.,42"'"-)8/0"3$-2.)*+"
3',.4'1$2".1+"10$*"2,)5,@"?8.,42"8A"B8',.1@
                                          ...
>'*?")-/'*.@'A)*2"9)*2.4$-"-$3.2.*/"10$"2';$"
              B8*9A)*',.1?"'2"B'.,8-$6""C1$-'A)*".2"*)1"
              1),$-...
72"'"<-)4891")5*$-+"=)8"*$$4"'";)-$"-$>*$4"
8*4$-21'*4.*/")?"@20.<<'A,$B




!"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-...
<$$=.*/")8-"82$-"21)-.$2"1'2>?9$*1-.9"
',,)5$4"82"1)"4$@$-"2),8A)*"4$9.2.)*2

                        user goal

         ...
<'=$">$'18-$"4$9.2.)*2".*"10$"9)*1$?1")>"
@;$"'*4"A84/$1",.;.1'@)*2
                                     hole
            ...
<);;.1"1)"2'=2>?.*/"82$-"*$$42+"*)1"1)"
2@$9.A9">$'18-$2
                                     hole
                       ...
&-)48912"5.10"2.;.,'-"<$'18-$2")=$*"3'->"
28?21'*@',,>".*"10$"A-.9$"5$"A'>
B0.*C"'?)81"10$"0./0D,$3$,"<$'18-$2"
          ...
<'*)"9'8=)*2"82"1)"9)*2.4$-">8',.1?"'2"@$.*/"
 9);A)2$4")B"!"#$%&'$"'*4"()"#$%&'$"$,$;$*12
                               ...
<'*)"$=>,'.*2"10-$$"/$*$-',"9,'22.?9'@)*2"A)-">-)4891"
A$'18-$2B"!"#$%&'()#+"*+)%,-!)+#-*+'.#+"'*4",).-/&$)0#1

          ...
<$='-'1$")>?$9@3$"A8',.1B"C-);"28>?$9@3$"
A8',.1B
                               D>?$9@3$"A8',.1B"-$C$-2"1)"10$"3.2.>,$";$...
<2$"10$"='*)"9,'22.>9'?)*2"1)"@)10"
A-.)-.?B$"'*4"2A,.1
                                                                  ...
>$1?2",))@"'1"50'1"0'AA$*2".B"5$"1'@$"'"
*'.3$".*9-$;$*1',"'AA-)'90"1)"9)*21-89C)*
>$1?2"21'-1"5.10"10$"D'2.9"B$'18-$2")B"...
<$"9'*",$3$-'/$".1$-'=)*"1)">8.,4"8?"
@8',.1A

                                                          Iterating affords...
<)*2.4$-"10$2$"=)8-"21)->"2?,.@*/"
0$8-.2A92"10'1"B8.,4"8?"C8',.1>
!"#$%&$'$(()*+%                                        ...
>8.,4.*/"8?"@8',.1A".1$-'B3$,A"'*4"
.*9-$;$*1',,A"20.?2"10$"C$21"?-)4891"?)22.C,$
                              D6 E$"F*)5...
:.3.4$"-$,$'2$"4$2./*"<"4$3$,)=;$*1".*1)"
10-$$"=0'2$2
!"#$%$&'()*#+">8.,4"'"2.;=,$"2?21$;"2='*")@"*$9$22'-?"@$'18-$2"A-21...
<0.2"=-)4891"/-)5.*/"21-'1$/>"2,)5,>"
?-.*/2"10$"=-)4891".*1)"@)982
7*"'-A21"$*3.2.)*2"'*"$*A-$"='.*A*/"?>"21'-A*/"5.10"'"...
<))=.*/"'1"10$"-$,$'2$")>"?82.*$22"3',8$"
)3$-"@;$",$12"82"2$$"50'1A2"/).*/")*"0$-$
                                      ...
?,<;51-2",-"@0,7;<4"A-,8/'72'"*<B;10'7."
C'"5''"43'"715<,6'0D"E'-'F4"2*1-'7
                                              ...
<8.4$,.*$2"=)-"-$,$'2.*/")*">;$
A6 B0.*"21)-.$2"'//-$22.3$,C"48-.*/"$'-,C"2D-.*12"1)"
   E8.,4"',,"$22$*>',"=8*9>)*',.1C"$...
Parting thoughts



!"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69);   <=
Questions?



!"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69);   <=
<8.,4.*/"<$($-"&-)48912"=2.*/
=2$-">1)-?"@'AA.*/




#$%"&'()*
BA'()*C'9;6)-/
5556'/.,$A-)48914$2./*69);
!"#$%"&'()*+"',,"...
Upcoming SlideShare
Loading in...5
×

User Story Mapping

32,170

Published on

A prioritized user story backlog helps to understand what to do next, but is a difficult tool for understanding what your whole system is intended to do. A user story map arranges user stories into a useful model to help understand the functionality of the system, identify holes and omissions in your backlog, and effectively plan holistic releases that delivery value to users and business with each release.

Published in: Technology, Education
4 Comments
143 Likes
Statistics
Notes
No Downloads
Views
Total Views
32,170
On Slideshare
0
From Embeds
0
Number of Embeds
28
Actions
Shares
0
Downloads
1,384
Comments
4
Likes
143
Embeds 0
No embeds

No notes for slide

User Story Mapping

  1. 1. <8.,4.*/"<$($-"&-)48912"=2.*/ =2$-">1)-?"@'AA.*/ #$%"&'()* BA'()*C'9;6)-/ 5556'/.,$A-)48914$2./*69); !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69);
  2. 2. <8-"/)',2"'*4"'/$*4'"1)4'= !"#$%&'(#)*&+"&,-(&+.(&,-()&-+")/&0#12$"3&#-&#&4#/&+"& 5(-1)60(&,-()7-&(89()6(*1(&46+.&/",)&9)"5,1+ &'-1">?"@'AA.*/"82$-"21)-.$2 ! B2$-"21)-="$22$*C',2 ! D$,,.*/"21)-.$2"'E)81"10$"82$-"$FA$-.$*9$ ! @'AA.*/"82$-"21)-.$2"E'2$4")*"$FA$-.$*9$ &'-1"G?"&,'**.*/"3',8'E,$".*9-$;$*1',"-$,$'2$2 ! H4$*CI=.*/"A-)4891"/)',2"10'1"4$,.3$-="3',8$ ! J,.9.*/"10$"21)-=";'A".*1)"3',8'E,$"-$,$'2$2 !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); G
  3. 3. Starting with the User Story What do you know about user stories? What do you like about user stories? What causes you trouble with user stories !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); <
  4. 4. <2$-"=1)-.$2"'-$"4.%$-$*1"10.*/2"1)" 4.%$-$*1">$)>,$666 !"?@A"=184.)2 !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); B
  5. 5. <2$-"=1)-.$2"'-$";8,>?@8-@)2$"10.*/2 =1)-.$2"'-$"'A ! <2$-B2"*$$4 ! &-)4891"4$29-.@>)* ! &,'**.*/".1$; !"Kent Beck coined the term user stories in ! C)D$*"E)-"'"9)*3$-2'>)* Extreme Programming Explained 1st Edition, 1999 ! F$90'*.2;"E)-"4$E$--.*/" 9)*3$-2'>)* !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); G
  6. 6. <1)-.$2"/'.*"4$1'.,")3$-"=;$ >6 <1'-1"5.10"!"#$%& ?6 744"'"'()'*+&",&+'-*.#()" 2);$"82$"10.2"82$@8,"1$;A,'1$B As a [type of user] I want to [perform some task] so that I can [reach some goal] C6 744")10$-"-$,$3'*1")($&++" +.&'*/'!#()++")-"+0&$'1&+ D6 E$@)-$"F8.,4.*/"2)G5'-$"5-.1$" !''&.$!)'&"'-*$&-*!"!"#$%&#%$'% ()#$%$"')%$'*+'%&#)',- !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); H
  7. 7. 7/.,$"9821);$-2")-"<-)4891")5*$-" <-.)-.=>$"21)-.$2".*1)"'"?'9@,)/ 7"9),,$9=)*")A"21)-.$2"A)-"'" 2)B5'-$"<-)4891".2" -$A$--$4"1)"'2"10$"!"#$%&'( )*&+,#- C0$"?'9@,)/".2"<-.)-.=>$4" 2890"10'1"10$";)21" 3',8'?,$".1$;2"'-$"0./0$21 !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); D
  8. 8. Let’s talk about the nature of multi-purpose things (yes I’m going meta) !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); <
  9. 9. <2$-"=1)-.$2"'-$"!"#$%&'()"!*+,-. ?$-$@2"10$"A*$"B-.*1")*"C)8*4'-D")CE$912F G7"C)8*4'-D")CE$91".2"'"9)*9$B1".*"2)9.),)/D"1)"4$29-.C$".*H)-;'I)*" 82$4".*"4.%$-$*1"5'D2"CD"4.%$-$*1"9);;8*.I$26"/0+()&'+)12&.3,4) 5$-+'1'+-+%)%56+'+$-2()&,'"..),"77#$53+.)!#-)85-0)+$"#90) 577#-&!2+),"$-+$-)-")7&5$-&5$)5$-+9'5-(J"KKL.M.B$4.' G/0+()&'+)8+&:2().-'#,-#'+%)5$),"77"$)#.+4)&$%)!+,"7+).-'"$92() .-'#,-#'+%)5$)5$%5;5%#&2<.5-+)#.+="N0$D";'D"C$"'C21-'91")-"9)*9-$1$6" N0$D"0'3$"4.%$-$*1";$'*.*/2".*"4.%$-$*1"2)9.',"5)-,42"C81"10$.-" 21-8918-$".2"9);;)*"$*)8/0"1)";)-$"10'*")*$"5)-,4"1)";'M$"10$;" -$9)/*.O'C,$";$'*2")H"1-'*2,'I)*6"N0$"9-$'I)*"'*4";'*'/$;$*1" )H"C)8*4'-D")CE$912".2"M$D".*"4$3$,)B.*/"'*4";'.*1'.*.*/"9)0$-$*9$" '9-)22".*1$-2$9I*/"2)9.',"5)-,426J"KK"P$./0"Q"R-.$2$;$- !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); >
  10. 10. <2$-"=1)-.$2"'91"'2"10$">)8*4'-?"1)"@'9.,.1'1$" 9)*3$-2'A)*">$15$$*";'*?"B$)B,$ How do I understand How do I users and their describe to you needs? what I want? What are the details of this What are the feature I need things my to specify? product needs to 82$- <E"B$-2)* be successful? F7 >82.*$22",$'4$- How What are do I schedule the details of this work and How what I need to track it its do I validate build today? &G this work is 4$3$,)B$- done? 1$21$- !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); CD
  11. 11. <81"2.=$"',5'>2";'($-2666 ?)5"@./".2"10$"21)->"5$" 5'*1"1)"1',A"'@)81B !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); CC
  12. 12. 7*4+".1<2"$'2="1)"/$1",)21".*"10$"20$$-" *8;>$-")?"10$; !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); @A
  13. 13. 7*4+"'2"5$"21'-1";)3.*/"<)-5'-4+"0)5"4)" 5$"21'=")*"1-'9>? !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); @A
  14. 14. <2$-"=1)->"?'@@.*/".2"'*"'*"'@@-)'90"1)" !"#$%&'&%#"!"#"("&)"&*'&%#+82$-"21)-.$2 <*,.A$"1>@.9',"82$-"21)->" B'9A,)/2+"=1)->"?'@2C" ! ;'A$",&-&./0"10$"5)-AD)5")-" 3',8$"90'.* ! 20)5"10$""0/$*)%-1&2-")E",'-/$-" 21)-.$2"1)"10$.-"90.,4"21)-.$2 ! 0$,@"9)*F-;"10$"3)42/050%0--" )E">)8-"B'9A,)/ ! @-)3.4$"'"82$E8,"3)%5065"E)-" @-.)-.GH'G)* ! &,'*"-$,$'2$2".*"9);@,$1$"'*4" ,$/7$./0+-/&30-")E"E8*9G)*',.1>6 !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); IJ
  15. 15. <2$-"=1)->"?'@@.*/".2"'*"'*"'@@-)'90"1)" !"#$%&'&%#"!"#"("&)"&*'&%#+82$-"21)-.$2 =1)->"?'@2"28@@)-1"10$" @-.;'->".*1$*1")C"82$-"21)-.$2+" "&,-+.&/,0//&)% !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); AB
  16. 16. The foundational building block of a stories that say what people are doing (user tasks) !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); <=
  17. 17. <.-21",$1=2"4)"'"!"#$%&'()*)#+,-)(1)" 8*4$-21'*4"'">$5"9)*9$?12 @0'1"5$-$"',,"10$"10.*/2"A)8"4.4"1)"/$1"-$'4A"1)"B$" 0$-$"1)4'AC ! D1'-E*/">-);"10$";);$*1"A)8"5)F$"8?"8*E,"A)8" '--.3$4"0$-$ ! G*"'"20$$1")>"?'?$-+"1'F$"'">$5";.*81$2"1)",.21"10$" 10.*/2"A)8"4.4 !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); HI
  18. 18. What’s common about the items each of you wrote down? What was different? !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); <=
  19. 19. &$)<,$"'90.$3$"/)',2"10-)8/0".*1$-'9=)* problem or goal How I’d like to feel, or what I’d like to achieve goal evaluation Is my goal met or problem resolved? Take some action action evaluation Did that action deliver the results I expected? the world Information and tools !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); >?
  20. 20. <0.*=")>"10-$$",$3$,2?"/)',+"1'2=+"'*4"1)), problem or goal goal How I’d like to feel, or what I’d like to achieve goal evaluation Take some task Is my goal met or problem resolved? action action evaluation Did that action deliver the results I tool expected? the world Information and tools !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); @A
  21. 21. <0.*=")>"10-$$",$3$,2?"/)',+"1'2=+"'*4"1)), goal task tool !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); @A
  22. 22. <)=5'-$"9)*1'.*2">$'18-$2"10'1"28??)-1"'" 3'-.$1@")>"1'2A2"'*4"'"3'-.$1@")>"/)',2 goals tasks software features tools !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); BB
  23. 23. User tasks make ideal user stories: Title: Take a shower As an instructor I want to take a shower So that I don’t offend my colleagues !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); <=
  24. 24. <*"=-'9>9$"82$-"21)-.$2";'?"@$"5-.($*"1)"4$29-.@$" 82$-"1'2A2")-"10$"1)),2"10'1"28==)-1"10$;"" goals B)-$"1'2AC9$*1-.9D As a weekend gardener I want to dig a hole user story tasks so that I can plant a tree B)-$"1)),C9$*1-.9D E)-"F$'18-$C9$*1-.9G" software As a weekend gardener features I want a shovel so that I can [dig a hole to] plant a tree !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); HI
  25. 25. Organize user stories into a map that communicates experience !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); <=
  26. 26. <="'--'*/.*/"'9>3.1="'*4"1'2?@9$*1-.9"21)-=" 9'-42"2A'>',,=+"5$"9'*"1$,,"B.//$-"21)-.$2 C$,,"'"B./"21)-=")D"10$"A-)4891"B="21'->*/"5.10"10$";'E)-"82$-" '9>3.>$2"10$"?.)2?"5.,,"B$"82$4"D)- ! 7--'*/$"'9>3.>$2",$F"1)"-./01".*"10$")-4$-"=)8G4"$HA,'.*"10$;"1)" 2);$)*$"50$*"'2?$4"10$"I8$2>)*J"KL0'1"4)"A$)A,$"4)"5.10"10.2" 2=21$;MN"" time !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); OP
  27. 27. <="'--'*/.*/"1'2>?9$*1-.9"21)-="9'-42" 2@'A',,=+"5$"9'*"1$,,"B.//$-"21)-.$2 744"1'2>?9$*1-.9"21)-.$2".*"8*4$-"$'90"'9A3.1=".*"5)->C)5")-4$-" ,$D"1)"-./016 ! EF"=)8"5$-$"1)"$G@,'.*"1)"2);$)*$"50'1"'"@$-2)*"1=@.9',,="4)$2".*"10.2" '9A3.1=+"'--'*/$"1'2>2".*"10$")-4$-"=)8H4"1$,,"10$"21)-=6"":)*H1"/$1"1))" 8@A/01"'B)81"10$")-4$-6 time !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); IJ
  28. 28. <="'--'*/.*/"1'2>?9$*1-.9"21)-="9'-42" 2@'A',,=+"5$"9'*"1$,,"B.//$-"21)-.$2 C3$-,'@"82$-"1'2>2"3$-A9',,=".D"'"82$-";'="4)")*$")D"2$3$-',"1'2>2"'1" '@@-)E.;'1$,="10$"2';$"A;$ ! FD".*"1$,,.*/"10$"21)-="F"2'="10$"2=21$;2G"82$-"1=@.9',,="H4)$2"10.2")-"10.2")-" 10.2+"'*4"10$*"4)$2"10'1+I"H)-G2I"2./*',"'"21'9>.*/"3$-A9',,=+"H'*4"10$*G2I" 2./*',"21$@@.*/"0)-.J)*1',,=6 time !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); KL
  29. 29. <0$";'="20)52"4$9);=)2.>)*"'*4" 1?=.9',"@)5"'9-)22"10$"$*>-$"2?21$; A$'4.*/"10$"'9>3.>$2"'9-)22"10$"1)=")B"10$"2?21$;"0$,=2"82" 8*4$-21'*4"$*4C1)C$*4"82$")B"10$"2?21$;6""D<',E"10-)8/0"F821" 10$2$"50$*"1',E.*/"5.10"=$)=,$"5.10"20)-1"'($*>)*"2='*26G time H$,)5"$'90"'9>3.1?+")-",'-/$" 21)-?"'-$"10$"90.,4"21)-.$2"10'1" ;'E$".1"8= !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); IJ
  30. 30. &-)4891":.29)3$-<"=)->20)?2 @2$"?-)4891"4.29)3$-<"5)->20)?2" 1)"8*4$-21'*4"10$"?-)4891"5$A-$" B8.,4.*/"'2"'"82$-"21)-<";'? :8-.*/"4.29)3$-<"2$22.)*2" 4.29822C ! 10$"!"#!$%&")D"10$"?-)4891+" '*4"0)5".1"9-$'1$2"3',8$"D)-" 10)2$"B8.,4.*/".1 ! 10$"'"%($)&#%"50)"5.,,"B8<"10$" ?-)4891 ! 10$""%&#%"50)"5.,,"82$"10$" ?-)4891 ! 0)5"10$<A,,""%&"10$"?-)4891 !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); EF
  31. 31. &-)4891":.29)3$-<"=)->20)?2 =0)"?'-@9.?'1$2A ! !"#$%&'()*#+"B"10)2$"50)"C-.*/" .*D)-;'@)*+"28CE$91";'($-" $F?$-@2$+"'*4"4.-$91"$F?$-.$*9$ ! !"#$,-..%(&-/#"B"10)2$"50)" 0'3$"4$2.-$"1)"C8.,4"'"/-$'1" ?-)4891 ! !"#$+#0%.%(&$*-1#)."B"10)2$" 50)"9'*";'>$"1)8/0"4$9.2.)*2" 'C)81"50'1"'*4"0)5";890"1)" C8.,4 ! !"#$+(#)."B"-$?-$2$*1'@3$2" D-);"10$"1$';"50)"5.,,"C8.,4" 10$"?-)4891"2),8@)* !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); GH
  32. 32. <8.,4.*/"'"21)-=";'>"0$,>2"?'9.,.1'1$" 4.29822.)*"@"A81"-$B8.-$2"'"A.1")?"2>'9$ Gary Levitt, owner & designer of Mad Mimi !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); CD
  33. 33. 7"21)-<";'=">)-"'"-$'2)*'?,$"2.@$4"2<21$;" 9'*"A,,"'"-)); !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); BB
  34. 34. Product Discovery Looks Like this: !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); <=
  35. 35. <1)-=">'?"@'-.'A)*2 • >'?2"'B)81"2=21$;" B$0'3.)- • C$'18-$D9$*1-.9" ;'?2 • 72D.2"?-)4891";'?2 • E0'1"$,2$F !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); GH
  36. 36. The easiest way to write user stories is by telling user stories (hopefully this won’t come as a surprise) !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); <=
  37. 37. Let’s try one together... !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); <=
  38. 38. Discuss, fill in, refine the map, and test for completeness !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); <=
  39. 39. :.29822.)*2")3$-"21)-<";'=2"0$,="4-.3$" )81";)-$"4$1'.,2 Repeated review of the story map with multiple users and subject matter experts will help test the model for completeness !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); >?
  40. 40. <-$'=*/">$-2)*'2"?)-"4.%$-$*1"@.*42")?" >$)>,$"82.*/"A)8-"2A21$; !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); BC
  41. 41. 7"<-'/;'=9"<$-2)*'".2"'">8.9?"$@<,)-'=)*" )A"50'1"5$"?*)5"'B)81")8-"82$-2 E8.,4"10$;"1)"21'-1"4.29822.)*" 'B)81"50'1"5$"?*)5+"'*4" 4)*F1 E8.,4"10$;"1)"0$,<"4-.3$" ;'<<.*/"G)8-"82$-" $@<$-.$*9$"82.*/"21)-.$2 “..people can often mine their own extensive experiences to create effective Personas...” :'3.4"I822;'* :)*"H)-;'* http://www.jnd.org/dn.mss/personas_empath.html !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); CD
  42. 42. <=$190"'">-'/;'?9">$-2)*'"10.*=.*/" '@)81"2);$)*$"4.%$-$*1"A-);"B)8-2$,A !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); CD
  43. 43. <="'--'*/.*/"'9>3.1="'*4"1'2?@9$*1-.9"21)-=" 9'-42"2A'>',,=+"5$"9'*"1$,,"B.//$-"21)-.$2 744"'"3$->9',"'C.2"1)".*4.9'1$"*$9$22.1= D)3$"1'2?2"8A"'*4"4)5*"10.2"'C.2"1)".*4.9'1$"0)5"*$9$22'-="10$="'-$"1)" 10$"'9>3.1=6 ! E)-"'"82$-"1)"2899$22F8,,="$*/'/$".*"10.2"'9>3.1=+".2".1"*$9$22'-="10$="A$-F)-;" 10.2"1'2?G""HF".1I2"*)1"'B2),81$,="*$9$22'-=+"0)5"9-.>9',".2".1G time necessity !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); JK
  44. 44. <="'--'*/.*/"'9>3.1="'*4"1'2?@9$*1-.9"21)-=" 9'-42"2A'>',,=+"5$"9'*"1$,,"B.//$-"21)-.$2 C$21"10$"D1)-="E'A"B="1$,,.*/"B.//$-"21)-.$2"5.10".1 ! F0))2$"'*"'9>3.1="1)"21'-1"5.10 ! G0$*"-$'4.*/",$H"1)"-./01"82$"10$"9)*I8*9>)*"J'*4"10$*K"1)"9)**$91"9'-42".*"10$"21)-= ! G.10"9'-42".*"10$"2';$"-)5"82$"J)-K"1)"9)**$91"9'-42".*"10$"21)-= ! L)-"9'-42"B$,)5"10$"1)A+"J'B2),81$,="*$9$22'-=K"'M.2+"82$"10$"A0-'2$"J;./01")A>)*',,=K"1)" 9);;8*.9'1$")A>)*',.1= ! F0)2$"'"9)*9-$1$"82$-"*';$"1)"0$,A"1$,,"10$"21)-= time necessity !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); NN
  45. 45. <="'--'*/.*/"'9>3.1="'*4"1'2?@9$*1-.9"21)-=" 9'-42"2A'>',,=+"5$"9'*"1$,,"B.//$-"21)-.$2 “Steve knows the title of what he’s looking for. He steps up to the kiosk and searches by title. Optionally he might have searched by artist. After seeing titles that match what he typed in, Steve views the price new and used, and then views the status – whether it’s in stock or not. He notices it’s in stock as both new and used, so then Steve views the location in the store for the used title.” time E)>9$"10$"B),4"F'9$4"82$-"1'2?2" F-);")8-"21)-=";'A E)>9$"10$"9)*G8*9>)*2"10'1"?*.1"10$" necessity 9'-42"1)/$10$-".*1)"'",)*/$-"21)-= !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); CD
  46. 46. <0$"82$-"21)-=";'>"9)*1'.*2"15)" .;>)-1'*1"'*'1);.9',"?$'18-$2 <0$"!"#$!%&'")?"10$"'>>,.9'@)*".2"10$",.21")?" $22$*@',"'9@3.@$2"10$"'>>,.9'@)*"28>>)-12 <0$"(")$*&+,-$')'.%&".2"10$"2)A5'-$"5$"B8.,4"10'1" 28>>)-12"10$",$'21"*8;B$-")?"*$9$22'-="1'2C2"'9-)22" 10$"?8,,"2>'*")?"82$-"$D>$-.$*9$ The backbone time The walking skeleton necessity !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); EF
  47. 47. <2.*/"4.29822.)*+"=,,".*">)8-"21)->";'? @)-A"1)/$10$-"'2"'"1$'; B))A"C)-"!"#$%&!'($)#!*+* ! @0'1"$,2$";./01"82$-2")C"10$"2>21$;"0'3$" 4)*$"10'1"4.4*D1"9);$"8?".*">)8-"29$*'-.)2E B))A"C)-"$,-$.'/&* ! @0'1"9)8,4"/)"5-)*/+"'*4"50'1"5)8,4"10$" 82$-"0'3$"1)"4)"1)"-$9)3$-E F)*2.4$-"/#0$%)1*$%* ! @0'1";./01")10$-"1>?$2")C"82$-2"4)"1)"-$'90" 10$.-"/)',2E G*.1"',"10$2$"'44.H)*',"21)-.$2".*1)">)8-";'? !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); IJ
  48. 48. Slice the map to find ideal incremental releases !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); <=
  49. 49. <.3$*"21)-=";'>")-/'*.?$4"3$-@9',,="A=" *$9$22.1=+"5$"*$$4")*,="2,.9$"1)">,'* time necessary less first release optional second release optionality more third release optional B0))2$"9)0$-$*1"/-)8>2")C"C$'18-$2"10'1"9)*2.4$-"10$"2>'*")C"A82.*$22" C8*9@)*',.1="'*4"82$-"'9@3.@$2 D8>>)-1"',,"*$9$22'-="'9@3.@$2"5.10"10$"E-21"-$,$'2$ F;>-)3$"'9@3.1="28>>)-1""'*4"'44"'44.@)*',"'9@3.@$2"5.10"28A2$G8$*1"-$,$'2$2 !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); HI
  50. 50. <.3$*"21)-=";'>")-/'*.?$4"3$-@9',,="A=" *$9$22.1=+"5$"*$$4")*,="2,.9$"1)">,'* !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); BC
  51. 51. It’s easy to make release “slices” and move detailed stories into them !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); <=
  52. 52. 744.*/"1'<$",.*$2"1)"10$"5',,",$12" <'-=9.<'*12")-/'*.>$"21)-.$2".*1)",'?$-2 !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); @A
  53. 53. 744.*/"1'<$",.*$2"1)"10$"5',,",$12" <'-=9.<'*12")-/'*.>$"21)-.$2".*1)",'?$-2 !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); @A
  54. 54. 744.*/"1'<$",.*$2"1)"10$"5',,",$12" <'-=9.<'*12")-/'*.>$"21)-.$2".*1)",'?$-2 !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); @A
  55. 55. &,'**.*/".*9-$;$*1',"-$,$'2$2"9'*"<$" ='9.,.1'1$4"'2"'"9),,'<)-'>3$"$3$*1 !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); ??
  56. 56. <8.,4.*/"<$($-"&-)48912"=2.*/ =2$-">1)-?"@'AA.*/ #$%"&'()* BA'()*C'9;6)-/ 5556'/.,$A-)48914$2./*69); !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69);
  57. 57. Bonus Material (Not addressed in the Story Mapping session) !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); <=
  58. 58. Iteratively and incrementally construct software !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); <=
  59. 59. <-'4.=)*',"2)>5'-$"4$3$,)?;$*1"@A$2"29)?$" 10$*"$2=;'1$2+"'*4"'($;?12"1)"@A"=;$"'*4"9)21 Scope Traditional software development Time Cost (resources) !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); BC
  60. 60. 7/.,$"4$3$,)<;$*1"=>$2"?;$"'*4"9)21+"10$*",$3$-'/$2" .1$-'?)*"'*4".*9-$;$*?*/"1)";'>.;.@$"29)<$" Cost Time Scope (resources) Agile software development Traditional software development Time Cost Scope (resources) !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); AB
  61. 61. <$3$-'/$"'"20'-$4"8*4$-21'*4.*/")="4$2.-$4">-)4891" /)',2"1)";.*.;.?$"29)>$"50.,$";'@.;.?.*/"3',8$ Cost Scope Time (resources) Agile software development Traditional software development Time Cost Scope (resources) Target business goals & !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); outcomes AB
  62. 62. To release benefit on a schedule we’ll need to leverage incremental and iterative thinking (What’s the difference?) !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); <=
  63. 63. <.*9-$;$*=*/>"?8.,42"'"?.1"'1"'"=;$ Incrementing calls for a fully formed idea. And, doing it on time requires dead accurate estimation. 1 2 3 4 5 !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); @A
  64. 64. <.1$-'=*/>"?8.,42"'"-)8/0"3$-2.)*+" 3',.4'1$2".1+"10$*"2,)5,@"?8.,42"8A"B8',.1@ A more iterative allows you to move from vague idea to realization making course corrections as you go. 1 2 3 4 5 !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); CD
  65. 65. >'*?")-/'*.@'A)*2"9)*2.4$-"-$3.2.*/"10$"2';$" B8*9A)*',.1?"'2"B'.,8-$6""C1$-'A)*".2"*)1" 1),$-'1$46 193 !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); <=
  66. 66. 72"'"<-)4891")5*$-+"=)8"*$$4"'";)-$"-$>*$4" 8*4$-21'*4.*/")?"@20.<<'A,$B !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); CC
  67. 67. <$$=.*/")8-"82$-"21)-.$2"1'2>?9$*1-.9" ',,)5$4"82"1)"4$@$-"2),8A)*"4$9.2.)*2 user goal user task tool !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); BC
  68. 68. <'=$">$'18-$"4$9.2.)*2".*"10$"9)*1$?1")>" @;$"'*4"A84/$1",.;.1'@)*2 hole ? (to put the flower in) dig hole hold my options open !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); BC
  69. 69. <);;.1"1)"2'=2>?.*/"82$-"*$$42+"*)1"1)" 2@$9.A9">$'18-$2 hole ? (to put the flower in) dig hole !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); BC
  70. 70. &-)48912"5.10"2.;.,'-"<$'18-$2")=$*"3'->" 28?21'*@',,>".*"10$"A-.9$"5$"A'> B0.*C"'?)81"10$"0./0D,$3$,"<$'18-$2" $*/.*$ .*"'"9'-"D"5$,,"'"?82".*")8-"$E';A,$ 1-'*2;.22.)* 71"'"0./0",$3$,+"',,"<$'18-$2"'-$" ?-'C$2 282A$*2.)* *$9$22'-> 2$'12 F81"5$"C*)5"10'1"',,"?82$2"4)*G1" 21$$-.*/"50$$, 0'3$"10$"2';$"A-.9$ N" H'90"$22$*@',"<$'18-$"3'-.$2".*" 28?I$9@3$"J8',.1>"'%$9@*/"10$"K*'," A-.9$ 51 low cost moderate cost high cost !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); LM
  71. 71. <'*)"9'8=)*2"82"1)"9)*2.4$-">8',.1?"'2"@$.*/" 9);A)2$4")B"!"#$%&'$"'*4"()"#$%&'$"$,$;$*12 C:.29822.)*2")B">8',.1?"0'3$"-$3),3$4" '-)8*4"10$"15)"'2A$912")B"28@D$9=3.1?" '*4")@D$9=3.1?"2.*9$"10$"=;$")B" 7-.21)1,$6" E;@$44$4".*"10.2")@D$9=3$F28@D$9=3$" 2A,.1".2"10$".4$'"10'1"!"#$%&'$*+),-./0* 1$2/,.3(*/!*/4$*5%!36!27,3%$*/!* There’s more to 2$+).2$7$3/(8"50.,$"()"#$%&'$*+),-./0* me than that 1$2/,.3(*/!*/4$*5(,&(6,%&!3*!6*)($2(9GH silly survey technique! FFI)-.'J."<'*) !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); KL
  72. 72. <'*)"$=>,'.*2"10-$$"/$*$-',"9,'22.?9'@)*2"A)-">-)4891" A$'18-$2B"!"#$%&'()#+"*+)%,-!)+#-*+'.#+"'*4",).-/&$)0#1 2"#$%&'()# C0$">-)48912";821"0'3$"10.2" A$'18-$2"A)-";$"1)"D$" 9)*2.4$-"10$">-)4891" '99$>1'D,$ 3+)%,-!)+#-*+'.# C0$";)-$")A"10.2"E"/$1+"10$" “This car has many flaws. Buy it anyway. It’s so much fun to D$($- drive” -- from a NY Times review of the 4).-/&$)0# Mini Cooper E",)3$"10.2"$,$;$*1")A"10$" >-)4891F !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); GH
  73. 73. <$='-'1$")>?$9@3$"A8',.1B"C-);"28>?$9@3$" A8',.1B D>?$9@3$"A8',.1B"-$C$-2"1)"10$"3.2.>,$";$'28-'>,$+"'*4" $'2.,B"3',.4'1$4"90'-'91$-.2@92")C"10$"=-)4891"828',,B" .*"-$,'@)*"1)"10$"=-)48912E"2=$9.F9'@)*26" ! :)$2"10$"=-)4891"=$-C)-;">8/"C-$$"'2"2=$9.F$4G ! HI=$91")>?$9@3$"A8',.1B"1)">$"0./06 !"#$%&'(%)*"+,-./)0%1%02).3).4%)25%&-6&+'37) 30)5038"&.)8%2-97)&43-&%2)/3"):+;%)+2)+) 5038"&.)3<7%0=)"J0$2$"90).9$2"'%$91"10$" =-)4891"82$-2E"=$-9$=@)*")C"A8',.1B ! K2"10$"=-)4891"2.;=,$"1)"82$G ! K2"10$"=-)4891"$L9.$*1"1)"82$G ! :)"K",.M$"82.*/"10$"=-)4891G !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); NO
  74. 74. <2$"10$"='*)"9,'22.>9'?)*2"1)"@)10" A-.)-.?B$"'*4"2A,.1 Brakes (must have) Cool dashboard Basic brakes Stopping Anti-locking light when (must have) distance (delighter) slipping (one dimensional) (delighter) =$$A".*";.*4E"F)8";821"G*)5"F)8-"9821);$-2"'*4"82$-2"1)" 4$1$-;.*$"28@H$9?3$"3',8$6 I*$"A$-2)*J2"4$,./01$-";'F",$'3$")10$-2"'A'10$?96"" 7*)10$-J2";821"0'3$".2"82$,$22"1)")10$-"9821);$-2 !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); CD
  75. 75. >$1?2",))@"'1"50'1"0'AA$*2".B"5$"1'@$"'" *'.3$".*9-$;$*1',"'AA-)'90"1)"9)*21-89C)* >$1?2"21'-1"5.10"10$"D'2.9"B$'18-$2")B")8-"D826 sprint 4 3 2 1 release Interior seating exterior body transmission suspension features brakes engine tires Product goal: (in 4 sprints) be driving the coolest bus in town !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); <=
  76. 76. <$"9'*",$3$-'/$".1$-'=)*"1)">8.,4"8?" @8',.1A Iterating affords building up quality over time 1 2 3 !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); BC
  77. 77. <)*2.4$-"10$2$"=)8-"21)->"2?,.@*/" 0$8-.2A92"10'1"B8.,4"8?"C8',.1> !"#$%&$'$(()*+% 3"4$*+" D)-"10$"=$'18-$"1)"B$";.*.;',,>" F0'1"5)8,4";'G$"10.2"=$'18-$"2'=$-"1)" 4$;)*21-'B,$"E"B81"*)1"-$,$'2'B,$+" 82$H""D)-"B)10"10$"82$-+"'*4"=)-"10$" 50'1".2"10$";.*.;',"=8*9A)*',.1> B82.*$22"?'>.*/"=)-"10$"2)I5'-$H !"#$%&'()*)+,-$)./01),2&3)2'4'55#-3) !"#$%&'()/2%<0)8#&/7#9,2:)'2+,-4'$'20) 6'&75)#27)2,)8#&/7#9,2 ,+)=<5/2'55)-<&'5)5<41)#5)4-'7/0)4#-7) 8#&/7#9,2)) ,"-".)/)*+%0%1/$2).)/)*+" F0'1"5)8,4"'44"10$"'B.,.1>"1)"?$-=)-;" 5(".)/)*+6%7$#48#9":'$6%3$2% 10$"82$-"1'2G".*"4.%$-$*1"5'>2H""744.*/" ;--$"/ .*"28B"1'2G2"10'1"'-$")?A)*',,>" F0'1"5)8,4";'G$"10.2"=$'18-$"$'2.$-"1)" ?$-=)-;$4H 82$H"J)-$"4$2.-'B,$"1)"82$H""D'21$-"1)" !"#$%&'()#)+,-$)./01),%9,2#&)6'&75:) 82$H 7#0')&,,;<%)0,,&5:)/2%<0)0-#25&#9,2),2) !"#$%&'()#<0,>4,$%&'9,2:)5'"3)8/5<#&) 7#0'5 7'5/?2:)5%''7);'35 * Adapted from Gerard Meszaros’ “Storyotypes” !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); KK
  78. 78. >8.,4.*/"8?"@8',.1A".1$-'B3$,A"'*4" .*9-$;$*1',,A"20.?2"10$"C$21"?-)4891"?)22.C,$ D6 E$"F*)5"$'90"21)-A"9'*"C$"2?,.1".*1)"'1",$'21"G)8-"?'-12 H6 I'-,A".1$-'B)*2"21-.3$"1)"C8.,4"C'-$"*$9$22.B$2+",'1$-".1$-'B)*2"C8.,4"8?" @8',.1A sprint J6 I3',8'B*/"-$'4.*$22"C'2$4")*"28CK$9B3$"@8',.1A"1)"8*4$-21'*4"4)*$*$22 4 3 2 1 A- B- D C D A B C- B- D B D A B A- D B A- D BI B- DI release user tasks to support Product goal: (in 4 sprints) be driving the highest quality bus possible !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); <=
  79. 79. :.3.4$"-$,$'2$"4$2./*"<"4$3$,)=;$*1".*1)" 10-$$"=0'2$2 !"#$%$&'()*#+">8.,4"'"2.;=,$"2?21$;"2='*")@"*$9$22'-?"@$'18-$2"A-21"B"10$" 5',C.*/"2C$,$1)* ,%-.()*#+"744"D$E.F.,.1?"'*4"2'@$1?"*$E1 /$-'()*#+"G.*.20"5.10"9);@)-1+"=$-@)-;'*9$+"'*4",8E8-? H$2$-3$"I;$".*"10$"-$;'.*.*/"10.-4"@)-"8*@)-$2$$*"'44.I)*2" '*4"'4'=1'I)*2 Opening Mid-Game End-Game Game Build out Refine the UI and uncertainty Build up flexibility and interactions, take advantage of necessities business rule iterative learning enforcement uncertainty decreases over time time Construx on the Cone of Uncertainty: http://www.construx.com/Page.aspx?hid=1648 Visdos on the cone: http://www.implementingscrum.com/2008/02/19/vegas-hangover-enlightenment/ !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); JK
  80. 80. <0.2"=-)4891"/-)5.*/"21-'1$/>"2,)5,>" ?-.*/2"10$"=-)4891".*1)"@)982 7*"'-A21"$*3.2.)*2"'*"$*A-$"='.*A*/"?>"21'-A*/"5.10"'"2B$190")-"'*" 8*4$-C='.*A*/"'*4"2,)5,>"?8.,4.*/"8="4$1'.," 7==,>"10$"2';$"21-'1$/>"1)",$'-*"'?)81"10$"=-)4891"4);'.*"'2"D8.9B,>" '2"=)22.?,$"E"1)"90'2$")81"8*9$-1'.*1>"?$@)-$"1))"0$'3.,>".*3$2A*/ Opening Mid-Game End-Game Game Build out Refine the UI and uncertainty Build up flexibility and interactions, take advantage of necessities business rule iterative learning enforcement uncertainty decreases over time time !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); FG
  81. 81. <))=.*/"'1"10$"-$,$'2$")>"?82.*$22"3',8$" )3$-"@;$",$12"82"2$$"50'1A2"/).*/")*"0$-$ B)"C*.20")*"@;$" 5$";'D"E1-.;"10$" cumulative business value 1'.,F"?D"4$>$--.*/" 21)-.$2")>";)4$21" 3',8$ time Opening Mid Game End Game Game Early stories emphasize Once we’re confident Over time the value of iteration and learning. we have the “shape” stories begin to We need to be sure of the product right, diminish signaling it’s we’re building the we begin to pile in time for release right product value !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); GH
  82. 82. ?,<;51-2",-"@0,7;<4"A-,8/'72'"*<B;10'7." C'"5''"43'"715<,6'0D"E'-'F4"2*1-'7 G3'"1-6'05'",H"015A" acquired product knowledge 15"A-,8/'72' I'*0-1-2"'*0/1'0"1H" 8'J0'"E;1/71-2"43'" 01234"@0,7;<4" >1K2*4'5"015A time Opening Mid Game End Game Game Early stories emphasize Once we’re confident Over time the value of iteration and learning. we have the “shape” stories begin to We need to be sure of the product right, diminish signaling it’s we’re building the we begin to pile in time for release right product value !"#$$%"&'(")*+,-."*//"012345"0'5'06'7."8889:21/')0,7;<4='512-9<,> L#
  83. 83. <8.4$,.*$2"=)-"-$,$'2.*/")*">;$ A6 B0.*"21)-.$2"'//-$22.3$,C"48-.*/"$'-,C"2D-.*12"1)" E8.,4"',,"$22$*>',"=8*9>)*',.1C"$'-,C6 F6 G8.,4"8D"=8*9>)*',.1C")*,C"'H$-"',,"*$9$22.>$2" '-$".*"D,'9$6 @6 &-)1$91">;$".*"10$"I*',"2D-.*12"=)-"D-)4891" -$I*$;$*16 J6 722$22"-$,$'2$"-$'4.*$22"'1"10$"$*4")="$'90" 2D-.*1"'2"D'-1")="D-)4891"-$3.$56 !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); ?@
  84. 84. Parting thoughts !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); <=
  85. 85. Questions? !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69); <=
  86. 86. <8.,4.*/"<$($-"&-)48912"=2.*/ =2$-">1)-?"@'AA.*/ #$%"&'()* BA'()*C'9;6)-/ 5556'/.,$A-)48914$2./*69); !"#$%"&'()*+"',,"-./012"-$2$-3$4+"55567/.,$&-)4891:$2./*69);
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×