SlideShare a Scribd company logo
1 of 34
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/Featu
re A
Story
A2
Story
A3
Story
B1
Epic/Featu
re B
Story
B2
Story
C1
Epic/Featu
re C
Story
C2
Story
C3
Story
C4
Utilize weekly release cadence
Jan Feb
Release
7-Jan-15
Release
14-Jan-15
Release
21-Jan-15
Release
28-Jan-15
Release
4-Feb-15
Release
11-Feb-15
Release
18-Feb-15
Throw stories at the plan
Jan Feb
Release
7-Jan-15
Release
14-Jan-15
Release
21-Jan-15
Release
28-Jan-15
Release
4-Feb-15
Release
11-Feb-15
Release
18-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
Prioritize
Jan Feb
Release
7-Jan-15
Release
14-Jan-15
Release
21-Jan-15
Release
28-Jan-15
Release
4-Feb-15
Release
11-Feb-15
Release
18-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
Release
7-Jan-15
Release
14-Jan-15
Release
21-Jan-15
Release
28-Jan-15
Release
4-Feb-15
Release
11-Feb-15
Release
18-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
Release
7-Jan-15
Release
14-Jan-15
Release
21-Jan-15
Release
28-Jan-15
Release
4-Feb-15
Release
11-Feb-15
Release
18-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
Release
7-Jan-15
Release
14-Jan-15
Release
21-Jan-15
Release
28-Jan-15
Release
4-Feb-15
Release
11-Feb-15
Release
18-Feb-15
Story
A1
Story
A2
Story
B1
Story
C1
Story
C2
Story
C3
Story
B3
Story
B4
Released
Released
Story
B2
Released
ReleasedReleased
Release
25-Feb-15
Story
C4
ReleasedReleased
ReleasedReleased
Released
Next theme…
Jan Feb Mar Apr May Jun
Theme 3
Theme 2
Theme 1 ✓
Done
Questions?

More Related Content

What's hot

What's hot (20)

Introduction to SAFe, the Scaled Agile Framework
Introduction to SAFe, the Scaled Agile FrameworkIntroduction to SAFe, the Scaled Agile Framework
Introduction to SAFe, the Scaled Agile Framework
 
An Introduction to Scaled Agile Framework (SAFe)
An Introduction to Scaled Agile Framework (SAFe)An Introduction to Scaled Agile Framework (SAFe)
An Introduction to Scaled Agile Framework (SAFe)
 
Agile Transformation in Telco Guide
Agile Transformation in Telco GuideAgile Transformation in Telco Guide
Agile Transformation in Telco Guide
 
Scrumban (r)Evolution
Scrumban (r)EvolutionScrumban (r)Evolution
Scrumban (r)Evolution
 
Release Train Engineer - the Master Scrum Master
Release Train Engineer  - the Master Scrum Master Release Train Engineer  - the Master Scrum Master
Release Train Engineer - the Master Scrum Master
 
Introduction to Agile and Lean Software Development
Introduction to Agile and Lean Software DevelopmentIntroduction to Agile and Lean Software Development
Introduction to Agile and Lean Software Development
 
Agile 101
Agile 101Agile 101
Agile 101
 
Agile Metrics 101
Agile Metrics 101Agile Metrics 101
Agile Metrics 101
 
Agile transformation Explanined
Agile transformation ExplaninedAgile transformation Explanined
Agile transformation Explanined
 
An Introduction to SAFe: The Scaled Agile Framework
An Introduction to SAFe: The Scaled Agile FrameworkAn Introduction to SAFe: The Scaled Agile Framework
An Introduction to SAFe: The Scaled Agile Framework
 
Essential SAFe and Launching your first Agile Release Train
Essential SAFe and Launching your first Agile Release TrainEssential SAFe and Launching your first Agile Release Train
Essential SAFe and Launching your first Agile Release Train
 
Scrum vs Kanban - Which Agile Methodology Fits Best For Your Team?
Scrum vs Kanban - Which Agile Methodology Fits Best For Your Team?Scrum vs Kanban - Which Agile Methodology Fits Best For Your Team?
Scrum vs Kanban - Which Agile Methodology Fits Best For Your Team?
 
10 Essential SAFe(tm) patterns you should focus on when scaling Agile
10 Essential SAFe(tm) patterns you should focus on when scaling Agile10 Essential SAFe(tm) patterns you should focus on when scaling Agile
10 Essential SAFe(tm) patterns you should focus on when scaling Agile
 
