Even though team collocation is strongly recommended in agile methodologies, a distributed team is often required in the real world today. What is so important about collocating anyway? Can you overcome the challenges of a distributed Scrum team and still remain agile? What are the solutions? Brian Saylor tackles these important questions and more. While Brian realizes that implementing Scrum and agile practices in a distributed team is not easy, he found that it is possible if you understand the inherent problems and work hard-every day-to overcome them. Brian walks you through the reasons collocating is important for agile teams and the extra challenges distributed agile teams face. Then he dives into practical, real-world tools, tips, and techniques that organizations should research and consider before jumping into distributed waters-and don’t forget your life jacket.
2. Brian Saylor
Scripps Networks Interactive
As the software development manager for Scripps Networks Interactive, Brian Saylor
oversees a number of geographically dispersed development teams, which enhance
and maintain the company's consumer websites and supporting platforms. The Scripps
portfolio of websites includes HGTV.com, FoodNetwork.com, TravelChannel.com, and
dozens of others. Brian's career has included work at start-up companies as well as
large corporations as a developer, consultant, team lead, and manager. He is
recognized for his ability to solve complex technical challenges in a practical manner for
all aspects of Internet-based systems.
3. 11/9/2012
Distributed Scrum:
Trials and Tips from the Trenches
Brian Saylor
Software Development Manager
Scripps Networks Interactive
Scripps Networks Interactive Today
Home
Food
Travel &
Country Music
1
4. 11/9/2012
Scripps Networks Interactive Digital
Home
Food
Travel &
Country Music
170 million people
consume our content each month
Source: Nielsen Media Research, Three-Way Interaction Table of Scripps Networks Interactive networks, websites and
magazines, average monthly reach, Persons 2+, 2Q12.
2
6. 11/9/2012
Reasons for Geographically Dispersed Teams
Cost
• Hire from cheaper/more competitive labor pool
Talent
• Easier to find special skills in a different location
Customer proximity
• Keep some staff closer to customers & stakeholders
build relationships and respond faster
Office space
• Place people where there is available real estate
Client support
• Placing employees across time zones allows for
24-hour/extended support
There is no silver bullet!
4
7. 11/9/2012
Why Collocate?
Communications/Collaboration
• Lowering barriers to collaboration
• Reducing risk of miscommunication
• Align with LEAN principles and
minimizes inefficiencies
Team Identity
• Unity
• Respect
• Trust
Distributed Team Arrangements
Binary Distribution
Two Scrum rooms
Fully Distributed
Individuals in many
locations
Hybrid Distribution
Scrum room with remote
individuals
5
9. 11/9/2012
Team Identity Tools
Communications Tools
Audio Conferencing
• Someone puts the conference “on hold”, and
we all get to listen to hold music.
• Someone on the conference will be unaware
that their passionate side discussion is being
heard by everyone.
• People “on the phone” get ignored.
7
10. 11/9/2012
Communications Tools
Audio Conferencing
• Brian’s Law of Teleconferencing
• The more important the meeting, the more likely that
some one will put their line on hold. With hold music.
Communications Tools
Video Conferencing
• Video lag
• Poor quality
• High client bandwidth / CPU requirements
• Limited participants
8
11. 11/9/2012
Communications Tools
Instant Messaging &
Chat Rooms
• Everyone uses a different client
• Mix personal and business accounts
Team Identity Tools
Team Identity
• Communications
• Face time
• Kick off / wrap up events
Kick-off wrap-up
• Swag
• Success
9
13. 11/9/2012
Instant Messaging
Group Chat Rooms
• Persistent group chat
– Use it!
– Even when collocated
– Less disruptive to context
switching then verbal.
Instant Messaging
Guidelines
1. Privacy: Group membership should be by invitation.
No casual
snoopers. Remember that the chat belongs to the team.
2.
2 Visible Membership: Membership list should be visible
visible.
3. Administration: Remove members from the group when necessary.
4. Member Status: Members currently online or offline should be
visible.
5. Offline: Should see messages that were sent while they were offline.
6. File Sharing: Should be able to post files to the group. Shared files
can be downloaded by group members even if the member sharing is
offline.
7. Hosting: No single “Owner” that must be online for group to function.
11
14. 11/9/2012
Instant Messaging
Guidelines
8. Clients: Support Windows, Mac, and Linux.
9. Mobile: Full support for mobile devices.
iOS and Android, Phones and
Tables.
T bl
10. Continuous: Continue chats while switching between devices.
Should be able to continue a conversation while switching from a desktop
to a laptop to a tablet and to a phone.
11. History: Keep track of old conversations.
12. Timestamp: It should be clear the date/time what any message is
posted.
posted
13. Security: Chat traffic carried over the Internet should be encrypted.
14. Ad Free: Client should be free of distracting ads.
Document Sharing
• Real-time document collaboration or
Pair-programming
12
15. 11/9/2012
Smartboards
• Smart whiteboards: SMART, E-Beam
• Digital agile wall boards
Distributed Development
• Project Development Problems
– 70% Communication
– 20% Technical
– 10% Other
– Note: Other may not equal stupidity
y
q
p y
– Warning: This figures are made up
13
16. 11/9/2012
Putting it together: Binary Distribution
Two Scrum Rooms
Putting it together: Binary Distribution
• One Virtual Room
– Room to room video
– IM and group chat
– SMART board
– Digital Wallboard
• Travel
– Ki k offs i single location
Kick ff in i l l
ti
– Exchange developers between locations
periodically
14
17. 11/9/2012
Putting it together: Fully Distributed
No Central Scrum Room
Putting it together: Fully Distributed
• One Virtual Room
– Multi point video
– IM and group chats
– No SMART boards
– No Digital Wallboard
• Travel
– Ki k offs and wrap ups in single location
Kick ff
d
i i l l
ti
15
18. 11/9/2012
Putting it together: Hybrid Distribution
Scrum Room with Remote Developers
Putting it together: Hybrid Distribution
• One Virtual Room
– Multi point video
– IM and group chats
– No SMART boards
– No Digital Wallboard
• Travel
– Ki k offs and wrap ups in single location
Kick ff
d
i i l l
ti
16
19. 11/9/2012
Developer Quality
Developer Quality vs Efficiency
Developer Efficiency
Summary
Don’t do it
Keep them close together
Pick out your communication tools
Pick out your collaboration tools
Arrange a team kick-off
Hand pick your developers
17
20. 11/9/2012
If you expect to save time and
money by distributing your team,
be prepared to be disappointed
THOUGHTS
There is no technological
replacement for direct human
interaction
Q&A
Contact Me
Email: bsaylor@scrippsnetworks.com
Blog: http://www.chaosincomputing.com/
Careers: http://www.scrippsnetworksinteractive.com
18