Steering Iterative and Incremental Delivery with Jeff Patton

10,447 views
10,274 views

Published on

Published in: Design, Technology, Business
1 Comment
28 Likes
Statistics
Notes
No Downloads
Views
Total views
10,447
On SlideShare
0
From Embeds
0
Number of Embeds
15
Actions
Shares
0
Downloads
168
Comments
1
Likes
28
Embeds 0
No embeds

No notes for slide

Steering Iterative and Incremental Delivery with Jeff Patton

  1. 1. !"#$%&())*+,&-#$&./&0$(122#+3$45%*+,&6,*73&(+8&./&5#,3"93$ :3;&0(<#+ =)(<#+>(1?@#$, AAA@6,*730$#8B1"C34*,+@1#? "A*<3$D&>=3;)(<#+
  2. 2. A5)"B2.9=>6".:/)2C7"B)27B)>D8)!""#$%&(%)* 1$#2&-%* 1$#2&-%*+,-./#0 3(4-#56$)* 36/(56$)*F./6,3/7"8,1=,G1)" I)7),2>50")JB1.2)0"8,139,6)" L6)2,D8)1K",/9"B2.9=>6",/9"H),6=2)"39),7 ,/9""B1,/"9)138)2K".H" 3/>2)@)/6,11K"G=319",/9" B.6)/D,1"B2.9=>6"7.1=D./7 8,139,6)"B2.9=>6"7.1=D./7 what: User Story Map User Story Map Product Backlog who: why: Product Goals what: R1 who: why: R2 what: who: Simple R3 why: Personas User Interface Sketch!"#$$%&#$"()*"+,-./0",11"234567"2)7)28)90":::;<431)+2.9=>6?)734/;>.@ E#
  3. 3. ?0"*0"43"@A"<,-<B45!"#$%&()"&(*+&,%-+#.(+/&#+&01/%,&(+&*21$&()&2%1", /3#4#+5&$2%&617 4(3310("1.8%&731++#+5 9:;&<&99= "%3%1/%&/$"1$%5 ,#/4(8%"&721/% "%1$)"%/&1+,&%>7%"#%+4%& 617/!"#$%%"&(")*+,-."*//"012345"05067."8889:21/)0,7;<4=512-9<,> CC
  4. 4. Steering iterative and incremental delivery 7!"#$%%"&(")*+,-."*//"012345"05067."8889:21/)0,7;<4=512-9<,> %$$
  5. 5. Product Ownership takes a team!"#$%%"&(")*+,-."*//"012345"05067."8889:21/)0,7;<4=512-9<,> %$%
  6. 6. !"#$%&()*$+)#,-#.("/0.1%)#23$-4"20*..5 6.#17#(7%(87/50.2"--.#007/9/7*()+)*.-4)%0Ownership Team • planning • support cycle 1 • support cycle 2 • support cycle 3 • researching delivery delivery delivery high level product design for cycle 2 design for cycle 3 design for cycle 4 Product • • • • design • research for cycle 3 • research for cycle 4 • research fir cycle 5 • design for cycle 1 • validate cycle 1 • validate cycle 1+2 features features Cycle 0 Cycle 1 Cycle 2 Cycle 3 Cy Delivery Team • development • implement cycle 1 • implement cycle 2 • implement cycle 3 environment setup • fix cycle 1 bugs if any • fix cycle 2 bugs if any • architectural “spikes” See Miller’s Case Study of Customer Input For a Successful Product:: http://www.agileproductdesign.com/useful_papers/miller_customer_input_in_agile_projects.pdf !"#$%%"&(")*+,-."*//"012345"05067."8889:21/)0,7;<4=512-9<,> %$#
  7. 7. !"#$%&()*$+)#,-#.("/0.1%)#23$-4"20*..56.#17#(7%(87/50.2"--.#007/9/7*()+)*.-4)%0 !"#$%" &%()* +,"%! !"#$%&(#)*+",-./( ! !"#$%&(#)*+",( ! !"#$%&(#)*+",( 0++,(#(&-##,+(#"( /96(9?+*>#*@( 9,,+,,(/"#$%&( )".+(,#".+,(1#"( 9*,)+"(A%+,>#*,@( A%97.6(-#7.,>&9776( -+(*+2(345(&6&7+, 9*$(B9&&+/C( 9*$(.*E+&(0#"+(! 8-+6(-+*(/79*(-+( ,#".+,(-9(0++( ,#".+,(#( )#":(-+6(*++$(#( -+."(;#.*;4.*( .+"9>F+76(.0/"#F+( $#(#(;+("+9$6( ,/+&.D&9>#*, . .*&7%$.*;(<=($+,.;*( ! !"#$%&(#)*+",( 9*$()".>*;( 9:+(-+()#":.*;( 9&&+/9*&+(&".+".9 /"#$%&(#(%,+",(! 8-+6()#":,-#/( 9*$(&%,#0+",(#( $+9.7,().-(-+( 9,,+,,+,(. "+,(#1(-+(+90!"#$%%"&(")*+,-."*//"012345"05067."8889:21/)0,7;<4=512-9<,> %$?
  8. 8. )0,7;<4",8-05"?/*-"7/160@"";51-2"43">*? Deco stori mpose bi smalles into g sized er “sprin ” sto t- ries!""#$%$&($#)*&(+*$,-! .&/&0#12&"$345.6&$(7! (548&9:/&/7/%05&7! $%)6&$.&/&0#12&"$9;90&!"#$%%"&(")*+,-."*//"012345"05067."8889:21/)0,7;<4=512-9<,> 214
  9. 9. ?;;";@">021-2"54,015"4,"715<;55"*4"0,;A-"@0,7;<4",8-0531@">A-25!"#$%%"&(")*+,-."*//"012345"05067."8889:21/)0,7;<4=512-9<,> %$B
  10. 10. =4*1/7"?@"7512-"70165"7<,>A,51B,-",C"D12"54,015"4,"5>*//0"54,015!"#$%%"&(")*+,-."*//"012345"05067."8889:21/)0,7;<4=512-9<,> %$E
  11. 11. To release on a schedule leverage incremental and iterative thinking (What’s the difference?)!"#$%%"&(")*+,-."*//"012345"05067."8889:21/)0,7;<4=512-9<,> %$?
  12. 12. ?1-<0>-@-2A"B;1/75"*"B14"*4"*"@> Incrementing calls for a fully formed idea. And, doing it on time requires dead accurate estimation. 1 2 3 4 5!"#$%%"&(")*+,-."*//"012345"05067."8889:21/)0,7;<4=512-9<,> %$C
  13. 13. ?@40*A-2B"*-7"?1-<0>-A-2B"C;1/75"*"0,;23"6051,-."6*/17*45"14."43-"5/,8/D"C;1/75";E"F;*/14D A more iterative allows you to move from vague idea to realization making course corrections as you go. 1 2 3 4 5!"#$%%"&(")*+,-."*//"012345"05067."8889:21/)0,7;<4=512-9<,> %$G
  14. 14. ?*-@",02*-1A*B,-5"<,-5170"06151-2" 43"5*>"C;-<B,-*/14@"*5"C*1/;09"" D40*B,-"15"-,4"4,/0*479193 !"#$%%"&(")*+,-."*//"012345"05067."8889:21/)0,7;<4=512-9<,> %%$
  15. 15. Product Owners must understand the delivery strategy that leads to a finished product ?<;/@4;0"*4"6*01,;5"54*25",A"<,>@/B,-."C;5D"7EF05*G.")*015!"#$%%"&(")*+,-."*//"012345"05067."8889:21/)0,7;<4=512-9<,> %%%
  16. 16. ?,0@"/1@"*-"*0A54"4,"-6151,-"*-7"B;1/7"43"C0,7;<4"3,/15A<*//D “Art is never finished, only abandoned.” -Leonardo DaVinci Mid-Game End-Game time!"#$%%"&(")*+,-."*//"012345"05067."8889:21/)0,7;<4=512-9<,> %%E
  17. 17. :5"8"?;1/7"5,@8*0"8A0"71*/1-2";B" 5;?C<D6"E;*/14F !"#$%&$$#($)*)+&,-#./)0,12)321-124) ,3&(4).02).5),$62%.$)*) $&782%91#./),(4)782%91#./)$#(%2).02) 9:2)*);3#$..-2<) =:724424)#().0#$)782%912>$&782%912) $6-#.)#$).02)#42,).0,.)!"#$%&$()*+,-./( 0$1.+-23(.!(.4$(5%!26!17+2%$(.!(There’s more to me than that 1$)*-1$7$2.38)50#-2)3*"#$%&$( silly survey )*+,-./(0$1.+-23(.!(.4$(53+&36+%&!2( technique! !6(*3$139?@ >>A3#,B#)C,( !"#$%%"&(")*+,-."*//"012345"05067."8889:21/)0,7;<4=512-9<,> %%#
  18. 18. ?*-,"75<01@7"2-0*/"</*551A<*B,-5"C,0"D0,7;<4"C*4;05 !"#$%&()# !"#$%&()*+$,)-+$"./#$ +"#-#$0#.+)&#-$0&$,#$+$ *1-2(#&$+"#$%&()*+$ .**#%+.34# *+)%,-.)+#-/+0# “This car has many flaws. Buy it !"#$,&#$0$+"2-$5$6#+7$+"#$ anyway. It’s so much fun to 3#8#& drive” -- from a NY Times review of the 1)0-2&$)3# Mini Cooper 5$4/#$+"2-$#4#,#1+$0$+"#$ %&()*+9!"#$%%"&(")*+,-."*//"012345"05067."8889:21/)0,7;<4=512-9<,> %%E
  19. 19. ?5"43"@*-,"</*551A<*B,-5"4,"C,43"D01,01BE"*-7"5D/14 Brakes (must have) Cool dashboard Basic brakes Stopping Anti-locking light when (must have) distance (delighter) slipping (one dimensional) (delighter) @D"1-">1-7G"H,;">;54"I-,8"H,;0"<;54,>05"*-7";505"4," 740>1-"5;CJ<B6"6*/;9 K-"D05,-L5"M7/12340N">*H"/*6",4305"*D*43B<9"" :-,430L5"M>;54O3*6N"15";5/55"4,",430"<;54,>05!"#$%%"&(")*+,-."*//"012345"05067."8889:21/)0,7;<4=512-9<,> %%F
  20. 20. ?,-5170"435"@,;0"54,0A"5B/1C-2"3;015D<5"43*4"E;1/7";B"F;*/14A !"#$%&$$(()*+% 3"4$*+" G,0"43"@*4;0"4,"E">1-1>*//A" I3*4"8,;/7">*J"4315"@*4;0"5*@0" 7>,-540*E/"H"E;4"-,4"0/*5*E/." 4,";5K""G,0"E,43"43";50."*-7"@,0"43" 83*4"15"43">1-1>*/"@;-<D,-*/14A E;51-55"B*A1-2"@,0"43"5,L8*0K !"#$%&()*)+,-$)./01),2&3)2455#-3) !"#$%&()/2%<0)8#&/7#9,2:) 6&75)#27)2,)8#&/7#9,2 2+,-4$20),+)=<5/255)-<&5)5<41)#5) 4-7/0)4#-7)8#&/7#9,2)) ,"-".)/)*+%0%1/$2).)/)*+! I3*4"8,;/7"*77"43"*E1/14A"4," 5(".)/)*+6%7$#48#9":$6%3$2% B0@,0>"43";50"4*5J"1-"71(0-4" ;--$"/ 8*A5K"":771-2"1-"5;E"4*5J5"43*4"*0" I3*4"8,;/7">*J"4315"@*4;0"*510" ,BD,-*//A"B0@,0>7K 4,";5K"M,0"7510*E/"4,";5K""G*540" !"#$%&()#)+,-$)./01),%9,2#&)6&75:) 4,";5K 7#0)&,,;<%)0,,&5:)/2%<0)0-#25&#9,2),2) !"#$%&()#<0,>4,$%&9,2:)5"3)8/5<#&) 7#05 75/?2:)5%7);35* Adapted from Gerard Meszaros’ “Storyotypes”!"#$%%"&(")*+,-."*//"012345"05067."8889:21/)0,7;<4=512-9<,> %%N
  21. 21. )/*?"@2,,7AB+0AB54C good better best!"#$%%"&(")*+,-."*//"012345"05067."8889:21/)0,7;<4=512-9<,> %%D
  22. 22. ?5"*"<355"2*>"7/160@"540*42@"4,",02*-1A"54,015"4,"B;1/7 !"#$%$&()*#+!"#$%&!!($)*%+!,%-$./!(-+%+01. ,%-.()*#+!2&&!3+4$5$%$067!%0+8.9:+(7!;(<+06= /$-()*#+!>+?.+!#(5$%$067!*+8<18).@+7!+(0A+9@( >+(+8:+!9)+!$.!0A+!8+)$.$./!0A$8&!<18!#.<18+(++.! &&$91.(!.&!&*091.( Opening Mid-Game End-Game Game Build out Refine the UI and Build up flexibility and interactions, take advantage of necessities business rule iterative learning enforcement time!"#$%%"&(")*+,-."*//"012345"05067."8889:21/)0,7;<4=512-9<,> %%C
  23. 23. ?3"54,0@">*A"<,-4*1-5"48,"1>A,04*-4"*-*4,>1<*/"B*4;05 !"#$!"#$!%&$%&$"#$())*+,(-%.$+/$"#$*+/$%&$#//#.-(*$ (,-0+-#/$"#$())*+,(-%.$/1))%2/ !"#$(")$*&+,-$).%&$+/$"#$/%34(2#$4#$51+*6$"($ /1))%2/$"#$*#(/$.175#2$%&$.#,#//(28$(/9/$(,2%//$ "#$&1**$/)(.$%&$1/#2$#:)#2+#.,# The backbone time The walking skeletonnecessity!"#$%%"&(")*+,-."*//"012345"05067."8889:21/)0,7;<4=512-9<,> %%C
  24. 24. ?,;0"7/160@"540*42@">*A1>1B5"/*0-1-2"*-7">1-1>1B5"015C !"#$%&()*$+,-$./0$/$%-(1)2$3.-$+1$2-)34#$/$ %/4-$2-&5-"#$%+"/+-*#!"#$%%"&(")*+,-."*//"012345"05067."8889:21/)0,7;<4=512-9<,> %#$
  25. 25. )01,01?@"8,0A"4,">*B1>1@"/*0-1-2 !"#$%&%("#$)&"$(&*( acquired product knowledge +",$"(-.&)/&%(01"( $&10(2$3/.40( 5&6#0"7($&78 !"#$%&%("#$)&"$( #-3.0(0"41%&4#)( 41#))"%"7( 5&6#0"7($&78 time 9"(4#%(:%&71(3%( Opening Mid Game End Game 65"(-;(<0$&55&%( Game Early stories emphasize Once we’re confident Over time the value of 01"(0#&)=(>(/"*"$$&%( iteration and learning. we have the “shape” stories begin to We need to be sure we’re building the of the product right, we begin to pile in diminish signaling it’s time for release $":%"5"%07 right product value!"#$%%"&(")*+,-."*//"012345"05067."8889:21/)0,7;<4=512-9<,> %#%
  26. 26. ?0"*0"43"@A"<,-<B45!"#$%&()"&(*+&,%-+#.(+/&#+&01/%,&(+&*21$&()&2%1", !"#$%&(#)*+",-./(+01, 2%034"0&5($+6+3#/1+* !"#$%&(#)*+",-./(+01( 1++7*8, 9#":(,/3.;*8(-+%".,7&, <##$4=+>+"4=+,(,"0+8: 2+3.6+":(,"0+8: ?035.*8(,5+3+#*!"#$%%"&(")*+,-."*//"012345"05067."8889:21/)0,7;<4=512-9<,> %##
  27. 27. We fail when we can’t collaborate effectively to deliver!"#$%%"&(")*+,-."*//"012345"05067."8889:21/)0,7;<4=512-9<,> %#?
  28. 28. Build shared understanding throughout design and development!"#$%%"&(")*+,-."*//"012345"05067."8889:21/)0,7;<4=512-9<,> %#?
  29. 29. We fail when we can’t imagine the future!"#$%%"&(")*+,-."*//"012345"05067."8889:21/)0,7;<4=512-9<,> %#?
  30. 30. Map the future vision of your product!"#$%%"&(")*+,-."*//"012345"05067."8889:21/)0,7;<4=512-9<,> %#?
  31. 31. We fail when we believe the experience we imagine is true!"#$%%"&(")*+,-."*//"012345"05067."8889:21/)0,7;<4=512-9<,> %#?
  32. 32. Plan to learn: build enough to validate early!"#$%%"&(")*+,-."*//"012345"05067."8889:21/)0,7;<4=512-9<,> %#?
  33. 33. Now and Later!"#$%%"&(")*+,-."*//"012345"05067."8889:21/)0,7;<4=512-9<,> %#?
  34. 34. !"#$%&())*+,&-#$&./&0$(122#+3$45%*+,&6,*73&(+8&./&5#,3"93$ Questions? :3;&0(<#+ =)(<#+>(1?@#$, AAA@6,*730$#8B1"C34*,+@1#? 6E(*7(F73& "A*<3$D&>=3;)(<#+ G*+"3$&HIJJ
  35. 35. ?5@;/"/1-A5"*-7"0@0-<5 !"#$%!&(%)!*+,,-./!+%012$3!45,3667778.9:((;81(<6.9:((;#6 #=$6:$5$%#(>7+%$?@@AB6-.C$98,4,D#+%0CEFGH6FI!!! J4$!.$7!K#$%!#(%)!:+1;2(/!-#!+!<+,3!45,366 7778+/-2$,%(CK1C$#-/.81(<6:2(/64$?.$7?:+1;2(/84<2! L/-2$!M$N$2(,<$.!@@!9!@O!PK-1;%$Q3!45,366 7778+/-2$,%(CK1C$#-/.81(<6C(7.2(+C#6=K-1;%$Q#6 ,+5(.?+/-2$?@@9@O8,CQ R%(CK1!S7.$%#4-,!@@!9!@O!PK-1;%$Q3!45,366 7778+/-2$,%(CK1C$#-/.81(<6C(7.2(+C#6=K-1;%$Q#6 ,+5(.?,(?@@9@O8,CQ "#$%!&(%)!*+,,-./!PK-1;%$Q3!45,3667778+/-2$,%(CK1C$#-/.81(<6 C(7.2(+C#6=K-1;%$Q#6,+5(.?#(%)?<+,,-./8,CQ!!"#$%%"&(")*+,-."*//"012345"05067."8889:21/)0,7;<4=512-9<,> %B%
  36. 36. ?5@;/"/1-A5"*-7"0@0-<5 !"#$%!"&()%(*"+&%,)-.#($%/*(%"&%*0-)1%$2,,"&+%3#2**(*4%56,477 88892+"#(,)-/30(*"+&93-$7-8&#-2*7:#$;:&();(*"+&;,)-.#($9,< !"#$%!"&()%(=2$,#(%.23>#-+%?,)"&0*%-&%,)(@,()<-)20(%./*"&(**%32)*A4%56,477 88892+"#(,)-/30(*"+&93-$7-8&#-2*7%:#$;:&();.23>#-+;32)*9,< B"##()C*%!"#$%&()*%+,%!(#+-$.%/01(%2+.%"%&(33$##,(4%5.+)(34%56,477 88892+"#(,)-/30(*"+&93-$7/*(</#;,2,()*7 $"##();3/*0-$();"&,/0;"&;2+"#(;,)-D(30*9,<%% E5(%FG2#/2.#(H%/*2.#(H%2&%<(2*".#(I%$2&0)2%2&%-05()%+--%"(2*%3-$(%<)-$% B2)01%J2+2&C*%.-->4%/0#16.$)7%8+9%+%!.$"$%5.+)(3%!(#+-$.#%:+;$ K%+)(20%"*3/**"-&%-&%-/0,/0H%-/03-$(H%2&%"$,230%"&%"&%L-.()0%!2.)"32&0C*% )(3-)(%02#>4%<$=";6+.%6#%>(.%?$)6(-%56,477#".)2)19"=29-)+7&-(7M E5(%)(2#%*-/)3(%-<%05(%3#(G()%B-&2%N"*2%G"*/2#"O2P-&%3-&3(,04%Q-5&%K)$"02+(C*% @.$%@A64$%?$=+)#%B++)%2+.%C$#6A04%56,477#923$9-)+73"02P-&93<$R "STUVMWV!"#$%%"&(")*+,-."*//"012345"05067."8889:21/)0,7;<4=512-9<,> %B#
  37. 37. Story Mapping examples Thanks to all those that have sent photos. This is just a few. Please send your examples to jpatton@acm.org!"#$%%"&(")*+,-."*//"012345"05067."8889:21/)0,7;<4=512-9<,> %??
  38. 38. ?4,0@">*AA1-2"*4"=*BC,!"#$%%"&(")*+,-."*//"012345"05067."8889:21/)0,7;<4=512-9<,> %DE
  39. 39. ?4,0@">*AA1-2"*4"=*BC,!"#$%%"&(")*+,-."*//"012345"05067."8889:21/)0,7;<4=512-9<,> %DE
  40. 40. ?4,0@">*AA1-2"*4"?B)!"#$%%"&(")*+,-."*//"012345"05067."8889:21/)0,7;<4=512-9<,> %CD
  41. 41. ?4,0@">*AA1-2"*4"?B)!"#$%%"&(")*+,-."*//"012345"05067."8889:21/)0,7;<4=512-9<,> %CD
  42. 42. ?4,0@">*AA1-2"*4"?B)!"#$%%"&(")*+,-."*//"012345"05067."8889:21/)0,7;<4=512-9<,> %CD
  43. 43. ?4,0@">*AA1-2"1-"B31-*!"#$%%"&(")*+,-."*//"012345"05067."8889:21/)0,7;<4=512-9<,> %CD
  44. 44. ?/1<1-2"*">*@"1-"A1-5B!"#$%%"&(")*+,-."*//"012345"05067."8889:21/)0,7;<4=512-9<,> %C$
  45. 45. ?4,0@"A*BB1-2"1-"C50*/!"#$%%"&(")*+,-."*//"012345"05067."8889:21/)0,7;<4=512-9<,> %D%
  46. 46. ?4,0@">*AA1-2"*4"B/,C,9<,>!"#$%%"&(")*+,-."*//"012345"05067."8889:21/)0,7;<4=512-9<,> %D#
  47. 47. ?4,0@">*AA1-2"*4"B/,C,9<,>!"#$%%"&(")*+,-."*//"012345"05067."8889:21/)0,7;<4=512-9<,> %DE

×