4. Why do we need dispersed team?
Look for talent all over the world
Special skills in another location
Cost-savings
Access to new market
4
5. Agile Values
Individuals and interactions over processes and tool
Working software over comprehensive documentation
Customer collaboration over contract negotiation
Responding to change over following a plan
5
6. 12 Agile Principles
…
The most efficient and effective method of conveying
information to and within a development team is face-to-
face conversation.
…
6
8. Challenge #1: Time zone differences
8
Conflicting work hours
Parallel work
Work allocation and scheduling
9. Challenge #2: Cultural diversity
Iceberg model
◦ External culture is easy to understand and change
◦ Internal culture is more difficult to understand
9
10. Challenge #3: Communication
Is a challenge in traditional agile environment
Even more difficult in distributed team
◦ Most of communication is non-verbal
◦ Lost or misunderstood information
◦ Difference in language
10
11. Challenge #4: Technical alignments
Misalignment in engineering best practices can also
create conflicts between team members.
11
12. Challenge #5: Managerial issues
How to engage all members in the development
process?
Difficulties in status monitoring, management
12
13. Challenge #6: Trust
13
Easy to blame and criticize the other groups and the
team can break down into competing tribes.
15. Practice #1: Overlapping Work Hours
Document the time zone differences and ranges
Determine a core-time range for all geographically
dispersed team members
Overlapping working hours needs to be established as
much as possible.
15
16. Practice #2: Exchanging program
Regular visits by sending members to other location will
foster collaboration
Enhance understanding and also creates personal trust
between team members
16
17. Practice #3: Communication
Video conference should be used as much as possible
Communication tools:
◦ Instant message: Skype, hipchat, …
◦ Desktop sharing: Lync, Bluejeans, …
17
18. Practice #4: Transparent information
Single source for information across all teams to foster
greater understanding among team members.
The knowledge base should be accessible online in real
time by all locations
◦ Wiki
◦ Shared mailing list and folder
◦ Online project management tools
18
19. Practice #5: Remote pairing
Pair with another remote team member which can lead
to great knowledge transfer.
The understanding was much deeper and an immediate
bond was created between the two who paired
19
20. Practice #6: Engineering best practices
Establish a set of common best practices across all
remote teams.
Scrum Master must facilitate and ensure agreement
from all remote teams.
Reinforce the trust and shared values between team
members.
20
21. Practice #7: No class system
No distinction should be made between team members
at different locations.
With a class system, it will lower the trust relationship
between teams.
The ‘lower’ class will always feel that they are left out.
21
22. Practice #8: Individual retrospectives
Conduct individual sprint retrospectives at the end of
each sprint at each location and then will conduct a joint
retrospective
Members at each location looks individually at what
needs to be improved and how, by who.
In the joint retrospective, only focus on those things that
are of interest for the whole team.
22