Patterns for Successful
                  Distributed Development
                              Mads.Troels.Hansen@BestBra...
My background
       • Mads Troels Hansen - BestBrains
            Agile and Lean Coach, Management Consultant

       • D...
3rd Annual Survey: 2008
   “The State of Agile Development”




• Distributed Agile?
• Easy to do?

December 09, © 2009 Be...
• 8 Patterns for Successful Distributed
  Development

December 09, © 2009 BestBrains, Mads Troels Hansen   4
December 09, © 2009 BestBrains, Mads Troels Hansen   5
Structure




• A normal way of folding hands


December 09, © 2009 BestBrains, Mads Troels Hansen               6
Structure




• Change the structure


December 09, © 2009 BestBrains, Mads Troels Hansen               7
Structure




• Visibility and Transparency                        TRUST
       – Use Google Docs or another online tool
 ...
Structure




• Focus on problem solving
       – DO regular retrospectives, online and offline
       – Find root cause, ...
Structure




• Establish flow and remove bottlenecks
       – Limit Work In Process, CF Diagrams
       – Value Stream Ma...
Rhythm




• Regular rhythm in teams and between teams
       – Planning, coordination, releases
       – Establish a cade...
Rhythm




• Business and technical feedback rhythms
       – Sneak preview, demonstrations
       – Continuous Integratio...
Technical
                                                     Infrastructure




• Automated and fast
       – Simple too...
Technical
                                                     Infrastructure




• Remove dependencies to other locations...
Communication
                                                       Protocols




• Define your communication toolbox
   ...
Communication
                                                       Protocols




• Prepare the distributed meetings
    ...
Communication
                                                       Protocols




• Pomodoro for distributed teams


Dece...
Shared
                                                     Product
                                                      ...
Shared
                                                     Product
                                                      ...
Domain
                                                     Knowledge




• What you don’t know you don’t know
       - As...
Domain
                                                     Knowledge




• Physical outputs and business workflow
       ...
Development
                                                      Practices




• Slice the system by feature not layer
  ...
Development
                                                      Practices




• From “Ready, Ready” to “Done, Done”
    ...
Cross cultural
                                                     understanding




• Regular face-to-face visits
      ...
8 Patterns for successful distributed development

                                            •Business feedback
        ...
People don’t resist
                                                                   change, they resist
               ...
References
       • Innovation Games, Luke Hohmann
         www.innovationgames.com
       • User Story Mapping, Jeff Patt...
Upcoming SlideShare
Loading in...5
×

XP Day 2009 (London) - Patterns For Successful Distributed Development Xpday London 07122009

564

Published on

Patterns For Successful Distributed Development

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
564
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
6
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

