Top Banner
DISTRIBUTED AGILE Mark Rajpal
31

Mark Rajpal. Poll Agenda Collocation What is Distributed Agile? Is it really Agile? Why? What does it require? Challenges Overcoming challenges.

Dec 27, 2015

Download

Documents

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Mark Rajpal. Poll Agenda  Collocation  What is Distributed Agile?  Is it really Agile?  Why?  What does it require?  Challenges  Overcoming challenges.

DISTRIBUTED AGILE

Mark Rajpal

Page 2: Mark Rajpal. Poll Agenda  Collocation  What is Distributed Agile?  Is it really Agile?  Why?  What does it require?  Challenges  Overcoming challenges.

Poll

Page 3: Mark Rajpal. Poll Agenda  Collocation  What is Distributed Agile?  Is it really Agile?  Why?  What does it require?  Challenges  Overcoming challenges.

Agenda Collocation What is Distributed Agile? Is it really Agile? Why? What does it require? Challenges Overcoming challenges Distributed Scrum Avoidance Misconceptions Success Stories Final Thoughts Q & A

Page 4: Mark Rajpal. Poll Agenda  Collocation  What is Distributed Agile?  Is it really Agile?  Why?  What does it require?  Challenges  Overcoming challenges.

Collocation

Alleviates communication issues when it comes to meetings, pair programming, etc.

Good fit for methodologies like Crystal Clear

Ideal, but not always possible

Page 5: Mark Rajpal. Poll Agenda  Collocation  What is Distributed Agile?  Is it really Agile?  Why?  What does it require?  Challenges  Overcoming challenges.

What is Distributed Agile?

Teams or team members are not collocated

Do not necessarily have to be geographically dispersed

Page 6: Mark Rajpal. Poll Agenda  Collocation  What is Distributed Agile?  Is it really Agile?  Why?  What does it require?  Challenges  Overcoming challenges.

What is Distributed Agile?

Page 7: Mark Rajpal. Poll Agenda  Collocation  What is Distributed Agile?  Is it really Agile?  Why?  What does it require?  Challenges  Overcoming challenges.

Is it really Agile? Our highest priority is to satisfy the customer

through early and continuous delivery of valuable software.

Welcome changing requirements, even late in development. Agile processes harness change for the customer's competitive advantage.

Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale.

Business people and developers must work together daily throughout the project.

Page 8: Mark Rajpal. Poll Agenda  Collocation  What is Distributed Agile?  Is it really Agile?  Why?  What does it require?  Challenges  Overcoming challenges.

Is it really Agile? Build projects around motivated individuals. Give

them the environment and support they need, and trust them to get the job done.

The most efficient and effective method of conveying information to and within a development team is face-to-face conversation.

Working software is the primary measure of progress.

Agile processes promote sustainable development. The sponsors, developers, and users should be able to maintain a constant pace indefinitely.

Page 9: Mark Rajpal. Poll Agenda  Collocation  What is Distributed Agile?  Is it really Agile?  Why?  What does it require?  Challenges  Overcoming challenges.

Is it really Agile? Continuous attention to technical excellence and

good design enhances agility.

Simplicity--the art of maximizing the amount of work not done--is essential.

The best architectures, requirements, and designs emerge from self-organizing teams.

At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly.

Page 10: Mark Rajpal. Poll Agenda  Collocation  What is Distributed Agile?  Is it really Agile?  Why?  What does it require?  Challenges  Overcoming challenges.

Why?

Complete software projects faster with improved quality

Deliver success Save money Reduce risk Tap into a talent pool that is not

available locally

Page 11: Mark Rajpal. Poll Agenda  Collocation  What is Distributed Agile?  Is it really Agile?  Why?  What does it require?  Challenges  Overcoming challenges.

Why?

The problem is getting worse instead of better. We have less success and more failure.

34%

51%

15%

2003

SuccessOver BudgetFailure

32%

44%

24%

2009

SuccessOver BudgetFailure