scrum
scrumscrum
scrum
 
Full-Stack Agile - The Sprint Review (Scrum)
Full-Stack Agile - The Sprint Review (Scrum)Full-Stack Agile - The Sprint Review (Scrum)
Full-Stack Agile - The Sprint Review (Scrum)
 
Agile Scrum Training Process
Agile Scrum Training ProcessAgile Scrum Training Process
Agile Scrum Training Process
 
Scrum 101: Introduction to Scrum
Scrum 101: Introduction to ScrumScrum 101: Introduction to Scrum
Scrum 101: Introduction to Scrum
 
Understand SAFe in 8 Pictures
Understand SAFe in 8 PicturesUnderstand SAFe in 8 Pictures
Understand SAFe in 8 Pictures
 
SAFe® - scaled agile framework in practice
SAFe® - scaled agile framework in practiceSAFe® - scaled agile framework in practice
SAFe® - scaled agile framework in practice
 
Agile Mindset For Executives
Agile Mindset For ExecutivesAgile Mindset For Executives
Agile Mindset For Executives
 

Viewers also liked

What's wrong with sprint retrospectives and how to fix them
What's wrong with sprint retrospectives and how to fix themWhat's wrong with sprint retrospectives and how to fix them
What's wrong with sprint retrospectives and how to fix them
Chris Smith
 
Nazi stuka, cargo train, nazi and jew, and holocaust. wrap fair.
Nazi stuka, cargo train, nazi and jew, and holocaust. wrap fair.Nazi stuka, cargo train, nazi and jew, and holocaust. wrap fair.
Nazi stuka, cargo train, nazi and jew, and holocaust. wrap fair.
ryanbud
 
11.project online library management system
11.project online library management system11.project online library management system
11.project online library management system
Golden Arc
 

Viewers also liked (16)

Agile & kanban in Coordination
Agile & kanban in CoordinationAgile & kanban in Coordination
Agile & kanban in Coordination
 
What's wrong with sprint retrospectives and how to fix them
What's wrong with sprint retrospectives and how to fix themWhat's wrong with sprint retrospectives and how to fix them
What's wrong with sprint retrospectives and how to fix them
 
Nazi stuka, cargo train, nazi and jew, and holocaust. wrap fair.
Nazi stuka, cargo train, nazi and jew, and holocaust. wrap fair.Nazi stuka, cargo train, nazi and jew, and holocaust. wrap fair.
Nazi stuka, cargo train, nazi and jew, and holocaust. wrap fair.
 
Crack, Train, Fix, Release - Keynote at DevIT Thessaloniki 2015
Crack, Train, Fix, Release - Keynote at DevIT Thessaloniki 2015Crack, Train, Fix, Release - Keynote at DevIT Thessaloniki 2015
Crack, Train, Fix, Release - Keynote at DevIT Thessaloniki 2015
 
11.project online library management system
11.project online library management system11.project online library management system
11.project online library management system
 
Change and Release Management with JIRA and Bamboo - Atlassian Summit 2010
Change and Release Management with JIRA and Bamboo - Atlassian Summit 2010Change and Release Management with JIRA and Bamboo - Atlassian Summit 2010
Change and Release Management with JIRA and Bamboo - Atlassian Summit 2010
 
Software Development with Agile Waterfall Hybrid Method
Software Development with Agile Waterfall Hybrid MethodSoftware Development with Agile Waterfall Hybrid Method
Software Development with Agile Waterfall Hybrid Method
 
The Art of the Retrospective: How to run an awesome retrospective meeting
The Art of the Retrospective: How to run an awesome retrospective meetingThe Art of the Retrospective: How to run an awesome retrospective meeting
The Art of the Retrospective: How to run an awesome retrospective meeting
 
Confessions of a scrum mom - how the heroics of a scrum mum doesn't scale
Confessions of a scrum mom - how the heroics of a scrum mum doesn't scaleConfessions of a scrum mom - how the heroics of a scrum mum doesn't scale
Confessions of a scrum mom - how the heroics of a scrum mum doesn't scale
 
Transportation management
Transportation managementTransportation management
Transportation management
 
Test Process
Test ProcessTest Process
Test Process
 
