at bruxelles scaling agile - v1.5 slideshare

88
1 © OCTO 2012 © OCTO 2012 Agile at Large Scale A Return on Experience from a Large Project

Upload: herve-lourdin

Post on 04-Jul-2015

69 views

Category:

Business


1 download

TRANSCRIPT

Page 1: At bruxelles   scaling agile - v1.5 slideshare

1

© OCTO 2012 © OCTO 2012

Agile at Large Scale

A Return on Experience from a Large Project

Page 2: At bruxelles   scaling agile - v1.5 slideshare

2

© OCTO 2012

Mathieu Despriée – Senior Architect

@mdeocto

Hervé Lourdin – Project Director,

@HerveLourdin Lean & Agile practice leader

Who we are

Page 3: At bruxelles   scaling agile - v1.5 slideshare

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

Page 4: At bruxelles   scaling agile - v1.5 slideshare

4

© OCTO 2012

We will focus on differences

we noticed at large scale

Page 5: At bruxelles   scaling agile - v1.5 slideshare

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

Page 6: At bruxelles   scaling agile - v1.5 slideshare

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

Page 7: At bruxelles   scaling agile - v1.5 slideshare

7

© OCTO 2012

Create The Flow

Quality At Large Scale

Adapt Yourself To The Flow

Steering The Flow

Improve

Agenda

Page 8: At bruxelles   scaling agile - v1.5 slideshare

8

© OCTO 2012

1

CREATE THE FLOW

Page 9: At bruxelles   scaling agile - v1.5 slideshare

9

© OCTO 2012

Visualize The Flow

Rituals At Large Scale

Cadence

CREATE THE FLOW

Page 10: At bruxelles   scaling agile - v1.5 slideshare

10

© OCTO 2012

Visualize The Flow

Rituals At Large Scale

Cadence

CREATE THE FLOW

Page 11: At bruxelles   scaling agile - v1.5 slideshare

11

© OCTO 2012

TODO WIP DONE

Page 12: At bruxelles   scaling agile - v1.5 slideshare

12

© OCTO 2012

At large scale, the Value

Stream must be detailed

Upstream & Downstream of the

development phase

Page 13: At bruxelles   scaling agile - v1.5 slideshare

13

© OCTO 2012

…with an electronic version for geo-distributed teams

Page 14: At bruxelles   scaling agile - v1.5 slideshare

14

© OCTO 2012

Visualize The Flow

Rituals At Large Scale

Cadence

CREATE THE FLOW

Page 15: At bruxelles   scaling agile - v1.5 slideshare

15

© OCTO 2012

Dev. TesterTech LeadTeam Lead

OpsTe

am

am

ba

ss

ad

ors

Methodological

Coach

Page 16: At bruxelles   scaling agile - v1.5 slideshare

16

© OCTO 2012

Ops

Leader

Team

Leaders

Test

LeaderSupport

Leader

CTO

Problems

Only

Page 17: At bruxelles   scaling agile - v1.5 slideshare

17

© OCTO 2012

Multi-site demo

Romania

1 team

Moldavia3 teams

Vietnam

2 teams

France

3 teams

Skype Mikogo

Page 18: At bruxelles   scaling agile - v1.5 slideshare

18

© OCTO 2012

Visualize The Flow

Rituals At Large Scale

Cadence

CREATE THE FLOW

Page 19: At bruxelles   scaling agile - v1.5 slideshare

19

© OCTO 2012

Iteration Cost Model

Coordination & Steering

Value Added Work

Costs

TimeIteration beginning Iteration end

Transaction

Cost

Transaction

Cost

*Source : David Anderson

Page 20: At bruxelles   scaling agile - v1.5 slideshare

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

Page 21: At bruxelles   scaling agile - v1.5 slideshare

21

© OCTO 2012

The Lack Of

FEEDBACK

Page 22: At bruxelles   scaling agile - v1.5 slideshare

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

Page 23: At bruxelles   scaling agile - v1.5 slideshare

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

Page 24: At bruxelles   scaling agile - v1.5 slideshare

24

© OCTO 2012

Create The Flow

