communication challenges in distributed agile projects

44
Communication Challenges in Distributed Agile Projects S. M. Sohan http://www.smsohan.com

Upload: guest36325d

Post on 17-Jan-2015

2.132 views

Category:

Technology


2 download

DESCRIPTION

This is based on a literature study on communication challenges and suggested solutions for distributed agile projects.

TRANSCRIPT

Page 1: Communication Challenges in Distributed Agile Projects

Communication Challenges in Distributed Agile Projects

S. M. Sohan http://www.smsohan.com

Page 2: Communication Challenges in Distributed Agile Projects

Summary

•  Scope •  What is distributed agile? •  What are the key communication

challenges? •  How to win the challenges? •  Q & A

3/22/10 S. M. Sohan - Communication in DASD 2

Page 3: Communication Challenges in Distributed Agile Projects

Agile

•  Individuals and Interactions •  Customer Collaboration

3/22/10 S. M. Sohan - Communication in DASD 3 *www.agilemanifesto.org

Page 4: Communication Challenges in Distributed Agile Projects

People

•  Developers •  Customers •  Managers

3/22/10 S. M. Sohan - Communication in DASD 4

Page 5: Communication Challenges in Distributed Agile Projects

Agile Development Team

•  Self-managed •  Open space •  Informal

3/22/10 S. M. Sohan - Communication in DASD 5

Page 6: Communication Challenges in Distributed Agile Projects

Agile Customer

•  Very responsive

3/22/10 S. M. Sohan - Communication in DASD 6

10:00:01 AM you wrote:

Please let me know if you have any feedback on the…

10:00:15 AM she wrote:

Here is my quick feedback: a)… b)…

Page 7: Communication Challenges in Distributed Agile Projects

Agile Business Team

•  Ensures seamless collaboration

3/22/10 S. M. Sohan - Communication in DASD 7

Page 8: Communication Challenges in Distributed Agile Projects

Distributed Project Types

•  Distributed Team •  Remote Team •  Outsourced

3/22/10 S. M. Sohan - Communication in DASD 8

Page 9: Communication Challenges in Distributed Agile Projects

Distributed Team

3/22/10 S. M. Sohan - Communication in DASD 9

Tester

Dev

Dev

Dev

Tester

Client

Tester

Dev

Tester

USA Argentina India

* Distributed Agile Development at Microsoft Patterns and Practices, Ade Miller

Page 10: Communication Challenges in Distributed Agile Projects

Remote Team

3/22/10 S. M. Sohan - Communication in DASD 10

Customer Team

* Communication in Distributed Agile Development: A Case Study

Page 11: Communication Challenges in Distributed Agile Projects

Outsourced

3/22/10 S. M. Sohan - Communication in DASD 11

Customer Outsourcing Vendor

Outsourcing Client

Contracts project and meets requirements

Provides Software Product

Delivers working code

Outsources Programming

* Modified Agile Practices for Outsourced Software Projects, Batra.

Page 12: Communication Challenges in Distributed Agile Projects

Distributed Project: Scale

3/22/10 S. M. Sohan - Communication in DASD 12

Page 13: Communication Challenges in Distributed Agile Projects

Distributed Project: Opportunities*

•  Cost-benefit •  Resource •  Local knowledge •  Round the clock development

3/22/10 S. M. Sohan - Communication in DASD 13

*A Case Study of Coordination in Distributed Agile Software Development, Steniar et al. * Distributed Agile Development at Microsoft Patterns and Practices, Ade Miller

Page 14: Communication Challenges in Distributed Agile Projects

Agile vs. Traditional Distributed* R

elat

ive

Em

ph

asis

Agile

Traditional GSD

3/22/10 S. M. Sohan - Communication in DASD 14

• A Case Study of Coordination in Distributed Agile Software Development, Steniar et al.

Page 15: Communication Challenges in Distributed Agile Projects

Challenging Factors Challenging Factor Frequency of

Studies

Synchronous Communication 9

Collaboration Difficulties 6

Communication Bandwidth 6

Tool Support 6

Large Team 5

Office Space 2

Multiple sites 1

3/22/10 S. M. Sohan - Communication in DASD 15

*Using Scrum is Global Software Development: A Systematic Literature Review, Hossain et. Al.

Page 16: Communication Challenges in Distributed Agile Projects

Common Challenge # 1

•  Language and Accents*: “We tried to use telephone-conference, but

it didn’t work well, because of language problems…. It takes time to organize telephone-conference”

3/22/10 S. M. Sohan - Communication in DASD 16

*A Case Study of Coordination in Distributed Agile Software Development, Steniar et al.

