Distributed teams have become business as usual. How do you implement Agile practices which emphasize co-location and close collaboration with the nature of a distributed team? Read on...
5. Distributed teams have become business as usual
• Mergers and acquisitions
• Shortage of local
expertise
• Centers of excellence
• Proximity to customers
• Labor arbitrage
• Outsourcing
• Lines of business
• Countries of operation
• Joint development efforts
• Open source
• 3rd-party Suppliers
• 24 x 7 development
What influences are you feeling on your project?
6. Your software delivery effort
Distributed teams are today’s software supply chain
Offshore
Vendor
Internal IS
Team
Domain
Experts
Services
Vendor
Package
Provider
11. Agile Manifesto - 2001
• In 2001, industry leaders meet
and decide to name a family of
methodologies “Agile”
• “We are uncovering better ways
of developing software by doing
it and helping others do it.”
While there is value in the items on the right, we value the items on the left more.
Individuals and interactions over Process and Tools
Working software over Comprehensive Documentation
Customer collaboration over Contract negotiation
Responding to change over Following a plan
12. 12
Summary of Agile Best Practices
• Best practices
followed by highly
effective
development teams
• All activities are
aligned to deliver
business value
• Drive efficiency,
productivity and
quality
13. Distributed Agile?
Sure, Agile is great but. . .
It is ad hoc and undisciplined
No one writes any documents
It only works for small teams
You have to be co-located
Key Principle:
In a distributed scenario, the technical benefits of Agile development
remain unaltered and the communication and team practices directly
mitigate the primary risks of distributed development.
14. Distributed Agile?
Sure, Agile is great but. . .
It is ad hoc and undisciplined
No one writes any documents
It only works for small teams
You have to be co-located
Key Principle:
In a distributed scenario, the technical benefits of Agile development
remain unaltered and the communication and team practices directly
mitigate the primary risks of distributed development.
Key Principle:
In a distributed scenario, the technical benefits of Agile development
remain unaltered and the communication and team practices directly
mitigate the primary risks of distributed development.
“ Agile isn’t just applicable in the distributed context – its ideal.”
33. Best Practices for Distributed Agile
Improving Communication
People Process Tools
Dining Room Tables Daily Stand up Wiki
Cross Pollination Distributed Meeting 101 Star phones
Redundant Roles (UFOs) Retrospectives Video Conference
Key Role: IM Showcases Smart Boards
Key Role: Tech Liaison Team core hours IM / Skype
Key Role: Domain Expert Agile Principles Virtual Card Walls
Key Role: Customer Proxy Agile Tracking / Metrics Story / Bug Tracking tool
Build Pipeline
Communication
Visibility
Trust
Release Planning
& Execution
34. Best Practices for Distributed Agile
Team, Morale, and Trust
People Process Tools
Dining Room Tables Showcases Agile Tracking Tools
Overlap Time Co-located release plan Key metrics
Cross Pollination Retrospectives Collaboration tools
Team outings Agile principles Communication tools
Understanding customs Daily Handoff Digital Camera / Video
Personal relationships Culture of feedback
Communication
Visibility
Trust
Release Planning
& Execution
35. Best Practices for Distributed Agile
Team, Morale, and Trust
People Process Tools
Dining Room Tables Showcases Agile Tracking Tools
Overlap Time Co-located release plan Key metrics
Cross Pollination Retrospectives Collaboration tools
Team outings Agile principles Communication tools
Understanding customs Daily Handoff Digital Camera / Video
Personal relationships Culture of feedback
Communication
Visibility
Trust
Release Planning
& Execution
37. Best Practices for Distributed Agile
Team, Morale, and Trust
People Process Tools
Dining Room Tables Showcases Agile Tracking Tools
Overlap Time Co-located release plan Key metrics
Cross Pollination Retrospectives Collaboration tools
Team outings Agile principles Communication tools
Understanding customs Daily Handoff Digital Camera / Video
Personal relationships Culture of feedback
Communication
Visibility
Trust
Release Planning
& Execution
38. Best Practices for Distributed Agile
Team, Morale, and Trust
People Process Tools
Dining Room Tables Showcases Agile Tracking Tools
Overlap Time Co-located release plan Key metrics
Cross Pollination Retrospectives Collaboration tools
Team outings Agile principles Communication tools
Understanding customs Daily Handoff Digital Camera / Video
Personal relationships Culture of feedback
Communication
Visibility
Trust
Release Planning
& Execution
40. Best Practices for Distributed Agile
Team, Morale, and Trust
People Process Tools
Dining Room Tables Showcases Agile Tracking Tools
Overlap Time Co-located release plan Key metrics
Cross Pollination Retrospectives Collaboration tools
Team outings Agile principles Communication tools
Understanding customs Daily Handoff Digital Camera / Video
Personal relationships Culture of feedback
Communication
Visibility
Trust
Release Planning
& Execution
41. Best Practices for Distributed Agile
Estimation and Release Planning
People Process Tools
Cross Pollination Planning Meeting 101 Story / Bug Tracking tool
Home and Away Co-located release planning Agile tracking / metrics
Product Visioning
Project Inception
Communication
Visibility
Trust
Release Planning
& Execution
42. Best Practices for Distributed Agile
Estimation and Release Planning
People Process Tools
Cross Pollination Planning Meeting 101 Story / Bug Tracking tool
Home and Away Co-located release planning Agile tracking / metrics
Product Visioning
Project Inception
Communication
Visibility
Trust
Release Planning
& Execution
44. Best Practices for Distributed Agile
Estimation and Release Planning
People Process Tools
Cross Pollination Planning Meeting 101 Story / Bug Tracking tool
Home and Away Co-located release planning Agile tracking / metrics
Product Visioning
Project Inception
Communication
Visibility
Trust
Release Planning
& Execution
45. Best Practices for Distributed Agile
Visibility
People Process Tools
Redundant Roles (UFOs) Showcases Virtual card walls
Key Role: Customer Proxy Retrospectives Story tracking tool
Cross Pollination of team Iteration Planning Meetings Defect tracking tool
Incremental delivery Build pipeline
Prioritized business backlog Continuous Integration
Code quality metrics
Test planning / tracking tools
Agile metrics and tracking
Communication
Visibility
Trust
Release Planning
& Execution
46. Best Practices for Distributed Agile
Visibility
People Process Tools
Redundant Roles (UFOs) Showcases Virtual card walls
Key Role: Customer Proxy Retrospectives Story tracking tool
Cross Pollination of team Iteration Planning Meetings Defect tracking tool
Incremental delivery Build pipeline
Prioritized business backlog Continuous Integration
Code quality metrics
Test planning / tracking tools
Agile metrics and tracking
Communication
Visibility
Trust
Release Planning
& Execution