STANDISH CHAOS REPORT

Page 12: Mark Rajpal. Poll Agenda  Collocation  What is Distributed Agile?  Is it really Agile?  Why?  What does it require?  Challenges  Overcoming challenges.

What does it require?

Bring everyone together at the beginning

ExperienceIf you haven’t tried Distributed Agile, try

Agile first. Training & Certification

A trained individual should be responsible for coaching the rest of the team.

Business analysts may need to job shadow subject matter experts.

Page 13: Mark Rajpal. Poll Agenda  Collocation  What is Distributed Agile?  Is it really Agile?  Why?  What does it require?  Challenges  Overcoming challenges.

What does it require?

Your existing tools can still be utilized but you may require additional ones.e.g. IM, Video Conferencing, Webcams, etc.CI is a must

Consider 3rd party services to host infrastructure to alleviate latency

May require a small team that is solely responsible for integration (depending on the size of the project).

Page 14: Mark Rajpal. Poll Agenda  Collocation  What is Distributed Agile?  Is it really Agile?  Why?  What does it require?  Challenges  Overcoming challenges.

What does it require?

IterationsStart with month long sprints and adjust

accordingly Strong Scrum of Scrums

Possibly a weekly meeting which must be attended in person

Travel preparationsVisas, passportsImmunizations

Page 15: Mark Rajpal. Poll Agenda  Collocation  What is Distributed Agile?  Is it really Agile?  Why?  What does it require?  Challenges  Overcoming challenges.

Challenges

CommunicationMisinterpretationDelayed responsesDifferent languages

CoordinationDuplication of effort, re-workOpposite time zones

Project and process managementDifficult to determine progressDifficulty synchronizing work between sites

Page 16: Mark Rajpal. Poll Agenda  Collocation  What is Distributed Agile?  Is it really Agile?  Why?  What does it require?  Challenges  Overcoming challenges.

Challenges

TechnicalIncompatible data formats, standards, etc.

Domain knowledge Product vision Blame Game

Page 17: Mark Rajpal. Poll Agenda  Collocation  What is Distributed Agile?  Is it really Agile?  Why?  What does it require?  Challenges  Overcoming challenges.

Overcoming challenges

CommunicationUse simple language and slow downAgree on Agile terms and practicesTake advantage of collaboration toolsDon’t rely on email aloneDedicated rooms and equipment so team is

able to meet on an ad-hoc basis Coordination

Overlap working hoursIncorporate a team calendarProject shutdown (everyone takes vacation)

Page 18: Mark Rajpal. Poll Agenda  Collocation  What is Distributed Agile?  Is it really Agile?  Why?  What does it require?  Challenges  Overcoming challenges.

Overcoming challenges

TravelDetermine when it really is necessary

Page 19: Mark Rajpal. Poll Agenda  Collocation  What is Distributed Agile?  Is it really Agile?  Why?  What does it require?  Challenges  Overcoming challenges.

Overcoming challenges

ComraderyCelebrate holidays, customs

Page 20: Mark Rajpal. Poll Agenda  Collocation  What is Distributed Agile?  Is it really Agile?  Why?  What does it require?  Challenges  Overcoming challenges.

Distributed Scrum

3 ModelsIsolated ScrumsDistributed Scrum of ScrumsTotally Integrated Scrums

Page 21: Mark Rajpal. Poll Agenda  Collocation  What is Distributed Agile?  Is it really Agile?  Why?  What does it require?  Challenges  Overcoming challenges.

Distributed Scrum

Isolated ScrumsTeams are isolated across geographies. In

most cases off-shore teams are not cross-functional and may not be using the Scrum process.

Used by most outsourced development efforts.

Outsourced teams typically abandon Scrum and fall back to Waterfall.

Page 22: Mark Rajpal. Poll Agenda  Collocation  What is Distributed Agile?  Is it really Agile?  Why?  What does it require?  Challenges  Overcoming challenges.

Distributed Scrum