Page 17: Communication Challenges in Distributed Agile Projects

Common Challenge # 1

•  Solution: – Augment with written communication –  IM – Emails – Wiki etc. – Conference Phone – Projector

3/22/10 S. M. Sohan - Communication in DASD 17

* A Case Study of Coordination in Distributed Agile Software Development, Steniar et al. * Knowledge Sharing in Agile Software Teams, Chau et al. (MASE, Wiki Based) * Knowledge Management Support for Distributed Agile Software Process, Holz et al. (PRIME) * Distributed Agile Development at Microsoft Patterns and Practices, Ade Miller * XP Expanded: Distributed Extreme Programming, Braithwaite et al.

Page 18: Communication Challenges in Distributed Agile Projects

Common Challenge # 2 •  Time Zone

3/22/10 S. M. Sohan - Communication in DASD 18

Page 19: Communication Challenges in Distributed Agile Projects

Common Challenge # 2 •  Solution: – Use team representatives per office – Team Buddy

3/22/10 S. M. Sohan - Communication in DASD 19

*A Case Study of Coordination in Distributed Agile Software Development, Steniar et al. * Distributed Agile Development at Microsoft Patterns and Practices, Ade Miller

Page 20: Communication Challenges in Distributed Agile Projects

Common Challenge # 2

•  Solution: – Modularize?

3/22/10 S. M. Sohan - Communication in DASD 20

*A Case Study of Coordination in Distributed Agile Software Development, Steniar et al. * Distributed Agile Development at Microsoft Patterns and Practices, Ade Miller

finishlinestudios.com

Page 21: Communication Challenges in Distributed Agile Projects

Common Challenge # 2

•  Solution: – Use asynchronous communication: Emails,

Wiki

3/22/10 S. M. Sohan - Communication in DASD 21

ruf.rice.edu dev-farm.com

Page 22: Communication Challenges in Distributed Agile Projects

Common Challenge # 2

•  Solution: – Shift core hours

3/22/10 S. M. Sohan - Communication in DASD 22

* Distributed Agile Development at Microsoft Patterns and Practices, Ade Miller * Fully Distributed Scrum, Jeff Sutherland et al.

Page 23: Communication Challenges in Distributed Agile Projects

Common Challenges # 3

•  Cultural Issues •  Solution: – One Team, One Codebase; One Team, One

Build. – Traveling. – Team events. – “Let people play”

3/22/10 S. M. Sohan - Communication in DASD 23

* XP Expanded: Distributed Extreme Programming, Braithwaite et al. * Fully Distributed Scrum, Jeff Sutherland et al.

Page 24: Communication Challenges in Distributed Agile Projects

Common Challenges # 4

•  National Holidays:

•  Solution: – Early communication – Plan accordingly

3/22/10 S. M. Sohan - Communication in DASD 24

Page 25: Communication Challenges in Distributed Agile Projects

Common Challenges # 5

•  Trust:

•  Solution: – Traveling – Training – Blogs, Social Networks – Video conferencing for shared demo

3/22/10 S. M. Sohan - Communication in DASD 25

* Distributed Agile Development at Microsoft Patterns and Practices, Ade Miller * Fully Distributed Scrum, Jeff Sutherland et al.

www.pragia.cz

Page 26: Communication Challenges in Distributed Agile Projects

Common Challenges # 6

•  Mindset: “Thus we conclude that if the customer is

not able or willing to participate actively in the communication when needed, any communication mechanism becomes redundant.”

3/22/10 S. M. Sohan - Communication in DASD 26

* Communication in Distributed Agile Development: A Case Study, Korkala et al.

Page 27: Communication Challenges in Distributed Agile Projects

Distributed Stand-up Meeting

•  http://www.youtube.com/watch?v=1BZ2RkrINSE&feature=channel

•  http://www.youtube.com/watch?v=q1RqhRcPJZ0&feature=related

3/22/10 S. M. Sohan - Communication in DASD 27

Page 28: Communication Challenges in Distributed Agile Projects

Distributed Team Challenge # 1

•  Planning meetings

•  Solution: – Use online tools – Same time – Reduce dependencies

3/22/10 S. M. Sohan - Communication in DASD 28

* Fully Distributed Scrum, Jeff Sutherland et al.

Page 29: Communication Challenges in Distributed Agile Projects

Distributed Team Challenge # 1

•  Online tools

3/22/10 S. M. Sohan - Communication in DASD 29

Page 30: Communication Challenges in Distributed Agile Projects

Distributed Team Challenge # 2

•  Daily status updates:

