scaling the heights of agile (aka scaling and measuring agile)

34
Scaling The Heights of Agile (aka Scaling and Measuring Agile)

Upload: idalia

Post on 24-Feb-2016

83 views

Category:

Documents


1 download

DESCRIPTION

Scaling The Heights of Agile (aka Scaling and Measuring Agile). Damon Poole. Chief Agilist , Eliassen Group’s Agile Practice Coaching: Transformation and Tune-ups Training Staffing 20 years of process change ranging from small co-located teams to multi-hundred team global enterprises - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Scaling The Heights of Agile (aka Scaling  and Measuring Agile)

Scaling The Heights of Agile(aka Scaling and Measuring Agile)

Page 2: Scaling The Heights of Agile (aka Scaling  and Measuring Agile)

Damon Poole

Chief Agilist, Eliassen Group’s Agile Practice• Coaching: Transformation and Tune-ups• Training• Staffing

20 years of process change ranging from small co-located teams to multi-hundred team global enterprises

Founder and past CTO and CEO of AccuRev Creator of multiple Jolt-award winning products Past President of Agile New England Author of “DIY Agile Kickstart”

Page 3: Scaling The Heights of Agile (aka Scaling  and Measuring Agile)

Agenda

Scaling Agile Institutional Headwinds and Tailwinds Measuring Success

Page 4: Scaling The Heights of Agile (aka Scaling  and Measuring Agile)

Scaling Agile

Page 5: Scaling The Heights of Agile (aka Scaling  and Measuring Agile)

“Scaling”

What do we mean by “scaling?” A typical definition of scaling:

• Adding more resources adds proportionally more capacity for doing work

Does traditional development scale?

Page 6: Scaling The Heights of Agile (aka Scaling  and Measuring Agile)

Each Feature is Comprised of Many Aspects

#define a b/* * This is great code. */bool doStuff ( ) { index++;}

Page 7: Scaling The Heights of Agile (aka Scaling  and Measuring Agile)

A Typical Iteration#define a b/* * This is great code. */bool doStuff ( ) { index++;}

#define a b/* * This is great code. */bool doStuff ( ) { index++;}

#define a b/* * This is great code. */bool doStuff ( ) { index++;}

#define a b/* * This is great code. */bool doStuff ( ) { index++;}

Traveller wants to see their upcoming trips

2

Tom

Traveller wants to delete a booking

1

Sue

Traveller wants to enter a booking

3

Bob

Traveller wants to register with the system

3

Sue

Admin wants a report of site-wide activity

5

Bob

Traveller wants to edit a booking

2

Tom

#define a b/* * This is great code. */bool doStuff ( ) { index++;}

#define a b/* * This is great code. */bool doStuff ( ) { index++;}

Page 8: Scaling The Heights of Agile (aka Scaling  and Measuring Agile)

“One Piece Flow”

#define a b/* * This is great code. */bool doStuff ( ) { index++;}

#define a b/* * This is great code. */bool doStuff ( ) { index++;}

#define a b/* * This is great code. */bool doStuff ( ) { index++;}

#define a b/* * This is great code. */bool doStuff ( ) { index++;}

#define a b/* * This is great code. */bool doStuff ( ) { index++;}

#define a b/* * This is great code. */bool doStuff ( ) { index++;}

#define a b/* * This is great code. */bool doStuff ( ) { index++;}

#define a b/* * This is great code. */bool doStuff ( ) { index++;}

#define a b/* * This is great code. */bool doStuff ( ) { index++;}

Done! Done! Done!

Done!

Page 9: Scaling The Heights of Agile (aka Scaling  and Measuring Agile)

Agile in Action

Customers / Market

Product Mgmt

$

Page 10: Scaling The Heights of Agile (aka Scaling  and Measuring Agile)

One piece flow across multiple teams

$Customers / Market

Product Mgmt

Page 11: Scaling The Heights of Agile (aka Scaling  and Measuring Agile)

Inspect and Adapt (Self-healing)

Organizations, people, projects, markets are constantly changing

Healthy Agile requires constant monitoring and adjustment

Typical inspect and adapt mechanisms• Standups• “Scrum of Scrums”• Retrospectives• Stop the line

Page 12: Scaling The Heights of Agile (aka Scaling  and Measuring Agile)

Escalation Tree

S109:00am –09:15am

S209:30am –09:45am

Daily standupManagement involvement

Action Items OwnerTeam Z’s build server is downCover Joe’s unexpected absenceResolve dependency between team X & Y

Rapid turnaround.

Action Items OwnerTeam Z’s build server is down JoeCover Joe’s unexpected absence SusanResolve dependency between team X & Y

Pat