Scaled Agile Framework (SAFe) Roles and Meetings
Scaled Agile Framework (SAFe) Roles and MeetingsScaled Agile Framework (SAFe) Roles and Meetings
Scaled Agile Framework (SAFe) Roles and Meetings
 
Transportation management system
Transportation management systemTransportation management system
Transportation management system
 
Transportation Management Ppt
Transportation Management PptTransportation Management Ppt
Transportation Management Ppt
 
RTE Presentation
RTE PresentationRTE Presentation
RTE Presentation
 
How to Become a Thought Leader in Your Niche
How to Become a Thought Leader in Your NicheHow to Become a Thought Leader in Your Niche
How to Become a Thought Leader in Your Niche
 

Similar to Release wednesdays and the agile release train upload

Agile lean workshop for teams, managers & exec leadership
Agile lean workshop for teams, managers & exec leadershipAgile lean workshop for teams, managers & exec leadership
Agile lean workshop for teams, managers & exec leadership
Ravi Tadwalkar
 
LITE 2017 – Project Management Fundamentals [Sebastian Meller & Todd Primrose]
LITE 2017 – Project Management Fundamentals [Sebastian Meller & Todd Primrose]LITE 2017 – Project Management Fundamentals [Sebastian Meller & Todd Primrose]
LITE 2017 – Project Management Fundamentals [Sebastian Meller & Todd Primrose]
getadministrate
 

Similar to Release wednesdays and the agile release train upload (20)

Lean-Agile PMO
Lean-Agile PMOLean-Agile PMO
Lean-Agile PMO
 
Visual management white board standard structures from waterfall to agile v3
Visual management   white board  standard structures from waterfall to agile v3Visual management   white board  standard structures from waterfall to agile v3
Visual management white board standard structures from waterfall to agile v3
 
IAM - One Year Later
IAM - One Year LaterIAM - One Year Later
IAM - One Year Later
 
Agile Software Development Workshop at Sote Hub
Agile Software Development Workshop at Sote HubAgile Software Development Workshop at Sote Hub
Agile Software Development Workshop at Sote Hub
 
Driving Change with Data: Getting Started with Continuous Improvement
Driving Change with Data: Getting Started with Continuous ImprovementDriving Change with Data: Getting Started with Continuous Improvement
Driving Change with Data: Getting Started with Continuous Improvement
 
Project management - a practical overview Sue Greener
Project management - a practical overview Sue GreenerProject management - a practical overview Sue Greener
Project management - a practical overview Sue Greener
 
Spotify Model
Spotify ModelSpotify Model
Spotify Model
 
Scrum and agile principles
Scrum and agile principles Scrum and agile principles
Scrum and agile principles
 
Project Planning.ppt
Project Planning.pptProject Planning.ppt
Project Planning.ppt
 
Shipping code is not the problem, deciding what to ship it is!
Shipping code is not the problem, deciding what to ship it is!Shipping code is not the problem, deciding what to ship it is!
Shipping code is not the problem, deciding what to ship it is!
 
Kanban for ODDS
Kanban for ODDSKanban for ODDS
Kanban for ODDS
 
Essential SAFe® 4.0
Essential SAFe® 4.0Essential SAFe® 4.0
Essential SAFe® 4.0
 
Agile vision in IT and Software devlopment
Agile vision  in IT and Software devlopmentAgile vision  in IT and Software devlopment
Agile vision in IT and Software devlopment
 
Adamson "Blueprint for Managing Your Project"
Adamson "Blueprint for Managing Your Project"Adamson "Blueprint for Managing Your Project"
Adamson "Blueprint for Managing Your Project"
 
Time management
Time managementTime management
Time management
 
Project management
Project managementProject management
Project management
 
Project Management Basics
Project Management BasicsProject Management Basics
Project Management Basics
 
Project Management
Project ManagementProject Management
Project Management
 
Agile lean workshop for teams, managers & exec leadership
Agile lean workshop for teams, managers & exec leadershipAgile lean workshop for teams, managers & exec leadership
Agile lean workshop for teams, managers & exec leadership
 
LITE 2017 – Project Management Fundamentals [Sebastian Meller & Todd Primrose]
LITE 2017 – Project Management Fundamentals [Sebastian Meller & Todd Primrose]LITE 2017 – Project Management Fundamentals [Sebastian Meller & Todd Primrose]
LITE 2017 – Project Management Fundamentals [Sebastian Meller & Todd Primrose]
 