•  Solution: – One scrum master per team – Scrum of scrums – Weekly meetings

3/22/10 S. M. Sohan - Communication in DASD 30

* Fully Distributed Scrum, Jeff Sutherland et al. * A Case Study of Coordination in Distributed Agile Software Development, Hole et at.

Page 31: Communication Challenges in Distributed Agile Projects

Distributed Team Challenge # 3

•  Knowledge sharing •  Solution: – Rotate developers on modules, projects. – Use groupware: Emails, Wiki, Blogs etc. – Use online project management tools.

3/22/10 S. M. Sohan - Communication in DASD 31

* Essential Communication Practices for Extreme Programming in a Global Software Development team, Layman et al. * Communication in Distributed Agile Development: A Case Study, Korkala et al.

Page 32: Communication Challenges in Distributed Agile Projects

Distributed Team Challenge # 4

•  Self-managing

•  Solution: – Use pull-method instead of push. – Empower each office with autonomous

decisions.

3/22/10 S. M. Sohan - Communication in DASD 32

* XP Expanded: Distributed Extreme Programming, Braithwaite et al. * Lean Software Development: An Agile Toolkit, Poppendieck and Poppendieck.

Page 33: Communication Challenges in Distributed Agile Projects

Distributed Team Challenge # 5

•  Modeling and planning

•  Solution: – Electronic tools

3/22/10 S. M. Sohan - Communication in DASD 33

*The Agile Scaling Model (ASM), S. Amber et al.

Page 34: Communication Challenges in Distributed Agile Projects

Distributed Team Challenge # 6

•  Pair-programming

•  Solution: – Frequent code review meetings

3/22/10 S. M. Sohan - Communication in DASD 34

* Distributed Agile Development at Microsoft Patterns and Practices, Ade Miller

Page 35: Communication Challenges in Distributed Agile Projects

Remote Customer Challenge # 1

•  Reviews and feedbacks

•  Solution: – Video conferencing – Extensively use IM, Email – Use online tools. – Desktop sharing tools.

3/22/10 S. M. Sohan - Communication in DASD 35

* Fully Distributed Scrum, Jeff Sutherland et. al.

Page 36: Communication Challenges in Distributed Agile Projects

Remote Customer Challenge # 2

•  Business domain knowledge transfer •  Solution: – Training – Audio/video conferencing – Groupware.

3/22/10 S. M. Sohan - Communication in DASD 36

Page 37: Communication Challenges in Distributed Agile Projects

Remote Customer Challenge # 3

•  Requirements Transfer

•  Solution: – Executable acceptance tests

3/22/10 S. M. Sohan - Communication in DASD 37

* XP Expanded: Distributed Extreme Programming, Braithwaite et al.

Feature: Addition In order to avoid silly mistakes As a math idiot I want to be told the sum of two numbers Scenario: Add two numbers Given I have entered 50 into the calculator And I have entered 70 into the calculator When I press add Then the result should be 120 on the screen

Page 38: Communication Challenges in Distributed Agile Projects

Outsourced Project Challenge # 1

•  Relaying knowledge

•  Solution: –  Include off-shore team in client meetings. – Use audio/video recording.

3/22/10 S. M. Sohan - Communication in DASD 38

* Modified Agile Practices for Outsourced Software Projects, Batra.

Page 39: Communication Challenges in Distributed Agile Projects

Outsourced Project Challenge # 2

•  Process mismatch

•  Solution: – Ensure key contact people. – Frequently communicate with the key

contact people.

3/22/10 S. M. Sohan - Communication in DASD 39

* Modified Agile Practices for Outsourced Software Projects, Batra.

Page 40: Communication Challenges in Distributed Agile Projects

Unsolved Challenge

•  Distributed Pair Programming •  Whiteboard discussion

3/22/10 S. M. Sohan - Communication in DASD 40

* Distributed Agile Development at Microsoft Patterns and Practices, Ade Miller

Page 41: Communication Challenges in Distributed Agile Projects

Conflicting Literature

•  Telephone/Video conferencing •  Modules per team •  Multiple scrum-masters

3/22/10 S. M. Sohan - Communication in DASD 41

Page 42: Communication Challenges in Distributed Agile Projects

Communication Tools

3/22/10 S. M. Sohan - Communication in DASD 42

Page 43: Communication Challenges in Distributed Agile Projects

Wish List

•  Integrated communication tool •  Traveling and rotating members •  Seamless real-time communication tools

3/22/10 S. M. Sohan - Communication in DASD 43

Page 44: Communication Challenges in Distributed Agile Projects

Questions