AT8 Concurrent Session 11/8/2012 2:15 PM
"Distributed Scrum: Dangerous Waters-Be Prepared!"
Presented by:
Brian Saylor Scripps Networks Interactive
Brought to you by:
340 Corporate Way, Suite 300, Orange Park, FL 32073 888‐268‐8770 ∙ 904‐278‐0524 ∙ [email protected] ∙ www.sqe.com
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.
11/9/2012
1
Distributed Scrum: Trials and Tips from the TrenchesBrian SaylorSoftware Development ManagerScripps Networks InteractiveScripps Networks Interactive
Scripps Networks Interactive Today
Food Travel &Country MusicHome Country Music
11/9/2012
2
Scripps Networks Interactive Digital
Travel &Country MusicHome Food Country Music
170 million peopleconsume 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.
11/9/2012
3
Our Locations
Primary Team Locations
Knoxville, TN
Chevy Chase, MD
New York
11/9/2012
4
Reasons for Geographically Dispersed Teams
Cost• Hire from cheaper/more competitive labor poolTalentTalent• Easier to find special skills in a different locationCustomer proximity • Keep some staff closer to customers & stakeholders
build relationships and respond fasterOffice space • Place people where there is available real estateClient support• Placing employees across time zones allows for
24-hour/extended support
There is no silver bullet!
11/9/2012
5
Why Collocate?
Communications/Collaboration• Lowering barriers to collaboration
• Reducing risk of miscommunication
• Align with LEAN principles and minimizes inefficiencies
Team Identity • Unity
• Respect
• Trust
Binary DistributionTwo Scrum rooms
Distributed Team Arrangements
Fully DistributedIndividuals in many locations
Hybrid DistributionScrum room with remote individuals
11/9/2012
6
Communications Tools
Audio Conferencing
Video Conferencing
Instant Messaging & Chat Rooms
Collaboration Tools
Screen Sharing
Document Sharing
SmartboardsDigital Wallboards
11/9/2012
7
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.
11/9/2012
8
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 requirementsHigh client bandwidth / CPU requirements
• Limited participants
11/9/2012
9
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 eventsKick off / wrap up events
• Swag
• Success
11/9/2012
10
Instant MessagingClients
Instant MessagingClients
• Skype / Skype for business
• AIM
• Trillian Astra
• Thompson Reuters Messenger• Windows Live/MSN
Messenger
• Microsoft Lync
• Yahoo Messenger
• Google Talk
• Atlassian HipChat
Messenger
• IBM Sametime
• Cisco Jabber
• Facebook Chat
• Novell GroupWise Messenger
• Mxit• Atlassian HipChat
• Yammer
• Convo
• Campfire
• Mxit
• ICQ Messenger
• KiK
11/9/2012
11
Instant MessagingGroup Chat Rooms
• Persistent group chat– Use it!– Even when collocated– Less disruptive to context
switching then verbal.
Instant MessagingGuidelines
1. Privacy: Group membership should be by invitation. No casual snoopers. Remember that the chat belongs to the team.
2 Visible Membership: Membership list should be visible2. Visible Membership: Membership list should be 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 files6. 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/9/2012
12
Instant MessagingGuidelines
8. Clients: Support Windows, Mac, and Linux.
9. Mobile: Full support for mobile devices. iOS and Android, Phones and T blTables.
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 postedposted.
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
11/9/2012
13
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 stupidityy q p y
– Warning: This figures are made up
11/9/2012
14
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
• TravelKi k ff i i l l ti– Kick offs in single location
– Exchange developers between locations periodically
11/9/2012
15
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
• TravelKi k ff d i i l l ti– Kick offs and wrap ups in single location
11/9/2012
16
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
• TravelKi k ff d i i l l ti– Kick offs and wrap ups in single location
11/9/2012
17
Developer Quality vs Efficiency
Dev
elop
er Q
ualit
y
Developer Efficiency
Summary
Don’t do it
Pick out your communication tools
Keep them close together
Pick out your collaboration tools
Hand pick your developers
Arrange a team kick-off
11/9/2012
18
If you expect to save time and
There is no technological replacement for direct human interaction
money by distributing your team, be prepared to be disappointed
THOUGHTS
Q&AQ&AContact MeEmail: [email protected]: http://www.chaosincomputing.com/
Careers: http://www.scrippsnetworksinteractive.com
11/9/2012
19