Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
a n i n t r o t o c o n t i n u o u s d e l i v e r y 
LET’S RELEASE IT 
Rouan Wilsenach 
@rouanw 
thoughtworks.com
THE LAST MILE 
Does this look familiar? 
2
Analysis & Design 
Development 
Test & Showcase 
Release 
& Operations 
‘Agile’ team 
Centralised QA IT Operations 
Integr...
4 
Test & Showcase 
Customer 
Delivery team 
Constant flow of new features into production
PRINCIPLES OF CD 
5
6 
Decouple release from deployment
7 
Done means released
8 
Small releases
9 
Build quality in
10 
If it hurts, do it more often
11 
Automate everything
BENEFITS OF CD 
12
13 
Clarity
14 
Confidence
15 
Less stress
SHOW ME HOW 
Blah blah blah. How do we actually do this? 
16
AUTOMATE 
EVERYTHING 
The machinery to put code in production. All the time. 
17
18 
Automated testing
19 
Production-like environments
20 
Automated deployments
21 
Automated infrastructure
BUILD PIPELINE 
The production gauntlet 
22
23
24 
Trigger the pipe on every change
25 
Fast feedback
26 
Build artefact
27 
The go button
TRUNK BASED 
DEVELOPMENT 
How to code when everything is in production 
28
Put everyone’s changes together all the time 
29
30 
Small changes
31 
User stories
32 
Keep out of reach of users
33 
Feature toggles
34 
not too many short lived talk about them 
Toggling tips
35 
Branch by abstraction
WHAT GOES IN 
The other side of the pipe 
36
37 
Release decisions
38 
Use feedback
39 
Measure cycle time
RECAP 
Once more with feeling 
40
41 
The last mile 
Principles of CD 
Benefits 
automate everything 
How? 
trunk based dev build pipeline 
what goes in
SOME RESOURCES 
Continuous Integration: 
• www.martinfowler.com/articles/continuousIntegration.html 
• http://martinfowler...
SOME RESOURCES 
Jez Humble (@jezhumble) 
• continuousdelivery.com 
• CD Book: http://martinfowler.com/books/continuousDeli...
a n i n t r o t o c o n t i n u o u s d e l i v e r y 
LET’S RELEASE IT 
Rouan Wilsenach 
@rouanw 
thoughtworks.com
Upcoming SlideShare
Loading in …5
×

Let's release it - an intro to Continuous Delivery

2,396 views

Published on

Imagine being able to ship new features with confidence. Imagine decoupling the process of putting new code in production from the decision to release new features to users. Push to production every day and release features when you’re ready. Continuous Delivery describes a set of practices that can make this happen. Rouan gives you an introduction to the concept of Continuous Delivery and some of the main practices that underpin it. He talks about automated testing, deployment and version control. He explains what it means for your approach to user stories and your definition of done and about the difference it will make in the life of your product owner. He’ll cover the concept of building quality into the delivery process and the power this gives you.

Published in: Software

Let's release it - an intro to Continuous Delivery

  1. 1. a n i n t r o t o c o n t i n u o u s d e l i v e r y LET’S RELEASE IT Rouan Wilsenach @rouanw thoughtworks.com
  2. 2. THE LAST MILE Does this look familiar? 2
  3. 3. Analysis & Design Development Test & Showcase Release & Operations ‘Agile’ team Centralised QA IT Operations Integration & QA Customer The ‘last mile’ Iteration 0 - 1 - 2 - 3 - n 3
  4. 4. 4 Test & Showcase Customer Delivery team Constant flow of new features into production
  5. 5. PRINCIPLES OF CD 5
  6. 6. 6 Decouple release from deployment
  7. 7. 7 Done means released
  8. 8. 8 Small releases
  9. 9. 9 Build quality in
  10. 10. 10 If it hurts, do it more often
  11. 11. 11 Automate everything
  12. 12. BENEFITS OF CD 12
  13. 13. 13 Clarity
  14. 14. 14 Confidence
  15. 15. 15 Less stress
  16. 16. SHOW ME HOW Blah blah blah. How do we actually do this? 16
  17. 17. AUTOMATE EVERYTHING The machinery to put code in production. All the time. 17
  18. 18. 18 Automated testing
  19. 19. 19 Production-like environments
  20. 20. 20 Automated deployments
  21. 21. 21 Automated infrastructure
  22. 22. BUILD PIPELINE The production gauntlet 22
  23. 23. 23
  24. 24. 24 Trigger the pipe on every change
  25. 25. 25 Fast feedback
  26. 26. 26 Build artefact
  27. 27. 27 The go button
  28. 28. TRUNK BASED DEVELOPMENT How to code when everything is in production 28
  29. 29. Put everyone’s changes together all the time 29
  30. 30. 30 Small changes
  31. 31. 31 User stories
  32. 32. 32 Keep out of reach of users
  33. 33. 33 Feature toggles
  34. 34. 34 not too many short lived talk about them Toggling tips
  35. 35. 35 Branch by abstraction
  36. 36. WHAT GOES IN The other side of the pipe 36
  37. 37. 37 Release decisions
  38. 38. 38 Use feedback
  39. 39. 39 Measure cycle time
  40. 40. RECAP Once more with feeling 40
  41. 41. 41 The last mile Principles of CD Benefits automate everything How? trunk based dev build pipeline what goes in
  42. 42. SOME RESOURCES Continuous Integration: • www.martinfowler.com/articles/continuousIntegration.html • http://martinfowler.com/bliki/FeatureBranch.html Trunk based development: • http://martinfowler.com/bliki/FeatureToggle.html • http://martinfowler.com/bliki/BranchByAbstraction.html • http://continuousdelivery.com/wp-content/uploads/2011/05/ branch_by_abstraction.png Continuous Delivery • http://www.thoughtworks.com/continuous-delivery • http://martinfowler.com/bliki/ContinuousDelivery.html • http://go.cd 42
  43. 43. SOME RESOURCES Jez Humble (@jezhumble) • continuousdelivery.com • CD Book: http://martinfowler.com/books/continuousDelivery.html • Video on adopting CD: http://www.infoq.com/presentations/Adopting-Continuous- Delivery 43
  44. 44. a n i n t r o t o c o n t i n u o u s d e l i v e r y LET’S RELEASE IT Rouan Wilsenach @rouanw thoughtworks.com

×