agile | distributed teams and dependencies

Post on 12-Jul-2015

177 Views

Category:

Technology

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

©2008 Improving Enterprises, Inc.

Agile with Distributed Teams

and Dependencies

By: Nirmaljeet Malhotra Agile Coach

©2008 Improving Enterprises, Inc.

Intro

Distributed family

15 years in IT

7+ years in Agile

Twitter: #mnirmaljeet

www.nirmaljeet.com

Agile coach and

trainer

©2008 Improving Enterprises, Inc.

Wanna be Agile?

Distributed

Teams

Dependencies

©2008 Improving Enterprises, Inc.

Scrum by the book…

©2008 Improving Enterprises, Inc.

Why distribute?

Agile hyper productivity and quality

combined with offshore benefits:

Availability of talent

Scale up and down

Cost reduction

Round the clock support

©2008 Improving Enterprises, Inc.

What are distributed teams?

Not at the same place

Different

Floor

Office

City

Country

Continent

Time-zone

Offshore, near shore, not sure..

Courtesy: Keith Richards

©2008 Improving Enterprises, Inc.

Distributed ways

Courtesy: Jeff Sutherland

©2008 Improving Enterprises, Inc.

Survey 1

In one word, share your number 1 problem

with distributed teams across

countries/continents

©2008 Improving Enterprises, Inc.

Survey 2

In one word, share your number 1 problem

with distributed teams in the same

building/floor

©2008 Improving Enterprises, Inc.

Question?

So where is the problem?

©2008 Improving Enterprises, Inc.

Agile Manifesto

http://agilemanifesto.org/

Individuals

Interactions

Processes

Tools

Working

Software

Comprehensive

Documentation

Customer

Collaboration

Contract

Negotiation

Responding to

Change

Following a

Plan

Distributed Teams

©2008 Improving Enterprises, Inc.

Distributed teams | Key issues

Communication tax

Accessibility

Information lost in translation

Language and cultural differences

Motivation drop

Cost

Compromise on personal time

©2008 Improving Enterprises, Inc.

“Project costs increase in proportion to the

time it takes for people to understand each

other” - Alistair Cockburn

©2008 Improving Enterprises, Inc.

Key success attributes

Focused team work Collaboration

Trust Cultural Sensitivity

©2008 Improving Enterprises, Inc.

Communication Face to face

Use WebEx, Skype etc… whatever it takes

Phone and IM is better than documents and mails

Go visual

Travel - create a bond

Collaboration Digital scrum boards / dash boards

Wiki

Avoid/reduce emails

Share the pain

Communication and Collaboration

©2008 Improving Enterprises, Inc.

Development and Tracking Tools

Where is the code and how do we

manage it?

How much TDD and CI?

What other tools are we using to:

Manage requirements

Manage project

©2008 Improving Enterprises, Inc.

What’s important..

What is the vision?

Don’t allow tools to drive the process

Leverage creativity

©2008 Improving Enterprises, Inc.

Agile

Feature teams

Story mapping

Release planning

Backlog grooming

Scrum of Scrums

Same scrum rules apply Courtesy: agilenorth.org

©2008 Improving Enterprises, Inc.

Distributed setup

Role distribution

Balance of power

Distribution in vertical

slices

Affinity based feature

ownership

One team

©2008 Improving Enterprises, Inc.

Before you scale

Run scrum successfully locally

Elevate quality through XP practices

Stop thrashing, focus people

Scale

Introduction to agile and scaling at the same time can be a challenge

©2008 Improving Enterprises, Inc.

Inspect and adapt

Hone the process, a tiny bit each time

Find the root cause

Retrospect

Keep it simple

©2008 Improving Enterprises, Inc.

Best practices for distributed Agile

People Process Tools

Open seating Daily stand up Wiki

Team building Scrum of Scrums Star phones

Vision Retrospectives Smart boards

Cross pollination Remote pairing PLM tool

Tracking and metrics Build pipeline

Example:

©2008 Improving Enterprises, Inc.

Manage distance

©2008 Improving Enterprises, Inc.

Dependencies

©2008 Improving Enterprises, Inc.

Where do dependencies come from?

End user driven

Requirements decomposition

driven

Component driven

Technology driven

©2008 Improving Enterprises, Inc.

Dependency | Key issues

Conflicting priorities Team A dependent on Team B

Team A makes a change causing work for Team B (Architectural refactoring)

Dynamic scope Changing priorities each sprint

Cycle time

Higher cost

Communication and process overhead

Perception

Integration

Tough to predict / anticipate

Courtesy: gfi.com

©2008 Improving Enterprises, Inc.

Option 1 | Feature Teams

Feature teams

Allow teams to deliver end to end feature

Searc

h

Bro

wse

Checkout

Pay

Team A

Vision

Autonomy

©2008 Improving Enterprises, Inc.

Options 2 – Open Source Model

Internal open source model

Team 1 Team 2

Reduced wait time

Collective ownership

Build knowledge

Understand challenges

Evolve Design guidelines

Code standards

People

Build trust

©2008 Improving Enterprises, Inc.

Option 3 – Dependency planning

Identify and plan for dependencies

User story mapping

Release planning Usage

Criticality

Re

lea

se

1.0

R

ele

as

e 1

.1

©2008 Improving Enterprises, Inc.

Option 3 – Dependency planning 2

Involve all POs

Cross team collaboration

Scrum of Scrums

Mock

Definition of Done

Inspect and adapt

©2008 Improving Enterprises, Inc.

Communities

©2008 Improving Enterprises, Inc.

Finally

Having right structure and tools is important

But…

How you practice Agile values is critical

©2008 Improving Enterprises, Inc.

©2008 Improving Enterprises, Inc.

Improving builds custom software for other companies and

provides advanced technology training

Dallas, TX | Houston, TX | Columbus, OH | Minneapolis, MN | Calgary, AB

www.improving.com

Featured Agile Training

*Professional Scrum Master Certification

*Professional Scrum Developer Certification (.NET & Java)

*Agile Scrum Immersion

About Improving

top related