at bruxelles scaling agile - v1.5 slideshare
TRANSCRIPT
1
© OCTO 2012 © OCTO 2012
Agile at Large Scale
A Return on Experience from a Large Project
2
© OCTO 2012
Mathieu Despriée – Senior Architect
@mdeocto
Hervé Lourdin – Project Director,
@HerveLourdin Lean & Agile practice leader
Who we are
3
© OCTO 2012
Hypothesis
You are not new with Agile
You know what mean:
User Story
Story Point
TDD
Continuous Integration
Retrospective
You know SCRUM
4
© OCTO 2012
We will focus on differences
we noticed at large scale
5
© OCTO 2012
Wish to create a new innovative product
New Technologies, New Architecture
Touch screen for front office
Web for the back office
Strategic project for the company
9500 customers
5 M of sales transactions per day targeted
Chosen Methodology: SCRUM
Project context
6
© OCTO 2012
This 1st agile experiment at large scale burns lot of project
management resources
The 7 distributed teams have difficulties to integrate their
respective developments
UA phases are painful because of unstable software
A first major version is awaited by the market 6 months later
After 6 months of development
7
© OCTO 2012
Create The Flow
Quality At Large Scale
Adapt Yourself To The Flow
Steering The Flow
Improve
Agenda
8
© OCTO 2012
1
CREATE THE FLOW
9
© OCTO 2012
Visualize The Flow
Rituals At Large Scale
Cadence
CREATE THE FLOW
10
© OCTO 2012
Visualize The Flow
Rituals At Large Scale
Cadence
CREATE THE FLOW
11
© OCTO 2012
TODO WIP DONE
12
© OCTO 2012
At large scale, the Value
Stream must be detailed
Upstream & Downstream of the
development phase
13
© OCTO 2012
…with an electronic version for geo-distributed teams
14
© OCTO 2012
Visualize The Flow
Rituals At Large Scale
Cadence
CREATE THE FLOW
15
© OCTO 2012
Dev. TesterTech LeadTeam Lead
OpsTe
am
am
ba
ss
ad
ors
Methodological
Coach
16
© OCTO 2012
Ops
Leader
Team
Leaders
Test
LeaderSupport
Leader
CTO
Problems
Only
17
© OCTO 2012
Multi-site demo
Romania
1 team
Moldavia3 teams
Vietnam
2 teams
France
3 teams
Skype Mikogo
18
© OCTO 2012
Visualize The Flow
Rituals At Large Scale
Cadence
CREATE THE FLOW
19
© OCTO 2012
Iteration Cost Model
Coordination & Steering
Value Added Work
Costs
TimeIteration beginning Iteration end
Transaction
Cost
Transaction
Cost
*Source : David Anderson
20
© OCTO 2012
Iteration Cost Model
Coordination & Steering
Value Added Work
Costs
TimeIteration beginning Iteration end
Transaction
Cost
Transaction
Cost
*Source : David Anderson
TOTAL : 4 to 5 weeks
~6 FTE
1
week1
week
21
© OCTO 2012
The Lack Of
FEEDBACK
22
© OCTO 2012
On The Project
Coordination & Steering
Value Added Work
Costs
TimeIteration beginning Iteration end
Transaction
Cost
Transaction
Cost
*Source : David Anderson
TOTAL : 4 to 5 weeks
~6 FTE
1
week1
weekFailure Load
23
© OCTO 2012
Objective : 2 weeks
Coordination & Steering
Transaction
Cost
Value Added Work
Costs
TimeIteration beginning Iteration end
1
week
~6 FTE
Failure Load
1
day
*Source : David Anderson
24
© OCTO 2012
Create The Flow
Quality At Large Scale
Adapt Yourself To The Flow
Steering The Flow
Improve
Agenda
25
© OCTO 2012
2
QUALITY AT LARGE SCALE
26
© OCTO 2012
Only one Continuous Integration
45 Developers
SVN
Continuous
Integration
Jenkins/Maven
Site 1
Site 2
Site 3
100 commits/day
on Trunk
Build + Unit Tests
every 3 min
27
© OCTO 2012
You Gonna Have To Test All That !
28
© OCTO 2012
sd
Specifying with Acceptance Tests
29
© OCTO 2012
Specifying with Acceptance Tests
29
30
© OCTO 2012
STOP THE LINE
31
© OCTO 2012
Software Factory
SVN
Continuous
Integration
Jenkins/Maven
Site 1
Developers
Site 2
Site 3
Business
Analysts
Green Pepper
32
© OCTO 2012
33
© OCTO 2012
You Build it?
You Fix it!
34
© OCTO 2012
2 weeks !!
Coordination & Steering
Value Added Work
Costs
TimeIteration beginning Iteration end
1
day
Failure Load
0,5
day
2 weeks
35
© OCTO 2012
Create The Flow
Quality At Large Scale
Adapt Yourself To The Flow
Steering The Flow
Improve
Agenda
36
© OCTO 2012
3
ADAPT YOURSELF
TO THE FLOW
37
© OCTO 2012
BETTER TO PUMP EVEN IF NOTHING HAPPENS
THAN TO RISK SOMETHING WORSE HAPPENING
BY NOT PUMPING
38
© OCTO 2012
Sprint Planning
Coordination & Steering
Value Added Work
Costs
TimeIteration beginning Iteration end
1
day
Failure Load
0,5
day
39
© OCTO 2012
40
© OCTO 2012
Sprint planning
Coordination & Steering
Value Added Work
Costs
TimeIteration beginning Iteration end
41
© OCTO 2012
More adaptability for the PO: continuous planning
Teams estimate “on the fly”
It is not necessary to calculate “how much we can do for this
iteration”
Stories can’t be “half done” anymore
Migrating to “Pure” Flow : Gains
42
© OCTO 2012
No more sprint planning does not mean no rituals anymore:
Demo are still needed and,
Retrospectives are mandatory!
No iterative planning anymore but you need to check
continuously the buffers
Migrating to “Pure” Flow : Warnings
43
© OCTO 2012
Product
Backlog
BUFFER
Requirement
(using tests)
BUFFER BUFFER
Validation on
the flyDev
Acceptance
Infra gtw
(perf, sécu…)
DONE
& in PROD
CHECK POTENTIAL FLOW DISRUPTIONS
44
© OCTO 2012
« With Great Power, comes Great
Responsibility »Benjamin « Ben » Parker
P.O. must be constantly available to support teams on:
Planning
Business / Functional questions
Migrating to “Pure” Flow : Warnings
45
© OCTO 2012
Component Teams
46
© OCTO 2012
Component AFront Office
Team A
Component BExchanges
Team B
Component CBack Office
Team C
Component DBatches
Team D
FEATURE 1
FEATURE 2
FEATURE 3
FEATURE 4
FEATURE 5
FEATURE 6
FEATURE 7
FEATURE 8
FEATURE 9
FEATURE 10
Component Teams
47
© OCTO 2012
Component AFront Office
Team A
Component BExchanges
Team B
Component CBack Office
Team C
Component DBatchs
Team D
FEATURE 1
FEATURE 2
FEATURE 3
FEATURE 4
FEATURE 5
FEATURE 6
FEATURE 7
FEATURE 8
FEATURE 9
FEATURE 10
Component Teams
48
© OCTO 2012
Component AFront Office
Team A
Component BExchanges
Team B
Component CBack Office
Team C
Component DBatchs
Team D
FEATURE 1
FEATURE 2
FEATURE 3
FEATURE 4
FEATURE 5
FEATURE 6
FEATURE 7
FEATURE 8
FEATURE 9
FEATURE 10
Component Teams
49
© OCTO 2012
Component ATobacco
Team
Component BDemat.
Team
Component CPressTeam
Component DTelecom
Team
FEATURE 1
FEATURE 4
FEATURE 5
FEATURE 3
FEATURE 6
FEATURE 8
FEATURE 9
FEATURE 2
FEATURE 7
Feature Teams
50
© OCTO 2012
Cross-Techno Team
Team Leader
Developers
Tester
51
© OCTO 2012
Create expertise on business and Give autonomy:
Team / Team members should be able to take decision by
themselves
Teams can live at their own pace if required by their backlog
priorization
Feature Teams: Gains
51
52
© OCTO 2012
As a counterpart…
Feature Team
52
53
© OCTO 2012
Component ATobacco
Team
Component BDemat.
Team
Component CPressTeam
Component DTelecom
Team
FEATURE 1
FEATURE 4
FEATURE 5
FEATURE 3
FEATURE 6
FEATURE 8
FEATURE 9
FEATURE 2
FEATURE 7
Feature Teams
54
© OCTO 2012
Communities of Practice
55
© OCTO 2012
A necessary counterbalance to feature-teams
The practice leader is a senior developer, who :
is in charge of the component architecture
makes sure that software is built the correct way
facilitates the sharing of practices
Community of Practice
56
© OCTO 2012
“Standard is the best-known practice, in the project team at the
present day, to realise a certain type of task”
The Standard
57
© OCTO 2012
Hands On
58
© OCTO 2012
Collaborative Design
59
© OCTO 2012
TestsJava.NET
Today’s organisation
PRACTICE LEADERSF
EA
TU
RE
-TE
AM
S L
EA
DE
RS
Business
Area A
Business
Area C
Business
Area B
Facilitation & methodology
Release management
60
© OCTO 2012
Create The Flow
Quality At Large Scale
Adapt Yourself To The Flow
Steering The Flow
Improve
Agenda
61
© OCTO 2012
4
STEERING THE FLOW
62
© OCTO 2012
The Story Map, our Roadmap
63
© OCTO 2012
Story Points
64
© OCTO 2012
Story Points
65
© OCTO 2012
66
© OCTO 2012
ide
a fro
m J
eff P
atto
n
67
© OCTO 2012
0
50
100
150
200
2500
9/0
8…
11
/08…
13
/08…
17
/08…
19
/08…
23
/08…
25
/08…
27
/08…
31
/08…
02
/09…
06
/09…
08
/09…
10
/09…
14
/09…
16
/09…
20
/09…
22
/09…
24
/09…
28
/09…
30
/09…
04
/10…
06
/10…
08
/10…
12
/10…
14
/10…
18
/10…
20
/10…
21
/10…
25
/10…
27
/10…
29
/10…
nu
mb
er
of
ite
ms
time
Cumulative Flow Diagram (CFD)
INPUT QUEUE
STUDY DEV - WIP
STUDY DEV - DONE
VALIDATION - TODO
VALIDATION - WIP
DONE - WAIT JAVA
DONE - WIP JAVA
DONE - IN CI
DONE - DONE
CANCELLED
In Process : 30 User Stories
Lead Time = 6 weeks
Lead Time < 2 weeks
In Process : 15 User Stories
68
© OCTO 2012
0
1
2
3
4
5
6
7
8
9
10
11
12
13
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
Occ
ure
nce
s
days
Lead Time Distribution
Average = 11σ = 12n = 106
S M L XL
69
© OCTO 2012
http://w
ww
.win
dham
sport
spages.c
om
/im
ages/h
ighschool/sw
imm
ing/2
008/1
22708/b
oy
s/D
SC
_0779.g
if
Defects (20%)
Features (50%)
Improvements (30%)
70
© OCTO 2012
Delivery:
Every month: one major release
Every week: one minor release
Lead-time:
Metrics as of today
M
DEV Q/A PROD
4 weeks 4 to 6 weeks
10 WEEKS
L
DEV Q/A PROD
6 weeks
14 WEEKS
6 to 8 weeks
71
© OCTO 2012
Create The Flow
Quality At Large Scale
Adapt Yourself To The Flow
Steering The Flow
Improve
Agenda
72
© OCTO 2012
5
IMPROVE
73
© OCTO 2012
Improve your tools
Manage problems
Continuous Improvement
74
© OCTO 2012
Improve your tools
Manage problems
Continuous Improvement
75
© OCTO 2012
76
© OCTO 2012
DevOps Collaboration
76
Share your toys !
77
© OCTO 2012
Software Factory
SVN
Site 1
Site 2
Site 3
Business
Analysts
Green
Pepper
Automated
deployment
(chef)
Dev
Q/A
Ops
• A totally automated build and
deployment pipeline
• Deployment to server and
terminals in one single
click, whatever the target
environment
• More than 100 deployment to
production in 18 months
PROD
Jenkins
78
© OCTO 2012
Technical and Business Metrics as Feedback Loop
Business Transactions
€ Mbps
Load
Customer Creations
Connected clients
79
© OCTO 2012
Improve your tools
Manage problems
Continuous Improvement
80
© OCTO 2012
Don’t shoot the messenger !
81
© OCTO 2012
Establish a trust culture
82
© OCTO 2012
Retrospective
83
© OCTO 2012
YOU SAY IT ?
YOU OWN IT !
84
© OCTO 2012
Every week
with CTO, team leaders, tech leaders, ops …
Not a planning meeting
Open Agenda: We share things that matter
Problems
Needs
Risks
Information
etc…
And … improvement ideas!
Team Leaders meeting
85
© OCTO 2012
!
CONCLUSIONS
86
© OCTO 2012
2500 customers on production systems, with a growth of 400 new per month
Teams assimilated business and technical knowledge, and methodology
Deployment rythm is sustained, deadlines are met
A collaboration hand in hand Dev and Ops
An actual collaboration between marketing team, and technicalteams
People saying they wouldn’t go back
Status after 18 months (more than 40 iterations !)
87
© OCTO 2012
Get control over the value production flow
Give autonomy and responsabilities to people
High trust culture
Continuous Improvement
There’s no magical Agile recipe : you’ll have to adapt yourself
continuously
Key factors of success
88
© OCTO 2012
?
QUESTIONS / ANSWERS