0
Upcoming SlideShare
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Standard text messaging rates apply

# Steering Iterative and Incremental Delivery with Jeff Patton

9,801

Published on

1 Comment
27 Likes
Statistics
Notes
• Full Name
Comment goes here.

Are you sure you want to Yes No
Views
Total Views
9,801
On Slideshare
0
From Embeds
0
Number of Embeds
14
Actions
Shares
0
134
1
Likes
27
Embeds 0
No embeds

No notes for slide

### Transcript

• 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. 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. ?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. Steering iterative and incremental delivery 7!"#\$%%"&(")*+,-."*//"012345"05067."8889:21/)0,7;<4=512-9<,> %\$\$
• 5. Product Ownership takes a team!"#\$%%"&(")*+,-."*//"012345"05067."8889:21/)0,7;<4=512-9<,> %\$%
• 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. !"#\$%&()*\$+)#,-#.("/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. )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. ?;;";@">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. =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. To release on a schedule leverage incremental and iterative thinking (What’s the difference?)!"#\$%%"&(")*+,-."*//"012345"05067."8889:21/)0,7;<4=512-9<,> %\$?
• 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. ?@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. ?*-@",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. Product Owners must understand the delivery strategy that leads to a ﬁnished 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. ?,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. :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. ?*-,"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. ?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. ?,-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. )/*?"@2,,7AB+0AB54C good better best!"#\$%%"&(")*+,-."*//"012345"05067."8889:21/)0,7;<4=512-9<,> %%D
• 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. ?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. ?,;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. )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. ?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. We fail when we can’t collaborate effectively to deliver!"#\$%%"&(")*+,-."*//"012345"05067."8889:21/)0,7;<4=512-9<,> %#?
• 28. Build shared understanding throughout design and development!"#\$%%"&(")*+,-."*//"012345"05067."8889:21/)0,7;<4=512-9<,> %#?
• 29. We fail when we can’t imagine the future!"#\$%%"&(")*+,-."*//"012345"05067."8889:21/)0,7;<4=512-9<,> %#?
• 30. Map the future vision of your product!"#\$%%"&(")*+,-."*//"012345"05067."8889:21/)0,7;<4=512-9<,> %#?
• 31. We fail when we believe the experience we imagine is true!"#\$%%"&(")*+,-."*//"012345"05067."8889:21/)0,7;<4=512-9<,> %#?
• 32. Plan to learn: build enough to validate early!"#\$%%"&(")*+,-."*//"012345"05067."8889:21/)0,7;<4=512-9<,> %#?
• 33. Now and Later!"#\$%%"&(")*+,-."*//"012345"05067."8889:21/)0,7;<4=512-9<,> %#?
• 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. ?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. ?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. 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. ?4,0@">*AA1-2"*4"=*BC,!"#\$%%"&(")*+,-."*//"012345"05067."8889:21/)0,7;<4=512-9<,> %DE
• 39. ?4,0@">*AA1-2"*4"=*BC,!"#\$%%"&(")*+,-."*//"012345"05067."8889:21/)0,7;<4=512-9<,> %DE
• 40. ?4,0@">*AA1-2"*4"?B)!"#\$%%"&(")*+,-."*//"012345"05067."8889:21/)0,7;<4=512-9<,> %CD
• 41. ?4,0@">*AA1-2"*4"?B)!"#\$%%"&(")*+,-."*//"012345"05067."8889:21/)0,7;<4=512-9<,> %CD
• 42. ?4,0@">*AA1-2"*4"?B)!"#\$%%"&(")*+,-."*//"012345"05067."8889:21/)0,7;<4=512-9<,> %CD
• 43. ?4,0@">*AA1-2"1-"B31-*!"#\$%%"&(")*+,-."*//"012345"05067."8889:21/)0,7;<4=512-9<,> %CD
• 44. ?/1<1-2"*">*@"1-"A1-5B!"#\$%%"&(")*+,-."*//"012345"05067."8889:21/)0,7;<4=512-9<,> %C\$
• 45. ?4,0@"A*BB1-2"1-"C50*/!"#\$%%"&(")*+,-."*//"012345"05067."8889:21/)0,7;<4=512-9<,> %D%
• 46. ?4,0@">*AA1-2"*4"B/,C,9<,>!"#\$%%"&(")*+,-."*//"012345"05067."8889:21/)0,7;<4=512-9<,> %D#
• 47. ?4,0@">*AA1-2"*4"B/,C,9<,>!"#\$%%"&(")*+,-."*//"012345"05067."8889:21/)0,7;<4=512-9<,> %DE