Quality At Large Scale

Adapt Yourself To The Flow

Steering The Flow

Improve

Agenda

Page 25: At bruxelles   scaling agile - v1.5 slideshare

25

© OCTO 2012

2

QUALITY AT LARGE SCALE

Page 26: At bruxelles   scaling agile - v1.5 slideshare

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

Page 27: At bruxelles   scaling agile - v1.5 slideshare

27

© OCTO 2012

You Gonna Have To Test All That !

Page 28: At bruxelles   scaling agile - v1.5 slideshare

28

© OCTO 2012

sd

Specifying with Acceptance Tests

Page 29: At bruxelles   scaling agile - v1.5 slideshare

29

© OCTO 2012

Specifying with Acceptance Tests

29

Page 30: At bruxelles   scaling agile - v1.5 slideshare

30

© OCTO 2012

STOP THE LINE

Page 31: At bruxelles   scaling agile - v1.5 slideshare

31

© OCTO 2012

Software Factory

SVN

Continuous

Integration

Jenkins/Maven

Site 1

Developers

Site 2

Site 3

Business

Analysts

Green Pepper

Page 32: At bruxelles   scaling agile - v1.5 slideshare

32

© OCTO 2012

Page 33: At bruxelles   scaling agile - v1.5 slideshare

33

© OCTO 2012

You Build it?

You Fix it!

Page 34: At bruxelles   scaling agile - v1.5 slideshare

34

© OCTO 2012

2 weeks !!

Coordination & Steering

Value Added Work

Costs

TimeIteration beginning Iteration end

1

day

Failure Load

0,5

day

2 weeks

Page 35: At bruxelles   scaling agile - v1.5 slideshare

35

© OCTO 2012

Create The Flow

Quality At Large Scale

Adapt Yourself To The Flow

Steering The Flow

Improve

Agenda

Page 36: At bruxelles   scaling agile - v1.5 slideshare

36

© OCTO 2012

3

ADAPT YOURSELF

TO THE FLOW

Page 37: At bruxelles   scaling agile - v1.5 slideshare

37

© OCTO 2012

BETTER TO PUMP EVEN IF NOTHING HAPPENS

THAN TO RISK SOMETHING WORSE HAPPENING

BY NOT PUMPING

Page 38: At bruxelles   scaling agile - v1.5 slideshare

38

© OCTO 2012

Sprint Planning

Coordination & Steering

Value Added Work

Costs

TimeIteration beginning Iteration end

1

day

Failure Load

0,5

day

Page 39: At bruxelles   scaling agile - v1.5 slideshare

39

© OCTO 2012

Page 40: At bruxelles   scaling agile - v1.5 slideshare

40

© OCTO 2012

Sprint planning

Coordination & Steering

Value Added Work

Costs

TimeIteration beginning Iteration end

Page 41: At bruxelles   scaling agile - v1.5 slideshare

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

Page 42: At bruxelles   scaling agile - v1.5 slideshare

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

Page 43: At bruxelles   scaling agile - v1.5 slideshare

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

Page 44: At bruxelles   scaling agile - v1.5 slideshare

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

Page 45: At bruxelles   scaling agile - v1.5 slideshare

45

© OCTO 2012

Component Teams

Page 46: At bruxelles   scaling agile - v1.5 slideshare

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

Page 47: At bruxelles   scaling agile - v1.5 slideshare

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

Page 48: At bruxelles   scaling agile - v1.5 slideshare

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

Page 49: At bruxelles   scaling agile - v1.5 slideshare

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

Page 50: At bruxelles   scaling agile - v1.5 slideshare

50

© OCTO 2012

Cross-Techno Team

Team Leader

Developers

Tester

Page 51: At bruxelles   scaling agile - v1.5 slideshare

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

Page 52: At bruxelles   scaling agile - v1.5 slideshare

52

© OCTO 2012

As a counterpart…

Feature Team

52

Page 53: At bruxelles   scaling agile - v1.5 slideshare

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

Page 54: At bruxelles   scaling agile - v1.5 slideshare

54

© OCTO 2012

Communities of Practice