Page 13: Scaling The Heights of Agile (aka Scaling  and Measuring Agile)

Escalation Tree

1 hour

Frequent Retrospective

1 hour

Page 14: Scaling The Heights of Agile (aka Scaling  and Measuring Agile)

Institutional Headwinds and Tailwinds

Page 15: Scaling The Heights of Agile (aka Scaling  and Measuring Agile)

AgileTraditional

Page 16: Scaling The Heights of Agile (aka Scaling  and Measuring Agile)

AgileTraditional

Page 17: Scaling The Heights of Agile (aka Scaling  and Measuring Agile)

AgileTraditional

Page 18: Scaling The Heights of Agile (aka Scaling  and Measuring Agile)

Silos by Role – Focus on Operational Efficiency

BA’s / Product

Managers

Devs TestersArchitectsProjectManagers

Specialization and cost reduction

Page 19: Scaling The Heights of Agile (aka Scaling  and Measuring Agile)

Misaligned Goals

FunctionalGoals ✔ ✔ ✔ ✔ ✔ ✔

Project A Project B

Late, missing scope

Not as relevant as hoped

Page 20: Scaling The Heights of Agile (aka Scaling  and Measuring Agile)

Moving to Managing Business Value Delivery

Switch to business value delivery metrics Align everyone connected to a line of

business or product to the same goal: delivering of business value

Examples:• Old

number of defects found per release coding tasks completed

• New test coverage per new user story # of story points associated with done stories

Page 21: Scaling The Heights of Agile (aka Scaling  and Measuring Agile)

Fully Aligned Goals

SecondaryGoals

✔ ✔ ✔ ✔ ✔ ✔

PrimaryGoals ✔

Project A Project B

Page 22: Scaling The Heights of Agile (aka Scaling  and Measuring Agile)

One Solution: Organize around Business Value Delivery

Products, lines of business, and maximizing business value

Page 23: Scaling The Heights of Agile (aka Scaling  and Measuring Agile)

Faux Teams vs Real Teams

Page 24: Scaling The Heights of Agile (aka Scaling  and Measuring Agile)

Faux Teams vs Real Teams

Page 25: Scaling The Heights of Agile (aka Scaling  and Measuring Agile)

Faux Teams vs Real Teams

Page 26: Scaling The Heights of Agile (aka Scaling  and Measuring Agile)

Top Ten Self-Reinforcing Patterns

Area Traditional AgileDelivery focus Projects Products & releasesBusiness & IT interaction Big handoffs Daily interactionTeams Large, functional,

project-based, transient, & dynamic

Small, cross-functional, product-based, long standing & static

Metrics, incentives and goals

Functional and plan-based

Team and business value delivery based

Funding All or none As you goFeedback loops Slow Very fastProjects per person 2-5 1Test execution Primarily manual Automated & holisticIndividual Agile Skillset Low HighTools and technology Traditional Agile-oriented

Page 27: Scaling The Heights of Agile (aka Scaling  and Measuring Agile)

Measuring Success

Page 28: Scaling The Heights of Agile (aka Scaling  and Measuring Agile)

Measuring Success

Net Promoter Score Profits Anecdotes related to business value

Page 29: Scaling The Heights of Agile (aka Scaling  and Measuring Agile)

Agile Organization Metrics

Area Current GoalDelivery focus Products & releasesBusiness & IT interaction Daily interactionTeams Small, cross-functional,

product-based, long standing & static

Metrics, incentives and goals

Team and business value delivery based

Funding As you goFeedback loops Very fastProjects per person 1Test execution Automated & holisticIndividual Agile Skillset HighTools and technology Agile-oriented

Page 30: Scaling The Heights of Agile (aka Scaling  and Measuring Agile)

Additional Metrics

Shippability Work in Progress Cycle time

Page 31: Scaling The Heights of Agile (aka Scaling  and Measuring Agile)

Cycle Time

2 years 3 months

2 4 61 3 5 7

DevelopmentIntegration and testingPreparation

months

Page 32: Scaling The Heights of Agile (aka Scaling  and Measuring Agile)

Cycle Time

2 4 61 3 5 71 month iterations

Prep

Do

Ship

Prep

Do

Ship

Prep

Do

Ship

Prep

Do

Ship

Prep

Do

Ship

Prep

Do

Ship

Page 33: Scaling The Heights of Agile (aka Scaling  and Measuring Agile)

Cycle Time

2 4 61 3 5 71 month iterations

Prep

Do

Ship

Cycle Time

Page 34: Scaling The Heights of Agile (aka Scaling  and Measuring Agile)

Q&A

Email: [email protected]

Web: www.eliassen.com

Twitter: @damonpoole

Blog: damonpoole.blogspot.com