applying agile to multi-team projects - april 2010

28
www.thoughtworks-studios.com Copyright 2010 ThoughtWorks, Inc. Applying Agile to Multi-Team Projects Adam Monago Vice President, Client Services ThoughtWorks Studios February 24 th , 2010

Upload: adam-monago

Post on 24-Jun-2015

147 views

Category:

Technology


0 download

DESCRIPTION

Delivered as a ThoughtWorks webinar in April 2010.

TRANSCRIPT

Page 1: Applying Agile to Multi-Team Projects - April 2010

www.thoughtworks-studios.com Copyright 2010 ThoughtWorks, Inc.

Applying Agile to Multi-Team Projects

Adam Monago

Vice President, Client Services

ThoughtWorks Studios

February 24th, 2010

Page 2: Applying Agile to Multi-Team Projects - April 2010

www.thoughtworks-studios.com Copyright 2010 ThoughtWorks, Inc.

Why are you here today?

• To understand what aspects of Agile scale well and which do not

• To navigate the maze of “Enterprise Agile advice”

• To find a pathway toward understanding how to scale Agile in a smart way

• …

Page 3: Applying Agile to Multi-Team Projects - April 2010

www.thoughtworks-studios.com Copyright 2010 ThoughtWorks, Inc.

What we will cover

• People – How and why we organize into multiple teams

• Process– How we decide what to work on

– How we plan our work

– How we communicate progress with each other and our stakeholders

• Technology– What methods best serve multi-team projects

– What visualizations are most useful

Page 4: Applying Agile to Multi-Team Projects - April 2010

www.thoughtworks-studios.com Copyright 2010 ThoughtWorks, Inc.

PEOPLEWhy and how to organize into multiple teams

Page 5: Applying Agile to Multi-Team Projects - April 2010

www.thoughtworks-studios.com Copyright 2010 ThoughtWorks, Inc.

Why do we do work that requires multiple project teams?

Mirrors the organizational structure

To align with business goals

Really BIG projects

Page 6: Applying Agile to Multi-Team Projects - April 2010

www.thoughtworks-studios.com Copyright 2010 ThoughtWorks, Inc.

Remember cross-functional teams?

• Members are “Generalizing Specialists”

• Teams are long-lived

• Less Waiting

• Fewer Handoffs Tighter feedback loops

• Better Quality

Empowerment

Accountability

Identity

Consensus

Balance

* Larman / Vodde, Scaling Lean & Agile Development, Chapter 7 “Introduction to Feature Teams”

Page 7: Applying Agile to Multi-Team Projects - April 2010

www.thoughtworks-studios.com Copyright 2010 ThoughtWorks, Inc.

Problems with Specialist and Component Teams

• Tend to enforce waterfall mentality

• Teams are typically forced to work on low-value work

Page 8: Applying Agile to Multi-Team Projects - April 2010

www.thoughtworks-studios.com Copyright 2010 ThoughtWorks, Inc.

How many teams is too many?

Page 9: Applying Agile to Multi-Team Projects - April 2010

www.thoughtworks-studios.com Copyright 2010 ThoughtWorks, Inc.

Rules of Thumb for Splitting Work Across Teams

• Organize teams by feature group

• Provide every team with dedicated customer representation

• Have dedicated customer representation for the program as a whole

Page 10: Applying Agile to Multi-Team Projects - April 2010

www.thoughtworks-studios.com Copyright 2010 ThoughtWorks, Inc.

PROCESSPlanning, Tracking and Communicating

Page 11: Applying Agile to Multi-Team Projects - April 2010

www.thoughtworks-studios.com Copyright 2010 ThoughtWorks, Inc.

Elements of managing a program are the same

• What to work on• Who will work on what• When it will be done

Page 12: Applying Agile to Multi-Team Projects - April 2010

www.thoughtworks-studios.com Copyright 2010 ThoughtWorks, Inc.

What to work on: Role of the Product Champion

• Product Champions need to own prioritization

• Always working in “3 iterations at once”:– Supporting what is currently being developed– Defining what is to be built next– Analyzing what still needs to be built

XP

Customer

Scrum

Product Owner

Page 13: Applying Agile to Multi-Team Projects - April 2010

www.thoughtworks-studios.com Copyright 2010 ThoughtWorks, Inc.

Planning Work

The Planning Game– Release Planning Across Streams

• Use rolling-look-ahead planning to coordinate

– Planning Within the Streams

• Allow teams to have flexibility

Planning Framework– Driven by the size of your project and the length of time it will take to be

delivered to customers in its entirety

Page 14: Applying Agile to Multi-Team Projects - April 2010

www.thoughtworks-studios.com Copyright 2010 ThoughtWorks, Inc.

Planning Framework

Characteristic Release Wave Iteration

Timeframe Long-Range (6+ Months)

Medium Range (3 Months)

Iteration (Short Range)

