2. agilebydesign.com
@agile_bydesign
A bit about Jeff Anderson (thatās me!)ā¦
ā¢ Been trying out agile since Junit first became
a thingā¦
ā¢ Developer, Architect, Consultant, even a
decent Coach
ā¢ Help enterprise move along the path to
agility, all shapes an size
ā¢ President of Agile By Design, we have a lot
of good agile scaling stories
Some (Agile related) Pet Peeves
ā¢ Lazy, Flaccid Agile, especially from other consultants
ā¢ Cargo Cult Agile
ā¢ Not paying attention to mindset
ā¢ Not paying attention to practice
3. agilebydesign.com
@agile_bydesign
What this session is about
What this session isnāt going to cover
ā¢ Scaling Frameworks in any real detail
ā¢ Architecture and technology (TDD, Software Craftmanship, Devops, etc)
The Agile Basics
ā¢ Common Practices, the ones you almost always see
ā¢ How they scale
How to extend (hopefully) familiar concepts, in order to use agile at greater scale
4. agilebydesign.com
@agile_bydesign
First Off, What do we mean by scalability?
Scalability Defined (Wikipedia): the capability of a system, network, or process to be
enlarged to a handle a growing amount of work,
ā¢ A system is considered scalable if it is capable of increasing its total output under an
increased load when resources are added.
ā¢ A business is considered scalable if it's underlying business model offers the potential
for economic growth within the company
ā¢ A method is considered scalable if it provides advice and practices that can be geared
towards managing large initiatives that require multiple teams.
Scaled Agile
ā¢ Advice and practices geared towards adapting Agile methods so that you can manage
larger and more complex initiatives
5. agilebydesign.com
@agile_bydesign
During this talk, I will talk about scaling Agile vertically and horizontally
Scaling Agile Vertically
ā¢ Coordinating work within larger and larger organizational boundaries
ā¢ Managing larger and larger missions, outcomes, etc and the interdependencies,
common platforms and enterprise concerns that come with them
Idea Discovery Engineering Ship & Measure
The typical focus of many agile teams?
Scaling Agile Horizontally
ā¢ Connecting concerns typically considered upstream and downstream from a core
agile team,
ā¢ Bring rapid feedback and self-organization to the entire value stream, from
concept to customer feedback
Research
TeamStrategic PortfolioEnterprise
7. agilebydesign.com
@agile_bydesign
In order to scale Agile, we need
to add more process, right?
Lets get more prescriptive advice on:
ā¢ Roles
ā¢ End to end Process
ā¢ Coordinating Activating
ā¢ Governance / Ownership
ā¢ Improving the Process
9. agilebydesign.com
@agile_bydesign
9I had some great successes here, and then some real challengesā¦
`
Sprint
(1/2 weeks)
Release
Planning
Release Burndown Chart
Sprint
Planning
Sprint Review &
Retrospectives
Scrum Task Board
Daily
Standups
(1/day)
Definition of Done
Planning Poker / Game
Product Backlog
Release
Sprint Backlog
To Do IP Done
14. agilebydesign.com
@agile_bydesign
14
ā¢ As we scale, our methods become more complicated, and contain more
overhead
ā¢ Linear addition of coordinating artifacts, roles, steps, etc as we scale
horizontally (number of teams)
ā¢ Linear addition of content artifacts, roles, steps, etc as we scale vertically
(stages in the value stream, new types of work, etc)
ā¢ An explosion of combinations as we try and cover every scenario!
Method density as a strategy to increasing scale doesnāt scale!
16. agilebydesign.com
@agile_bydesign
16
Complex systems come from atomic, simple, building blocks
Lego
ā¢ the epitome of modular atomic design
ā¢ small blocks, all of which can interact with each
other
ā¢ Complex, imaginative outcomes
ā¢ Number of brick types grows sublinearly
compared to number of overall pieces!
Micro - Services
ā¢ Small components with one goal, and a well
defined interface
ā¢ Release multiple times a day without
disruption
ā¢ Limited blast radius, A/B testing etc
17. agilebydesign.com
@agile_bydesign
17
Scale Agile methods through use of a Complex method, not a Complicated one!
Complicated
ā¢ Many small parts
ā¢ all with a different, precise role
ā¢ Predictable
ā¢ The system IS the sum of its parts
ā¢ Many, many, many smaller parts
ā¢ Simple interaction produce
emergent behavior
ā¢ Unpredictable
ā¢ The system IS GREATER then the
sum of its parts!
Complex
ā
18. agilebydesign.com
@agile_bydesign
18Letās take a look at Scrum, what are some of the simple behaviors that we can
use to create a system to manage complexity at scale?
`
Sprint
(1/2 weeks)
Release
Planning
Release Burndown Chart
Sprint
Planning
Sprint Review &
Retrospectives
Scrum Task Board
Daily
Standups
(1/day)
Definition of Done
Planning Poker / Game
Product Backlog
Release
Sprint Backlog
To Do IP Done
4
Self Organizing Team
ā¢ Enhance Team collaboration using
Visual Story/Task Management
ā¢ Align Sprint using Definitions of
Done
ā¢ Synchronize using Sprints
Ceremonies
ā¢ Plan with Product and Sprint
Backlogs
ā¢ Let the team Self Organize to
deliver
19. agilebydesign.com
@agile_bydesign
19We can scale agile by abstracting these concepts into a collection of behaviours
that can be applied at the appropriate scale
ā¢ Enhance end to end collaboration using
Visual Flow Management
ā¢ Align end to end flow using Knowledge
Worker Agreements
ā¢ Synchronize using Events held at a Steady
Cadence
ā¢ Plan using Graduated & Hierarchical
Backlogs
ā¢ Enable a Self-Forming Value Network in
order to deliver
ā¢ Enhance Team collaboration using
Visual Story/Task Management
ā¢ Align Sprint using Definitions of
Done
ā¢ Synchronize using Sprints
Ceremonies
ā¢ Plan with Product and Sprint
Backlogs
ā¢ Let the Team Self Organize to deliver
Scaling Agile requires a deep understanding of why agile works at the smaller
scale, and then applying that understanding to different perspectives
21. agilebydesign.com
@agile_bydesign
The classic Agile visual management system
ā¢ Focused on a team developing
and testing stories
ā¢ Deliberate tracking of all the
tasks required to complete the
story
ā¢ Used daily to manage progress,
impediments
ā¢ coordinates the work in progress
ā¢ Align using Definitions of Done
Story To Do
In
Progres
s
To
Verify
Done
As a User
Iā¦
8 pts
As a User
Iā¦
5 pts
Define
Acceptanc
e Criteria
forā¦
Code the
Front End
forā¦
Code the
Back End
forā¦
Update
Test
Harness..
Test
Individual
Story
Regressio
n test with
Feature
Create
Mocks /
Stubs for
ā¦
Create
Spec by
Example
for ā¦
Define
Acceptanc
e Criteria
forā¦
Create
Spec
Skeleton
Explore
Assumption
/ Unknowns
forā¦
Define
Acceptanc
e Criteria
forā¦
Create
Spec by
Example
for ā¦
Explore
Assumption
/ Unknowns
forā¦
Create
Spec
Skeleton
Code the
Front End
forā¦
Update
Test
Harness..
Code the
Back End
forā¦
Define
Acceptanc
e Criteria
forā¦
Code the
Front End
forā¦
24. agilebydesign.com
@agile_bydesign
24I must write out my task for each story even though they are the same 80% of the time
because agile dogma tells me to
I must write out my task for each story even though they are the same 80% of the time
because agile dogma tells me to
I must write out my task for each story even though they are the same 80% of the time
because agile dogma tells me to
I must write out my task for each story even though they are the same 80% of the time
because agile dogma tells me to
I must write out my task for each story even though they are the same 80% of the time
because agile dogma tells me to
I must write out my task for each story even though they are the same 80% of the time
because agile dogma tells me to
I must write out my task for each story even though they are the same 80% of the time
because agile dogma tells me to
I must write out my task for each story even though they are the same 80% of the time
because agile dogma tells me to
I must write out my task for each story even though they are the same 80% of the time
because agile dogma tells me to
26. agilebydesign.com
@agile_bydesign
How to scale Agile Visual Management: start by visually managing the flow of
work across team
8 pts
5 pts
Define
Acceptance
Criteria
Code the Front
and Back End
Test Individual
Story
Regression test
with Feature
Create Mocks /
Stubs
Create Spec by
Example
Create Spec
Skeleton
Explore
Assumption/
Unknowns
Update Test
Harness
Create
Shared
Agreement
Define and
BuildStory
Backlo
g
3 pts
12 pts
8 pts
8 pts
5 pts
3 pts
3 pts
Validate
3 pts
ā¦
3 pts
ā¦
ā¢ Tasks are ordered according to an
agreement of a reasonable
workflow
ā¢ Each state is self governed by the
team through knowledge worker
agreements (policies)
ā¢ The team has a lightweight way
to continually update their
system of work
ā¢ This approach scales vertically
and horizontally!
27. agilebydesign.com
@agile_bydesign
How to scale Agile Visual Management: Work with upstream and downstream
collaborators to map the entire value stream
8 pts
5 pts
Define Acceptance
Criteria
Code the Front
and Back End
Test Individual
Story
Regression test
with Feature
Create Mocks /
Stubs
Create Spec by
Example
Create Spec
Skeleton
Explore
Assumption/
Unknowns
Update Test
Harness
Create
Shared
Agreement
Define and
Build
Story
Backlo
g
3 pts
12 pts
8 pts
8 pts
5 pts
3 pts
3 pts
Validate
3 pts
Hardening
& Release
3 pts
Analyze
Customer
Traction
3 pts
ā¦
Discovery
8 pts8 pts
8 pts
Discovery
Backlog
Security Scan
NFR Testing
Package Notes
completed
Outline Story
Map
Initial Story
Count
Architecture and
Dependencies
29. agilebydesign.com
@agile_bydesign
Delivery
Date:
MVP:4 ZSZS
How to scale Agile Visual Management: Visually managing the flow of more
macro increments of value at the Portfolio or Strategic Level
Delivery
Date:
MVP:4 WW
Oct MarketNovDec
Jan -
Mar
Discovery ReleaseIdea
Apr -
June
July -
Aug
Team DeliveryNext
P
B
S
B
S12 Stories
8 Stories
8 Stories
5 Stories
8 Stories
Delivery
Date:
MVP:4 ZSZS
B
P5 Stories
3 Stories
3 Stories
Team 1
Team 2
Team 3
30. agilebydesign.com
@agile_bydesign
Definition of Done > Knowledge Worker Agreements
Making It Real: Visually Managing flow of features for a large program at scale
ā¢ 90 FTES
ā¢ 20 Teams
ā¢ 112 Features
ā¢ Approx 20 Million spend
ā¢ 8 month burn
32. 32A foundation of agile is providing feedback at a steady cadence
Instead of planning everything in advance, we
run events at fixed intervals:
ā¢ Short term planning
ā¢ Impediment resolution
ā¢ Stake holder review
ā¢ Improvement Planning
33. agilebydesign.com
@agile_bydesign
33
The scrum sprint, and the events that happen in them are examples of steady
cadences that provide feedback to the team
`
Sprint
Sprint Planning
Sprint Review
Daily Standups
Sprint Retrospectives
(1/day)
(1/2 weeks)
Are these cadences enough for larger engagements?
Is this all we need to deliver value with agility across the organization?
Determine where cadence can improve
agility across your value stream by
answering:
ā¢ Where feedback can provide value
ā¢ What are the ideal points to pause to
gain alignment
ā¢ Where repeatable activities can add
value
ā¢ What are the time horizons for each
cadence
34. agilebydesign.com
@agile_bydesign
Scrum style ceremonies can be extended to enable management of larger,
multi team initiatives
Team Lvl Sprint Planning
(Day 1 Afternoon)
Program Lvl Sprint
Planning
(Day 1 Morning)
Team Daily Standup
(Every Morning 9:00 ā 10:30)
Program Daily Standup
(3X/Week Morning 11:00)
Team Demos
(Day 10 Afternoon1:00)
Program Sponsor Update
(Day 10 Afternoon 3:00)
Team Retro
(Day 10 Afternoon 2:30)
35. agilebydesign.com
@agile_bydesign
Portfolio Alignment
(1/6 weeks)
Strategic Alignment
(1/Quarter)
There are a āstandardā set of event that can be used to manage and govern
with Agility, exact names, frequency, and purpose will vary with context
Sprint Alignment
(1/2 weeks)
Strategic Alignment
ā¢ True North
ā¢ Key Priorities, Outcomes, Investments
ā¢ Significant change to capability /
capacity
Portfolio Alignment
ā¢ Achieving the mission, Epics and
Feature
ā¢ Team structure / organizing for value
ā¢ Cross team improvements
Sprint Alignment
ā¢ The current increment of value
ā¢ The current increment of improvement
Determine the exact frequency, time horizon, and objectives for the cadences you want
to use to scale agile horizontally
36. agilebydesign.com
@agile_bydesign
Cadence is an effective way to manage work traditionally considered
āupstream/downstreamā from the team
Idea Discovery Engineering Ship & Measure
Co-Create a
business / product
model
Make your
Assumptions Explicit
Should I build it?
Can I build It?
Potentially shippable
software
Customer feedback
Did the output
achieve the
outcome?
(a reasonable Agile life-cycle)
37. agilebydesign.com
@agile_bydesign
37The wrong way to scale cadence: sprint cycles focused on one stage within
your delivery life cycle, followed by planned gates for higher level feedback
Idea
Sprint
ā¢ Waterfall governance with āagileā style check-points
ā¢ No feedback on shippable business value
ā¢ Projects that need help miss the gate, and get less feedback!
ā¢ A nice example of practice in complete absence of mindset
Discovery
Sprint
Eng.
Sprint
Test
Sprint
Discovery
Sprint
Eng.
Sprint
Dev
Sprint
Test
Sprint
Planning Gate Analysis Gate Eng. Gate Test
Initiative 1
Release
Sprint
overy
rint
Eng.
Sprint
Test
Sprint
Discovery
Sprint
Eng.
Sprint
Dev
Sprint
Test
Sprint
Analysis Gate Eng. Gate Test Gate
Initiative 2
Releae Gate
Release
Sprint
Planning
Sprint
Discovery
Sprint
Eng.
Sprint
Test
Sprint
Planning Gate Analysis Gate Eng. Gate Test Gate Release Gate
Planning
Sprint
Dis
S
Planning Gate
Initiative 3
38. agilebydesign.com
@agile_bydesign
The Mental metaphor for a Lean-Agile organization > constantly watch the baton,
not the runner
A different way to scale cadence: Use the sprint cycle to align on predicted and
actual flow across the value stream
39. agilebydesign.com
@agile_bydesign
A different way to scale cadence: Replace Gates with Events at Cadence that
validate work in progress across the value stream
Outcome
Alignment
Monthly
Planning
Review
Bi-Monthly
Sprint Review
Bi-Weekly
Traction
Review
Monthly
ā¢ Force a quality check of all work in process
ā¢ Ensures that work is progressing according to governance
ā¢ Makes any bottlenecks in governane capacity obvious
ā¢ Frees work to flow independently
40. agilebydesign.com
@agile_bydesign
The traditional Engineering focus of the sprint cycle can cause agility to suffer
upstream and downstream
Sprint
Bi-Weekly
ā¢ We focus on meeting sprint commitments
ā¢ We use impediments as a lever to drive change in the rest of the organization
ā¢ We assume end to end agility can be achieved by focusing on the velocity of one part
41. 41
Sprint Planning
2 weeks
Discovery
Int
TestingIdea
Validate
Story
Ready 4
Prod
ReleaseWaitingWaiting
MVP / Feature
Backlog
Grooming
Story
Backlog
Engineer
Working
Software
ā¢ Start at the right hand side of the board and progressively move to the
left
ā¢ Indicate priority and likely flow by end of sprint on each story / ticket
Measured
Outcome
One solution > Use the sprint planning cycle to align on predicted and actual flow
across the value stream
Waiting
42. agilebydesign.com
@agile_bydesign
42
Making it real: Team annotating their board with Sprint commitments based on
anticipated flow
Sprint
Target:
Engineering
Done Sprint
Target:
Feature Test
Done
Sprint
Target:
Engineering
In Progress
43. agilebydesign.com
@agile_bydesign
ā¢ The typical standup: Ask everybody in the team to provide an individual update, eg: I did the
following yesterday, today I plan to do the following, and I need the following help
ā¢ Work Focus: Discuss each work ticket on the board and have the assigned team member provide a
quick update
ā¢ Flow Focus: Focus the stand-up on only the defects and blocking issues preventing work from flowing
and either assign an owner or obtain an update from the assigned owner
A side notes: Scale Daily Stand-ups by shifting the focus from the worker, to the
work, to impediments and improvements
Walk the board from Right to Left
45. agilebydesign.com
@agile_bydesign
Work is blockedā¦
Lead time is unusually
highā¦
Walk the board from Right to Left
New Build
(12)
Maintenance
(2)
Defect Fix
(6)
Input
Queue
(8)
Story Test
(3)
ReleaseEngineering
(4)
Exploration
(3)
Int Test
(2)
Dev
Ready
(3)IP Done IP Done
Test
Ready
(4) IP Done
Int
Ready
(3) IP Done
Testing Is idleā¦Excess WIP In Dev!
12
You can run a standup at scale by spending a few minutes prior, marking down discussion areas and
questions for the group based on impediments to flow
Story
Defect
Blocker
High number of defects!
49. 49
Sprint
3-4
Sprint
2
Sprint
1
Sprint
4-6
Epics, Features,
Sagas, whatever,
are estimated in
terms of number
of Stories
Work Items are
placed into Sprint
Queues that are
filled until an
estimated Story
capacity is
reached
Next
Sprint
Inspect and
Adapt is used to
adjust backlogs
based on Team
Throughput
12
Stories
12
Stories
12
Stories
24
Stories
24
Stories
A Graduated backlog is a place where value is progressively decomposed from larger,
less understood objectives into finer grained, better understood units of value
14
10
6
3
7
4
4
4
Work is progressively broken up and story counts
are refined as the start date gets closer
52. agilebydesign.com
@agile_bydesign
The importance of the agile team is held as a sacred component of most agile
model
1 2
4
5 ā¢ Stable
ā¢ Cross ā Functional
ā¢ Delivers Customer Value
ā¢ Self Organizing!
How can we scale the team concept without sacrificing the attributes critical to
making it an agile team?
53. agilebydesign.com
@agile_bydesign
The wrong way to scale teams: a value network typified by frequent handoffs
across teams
Feature Team
Feature Team
Feature Team
Component Teams
Feature Team
Feature Team
Component Teams
Feature Team
Component Teams
Component Teams
Simple Structure
ā¢ One team
ā¢ Team can self organize
ā¢ Nice ļ
More Complicated Structure
ā¢ Some cross team dependencies
ā¢ Partial self organization
ā¢ Manageable ļ
Crazy Complicated Structure!
ā¢ Rampant multi team disorganization!
ā¢ Self organization is impossible
ā¢ Better break out the (agile) PMO to manage things ļ
54. agilebydesign.com
@agile_bydesign
A different way to scale teams: a dynamic value network where knowledge
workers form into teams based on the shape of the demand
Feature Team
Simple Structure
ā¢ One team
ā¢ Team can self organize
Structure that can handle more complexity
ā¢ Specialists move across a limited number of teams
ā¢ Different specialist > emergent complex behavior
ā¢ Limited Team forming capabilities required
Structure that can even handle more complexity
ā¢ Specialists move across a larger number of teams
ā¢ More differing specialist >> emergent complex behavior
ā¢ Greater Team forming capabilities required
Feature Team
Feature Team
Feature Team
Feature Team
Feature Team
Focus management on de-scaling your organization, not on managing hand-offs across
teams!
55. agilebydesign.com
@agile_bydesign
Traveler Pools
ā¢ Work onsite with the upstream team
for a short period of time
ā¢ allow scarce / ad-hoc resources to
be deployed to team as needed
Examples
ā¢ Legacy / Integration Developers
ā¢ UX / UI
ā¢ NFR Testing
Enablement teams
ā¢ Allocate expertise to a cohesive grouping of
teams
ā¢ coach, consult, and guide
Examples
ā¢ DevOps
ā¢ Agile Coaches
ā¢ HR
ā¢ Architecture
Facilitate team travel through the introduction of Travellers and Enablers
56. agilebydesign.com
@agile_bydesign
Managing for self organization is facilitated by continually adjusting team
structure based on team backlogs
EpicEpicEpic
EpicEpicEpic
1
2
3
Group team and their backlogs based on similar demand & capability
Analyze backlogs for skillsets required to deliver on them
Adjust team structure eliminating hand offs
ā¢ Group teams into larger structures that foster self forming based on a larger mission
ā¢ Maximize the number market facing / feature teams
ā¢ Minimize the use of component teams
ā¢ Favor pools and enablers over component teams
ā¢ Adjust to eliminate hand offs
57. agilebydesign.com
@agile_bydesign
57
Making It real Standing up Agile Structure in Real time
JIT backlog analysis at the Program Level:
ā¢ Identify feature teams and traveller
pools
ā¢ Re-allocate people based on next set of
features
ā¢ Dynamically deploy Travellers during
pre-sprint planning and leader stand-
ups
58. agilebydesign.com
@agile_bydesign
Payments Lab
Making it Real: An ever evolving Ecosystem of Agile Labs, laying out the interaction
model between the different agile teams and there stakeholder
Enhancements
PacificAlignment
Agile EnablementLeadership
PMO
Modernization
Channels Lab
WiresVision
Mobile
Payments
SmallCompanies
Traveler Pool
Legacy
Origination Lab
PIAP
SPW
Onboarding
Traveler Pool
Billing Data Lab Traveler
Hand Off
59. agilebydesign.com
@agile_bydesign
Putting it all together
ā¢ Agile behavior is inherently scalable
ā¢ If you understanding why agile practices work, you can extend and alter
them so as to apply them at different scales
ā¢ Avoid over attachment to specific implementations of a practice, focus on
the why!
ā¢ Adapt to your context