XP Day 2009 (London) - Patterns For Successful Distributed Development Xpday London 07122009

  1. 1. Patterns for Successful Distributed Development Mads.Troels.Hansen@BestBrains.dk XPDays London, December 7th 2009 December 09, © 2009 BestBrains, Mads Troels Hansen
  2. 2. My background • Mads Troels Hansen - BestBrains Agile and Lean Coach, Management Consultant • Development Director at Omada 7 different nationalities, products, projects and support, 4 teams • Development Director, co-founder at SoftwarePeople Products, projects and hosting, 6 teams Offshore in Bangladesh: SoftwarePeople Ltd, 25+ people • Development Manager at NetPeople 15+ nationalities, 2 teams • IT Director at PeopleGroup Offshore graphical production in Bangladesh. Also experience as developer, architect, project manager. December 09, © 2009 BestBrains, Mads Troels Hansen
  3. 3. 3rd Annual Survey: 2008 “The State of Agile Development” • Distributed Agile? • Easy to do? December 09, © 2009 BestBrains, Mads Troels Hansen 3
  4. 4. • 8 Patterns for Successful Distributed Development December 09, © 2009 BestBrains, Mads Troels Hansen 4
  5. 5. December 09, © 2009 BestBrains, Mads Troels Hansen 5
  6. 6. Structure • A normal way of folding hands December 09, © 2009 BestBrains, Mads Troels Hansen 6
  7. 7. Structure • Change the structure December 09, © 2009 BestBrains, Mads Troels Hansen 7
  8. 8. Structure • Visibility and Transparency TRUST – Use Google Docs or another online tool – Physical task boards whenever possible December 09, © 2009 BestBrains, Mads Troels Hansen 8
  9. 9. Structure • Focus on problem solving – DO regular retrospectives, online and offline – Find root cause, not only symptoms December 09, © 2009 BestBrains, Mads Troels Hansen 9
  10. 10. Structure • Establish flow and remove bottlenecks – Limit Work In Process, CF Diagrams – Value Stream Mapping – process mapping December 09, © 2009 BestBrains, Mads Troels Hansen 10
  11. 11. Rhythm • Regular rhythm in teams and between teams – Planning, coordination, releases – Establish a cadence December 09, © 2009 BestBrains, Mads Troels Hansen 11
  12. 12. Rhythm • Business and technical feedback rhythms – Sneak preview, demonstrations – Continuous Integration December 09, © 2009 BestBrains, Mads Troels Hansen 12
  13. 13. Technical Infrastructure • Automated and fast – Simple tools December 09, © 2009 BestBrains, Mads Troels Hansen 13
  14. 14. Technical Infrastructure • Remove dependencies to other locations – It must be fast to integrate and test December 09, © 2009 BestBrains, Mads Troels Hansen 14
  15. 15. Communication Protocols • Define your communication toolbox – Combine the tools December 09, © 2009 BestBrains, Mads Troels Hansen 15
  16. 16. Communication Protocols • Prepare the distributed meetings – Define agendas, purpose and responsible – Use checklists and remember to ask questions December 09, © 2009 BestBrains, Mads Troels Hansen 16
  17. 17. Communication Protocols • Pomodoro for distributed teams December 09, © 2009 BestBrains, Mads Troels Hansen 17
  18. 18. Shared Product Vision • Understand the vision and key features – User Story Mapping, a picture of the whole system – Innovation Games, learning from customers December 09, © 2009 BestBrains, Mads Troels Hansen 18
  19. 19. Shared Product Vision • Prepare requirements with acceptance criteria – Easier to test and validate – Focus on need not only solution December 09, © 2009 BestBrains, Mads Troels Hansen 19
  20. 20. Domain Knowledge • What you don’t know you don’t know - Ask questions - Innovation Games December 09, © 2009 BestBrains, Mads Troels Hansen 20
  21. 21. Domain Knowledge • Physical outputs and business workflow – Learn what the solution will produce – Understand how a user will use the system December 09, © 2009 BestBrains, Mads Troels Hansen 21
  22. 22. Development Practices • Slice the system by feature not layer – Integrate and test in small steps – Risk first December 09, © 2009 BestBrains, Mads Troels Hansen 22
  23. 23. Development Practices • From “Ready, Ready” to “Done, Done” – Agree and define your “Done, Done” criteria – Validate requirements with “Ready, Ready” criteria December 09, © 2009 BestBrains, Mads Troels Hansen 23
  24. 24. Cross cultural understanding • Regular face-to-face visits – Distributed teams working together, same office – Solve problems together December 09, © 2009 BestBrains, Mads Troels Hansen 24
  25. 25. 8 Patterns for successful distributed development •Business feedback •Technical feedback •Establish a cadence •Continuous integration Development •Test first Practices •Emergent Design Rhythm •Done, Done •By feature •Refactoring •Fast •Limit dependencies Technical •Solve problem together •Automated •Work Face-to-face •Simple Infrastructure Structure Cross cultural •Transparency, Visibility understanding •Establish Flow •Remove Bottlenecks Shared Domain •Value Stream Mapping Product Vision Knowledge •Problem solving •Understand the vision •What you don’t know you don’t know •Key Features •Business Workflow •Story Mapping •Mind maps •Acceptance Criteria •Innovation Games •Ready, Ready Communication •Establish a Toolbox Protocols •Use Video December 09, © 2009 BestBrains, Mads Troels Hansen •Combine tools 25
  26. 26. People don’t resist change, they resist being changed. - Peter Scholtes @MadsTH Thank you Send me your distributed stories: mth@bestbrains.dk December 09, © 2009 BestBrains, Mads Troels Hansen 26
  27. 27. References • Innovation Games, Luke Hohmann www.innovationgames.com • User Story Mapping, Jeff Patton http://www.agileproductdesign.com/presentations/user_story_mapping/index.html • Distributed Pomodoro: CherryTomato http://www.chrylers.com/cherrytomato/ • Agile 2009 Paper: Agile for Distributed Teams http://bit.ly/cmmiagile December 09, © 2009 BestBrains, Mads Troels Hansen
  1. A particular slide catching your eye?

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

×