Release early, Release often
Better products through Continuous deployment
Florian Motlik
Outline
1. What is Continuous Integration/Continuous Deployment
2. Why is it important
3.Cloud, Mobile and Continuous Depl...
Continuous Integration
Continuous Deployment
Why?
Robust Application
Solid Architecture
http://www.flickr.com/photos/wilhelmja/4233621517/
Easy to test
Focus
Very fast iteration
/Value
Time
Why is the cloud
perfect for CD
Built for automated
deployment
Standardized
Staging is easy
Automated Rollback
Mobile?
Fast paced
Quick feedback cycles
Eat your own dogfood
Beta only!
Easy to push to Beta
In Practice
Many Startups
Cornerstone of Lean
Startup
Continuous Deployment at
Codeship
Github Flow
feature/bug branches
for everything
Always branch from
master
Pull Request with Code
Review
Merge into master and
deploy
The Future?
A better tomorrow, today
1. Test/Test/Test, but be smart about it
A better tomorrow, today
1. Test/Test/Test, but be smart about it
2. Automate Deployment
A better tomorrow, today
1. Test/Test/Test, but be smart about it
2. Automate Deployment
3. Automate Rollback
A better tomorrow, today
1. Test/Test/Test, but be smart about it
2. Automate Deployment
3. Automate Rollback
4. Build sma...
A better tomorrow, today
1. Test/Test/Test, but be smart about it
2. Automate Deployment
3. Automate Rollback
4. Build sma...
A better tomorrow, today
1. Test/Test/Test, but be smart about it
2. Automate Deployment
3. Automate Rollback
4. Build sma...
A better tomorrow, today
1. Test/Test/Test, but be smart about it
2. Automate Deployment
3. Automate Rollback
4. Build sma...
Getting started with testing
The blank page problem
Getting started with testing
● Start from top to bottom
Getting started with testing
● Start from top to bottom
● Get everyone on the team
Getting started with testing
● Start from top to bottom
● Get everyone on the team
● Everyone writes down 8 scenarios your...
Getting started with testing
● Start from top to bottom
● Get everyone on the team
● Everyone writes down 8 scenarios your...
Getting started with testing
● Start from top to bottom
● Get everyone on the team
● Everyone writes down 8 scenarios your...
Scenarios
● Given: I am on the landing page
● When: I click on Signup
● And: I enter my Email Address and Password
● Then:...
Scenarios
● Given: I am on the detail page of a product
● When: I click buy
● And: I log into my account
● And: I enter my...
Continuous Deployment
Continuous Deployment
Continuous Deployment
Continuous Deployment
Upcoming SlideShare
Loading in …5
×

Continuous Deployment

267
-1

Published on

Published in: Technology, Business
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
267
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
7
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Continuous Deployment

  1. 1. Release early, Release often Better products through Continuous deployment Florian Motlik
  2. 2. Outline 1. What is Continuous Integration/Continuous Deployment 2. Why is it important 3.Cloud, Mobile and Continuous Deployment 4. Who is doing it? 5. How we do it? 6. What is the future of this 7. A better tomorrow today 8. Getting started with testing
  3. 3. Continuous Integration
  4. 4. Continuous Deployment
  5. 5. Why?
  6. 6. Robust Application
  7. 7. Solid Architecture http://www.flickr.com/photos/wilhelmja/4233621517/
  8. 8. Easy to test
  9. 9. Focus
  10. 10. Very fast iteration
  11. 11. /Value Time
  12. 12. Why is the cloud perfect for CD
  13. 13. Built for automated deployment
  14. 14. Standardized
  15. 15. Staging is easy
  16. 16. Automated Rollback
  17. 17. Mobile?
  18. 18. Fast paced
  19. 19. Quick feedback cycles
  20. 20. Eat your own dogfood
  21. 21. Beta only!
  22. 22. Easy to push to Beta
  23. 23. In Practice
  24. 24. Many Startups
  25. 25. Cornerstone of Lean Startup
  26. 26. Continuous Deployment at Codeship
  27. 27. Github Flow
  28. 28. feature/bug branches for everything
  29. 29. Always branch from master
  30. 30. Pull Request with Code Review
  31. 31. Merge into master and deploy
  32. 32. The Future?
  33. 33. A better tomorrow, today 1. Test/Test/Test, but be smart about it
  34. 34. A better tomorrow, today 1. Test/Test/Test, but be smart about it 2. Automate Deployment
  35. 35. A better tomorrow, today 1. Test/Test/Test, but be smart about it 2. Automate Deployment 3. Automate Rollback
  36. 36. A better tomorrow, today 1. Test/Test/Test, but be smart about it 2. Automate Deployment 3. Automate Rollback 4. Build small services
  37. 37. A better tomorrow, today 1. Test/Test/Test, but be smart about it 2. Automate Deployment 3. Automate Rollback 4. Build small services 5. Deploy to Staging
  38. 38. A better tomorrow, today 1. Test/Test/Test, but be smart about it 2. Automate Deployment 3. Automate Rollback 4. Build small services 5. Deploy to Staging 6. Use your staging environment
  39. 39. A better tomorrow, today 1. Test/Test/Test, but be smart about it 2. Automate Deployment 3. Automate Rollback 4. Build small services 5. Deploy to Staging 6. Use your staging environment 7. Automatically deploy to production
  40. 40. Getting started with testing The blank page problem
  41. 41. Getting started with testing ● Start from top to bottom
  42. 42. Getting started with testing ● Start from top to bottom ● Get everyone on the team
  43. 43. Getting started with testing ● Start from top to bottom ● Get everyone on the team ● Everyone writes down 8 scenarios your users do
  44. 44. Getting started with testing ● Start from top to bottom ● Get everyone on the team ● Everyone writes down 8 scenarios your users do ● Discuss the scenarios and rank them
  45. 45. Getting started with testing ● Start from top to bottom ● Get everyone on the team ● Everyone writes down 8 scenarios your users do ● Discuss the scenarios and rank them ● Go down the list and write tests
  46. 46. Scenarios ● Given: I am on the landing page ● When: I click on Signup ● And: I enter my Email Address and Password ● Then: I should be logged in and see the welcome page ● And: I should receive a welcome email
  47. 47. Scenarios ● Given: I am on the detail page of a product ● When: I click buy ● And: I log into my account ● And: I enter my payment details ● Then: I will be shown an overview of my purchase ● And: I can finish the purchase

×