release wednesdays and the agile release train upload

34
Release Wednesdays and the Agile Release Train

Upload: chris-smith

Post on 07-Aug-2015

278 views

Category:

Software


3 download

TRANSCRIPT

Release Wednesdays and the Agile Release

Train

Why talk about this?

•Successful approach on current projects•Putting releases at the heart of how we develop and deliver software•Allowing us to plan better and make better decisions•Encourage other teams to try this approach

We release frequently

Because agile

Because…

•Give users valuable stuff quickly•Get timely feedback•Reduce risk by reducing delta between releases •Get better at releasing•Get a kick out of it

‘Deliberate’ or ‘Opportunist’ cadence

Why releases at a ‘deliberate’ cadence?

•Gives us a regular, sustainable rhythm•Keeps us honest; we need to keep build continually ready•Don’t have to think about it•Don’t overdo it

Release Wednesdays

The benefits we have seen

•Users get functionality and bug-fixes quickly•No release ‘crunch’•We don’t worry about ‘when’•We are better at releasing•Work in progress is small•Our processes are healthy•The team are motivated by it

How we release every Wednesday

•Streamlined, automated releases•Small, incrementally valuable user stories•‘Master’ branch is continually releasable•Team focusses on the release cadence•Team owns release process

Dude, where’s my track?

Choo-choose the ‘Agile Release Train’

The what?

•Trains (releases) go out on fixed timetable•The train delivers cargo to customers•The train will not wait for you•If cargo (work) is not ready the train goes without it•Cargo waits for the next train

The Release Train to synchronize work

streams

The Release Train to help plan…

for the short term

The Release Train to help plan…

for the longer term

Why is this better than a Gantt Chart?

“Plans are useless,

but planning is indispensable”

Dwight D. Eisenhower

Why is this better than a Gantt Chart?

The Release Train is not a formal schedule to be obeyed, but a prediction that helps us make

decisions. It encourages the team to ask the right questions in order to control scope and understand timescales

throughout the project

The benefits we have seen

Team-driven planning:•Clear planning horizon•Clear current focus•Clear immediate plan• Important marketing activities/deadlines are

visible •Changes to plan are explicitly discussed•Team-driven scope management•Understand real progress towards goals

The benefits we have seen

Embeds good practice:•Keeps weekly releases•Keeps us to small user stories•#NoEstimates

It can be hard

For example:•Breaking work up into small, valuable stories is hard (but not impossible)•Watching cargo fall off the end of a train can be painful•*Just* missing a release with some cargo is frustrating•Releasing is REALLY motivational (we need to watch for burnout)

When it worked: SQL Lighthouse Beta in

six weeks

When this worked: DLM Dashboard ‘Retention’ theme

Timeboxing work on retention features

How to plan with the Agile Release

Train

Plan in (kinda) timeboxed themes

Jan Feb Mar Apr May Jun

Theme 3

Theme 2

Theme 1

~8 weeks Get 800 users

Invest 6-8 weeks

Break into epics and stories

Theme 1

Story A1

Epic/Feature A

Story A2

Story A3

Story B1

Epic/Feature B

Story B2

Story C1

Epic/Feature C

Story C2

Story C3

Story C4

Utilize weekly release cadence

Jan Feb

Release7-Jan-15

Release14-Jan-15

Release21-Jan-15

Release28-Jan-15

Release4-Feb-15

Release11-Feb-15

Release18-Feb-15

Throw stories at the plan

Jan Feb

Release7-Jan-15

Release14-Jan-15

Release21-Jan-15

Release28-Jan-15

Release4-Feb-15

Release11-Feb-15

Release18-Feb-15

Story A1

Story A2

Story A3

Story B1

Story B2

Story C1

Story C2

Story C3

Story C4

Story B3

Story B4

Story C5

Story C6

PrioritizeJan Feb

Release7-Jan-15

Release14-Jan-15

Release21-Jan-15

Release28-Jan-15

Release4-Feb-15

Release11-Feb-15

Release18-Feb-15

Story A1

Story A2

Story A3

Story B1

Story B2

Story C1

Story C2

Story C3

Story C4

Story B3

Story B4

Story C5

Story C6

Redgate Update newsletter

Update the plan every sprint

Jan Feb

Release7-Jan-15

Release14-Jan-15

Release21-Jan-15

Release28-Jan-15

Release4-Feb-15

Release11-Feb-15

Release18-Feb-15

Story A1

Story A2

Story B1

Story C1

Story B2

Story B3

Story B4

Story C3

Story C4

Story C2

Story A3

Released

Released

Update the plan every sprint

Jan Feb

Release7-Jan-15

Release14-Jan-15

Release21-Jan-15

Release28-Jan-15

Release4-Feb-15

Release11-Feb-15

Release18-Feb-15

Story A1

Story A2

Story B1

Story C1

Story B3

Story B4

Story C3

Story C4

Story C2

Story A3

Released

Released

Story B2

Released

ReleasedReleased

Think about the end of the train

Jan Feb

Release7-Jan-15

Release14-Jan-15

Release21-Jan-15

Release28-Jan-15

Release4-Feb-15

Release11-Feb-15

Release18-Feb-15

Story A1

Story A2

Story B1

Story C1

Story C2

Story C3

Story B3

Story B4

Released

Released

Story B2

Released

ReleasedReleased

Release25-Feb-15

Story C4

ReleasedReleased

ReleasedReleased

Released

Next theme…

Jan Feb Mar Apr May Jun

Theme 3

Theme 2

Theme 1 ✓Done

Questions?