Key takeaways
- What problems do SAFe and other scaling frameworks look to solve?
- Why you don't need any one particular named framework
- How you can start becoming more agile, and improving software delivery effectiveness "at scale", without a specific named framework
1. neil_killickNeil Killick, 2017-18, All Rights Reserved
And why
you don’t
need them
Why scaled agile
frameworks exist
Neil Killick
Product Delivery Coach
Agile ✫ Scrum ✫ Lean ✫ Kanban ✫ neilkillick.com
3. neil_killickNeil Killick, 2017-18, All Rights Reserved
Frameworks which enable the organisation
and management of Agile Software
Development
across multiple teams and/or products,
programs, projects and technologies
— i.e. frameworks which enable Agile “at scale”
11. Business drivers for Agile
Beat competitors to market
— Reduce risk of disruption and/or losing first mover advantage)
Build right thing
— Reduce risk of over-investment in software which is not being used or
realising value)
Build thing right
— Reduce risk of gaining a poor reputation for quality of product, and of
spending time/$$ on failure demand and technical debt)
Happier customers
— Reduce risk of losing customers, or gaining a poor reputation for quality
of service
neil_killickNeil Killick, 2017-18, All Rights Reserved
12. Business drivers for Agile
Tax benefits
— Increased potential for earlier and more frequent capitalisation of
released software as an asset
Early revenue
— Sooner ROI for value-adding and cost reduction benefits)
Operational efficiency
— Process improvement ==> higher capacity ==> higher throughput and
revenue per worker
Happier shareholders
— More products and features = More return
Happier workers
— Lower risk of attrition
neil_killickNeil Killick, 2017-18, All Rights Reserved
13. neil_killickNeil Killick, 2017-18, All Rights Reserved
Agile is easy to say but bloody hard to do
Being an agile company is extremely hard, particularly if you have not been this way for many years
Going Agile requires an overhaul
Most organisations require a major overhaul in structure, incentives, capability and culture to enable that
Agile is easy to get spectacularly wrong
Even starting from scratch, orgs have to make major principle-led decisions to make to get this right, and it
can very easily go in the wrong direction as more people join the organisation
Being principle-driven under pressure is difficult
Identifying the right principles, and then sticking with them while under pressure from the board,
shareholders, customers and staff is extremely difficult
Something to bear in mind…
14. neil_killickNeil Killick, 2017-18, All Rights Reserved
Scenario 1
— Business has one
agile team, wants more
Scenario 2
— Business has many non-
agile teams, wants “Agile”
Scenario 3
— Business has many agile
teams, wants better results
We like agile and want
our other teams/
departments to work this
way
— “Scaling” scenario rather than
“scaled”
We want to add more
people/teams/products
while keeping the benefits
of agile
— frequent value being
delivered, responsiveness to
changing market or internal
conditions, etc.)
• We have functional silos,
want better collaboration
• We are slow to market due to
traditional milestones and
barriers
• We want to “adopt Agile”
We are not deriving the
promised benefits of agile,
despite having agile teams
Perhaps they:
• Are working on the wrong things
— low value for the customer or the
business
• Are not coordinating (well) in
terms of strategic projects, goals
and progress
• Have poor autonomy due to
dependencies, etc.
15. Scenario 1
• 1 product (pipeline)
• 1 small, agile team (3-5 devs)
• 1 process
• 1 technology stack
• No dependencies
• Simple prioritisation
• Simple to understand
capacity/make forecasts
• Straightforward, works well
• The magic of agile!
$$$$
$$$
$$$
$$$
$$
$
$
$
Agile
team
Business
Feature ideas
Customer
neil_killickNeil Killick, 2017-18, All Rights Reserved
17. $$$$
$$$
$$$
$$$
$$
$
$
$
neil_killick
Agile
team 1
Business
Feature ideas
Customer
Agile
team 2
• How to scale?
— Grow team then split, or split then grow?
Either way disruption, comms overhead, risk of
disagreements, poor dynamics, etc.
• Quality
— How do we agree standards? (tests, code
standards, UX, performance, etc.)
• Process
— Do we need to coordinate? Have a shared
process?
• Estimation/forecasting
— How do we measure progress empirically?
• Prioritisation
— Who works on what? What if there are
dependencies?
• Ownership
— Are we in the same tech stack? Who now
owns/cares for API’s and other components?
Neil Killick, 2017-18, All Rights Reserved
Much complexity
added
18. neil_killick
Strategic
project idea 3
$$$$$$$
Strategic
project idea 1
$$$$$$$
Strategic
project idea 2
$$$$$$$
Portfolio/PMO
Strategic
project idea 4
$$$$$$$
$$$$
$$$
$$$
$$$
$$
$
$
$
Neil Killick, 2017-18, All Rights Reserved
Agile
team 1Business
Feature ideas
Customer 1
Agile
team 2
Customer 2
$$$$
$$$
$$$
$$$
$$
$
$
Feature ideas
Agile
team 3
Agile
team 4
21. neil_killickNeil Killick, 2017-18, All Rights Reserved
Image credit: http://agadaenergyhealing.com/wp-content/
uploads/2017/02/focus2.jpeg
22. Example - “We want Agile because we
want to beat our competitors to market”
OK
What currently stops you from
beating competitors to market?
neil_killickNeil Killick, 2017-18, All Rights Reserved
23. Projects take at least 6 months, usually longer - we
don’t identify MVP’s or MMF’s - we define all scope
up front, then add to it as we discover more
Deploying is hard, takes time and can only be done
by one person, so we don’t do it often
We have lots of approval steps to release anything
to production, so we don’t do it often
Releasing is coupled with deploying - we can’t hide
unfinished features, so have to finish everything
neil_killickNeil Killick, 2017-18, All Rights Reserved
24. OK, what can we do to
improve the situation?
neil_killickNeil Killick, 2017-18, All Rights Reserved
25. Pick a project, and identify MVP’s/MMF’s for Release 1
OK, what can we do to
improve the situation?
neil_killickNeil Killick, 2017-18, All Rights Reserved
26. Make it easier to deploy by establishing environments, automating
scripts where possible, cross-skilling team members, opening up
permissions, etc.
Pick a project, and identify MVP’s/MMF’s for Release 1
OK, what can we do to
improve the situation?
neil_killickNeil Killick, 2017-18, All Rights Reserved
27. De-couple releasing (shipping) and deploying - enable frequent
deployment of working product to a production-like environment
which stakeholders can see/test but is not the “live” product
Pick a project, and identify MVP’s/MMF’s for Release 1
Make it easier to deploy by establishing environments,
automating scripts where possible, cross-skilling team members,
opening up permissions, etc.
OK, what can we do to
improve the situation?
neil_killickNeil Killick, 2017-18, All Rights Reserved
29. Neil Killick, 2017-18, All Rights Reserved
neil_killick
Start thinking/working more agile yourself
• CHANGE YOUR LANGUAGE — Start asking “What’s the simplest/quickest way to
get value to the customer?”.
• COLLABORATE WITH CUSTOMER FOCUS — Ask a colleague “How might we
accomplish this feature in such a way that it is easy to delete/change if required, won’t
break anything else, and we get value to the customer (or learn something about what
we’re building) sooner?”.
• VISUALISE PROCESS — Understand where queues form (delays and hand-offs), show
the people involved, improve that part of the process to speed up value to the customer.
• ADD FEEDBACK LOOPS — Involve people in making things better.
30. Neil Killick, 2017-18, All Rights Reserved
neil_killick
• FRAME DELIVERABLES AS CAPABILITIES — WHO benefits from implementing this
work item, WHAT is the capability we are looking to give them and WHY is it beneficial?
This helps greatly in prioritisation and slicing/narrowing/deferring scope.
• CHECK YOU’RE WORKING ON THE RIGHT THING — Ask a senior manager “is
this what you would expect me to be working on?” Executives often think “slowness” is an
execution problem, when in fact it is often a prioritisation one.
• TAKE TIME REGULARLY TO IMPROVE — Explicitly reflect on how YOU work and
what YOU can do differently to work just a little bit more effectively (or help your team do
so).
31. Neil Killick, 2017-18, All Rights Reserved
neil_killick
Use established enablers for agility
• CUSTOMER-FOCUS — Decide and describe what we build, and how we
execute, from the customer’s perspective (e.g. JTBD, user stories)
• AUTONOMOUS, SELF-ORGANISING, STABLE “FEATURE TEAMS” —
Everything they need for e2e iterative discovery, design, development, delivery
• LIMIT WIP, SMALL BATCHES — Focus, deliver value fast to customers
• BE TRANSPARENT — Visualise work, create shared definitions, understanding
• CONTINUOUS FEEDBACK AND IMPROVEMENT — Experiment, learn,
remove wasteful steps to value creation, get better