Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
From the Vision to the working software and back
1. An approach to align portfolio, programs and teams in the Agile way.
FromtheVisionto theWorkingSoftware and backAccomplishment of the Strategic Goals
Johnny Ordóñez
2. In a company where I had the opportunity to visit, members from Executive staff told me about three main needs that they have and want achieve urgently...
3. Now, We have three main needs
•Alignthe entire company effort to the accomplishment of the strategic goals.
•Predict(at high level) what we can deliver for planned releases until 2014.
•Measurethe progress on organizational strategic goals.
7. Time
Be better
Today, We’re here
And We want be here
Vision
8. Time
Be better
Today, We’re here
And We want be here
Vision
Strategy
9. Time
Be better
Today, We’re here
And We want be here
Vision
Strategy
Strategic Goals
Revenues
Positioning
Operative efficiency
Competitiveness
10. Execution
Time
Be better
Today, We’re here
And We want be here
Vision
Strategy
Strategic Goals
Revenues
Positioning
Operative efficiency
Competitiveness
Portfolio
Program
Teams
11. Time
Be better
Today, We’re here
And We want be here
Vision
Strategy
Strategic Goals
Revenues
Positioning
Operative efficiency
Competitiveness
Portfolio
Program
Teams
Guide
Inform
2
3
Execution
1
21. 1. Define strategic goals
•IncreasetheValueShare
•Increaserevenuesin a sustainableway
•Modernizeproductportfolio
•Keepattendingourcustomers
•Attendto new customers
•Be perceivedas a greatplace to work
•New configurable, customizableand adaptable product
22. 2. Prioritize the strategic goals
Business Value
New Value for the Organization
Customer Value
Value for our Customers
Hi
Low
Low
Hi
23. 2. Prioritize the strategic goals
Business Value
New Value for the Organization
Customer Value
Value for our Customers
Hi
Low
Low
Hi
24. 2. Prioritize the strategic goals
Business Value
New Value for the Organization
Customer Value
Value for our Customers
Hi
Low
Low
Hi
25. 3. Order the strategic goals by priority
Business Value
New Value for the Organization
Customer Value
Value for our Customers
Hi
Low
Low
Hi
GOAL 1
GOAL 4
GOAL 2
GOAL 5
GOAL 8
GOAL 9
GOAL 7
GOAL 6
GOAL 3
26. 3. Order the strategic goals by priority
GOAL 1
GOAL 4
GOAL 2
GOAL 3
+
-
Priority
27. 4. Create an Epic with an explicit anchor to a strategic goal
GOAL 1
GOAL 4
GOAL 2
GOAL 3
E1
E4
E5
E6
E1
E2
E3
E4
GOAL 1
GOAL 4
GOAL 2
GOAL 3
Approved & Prioritized Epics
Analysis Funnel
Light Business Case
Finance return
Potential ROI
Budget/Costs
E2
E3
28. 5. Decompose into features
GOAL 1
GOAL 4
GOAL 2
GOAL 3
E1
E2
E3
E4
E5
F1
F2
F3’’’
F1’’
F2’’
F3
F1’
F2’
F3’
F1’’’
F2’’’
29. 6. Estimate new features
Product Team gives Business Value estimates.
Committee / Dev Team gives Effort estimates.
30. 6.1. Estimate new features –Business Value
Product Team
7 +/-2 people
Product Managers
Product Owners
Business/Epic Owners (optional)
PM
PO
PO
PO
PM
Using Business Value points
Planning Poker
Business Value Game
Value Sliders
Fibonacci sequence
3 pts
5 pts
8 pts
13 pts
20 pts
40 pts
100 pts
31. 6.1. Estimate new features –Cost of Delay
Product Team
7 +/-2 people
Product Managers
Product Owners
Business/Epic Owners (optional)
Using Cost of Delay points
Fibonacci sequence by each variable
Time Criticality
User| Business Value
Cost of Delay
RiskReduction|
OpportunityEnablementValue
=
+
+
32. 6.1. Estimate new features –Business Value or Cost of Delay
GOAL 1
GOAL 4
GOAL 2
GOAL 3
E1
E2
E3
E4
E5
F1
F2
F3’’’
F1’’
F2’’
F3
F1’
F2’
F3’
F1’’’
F2’’’
18
24
18
35
25
48
23
10
34
21
31
33. 6. Estimate new features –Effort
Estimating Committee
7 +/-2 people
Teams representatives (until 5)
Architects representatives
Operations representatives
Team
Team
Team
Architect
DevOps
Using T-Shirt Sizes
Middle abstraction level
Planning Poker
Story Points equivalence (adjustable in time)
XS => 5 pts
S=> 8 pts
M=> 13 pts
L=> 30 pts
XL=> 40 pts
XXL=> 100 pts
35. 7. Prioritize features – Maximize the ROI
ROI
How many value I will get?
How much I pay to create this
value?
Businesses move and take decisions based on ROI.
36. 7. Prioritize features – Maximize the ROI
ROI
Σ Business Value points
Σ Effort Points
Businesses move and take decisions based on ROI.
37. 7,0%
13,0%
16,0%
19,0%
45,0%
Always
Often
Regularly
Rarely
Never
7. Prioritize features –Maximize the ROI
Chaos Report 2011, Standish Group
80% of the business value is located at 20% of the features (Pareto).
Find the 20%.
Features used in a Typical Software System
20%
Rarely/
Neverused
Always/ Oftenused
64%
45. 10. Set the Release Plan by real capacity
What’s real velocity of our teams right now?
What’s the capacity of our organization?
How are evolving our teams?
Determine the organizational capacity doing a tracking of the real and historical performance by each team. Real velocity is equal to the number of story points delivered by sprint; not calculated.
46. 10.1 Determining the team real velocity
TEAM 1
Sprint
DeliveredStoryPoints
Sprint1
8
Sprint 2
5
Sprint3
3
Sprint 4
5
Sprint5
6
0
1
2
3
4
5
6
7
8
9
Sprint 1
Sprint 2
Sprint 3
Sprint 4
Sprint 5
Delivered Story Points
47. 10.1 Determining the team real velocity
TEAM 1
Average = 5 pts
Sprint
DeliveredStoryPoints
Sprint1
8
Sprint 2
5
Sprint3
3
Sprint 4
5
Sprint5
6
0
1
2
3
4
5
6
7
8
9
Sprint 1
Sprint 2
Sprint 3
Sprint 4
Sprint 5
Delivered Story Points
Average = 5 pts
48. 10.1 Determining the team real velocity
TEAM 1
Sprint
DeliveredStoryPoints
Sprint1
8
Sprint 2
5
Sprint3
3
Sprint 4
5
Sprint5
6
0
1
2
3
4
5
6
7
8
9
Sprint 1
Sprint 2
Sprint 3
Sprint 4
Sprint 5
Delivered Story Points
Average = 5 pts
2 pts
2 pts
Average = 5 pts
Standard Deviation = 2 pts
49. 10.1 Determining the team real velocity
TEAM 1
Sprint
DeliveredStoryPoints
Sprint1
8
Sprint 2
5
Sprint3
3
Sprint 4
5
Sprint5
6
0
1
2
3
4
5
6
7
8
9
Sprint 1
Sprint 2
Sprint 3
Sprint 4
Sprint 5
Delivered Story Points
Average = 5 pts
2 pts
2 pts
Average = 5 pts
Standard Deviation = 2 pts
Best case = 7 pts
Expected case = 5 pts
Worst case = 3 pts
Best case = 7 pts
Worst case = 3 pts
50. 10.1 Determining the team real velocity
TEAM 1
Sprint
DeliveredStoryPoints
Sprint1
8
Sprint 2
5
Sprint3
3
Sprint 4
5
Sprint5
6
7pts
Points
Average = 5 pts
Standard Deviation = 2 pts
Best case = 7 pts
Expected case = 5 pts
Worst case = 3 pts
Time Fixed
Week 1
Week 2
5 pts
3pts
51. 10.1 Determining the team real velocity
TEAM 1
Sprint
DeliveredStoryPoints
Sprint1
8
Sprint 2
5
Sprint3
3
Sprint 4
5
Sprint5
6
10 pts
Points
Average = 5 pts
Standard Deviation = 2 pts
Best case = 7 pts
Expected case = 5 pts
Worst case = 3 pts
Scope Fixed
Week 1
Week 2
Week 2 + X Days
Week 2 + X + Y days
7 pts
52. 10.1 Determining the team real velocity
TEAM 1
Sprint
DeliveredStoryPoints
Sprint1
8
Sprint 2
5
Sprint3
3
Sprint 4
5
Sprint5
6
Points
Average = 5 pts
Standard Deviation = 2 pts
Best case = 7 pts
Expected case = 5 pts
Worst case = 3 pts
Velocity in the time
Sprint 1
Sprint 2
Sprint 3
Sprint 4
53. 53 Private & Confidential
10.1 Determining the team real velocity
TEAM 1
Sprint
DeliveredStoryPoints
Sprint1
8
Sprint 2
5
Sprint3
3
Sprint 4
5
Sprint5
6
Average = 5 pts
Standard Deviation = 2 pts
Best case = 7 pts
Expected case = 5 pts
Worst case = 3 pts
Real Velocity = 5 pts (Expected)
Select a velocity depending on scenario (perception)
Scenarios: Optimist, Expected or Pessimist
54. 10.1 Determining the team real velocity
TEAM 1
Sprint
DeliveredStoryPoints
Sprint1
8
Sprint 2
5
Sprint3
3
Sprint 4
5
Sprint5
6
Average = 5 pts
Standard Deviation = 2 pts
Best case = 7 pts
Expected case = 5 pts
Worst case = 3 pts
Add a risk perspective
Dispersion or Risk Factor: Rotation, Vacations, Sick, Unplanned
Real Velocity = 5 pts (Expected)
Select a velocity depending on scenario (perception)
Scenarios: Optimist, Expected or Pessimist
Dispersion Factor = Size of Loss (points) * % Probability
= 2 pts * 30 % = 0,6 pts
55. 10.1 Determining the team real velocity
TEAM 1
Sprint
DeliveredStoryPoints
Sprint1
8
Sprint 2
5
Sprint3
3
Sprint 4
5
Sprint5
6
Average = 5 pts
Standard Deviation = 2 pts
Best case = 7 pts
Expected case = 5 pts
Worst case = 3 pts
Add a risk perspective
Dispersion or Risk Factor: Rotation, Vacations, Sick, Unplanned
Real Velocity = 5 pts (Expected)
Select a velocity depending on scenario (perception)
Scenarios: Optimist, Expected or Pessimist
Dispersion Factor = Size of Loss (points) * % Probability
= 2 pts * 30 % = 0,6 pts
Velocity to
projections = Real Velocity –Dispersion Factor
= 5 –0.6 pts = 4.4 => 4 pts
Velocity to
projections = 4 pts
56. 10.2 Determining real velocity for all teams
COMPANY CAPACITY
Team
VelocitybySprint
VelocitybyMonth
VelocitybyRelease
(4 months)
Team1
4
8
32
Team2
5
10
40
Team3
2
4
16
Team4
2
4
16
TeamN
4
8
32
Organizational Capacity* = 136 pts by release
57. 10.2 Determining real velocity for all teams
COMPANY CAPACITY
Team
VelocitybySprint
VelocitybyMonth
VelocitybyRelease
(4 months)
Team1
4
8
32
Team2
5
10
40
Team3
2
4
16
Team4
2
4
16
TeamN
4
8
32
Organizational Capacity* = 136 pts by release
*Organizational velocity is reviewed and assessed at the end of each sprint; this moves the release line to adjust the new capacity.
58. 10.2 Determining real velocity for all teams
The idea is create a Pull system that is limited by our actual capacity (Kanban) .
59. 10.3 Put the release lines by capacity
GOAL 1
GOAL 4
GOAL 2
GOAL 3
E1
E2
E3
E4
E5
F1
F2
F3’’’
F1’’
F2’’
F3
F1’
F2’
F3’
F1’’’
F2’’’
10
50
25
18
35
25
48
23
10
34
21
136 pts
136 pts
Dec 2014
Abr2015
Dec 2015
299 Points
60. 10.3 Put the release lines by capacity
GOAL 1
GOAL 4
GOAL 2
GOAL 3
E1
E2
E3
E4
E5
F1
F2
F3’’’
F1’’
F2’’
F3
F1’
F2’
F3’
F1’’’
F2’’’
10
50
25
18
35
25
48
23
10
34
21
136 pts
136 pts
Dec 2014
Abr2015
Dec 2015
299 Points
61. 10.4 Move Features, fit them about capacity.
GOAL 1
GOAL 4
GOAL 2
GOAL 3
E1
E2
E3
E4
E5
F1
F2
F3’’’
F1’’
F2’’
F3
F1’
F2’
F3’
F1’’’
F2’’’
10
50
25
18
35
25
48
23
10
34
21
136 pts
136 pts
Dec 2014
Abr2015
Dec 2015
157 Points
62. 10.4 Move Features, fit them about capacity.
GOAL 1
GOAL 4
GOAL 2
GOAL 3
E1
E2
E3
E4
E5
F1
F2
F3’’’
F1’’
F2’’
F3
F1’
F2’
F3’
F1’’’
F2’’’
10
50
25
18
35
25
48
23
10
34
21
136 pts
136 pts
Dec 2014
Abr2015
Ago 2015
132 Points
82. ReleaseBurnUpChart
Scope
Story Points
Sprint 1
Sprint 2
Sprint 3
Sprint 4
Trend
Best Velocity
Worst Velocity
Cumulative progress
83. Work by Team (Features by Team)
E1
E2
E3
E4
E5
F1
F2
F3’’’
F2’’
F1’
F2’
F3’
10
25
18
35
25
23
34
TEAM 1
TEAM 2
25 Points
TEAM 3
77 Points
58 Points
84. Work by Team (Stories by Team)
F2
F3
F1
F4
H1
H2
H3’’’
H2’’
H1’
H2’
H3’
10
25
18
35
25
23
34
TEAM 1
TEAM 2
25 Points
TEAM 3
77 Points
58 Points
85. AssessingPredictability
85 Private & Confidential
Teams can plan, coordinate and delivery predictably enough to make a release level commitment.
Does the team deliver the functionality it intended each iteration?
Has the team established a stable velocity?
Is working, tested, remediated code being delivered frequently?
Does the team have everything expected to perform the work each iteration?
Does the team have the confidence they will deliver the functionality expected for the release?
Story Ratio
Velocity Variance
Cycle Time
Resource Availability
Release Confidence
86. MetricsforAgile Teams
METRIC
SUCCESS CRITERIA
TREND
Story Completion Ratio
The goal is help teams become predictable in their estimating.
> 90% Stories Committed / Delivered
80% -90% Stories Committed / Delivered
< 80% Stories Committed / Delivered
Velocity Variance
The goal is help teams become stable in their velocity.
20% of Variance of last 3 sprints
40% of Variance of last 3 sprints
40%+ of Variance of last 3 sprints
Cycle Time / Ready to Release
There should not be more than 4 weeks work of throughput active in a team from Ready to Delivered.
<2 weeks
2 weeks –4 weeks
>4 weeks
87. MetricsforAgile Teams(continuation)
METRIC
SUCCESS CRITERIA
TREND
Resource Availability
Is the team getting the resource available that was planned?. We need an indication when planned resources aren’t available.
Resources are available as planned
2 off planned resource availability
3+ off planned resource availability
On time release confidence
Teams should be able to roughly estimate and identity risks and dependencies sufficiently that can make and keep release commitments.
Team is very confident
Team is challenge
Release can’t be delivered
QA Ratio / % Technical Debt
Automated Tests / Total Test or Code Coverage or % Technical Debt.
> 90% Automated Tests / Total Tests
80% -90% Automated Tests / Total Tests
< 80% Automated Tests / Total Tests
95. Now, We have three main needs and three tools
•Alignthe entire company effort to the accomplishment of the strategic goals: Goal-based priorization.
•Predict(at high level) what we can deliver for planned releases until 2014: Release Planning based on current capacity.
•Measurethe progress on organizational strategic goals:Valuable metrics and artifacts.
96. "A good plan violently executed now is better than a perfect plan executed next week."
-George S. Patton
97. Teaching an Elephant to Dance or Scaling Agile to Large Project Teams
References
Teaching an Elephant to Dance or Scaling Agile to Large Project Teams
http://www.slideshare.net/VersionOne/teaching-an-elephant-to-dance
Agile FeaturesPrioritization
http://www.targetprocess.com/blog/2005/10/agile-features-prioritization.html
WSJF
http://scaledagileframework.com/wsjf/