Download presentation
Presentation is loading. Please wait.
Published byBryson Layng Modified over 10 years ago
1
Distributed Agile: An oxymoron? elizabeth.keogh@thoughtworks.com patrick.kua@thoughtworks.com © ThoughtWorks 2008
2
Agile = Co-located © ThoughtWorks 2008
3
Agile Manifesto Principles © ThoughtWorks 2008 Business people and developers must work together daily throughout the project. The most efficient and effective method of conveying information to and within a development team is face-to-face conversation. On-site customer Collective Code Ownership XP Practices Osmotic Communication Easy access to expert users Crystal Clear (principles) Active user involvement DSDM (principles) Unnecessary Movement Lean Software Development Waiting Unnecessary Transportation
4
Agile = Co-located © ThoughtWorks 2008 Distributed = Different locations Distributed Agile = An Oxymoron?
5
Enterprise Software © ThoughtWorks 2008 Large Sometimes Distributed Complex Heavily dependent Business critical
6
Our experience… © ThoughtWorks 2008 Large Complex Heavily dependent Business critical Sometimes Distributed
7
© ThoughtWorks 2008 Distributed development looks easy (a slightly fictional story)
8
Once upon a time… © ThoughtWorks 2008
9
there was a team… © ThoughtWorks 2008
11
working together on the same project… © ThoughtWorks 2008
12
… … … … … … … … Same project at the same location
13
everyone understood each other… © ThoughtWorks 2008
15
some people wanted the project distributed… © ThoughtWorks 2008
16
= ££££££ + = ££ + $$$$ = ½ £££
17
(of course, it might be more than just £££s) © ThoughtWorks 2008
18
they started work with new people in another place... © ThoughtWorks 2008
19
New
20
life was great! © ThoughtWorks 2008
21
they would talk over the phone... © ThoughtWorks 2008
22
… … … … … … … …
23
and send email... © ThoughtWorks 2008
24
type type type…
25
sometimes things would take some time... © ThoughtWorks 2008
26
I wonder what Jane meant by that. I better send an email... … whats the gobbleflux about …
27
© ThoughtWorks 2008 Thats an easy one. Here you go. … Gobbleflux? On the left …
28
© ThoughtWorks 2008 On the left? … on the left of what? …
29
something that should have been ten minutes © ThoughtWorks 2008
30
stretches to several days... © ThoughtWorks 2008
31
!!! … To the left of the widget …
32
© ThoughtWorks 2008 Theres a widget? … What widget are you talking about? … Shes not even trying...
33
© ThoughtWorks 2008 Why doesnt he understand? … The breadcrumbs widget …
34
things continue like that for three months... © ThoughtWorks 2008
35
until... © ThoughtWorks 2008
36
I cant wait to see... Theyre going to be impressed by this...
37
A KEY LESSON © ThoughtWorks 2008 every physical boundary increases noise
38
© ThoughtWorks 2008 http://www.agilemodeling.com/essays/communication.htm
39
© ThoughtWorks 2008
40
cost of distributed development (is more than just people)
41
A more realistic formula © ThoughtWorks 2008 = ££££££ + = ££ + $$$$ ½ + Cost of (timely response and shared understanding) On-shoreDistributed
42
© ThoughtWorks 2008 Challenges of Distributed Development Look familiar? Shared understanding Timely decisions Trust and rapport Visibility into progress Working in the same way Its (almost) the same as co-located development... just much harder. Overcoming the
43
Division by role Functional teams Must haves for successful distributed development © ThoughtWorks 2008 Analysts Developers Testers Infrastructure
44
Must haves for successful distributed development © ThoughtWorks 2008 Cross functional teams Division by feature, not by role
45
Must haves for successful distributed development © ThoughtWorks 2008 Excellent relationship with the business
46
Must haves for successful distributed development © ThoughtWorks 2008 Speedy Escalation Paths
47
Must haves for successful distributed development © ThoughtWorks 2008 Shared Culture
48
© ThoughtWorks 2008 Example: Sharing culture
49
Must haves for successful distributed development © ThoughtWorks 2008 Shared Environments
50
Must haves for successful distributed development © ThoughtWorks 2008 Shared sense of 3 Ps (Purpose, Priority, Plan)
51
Must haves for successful distributed development © ThoughtWorks 2008 Frequent software demos
52
Must haves for successful distributed development © ThoughtWorks 2008 Continuous Reflection and Improvement
53
Must haves for successful distributed development © ThoughtWorks 2008 Frequent visits
54
Must haves for successful distributed development © ThoughtWorks 2008 Cross functional teams Excellent relationship with the business Speedy Escalation Paths Shared culture Shared environments Shared purpose, priority, plan Frequent showcases Continue Reflection and improvement Frequent visits
55
Good practices still hold © ThoughtWorks 2008 Visibility and transparency of information Face to face time Tools that support distributed teams Agile development practices Frequent rotation Principles of good teams JIRA
56
Conclusion Distributed Agile: An oxymoron? © ThoughtWorks 2008
57
Questions and Comments? elizabeth.keogh@thoughtworks.com patrick.kua@thoughtworks.com
58
Flickr Creative Commons Alarm: http://flickr.com/photos/chidorian/7666930/http://flickr.com/photos/chidorian/7666930/ Masonic handshake: http://flickr.com/photos/gaetanlee/159591865/http://flickr.com/photos/gaetanlee/159591865/ Plane: http://flickr.com/photos/volodimer/400350015/http://flickr.com/photos/volodimer/400350015/ East meets west: http://flickr.com/photos/evanosherow/2280507811/http://flickr.com/photos/evanosherow/2280507811/ Free wallpaper Matrix wallpaper: http://www.wallpaperbase.com/wallpapers/movie/matrix/matrix_5.jpghttp://www.wallpaperbase.com/wallpapers/movie/matrix/matrix_5.jpg Photo Credits © ThoughtWorks 2008
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.