Page 55: At bruxelles   scaling agile - v1.5 slideshare

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

Page 56: At bruxelles   scaling agile - v1.5 slideshare

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

Page 57: At bruxelles   scaling agile - v1.5 slideshare

57

© OCTO 2012

Hands On

Page 58: At bruxelles   scaling agile - v1.5 slideshare

58

© OCTO 2012

Collaborative Design

Page 59: At bruxelles   scaling agile - v1.5 slideshare

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

Page 60: At bruxelles   scaling agile - v1.5 slideshare

60

© OCTO 2012

Create The Flow

Quality At Large Scale

Adapt Yourself To The Flow

Steering The Flow

Improve

Agenda

Page 61: At bruxelles   scaling agile - v1.5 slideshare

61

© OCTO 2012

4

STEERING THE FLOW

Page 62: At bruxelles   scaling agile - v1.5 slideshare

62

© OCTO 2012

The Story Map, our Roadmap

Page 63: At bruxelles   scaling agile - v1.5 slideshare

63

© OCTO 2012

Story Points

Page 64: At bruxelles   scaling agile - v1.5 slideshare

64

© OCTO 2012

Story Points

Page 65: At bruxelles   scaling agile - v1.5 slideshare

65

© OCTO 2012

Page 66: At bruxelles   scaling agile - v1.5 slideshare

66

© OCTO 2012

ide

a fro

m J

eff P

atto

n

Page 67: At bruxelles   scaling agile - v1.5 slideshare

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

Page 68: At bruxelles   scaling agile - v1.5 slideshare

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

Page 69: At bruxelles   scaling agile - v1.5 slideshare

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%)

Page 70: At bruxelles   scaling agile - v1.5 slideshare

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

Page 71: At bruxelles   scaling agile - v1.5 slideshare

71

© OCTO 2012

Create The Flow

Quality At Large Scale

Adapt Yourself To The Flow

Steering The Flow

Improve

Agenda

Page 72: At bruxelles   scaling agile - v1.5 slideshare

72

© OCTO 2012

5

IMPROVE

Page 73: At bruxelles   scaling agile - v1.5 slideshare

73

© OCTO 2012

Improve your tools

Manage problems

Continuous Improvement

Page 74: At bruxelles   scaling agile - v1.5 slideshare

74

© OCTO 2012

Improve your tools

Manage problems

Continuous Improvement

Page 75: At bruxelles   scaling agile - v1.5 slideshare

75

© OCTO 2012

Page 76: At bruxelles   scaling agile - v1.5 slideshare

76

© OCTO 2012

DevOps Collaboration

76

Share your toys !

Page 77: At bruxelles   scaling agile - v1.5 slideshare

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

Page 78: At bruxelles   scaling agile - v1.5 slideshare

78

© OCTO 2012

Technical and Business Metrics as Feedback Loop

Business Transactions

€ Mbps

Load

Customer Creations

Connected clients

Page 79: At bruxelles   scaling agile - v1.5 slideshare

79

© OCTO 2012

Improve your tools

Manage problems

Continuous Improvement

Page 80: At bruxelles   scaling agile - v1.5 slideshare

80

© OCTO 2012

Don’t shoot the messenger !

Page 81: At bruxelles   scaling agile - v1.5 slideshare

81

© OCTO 2012

Establish a trust culture

Page 82: At bruxelles   scaling agile - v1.5 slideshare

82

© OCTO 2012

Retrospective

Page 83: At bruxelles   scaling agile - v1.5 slideshare

83

© OCTO 2012

YOU SAY IT ?

YOU OWN IT !

Page 84: At bruxelles   scaling agile - v1.5 slideshare

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

Page 85: At bruxelles   scaling agile - v1.5 slideshare

85

© OCTO 2012

!

CONCLUSIONS

Page 86: At bruxelles   scaling agile - v1.5 slideshare

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 !)

Page 87: At bruxelles   scaling agile - v1.5 slideshare

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

Page 88: At bruxelles   scaling agile - v1.5 slideshare

88

© OCTO 2012

?

QUESTIONS / ANSWERS