Minimum Viable Agile is a search for Agile practices and ceremonies, informed by Lean and Agile theory, that produces the maximum amount of customer value, with the least amount of effort.
(Or Just Enough practices and ceremonies to be effective).
1. Just Enough: Minimally Viable Agile
Troy Tuttle
Lean Agile Coach
KanFlow.com
troy@kanflow.com
@troytuttle
KC PMI Professional Development Days
2. Minimum Viable Agile
Borrowing from the Product Development concept
of MVP or Minimum Viable Product.
"The minimum viable product is that version of a
new product which allows a team to collect the
maximum amount of validated learning about
customers with the least effort."
What is it?
3. Minimum Viable Agile
Minimum Viable Agile is a search for Agile
practices and ceremonies, informed by Lean and
Agile theory, that produces the maximum amount
of customer value, with the least amount of effort.
(Or Just Enough practices and
ceremonies to be effective).
What is it?
4. Agile Is…?
Burn Down Charts
Sticky Notes
Card Walls
Kanban Boards
Standup Meetings
Retrospectives
Pair Programming
TDD
Sprint Planning
Planning PokerVelocity
Story Points
User Stories
Release Planning
Estimation
Team Room
Definition of Done
WIP Limits
6. The Agile Dysfunction Spiral
Detailed sprint
planning
Formal sprint
commitment
Work the sprintUnfinished work
We need to get
better at
planning sprints
Coaching to help
improve sprint planning
Sprint planning
takes longer
Management
Applies pressure
Culture of Blame
creeps back in…
Team works
overtime
Are we really just after better sprints?
7. Cargo Cult (Agile)
Many early Agile attempts simply installed practices (recipes).
Warning!
Following recipes leads to Cargo Cult Agile
9. Mob Programming: The original MVA?
No Stand up meeting
Product Owner engaged
Driver – Navigators – 15 min. rotations
Everyone takes a full lunch break!
All the needed expertise in same room
All the
Brilliant People Working on the
same problem At the same time
On the
same computer
10. Mob Programming: The original MVA?
Reduces or Eliminates:
1. Standup or other alignment meetings
2. Detailed planning-only sessions
3. The need for estimates
4. Context Switching
5. Burn-down charts for performance tracking
6. Code Reviews
Increases:
1. Quality
2. Collaboration
3. Productivity
4. Satisfaction
11. Mob Programming: Why does it work?
Sample timeline of a user story or requirement.
Time2
= wait time
weeks = touch time
weeks
4 - 10 4 - 10 2
Customer Request
Prioritized in Product Backlog
Backlog Grooming
Planning Into
a Sprint
Story
Completed
(tacit knowledge decay)
12. The Essence of Agile
Focus
Learning
Simplicity (The art of the work not done.)
(Collaboration is an outcome.)
(Feedback loops enable improvements)
Customer Value (We wouldn’t be here otherwise.)
13. The Essence of Agile
Focus Learning
Simplicity Customer Value
• Visualize work
• WIP limits
• Cadence
• Retrospectives
• Small batches
• ATDD and CI
• Continuous Delivery
• Measurement based planning
• Emergent Architecture
• Track progress of Value, not tasks
• Customer based metrics
15. Minimum Viable Agile
Let’s take a closer look at some traditional
Agile practices in need of improvement.
1. Story Point based Velocity
2. Sprint Burn Downs
19. Planning in the world of MVA
Option #1
Hours-long traditional sprint planning meetings spent playing planning
poker and a team arguing about the difference between 2’s and 3’s.
Option #2
Short story slicing meeting where the focus is on understanding
and slicing large stories.
“Do we understand this story? If not, let’s keep slicing.”
1 2 3 5 8 13 21 40 100
Right-sizing the work
20. Planning in the world of MVA
Input Q Design Develop Test Done
3
12
9
7
8
6
4
5
Cycle Time
Throughput
10
14 days from this point
5 stories per week
21. Sprint Burn Downs
Why do we assume this is the
wrong place for this team to be?
Work
Time
22. Nature of the Work
Manufacturing = repeatable processes
Product Development = one time processes
One-time processes are non-deterministic in nature
23. Nature of the Work
Deterministic Approach
Project Start
Knowledge
“Complete”
Planned Activity
Non-deterministic Reality
Project Start
Knowledge
“Complete”?
What Customer
Really WantsBetter Knowledge
Project Managers in the middle,
pulling out their hair
24. Sprint Burn Downs
This is a problem.
What exactly do we do now?
Work
Time
It’s not actionable!
26. Sprint Burn Downs (refactored)
(from ActionableAgile.com)
Work
Time
Actionable Information!
27. Coaching Minimum Viable Agile
• Training teams on estimation techniques or
schemes.
• Focusing on making fixed scope, fixed time,
commitment-based sprints work.
• Teaching teams how to use burn-down charts.
• Teaching teams to use Velocity to plan releases.
Less of:
28. Coaching Minimum Viable Agile
• Coaching teams to Limit their WIP to achieve
better focus.
• Using simple and pragmatic time-boxes for
better risk management.
• Teaching teams how to visualize their work.
• Coaching teams to conduct retrospectives and
adopt continuous improvement.
• Planning releases based on historical
measurements.
More of:
29. Where does Agile go from here?
The first 15 years of Agile prompted us to ask:
“What are all the practices we
need to adopt to be successful?”
Minimum Viable Agile prompts us to ask:
“Now, what practices do we change or
discard to be successful?”
30. Just Enough: Minimally Viable Agile
Troy Tuttle
Lean Agile Coach
KanFlow.com
troy@kanflow.com
@troytuttle
KC PMI Professional Development Days
Thank you!
Hinweis der Redaktion
Speaker eval forms
Agilehood open space!
LWS KC
Write down the first few things that come to mind when you Complete the sentence…
Amortized death marches
Practices divorced (mostly) from principles
Let’s install this process, or follow this recipe!
Building the “right thing”
Building the “right thing”
iPhone as an example… software is a design process.
Think about the software you use everyday at your job.. Email, calendar, web browser.
Software dev is a non-deterministic activity, but we try to approach software projects in a deterministic fashion.
Every attempt is a prototype!
It’s about writing a recipe vs. following a recipe.
Project problems are due to misunderstanding about the nature of software development.
Software dev is a non-deterministic activity, but we try to approach software projects in a deterministic fashion.