3. inxin
Introduction
• Not like anything you’ve seen before!
– Forget about other planning techniques
(critical path, buffering, contingency, …)
• Specialized for Software development
– Especially OO development
– No physical boundaries
– No need to respect the natural order!
No adoption of existing planning techniques!
5. inxin
Intent
• Make planning
– more Predictable
– more Adaptable
• The goal is to always have
– a shippable product on time
– that better fits the customer’s requirements
9. inxin
Agile vs Rigid Predictability
• What kind of goals can we set without
sacrificing Agility?
• Is it possible that setting fixed goals can
even improve Agility?
• Are there different goals to choose from?
• Do we need different techniques or is there
a universal technique for different
situations?
11. inxin
Release planning too Rigid
• There are no alternatives
– Just one backlog (one big pile of features)
– No structure in the backlog (just a sequence)
– No fallback
23. inxin
Iteration Planning
• Different planning strategies
– Dimensions in backlog
– No dimensions in backlog
• Same feature can show up in different
iterations
– But with a different dimension
29. inxin
Related techniques
• Partial solutions
• Buffering
– Scope buffer (DSDM 70% rule)
– Time buffer
• Splitting user stories of mixed priority
– These are new user stories
31. inxin
Explicit vs Implicit Dimension
• Implicit dimensions
– Common language
– Less overhead for planning
– Especially useful in iteration planning
• Team knows what a dirt/cobble/asphalted road for a
feature looks like
Keep an open mind don’t be biased
Agile methodologies borrow a lot from other more general theories
e.g. Lean manufacturing and lean development
Building classes can be done in random order (mostly)
We follow the method to describe software design patterns.
A natural way to describe things.
Later on , a workshop where we will apply this.
Bold statements:
A better fit!
always on time
Predictability and Adaptabilityare not opposites
Normally when predictability goes up, adaptability goes down
DP says that you can have predictability (to a certain extent) and that adaptability will even go up.
We are not alone
We are part of a bigger whole (product release, marketing, …)
Time is money
Planning is the Achilles heel of the agile movement
We propose an alternative, and improvement
By introducing dimensional planning
Especially when there are external dependencies
No fallback = no plan B
Release planning -> plan for alternative futures
We’ll show later how these shortcomings are addressed in dimensional planning
Peddler = Leurder van deur tot deur
Feature Group Level = bunch of features that
belong togethern (theme in xp, or an epic)
Beyond release planning means: product, portfolio, and strategic planning (the onion)
Gets you from point A to point B
But not with everything
Better for motorised (automated) transport
The customers request
Exclusive – pick one
The customer decides which dimension she chooses
A is everywhere
B is not in the asphalted future
What if something bad happens?
You can reuse some features from different dimensions
Not all is thrown away when you change your dimension
Incremental
You must go from dirt to cobble to asphalt
While on feature group level, you could pick one dimension.
First say what we see here
1, 2 and 3 are feature groups
Plan with dimension visible of not visible (but always present)
Default burndown chart.Advantage: can burn down more features
Advantage: invisible and easy to implement
Guaranteed to have finished all your features at some level.
The customers must choose one alternate future
Depth is not always about functionality
Partial solutions: change your solution in the middle of something. Problaby a broken solution when things don’t go as planned.
Buffering
Splitting userstories:
Data boundaries
operational boundaries (crud)
cross cutting concerns
functional – non functional
mixed priority