340 likes | 560 Views
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
E N D
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”
Agenda • Scaling Agile • Institutional Headwinds and Tailwinds • Measuring Success
“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?
Each Feature is Comprised of Many Aspects ✔ #define a b /* * This is great code. */ booldoStuff ( ) { index++; }
A Typical Iteration 5 2 3 1 2 3 Admin wants a report of site-wide activity Traveller wants to see their upcoming trips Traveller wants to edit a booking Traveller wants to enter a booking Traveller wants to delete a booking Traveller wants to register with the system Tom Tom Bob Bob Sue Sue #define a b /* * This is great code. */ booldoStuff ( ) { index++; } #define a b /* * This is great code. */ booldoStuff ( ) { index++; } #define a b /* * This is great code. */ booldoStuff ( ) { index++; } #define a b /* * This is great code. */ booldoStuff ( ) { index++; } #define a b /* * This is great code. */ booldoStuff ( ) { index++; } #define a b /* * This is great code. */ booldoStuff ( ) { index++; }
“One Piece Flow” Done! Done! Done! #define a b /* * This is great code. */ booldoStuff ( ) { index++; } #define a b /* * This is great code. */ booldoStuff ( ) { index++; } #define a b /* * This is great code. */ booldoStuff ( ) { index++; } #define a b /* * This is great code. */ booldoStuff ( ) { index++; } #define a b /* * This is great code. */ booldoStuff ( ) { index++; } #define a b /* * This is great code. */ booldoStuff ( ) { index++; } #define a b /* * This is great code. */ booldoStuff ( ) { index++; } #define a b /* * This is great code. */ booldoStuff ( ) { index++; } #define a b /* * This is great code. */ booldoStuff ( ) { index++; } Done!
Agile in Action Product Mgmt $ Customers / Market
One piece flow across multiple teams Product Mgmt $ Customers / Market
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
Escalation Tree Daily standup Management involvement Rapid turnaround. S2 09:30am – 09:45am S1 09:00am – 09:15am
Escalation Tree Frequent Retrospective 1 hour 1 hour
Traditional Agile
Traditional Agile
Traditional Agile
Silos by Role – Focus on Operational Efficiency Specialization and cost reduction Architects Devs Testers ProjectManagers BA’s / ProductManagers
Misaligned Goals FunctionalGoals ✔ ✔ ✔ ✔ ✔ ✔ Late, missing scope Not as relevant as hoped Project A Project B
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
Fully Aligned Goals Project A Project B PrimaryGoals ✔ ✔ Secondary Goals ✔ ✔ ✔ ✔ ✔ ✔
One Solution: Organize around Business Value Delivery Products, lines of business, and maximizing business value
Measuring Success • Net Promoter Score • Profits • Anecdotes related to business value
Additional Metrics • Shippability • Work in Progress • Cycle time
Cycle Time 2 years 3 months Integration and testing Preparation Development 6 1 3 5 7 2 4 months
Cycle Time Prep Prep Prep Prep Prep Prep Do Do Do Do Do Do Ship Ship Ship Ship Ship Ship 6 1 3 5 7 2 4 1 month iterations
Cycle Time Cycle Time Prep Do Ship 6 1 3 5 7 2 4 1 month iterations
Email:dpoole@eliassen.com Web:www.eliassen.com Twitter: @damonpoole Blog:damonpoole.blogspot.com Q&A