Level of Detail Capability Story Story/Task

Commitment Type Project Feasibility Capability Commitment

Story Commitment

Deployment Final Release to Customer

Possible Interim Release to Customer

Customer Review Process

Table above taken from:Jim Highsmith, Agile Project Management, Chapter 8, “Multi-Level Planning”, Table 8-1

Page 15: Applying Agile to Multi-Team Projects - April 2010

www.thoughtworks-studios.com Copyright 2010 ThoughtWorks, Inc.

Managing Dependencies

• It’s a myth that writing good stories can eliminate the need to track dependencies

• The more complex the effort, the more lead time and coordination are necessary to deal with feature dependencies

• Remember ?

Page 16: Applying Agile to Multi-Team Projects - April 2010

www.thoughtworks-studios.com Copyright 2010 ThoughtWorks, Inc.

Useful Techniques for Managing Dependencies

• Rolling Look-Ahead Planning and Schedule Buffers – Mike Cohn “Agile Estimating and Planning” and “Succeeding With Agile”

• Inter-Team Commitment Stories– Jim Highsmith “Agile Project Management”

• Focused Teams– Larman/Vodde “Product Coordination Team”

– Linda Rising and Mike Cohn “Integration Team”

Page 17: Applying Agile to Multi-Team Projects - April 2010

www.thoughtworks-studios.com Copyright 2010 ThoughtWorks, Inc.

Borrow from Distributed Best Practices

• Distributed projects have their own set of concerns regarding meeting protocols, communication tools and redundant roles that are a natural fit for dependency management across teams.

• Mark Rickmeier “Can You Hear Me Now? Good…” Agile 2009

• View the recorded webinar here:

– http://offshore.thoughtworks.com/can-you-hear-me-now

Page 18: Applying Agile to Multi-Team Projects - April 2010

www.thoughtworks-studios.com Copyright 2010 ThoughtWorks, Inc.

Communication and coordination

Page 19: Applying Agile to Multi-Team Projects - April 2010

www.thoughtworks-studios.com Copyright 2010 ThoughtWorks, Inc.

The Scrum of Scrums is NOT Sufficient

Page 20: Applying Agile to Multi-Team Projects - April 2010

www.thoughtworks-studios.com Copyright 2010 ThoughtWorks, Inc.

Testing

Tech Huddle

Project Manager

Iteration Managers

Teams

Staffing

Progress

Risks

Forecasts

Architect

Product Mgr

Scope

Priorities

FeaturesVision

Escalation

Risks

Schedule

Staffing

Timeline

TechnicalDebt

Estimates

Risks

Test Coverage

BA Lead

BA Huddle

Performance

Regression

SWAT

AutomationQA Lead

ProjectSponsor

Priorities

Signoff

Narratives

Usability

Page 21: Applying Agile to Multi-Team Projects - April 2010

www.thoughtworks-studios.com Copyright 2010 ThoughtWorks, Inc.

Cross Team Communication

Team 1 Iteration Manager

Team 2 Iteration Manager

Team 3 Iteration Manager

IM Huddle

Tech Lead Tech lead Tech Lead Tech Huddle

Business Analyst Business Analyst Business Analyst BA Huddle

Tester Tester Tester QA Huddle

Developer Developer DeveloperLearning Lunches

and Patterns

Page 22: Applying Agile to Multi-Team Projects - April 2010

www.thoughtworks-studios.com Copyright 2010 ThoughtWorks, Inc.

Don’t rely too heavily on tools

Page 23: Applying Agile to Multi-Team Projects - April 2010

www.thoughtworks-studios.com Copyright 2010 ThoughtWorks, Inc.

Evolving Your Management Approach

• Trial and error

• Minimize WIP

• Fix Max Queue Size

• Use Yesterday’s Weather as it relates to total time to complete a feature– Arlo Belshee Disneyland Wait Time

– From Requirement to Production

Page 24: Applying Agile to Multi-Team Projects - April 2010

www.thoughtworks-studios.com Copyright 2010 ThoughtWorks, Inc.

TECHNOLOGYMethods, tools and visualizations to assist multi-team projects

Page 25: Applying Agile to Multi-Team Projects - April 2010

www.thoughtworks-studios.com Copyright 2010 ThoughtWorks, Inc.

Program Visualizations

Page 26: Applying Agile to Multi-Team Projects - April 2010

www.thoughtworks-studios.com Copyright 2010 ThoughtWorks, Inc.

Be transparent in terms of how metrics are reflected

26

Page 27: Applying Agile to Multi-Team Projects - April 2010

www.thoughtworks-studios.com Copyright 2010 ThoughtWorks, Inc.

Hybrid Approaches

Page 28: Applying Agile to Multi-Team Projects - April 2010

www.thoughtworks-studios.com Copyright 2010 ThoughtWorks, Inc.

Thank You!

Questions?

Contact me to discuss more at [email protected]