More from Chris Smith

More from Chris Smith (8)

Five years of self-selection reteaming at Redgate - Agile Cambridge 2023
Five years of self-selection reteaming at Redgate - Agile Cambridge 2023Five years of self-selection reteaming at Redgate - Agile Cambridge 2023
Five years of self-selection reteaming at Redgate - Agile Cambridge 2023
 
Four years of self-selection reteaming at Redgate - Øredev 2022
Four years of self-selection reteaming at Redgate - Øredev 2022Four years of self-selection reteaming at Redgate - Øredev 2022
Four years of self-selection reteaming at Redgate - Øredev 2022
 
Three years of self-selection reteaming at Redgate Software
Three years of self-selection reteaming at Redgate SoftwareThree years of self-selection reteaming at Redgate Software
Three years of self-selection reteaming at Redgate Software
 
Crucial Conversations for agile teams - Agile Manchester Virtual, May 2020
Crucial Conversations for agile teams - Agile Manchester Virtual, May 2020Crucial Conversations for agile teams - Agile Manchester Virtual, May 2020
Crucial Conversations for agile teams - Agile Manchester Virtual, May 2020
 
Fantastic beasts and where to improve them - Lean Agile Scotland 2018
Fantastic beasts and where to improve them - Lean Agile Scotland 2018Fantastic beasts and where to improve them - Lean Agile Scotland 2018
Fantastic beasts and where to improve them - Lean Agile Scotland 2018
 
How to level up learning and development
How to level up learning and developmentHow to level up learning and development
How to level up learning and development
 
The 'A' Word - How we broke and fixed team autonomy
The 'A' Word - How we broke and fixed team autonomyThe 'A' Word - How we broke and fixed team autonomy
The 'A' Word - How we broke and fixed team autonomy
 
Fantastic Beasts and Where to Improve Them - Agile Cambridge 2017
Fantastic Beasts and Where to Improve Them - Agile Cambridge 2017Fantastic Beasts and Where to Improve Them - Agile Cambridge 2017
Fantastic Beasts and Where to Improve Them - Agile Cambridge 2017
 

Recently uploaded

%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
masabamasaba
 
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
masabamasaba
 
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
chiefasafspells
 
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
masabamasaba
 

Recently uploaded (20)

WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
 
WSO2CON 2024 Slides - Open Source to SaaS
WSO2CON 2024 Slides - Open Source to SaaSWSO2CON 2024 Slides - Open Source to SaaS
WSO2CON 2024 Slides - Open Source to SaaS
 
%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto
 
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park %in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
WSO2CON2024 - It's time to go Platformless
WSO2CON2024 - It's time to go PlatformlessWSO2CON2024 - It's time to go Platformless
WSO2CON2024 - It's time to go Platformless
 
WSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
WSO2Con2024 - Enabling Transactional System's Exponential Growth With SimplicityWSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
WSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
 
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
 
What Goes Wrong with Language Definitions and How to Improve the Situation
What Goes Wrong with Language Definitions and How to Improve the SituationWhat Goes Wrong with Language Definitions and How to Improve the Situation
What Goes Wrong with Language Definitions and How to Improve the Situation
 
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
 
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
 
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
 
%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand
 
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learn
 
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
 
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
 
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
WSO2Con204 - Hard Rock Presentation - Keynote
WSO2Con204 - Hard Rock Presentation - KeynoteWSO2Con204 - Hard Rock Presentation - Keynote
WSO2Con204 - Hard Rock Presentation - Keynote
 

