Distributed Agile: An oxymoron?

elizabeth.keogh@thoughtworks.com
patrick.kua@thoughtworks.com

© ThoughtWorks 2008
Agile = Co-located

© ThoughtWorks 2008
Agile Manifesto Principles
Business people and developers must work
together daily throughout the project.
The most effici...
Agile = Co-located
Distributed = Different locations
Distributed Agile = An Oxymoron?

© ThoughtWorks 2008
Sometimes
Distributed
Large
Business critical

Enterprise Software

Complex

Heavily dependent

© ThoughtWorks 2008
Sometimes
Distributed
Large
Business critical

Our experience…

Complex

Heavily dependent

© ThoughtWorks 2008
Distributed development looks easy
(a slightly fictional story)

© ThoughtWorks 2008
Once upon a time…

© ThoughtWorks 2008
there was a team…

© ThoughtWorks 2008
© ThoughtWorks 2008
working together on the same project…

© ThoughtWorks 2008
Same project at the
same location

…
…

…

…

© ThoughtWorks 2008
everyone understood each other…

© ThoughtWorks 2008
© ThoughtWorks 2008
some people wanted the project distributed…

© ThoughtWorks 2008
= ££££££
+
= ££ + $$$$

= ½ £££

© ThoughtWorks 2008
(of course, it might be more than just £££s)

© ThoughtWorks 2008
they started work with new
people in another place...

© ThoughtWorks 2008
New

New

New
New

© ThoughtWorks 2008
life was great!

© ThoughtWorks 2008
they would talk over the phone...

© ThoughtWorks 2008
…

…

…
…

© ThoughtWorks 2008
and send email...

© ThoughtWorks 2008
type type type…

© ThoughtWorks 2008
sometimes things would take some time...

© ThoughtWorks 2008
I wonder what
Jane meant by
that. I better send
an email...

… what’s the
gobbleflux about …

© ThoughtWorks 2008
That’s an
easy one.
Here you go.

… Gobbleflux? On
the left …

© ThoughtWorks 2008
On the
left?
… on the left
of what? …

© ThoughtWorks 2008
something that should have been ten minutes

© ThoughtWorks 2008
stretches to several days...

© ThoughtWorks 2008
!!!

… To the left of
the widget …

© ThoughtWorks 2008
There’s a
widget?

… What widget are
you talking about? …

© ThoughtWorks 2008

She’s
not even
trying...
Why doesn’t he
understand?

… The breadcrumbs
widget …

© ThoughtWorks 2008
things continue like that for three months...

© ThoughtWorks 2008
until...

© ThoughtWorks 2008
I can’t wait to see...
They’re going to be
impressed by this...

© ThoughtWorks 2008
A KEY LESSON

every physical boundary increases noise

© ThoughtWorks 2008
http://www.agilemodeling.com/essays/communication.htm
© ThoughtWorks 2008
© ThoughtWorks 2008
cost of distributed development
(is more than just people)

© ThoughtWorks 2008
A more realistic formula
On-shore

Distributed

½

+
= ££ + $$$$

= ££££££

+ Cost of (timely response
and shared understa...
Visibility into progress
Trust and rapport
Timely decisions

Challenges of Distributed Development
Look familiar?

It’s (a...
Must haves for successful distributed development

Analysts

Developers

Testers

Functional teams
Division by role

© Tho...
Must haves for successful distributed development

Cross functional teams
Division by feature, not by role

© ThoughtWorks...
Must haves for successful distributed development

Excellent relationship
with the business
© ThoughtWorks 2008
Must haves for successful distributed development

Speedy Escalation Paths
© ThoughtWorks 2008
Must haves for successful distributed development
Shared Culture

© ThoughtWorks 2008
Example: Sharing culture

© ThoughtWorks 2008
Must haves for successful distributed development

Shared Environments

© ThoughtWorks 2008
Must haves for successful distributed development

Shared sense of 3 P’s (Purpose, Priority, Plan)

© ThoughtWorks 2008
Must haves for successful distributed development

Frequent software demos
© ThoughtWorks 2008
Must haves for successful distributed development

Continuous Reflection
and Improvement

© ThoughtWorks 2008
Must haves for successful distributed development

Frequent visits

© ThoughtWorks 2008
Must haves for successful distributed development
Excellent relationship with the business

Speedy Escalation Paths

Cross...
Agile development
practices

JIRA
Tools that support distributed teams

Good practices still hold
Principles of
good teams...
Conclusion
Distributed Agile: An oxymoron?

© ThoughtWorks 2008
Questions and Comments?
elizabeth.keogh@thoughtworks.com
patrick.kua@thoughtworks.com

© ThoughtWorks 2008
Photo Credits
Flickr Creative Commons
•
•
•
•

Alarm: http://flickr.com/photos/chidorian/7666930/
Masonic handshake: http:...
Upcoming SlideShare
Loading in …5
×

Distributed Agile: An Oxymoron?

1,189 views

Published on

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,189
On SlideShare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
16
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Distributed Agile: An Oxymoron?

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

×