Distributed Scrum of ScrumsScrum teams are isolated across

geographies and integrated by a Scrum of Scrums that meets regularly across geographies.

Promotes sub-team unity as opposed to team unity.

Best practice recommended by the Scrum Alliance.

Page 23: Mark Rajpal. Poll Agenda  Collocation  What is Distributed Agile?  Is it really Agile?  Why?  What does it require?  Challenges  Overcoming challenges.

Distributed Scrum

Totally Integrated ScrumsScrum teams are cross-functional with

members distributed across geographies.The project is integrated into a single whole.Single code base.Retain core knowledge.Recommended for experienced Agile teams

at multiple locations.

Page 24: Mark Rajpal. Poll Agenda  Collocation  What is Distributed Agile?  Is it really Agile?  Why?  What does it require?  Challenges  Overcoming challenges.

Avoidance

Fixed Price Model Non-Software Development projects

e.g. upgrades/migrations Minimal User Involvement Lengthy Internal Processes Perfection Large Dispersed Team Older Technologies Non-Agile Teams

Page 25: Mark Rajpal. Poll Agenda  Collocation  What is Distributed Agile?  Is it really Agile?  Why?  What does it require?  Challenges  Overcoming challenges.

Misconceptions

By performing daily scrums we’re being Agile

Being Agile means you accept all changes

Agile does not require documentation Agile/Scrum/Extreme Programming (XP)

are synonymous Distributed Agile is always the best

approach

Page 26: Mark Rajpal. Poll Agenda  Collocation  What is Distributed Agile?  Is it really Agile?  Why?  What does it require?  Challenges  Overcoming challenges.

Success Stories

Eclipse “Callisto”Simultaneous release of 10 Eclipse toolsets262 committers12 countries72,000 resolved bugzilla entries6 million LOC

Page 27: Mark Rajpal. Poll Agenda  Collocation  What is Distributed Agile?  Is it really Agile?  Why?  What does it require?  Challenges  Overcoming challenges.

Success Stories

BMC software7 teams, 135 people in 4 cities (Texas,

Calif., Pune India)4X faster time to market4.5 months for 600 stories & 596K LOCteam was 2X larger than average study

teamsame defect rate for level of effortindividual team productivity up 20-50%

Page 28: Mark Rajpal. Poll Agenda  Collocation  What is Distributed Agile?  Is it really Agile?  Why?  What does it require?  Challenges  Overcoming challenges.

Success Stories Jeff Sutherland – Xebia

Teams of peers split between Netherlands and IndiaBrought entire Indian team to Netherlands for 2

iterationsRotating travel schedule between sitesPair-programming across continentsHeavy use of video conferencingFull XP practices, high quality (95% defects found in

iteration)15 function pts/dev/month vs. Cohn‟s reported 6-person

colocatedteam results of 16 function pts/dev/monthConclusion: fully distributed Scrum more valuable than

localized

Page 29: Mark Rajpal. Poll Agenda  Collocation  What is Distributed Agile?  Is it really Agile?  Why?  What does it require?  Challenges  Overcoming challenges.

Final Thoughts Maximize face time

Travel when necessary Distributed Agile is not a good fit for all

organizations Re-evaluate and take corrective action

at the end of each sprint DASD is not simply an extension of

Agile, but rather a complex undertaking that involves Agile

Page 30: Mark Rajpal. Poll Agenda  Collocation  What is Distributed Agile?  Is it really Agile?  Why?  What does it require?  Challenges  Overcoming challenges.

Final Thoughts Distributed Agile is gaining worldwide

acceptance.Many success storiesIt was addressed in a few sessions at Agile

Alliance 2011.○ Distributed Scrum: Why some teams make it

work well and others don't○ Distributed 3d Conference Ready Rooms

Page 31: Mark Rajpal. Poll Agenda  Collocation  What is Distributed Agile?  Is it really Agile?  Why?  What does it require?  Challenges  Overcoming challenges.

Q & A