Release wednesdays and the agile release train upload

  • 1. Release Wednesdays and the Agile Release Train
  • 2. 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
  • 5. 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
  • 7. 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
  • 9. 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
  • 10. 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
  • 13. 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
  • 14. The Release Train to synchronize work streams
  • 15. The Release Train to help plan… for the short term
  • 16. The Release Train to help plan… for the longer term
  • 17. Why is this better than a Gantt Chart? “Plans are useless, but planning is indispensable” Dwight D. Eisenhower
  • 18. 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
  • 19. 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
  • 20. The benefits we have seen Embeds good practice: •Keeps weekly releases •Keeps us to small user stories •#NoEstimates
  • 21. 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)
  • 22. When it worked: SQL Lighthouse Beta in six weeks
  • 23. When this worked: DLM Dashboard ‘Retention’ theme Timeboxing work on retention features
  • 24. How to plan with the Agile Release Train
  • 25. 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
  • 26. Break into epics and stories Theme 1 Story A1 Epic/Featu re A Story A2 Story A3 Story B1 Epic/Featu re B Story B2 Story C1 Epic/Featu re C Story C2 Story C3 Story C4
  • 27. Utilize weekly release cadence Jan Feb Release 7-Jan-15 Release 14-Jan-15 Release 21-Jan-15 Release 28-Jan-15 Release 4-Feb-15 Release 11-Feb-15 Release 18-Feb-15
  • 28. Throw stories at the plan Jan Feb Release 7-Jan-15 Release 14-Jan-15 Release 21-Jan-15 Release 28-Jan-15 Release 4-Feb-15 Release 11-Feb-15 Release 18-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
  • 30. Update the plan every sprint Jan Feb Release 7-Jan-15 Release 14-Jan-15 Release 21-Jan-15 Release 28-Jan-15 Release 4-Feb-15 Release 11-Feb-15 Release 18-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
  • 31. Update the plan every sprint Jan Feb Release 7-Jan-15 Release 14-Jan-15 Release 21-Jan-15 Release 28-Jan-15 Release 4-Feb-15 Release 11-Feb-15 Release 18-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
  • 32. Think about the end of the train Jan Feb Release 7-Jan-15 Release 14-Jan-15 Release 21-Jan-15 Release 28-Jan-15 Release 4-Feb-15 Release 11-Feb-15 Release 18-Feb-15 Story A1 Story A2 Story B1 Story C1 Story C2 Story C3 Story B3 Story B4 Released Released Story B2 Released ReleasedReleased Release 25-Feb-15 Story C4 ReleasedReleased ReleasedReleased Released
  • 33. Next theme… Jan Feb Mar Apr May Jun Theme 3 Theme 2 Theme 1 ✓ Done

