Top Banner
Release Wednesdays and the Agile Release Train
34

Release wednesdays and the agile release train upload

Aug 07, 2015

Download

Software

Chris Smith
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Release wednesdays and the agile release train   upload

Release Wednesdays and the Agile Release

Train

Page 2: Release wednesdays and the agile release train   upload

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

Page 3: Release wednesdays and the agile release train   upload

We release frequently

Page 4: Release wednesdays and the agile release train   upload

Because agile

Page 5: Release wednesdays and the agile release train   upload

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

Page 6: Release wednesdays and the agile release train   upload

‘Deliberate’ or ‘Opportunist’ cadence

Page 7: Release wednesdays and the agile release train   upload

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

Page 8: Release wednesdays and the agile release train   upload

Release Wednesdays

Page 9: Release wednesdays and the agile release train   upload

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

Page 10: Release wednesdays and the agile release train   upload

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

Page 11: Release wednesdays and the agile release train   upload

Dude, where’s my track?

Page 12: Release wednesdays and the agile release train   upload

Choo-choose the ‘Agile Release Train’

Page 13: Release wednesdays and the agile release train   upload

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

Page 14: Release wednesdays and the agile release train   upload

The Release Train to synchronize work

streams

Page 15: Release wednesdays and the agile release train   upload

The Release Train to help plan…

for the short term

Page 16: Release wednesdays and the agile release train   upload

The Release Train to help plan…

for the longer term

Page 17: Release wednesdays and the agile release train   upload

Why is this better than a Gantt Chart?

“Plans are useless,

but planning is indispensable”

Dwight D. Eisenhower

Page 18: Release wednesdays and the agile release train   upload

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

Page 19: Release wednesdays and the agile release train   upload

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

Page 20: Release wednesdays and the agile release train   upload

The benefits we have seen

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

Page 21: Release wednesdays and the agile release train   upload

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)

Page 22: Release wednesdays and the agile release train   upload

When it worked: SQL Lighthouse Beta in

six weeks

Page 23: Release wednesdays and the agile release train   upload

When this worked: DLM Dashboard ‘Retention’ theme

Timeboxing work on retention features

Page 24: Release wednesdays and the agile release train   upload

How to plan with the Agile Release

Train

Page 25: Release wednesdays and the agile release train   upload

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

Page 26: Release wednesdays and the agile release train   upload

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

Page 27: Release wednesdays and the agile release train   upload

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

Page 28: Release wednesdays and the agile release train   upload

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

Page 29: Release wednesdays and the agile release train   upload

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

Page 30: Release wednesdays and the agile release train   upload

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

Page 31: Release wednesdays and the agile release train   upload

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

Page 32: Release wednesdays and the agile release train   upload

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

Page 33: Release wednesdays and the agile release train   upload

Next theme…

Jan Feb Mar Apr May Jun

Theme 3

Theme 2

Theme 1 ✓Done

Page 34: Release wednesdays and the agile release train   upload

Questions?