Editor's Notes

  1. As a result of putting Release Wednesdays at the heart of how we develop and deliver software, we’ve optimised our processes and practices so that we can to release frequently and deliver new features incrementally.  Interestingly, in addition to increased pace of delivery and user feedback the weekly cadence gives us, we’ve found many of these optimizations to be beneficial in their own right.
  2. I want to talk about this because it is the foundations of the release train – this is central to how we are building software
  3. In my opinion, ‘potentially shippable’ product is a cop-out
  4. We want to give our users valuable enhancements as quickly as possible and get timely feedback on the direction we are taking the product. We believe in keeping the delta between releases small and the risk associated with an individual release low. We think practice makes perfect and that the more often you release the less frightening it is to do so. The developer part of me says its because we get a kick out of putting the stuff we’ve created into the hands of people who’ll enjoy using it as soon and as often as we can.
  5. I’d argue in favour of a want ‘deliberate’ release process, not an ‘opportunist’ one. An opportunist release process results in an irregular release rhythm; sometimes there might be three releases in a week, sometimes one a month. You release when you can. A deliberate approach to frequent releases means a regular, sustainable rhythm. Dashboard have released every Wednesday this year. 12 releases and no more. I’ll talk about why and the benefits in the rest of the presentation…
  6. It keeps us honest. In order to achieve our goal, we need to be able to keep our build ready for release continually. We don’t have to think about when to release. Not continually agonising over whether ‘now’ is a good time to do a release or not. That decision can take time, effort and (possibly) a great deal of thought.  We don’t want to drown our users in updates. We think that one release a week is frequent enough for users to get their hands on the latest work we’ve done and give us timely feedback, without the update notification becoming irritating.
  7. This lead us to Release Wednesdays on our products Renamed “Welease Wednesdays” almost immediately. Giving it a name, helped it stick! 2015: 12 releases in 12 weeks
  8. Users get valuable new functionality sooner – if we feel that users will get value from a partially complete feature (where the ‘complete’ part has been fully tested), a bug fix or a usability enhancement, then we ship it on the following Wednesday. No crunch We are better at releasing – we’ve practiced, we trust our automated tests and we’ve streamlined our process. We don’t ship broken releases – even though we release much more often than we used to, we have not shipped a release we have had to recall since we started Release Wednesdays. That’s because we’ve kept the delta between releases small and the risk associated with an individual release low. We don’t spend time worrying about when we should release – if it is not a Wednesday, we don’t start the release process. We are always releasable – we’ve had to organise our development environment so that we are always ready to release. That means using the likes of feature branches, tiered automated tests and continuous deployment into a test environment. The team love it – there’s something intrinsically motivational about delivering something you have made to people who will find it useful. Whenever we ask the team what they like about the project, they always mention “Release Wednesdays”
  9. We’ve streamlining our release process – automating everything we can and simplifying everything else. For example, we rely on automated testing to prove builds and, thanks to an internal tool, we can deploy to Production with the click of a button. See my post from 2013 about the benefits of automated deployments. We break our work up into small, incrementally valuable user stories. This is so that they can be integrated into our weekly cadence – each story should be around a week to two week’s work for the team. This is obviously a bit of a black art, so we’ve had to think a lot more deeply about the scope of our user stories and their relative value. We have found that we have a much more ‘agile’ backlog and a good feel for what we can achieve in a week. We keep the product code in a continually releasable state. This is a working agreement and has pushed us to use separate branches for each feature, user story or bug fix, so that the root of our source control repository only has work that is fit for immediate release. An additional benefit of this is that any parallel streams of work (e.g. a new feature and a big fix) are isolated from one another and so can be shipped independently. I’ve encouraged team to buy into a weekly release cadence and do my best to coach them when they discover obstacles to delivering stories. Without the team being behind this initiative, it was not going to work. Once the team had tried it and liked the momentum we achieved, the approach was here to stay. Now, getting then current story done in time for next Wednesday is hugely motivation for the group. The team are responsible for the releases – they decide when things are shipped.
  10. Although we released every week. We had this problem – not a clear path ahead… we sometimes felt like we were going to run out well understood work just around the corner
  11. We use the “train” metaphor to communicate a few key concepts. The train departs the station and arrives at the next destination on a reliable schedule (fixed cadence; standard velocity, predictable releases) It delivers its cargo to customers (Release) or is used for internal evaluation and proof of incremental system robustness and quality (PSI/Release). If an Agile Team wants its “cargo” (code, documentation, etc.) to go, it has to put it there on time. The train will not come to them nor wait to get their content. We apply the Agile Release Train technique, which has brought it’s own benefits – #NoEstimates, Team-driven scope management and clear planning horizons. See my recent post on the Release Train for more details.
  12. From the Scaled Agile Framework Synchronization points Planning mechanism
  13. From the Scaled Agile Framework Planning mechanism
  14. If we know we are able to release every week, to a schedule, we can start to use that as a part of a planning cadence We can judge how much cargo we *might* ship We can measure real progress We can timebox effort
  15. If we know we are able to release every week, to a schedule, we can start to use that as a part of a planning cadence We can judge how much cargo we *might* ship We can measure real progress We can timebox effort
  16. Of course, as soon as we’d drawn up the plan it was out of date. If Agile has taught us nothing else, it’s taught us to expect change. So, during the next six weeks we kept the Release Train up-to-date and relevant. It reflected functionality we had shipped, the proposed contents of the next release and any realisations that we just couldn’t get something done for when we’d hoped we would.
  17. 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
  18. Clear visualization of progress to stakeholders (and effect of changes in direction)
  19. From the Scaled Agile Framework Planning mechanism
  20. From the Scaled Agile Framework Planning mechanism
  21. Plan new work in themes – groups of stories and epics initiated to advance ‘something’ E.g. Improve retention Improve getting started Further improve retention Differentiation Obviously me
  22. Break into epics and stories
  23. Assemble a train on the cadence
  24. Assemble a train on the cadence (more or less in order) A1 A2 A3 B1 B2 The rest
  25. Think about which individual stories are the more important Don’t care about A3 very much – certainly we care about other things more There is a RG update – we want to be able to talk about feature C We’d rather have C2 earlier – users want it more We think doing 4 stories on the last train is mad, so we are dropping C5 and C6
  26. We release A1 We release A2, but we can’t finish B1 (we were mad to think that)
  27. We release A1 We release A2, but we can’t finish B1 (we were mad to think that) We release B1 and C1/B2 But we realise C2 will take two weeks (this is ok) This means some valuable work falls off the back of the train
  28. We might decide to add another release to this schedule – the stories are too valuable to not realease (but we do want to get on to our next theme)
  29. Plan new work in themes – groups of stories and epics initiated to advance ‘something’ E.g. Improve retention Improve getting started Further improve retention Differentiation Obviously me