Your SlideShare is downloading. ×
0
Adopting continuous delivery
Adopting continuous delivery
Adopting continuous delivery
Adopting continuous delivery
Adopting continuous delivery
Adopting continuous delivery
Adopting continuous delivery
Adopting continuous delivery
Adopting continuous delivery
Adopting continuous delivery
Adopting continuous delivery
Adopting continuous delivery
Adopting continuous delivery
Adopting continuous delivery
Adopting continuous delivery
Adopting continuous delivery
Adopting continuous delivery
Adopting continuous delivery
Adopting continuous delivery
Adopting continuous delivery
Adopting continuous delivery
Adopting continuous delivery
Adopting continuous delivery
Adopting continuous delivery
Adopting continuous delivery
Adopting continuous delivery
Adopting continuous delivery
Adopting continuous delivery
Adopting continuous delivery
Adopting continuous delivery
Adopting continuous delivery
Adopting continuous delivery
Adopting continuous delivery
Adopting continuous delivery
Adopting continuous delivery
Adopting continuous delivery
Adopting continuous delivery
Adopting continuous delivery
Adopting continuous delivery
Adopting continuous delivery
Adopting continuous delivery
Adopting continuous delivery
Adopting continuous delivery
Adopting continuous delivery
Adopting continuous delivery
Adopting continuous delivery
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Adopting continuous delivery

8,920

Published on

A recording is available here: http://www.youtube.com/watch?v=2jt-up0a4JY …

A recording is available here: http://www.youtube.com/watch?v=2jt-up0a4JY

While keeping software production ready throughout its lifecycle and optimizing your delivery process for shorter cycle times might seem like a good idea to you, the rest of your organization might not share your excitement. In this talk, Jez Humble shares stories from companies who have attempted to adopt continuous delivery and discusses the organizational, architectural and process factors that led to the success - or failure - of these initiatives.

Published in: Technology
0 Comments
30 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
8,920
On Slideshare
0
From Embeds
0
Number of Embeds
8
Actions
Shares
0
Downloads
255
Comments
0
Likes
30
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. adopting continuous delivery @jezhumble | jez@thoughtworks.com 8 November 2012 | #qconsf http://thoughtworks-studios.com/Monday, November 19, 12
  • 2. “adopting” organizational, architectural, process -NOT- tools, code, infrastructureMonday, November 19, 12
  • 3. takeaways understand why you want to change get measurable change fast, even if reaching your goal takes years start with continuous integration focus on organization and architecture create culture of continuous improvementMonday, November 19, 12
  • 4. what is continuous delivery? reduce the cost, time, and risk of delivering incremental changes to usersMonday, November 19, 12
  • 5. why continuous delivery? build the right thing Customer developent Agile product development Eric Ries, “The Lean Startup” http://bit.ly/8ZoX5FMonday, November 19, 12
  • 6. why continuous delivery? build the right thing reduce risk of release John Allspaw: “Ops Metametrics” http://slidesha.re/dsSZIrMonday, November 19, 12
  • 7. why continuous delivery? build the right thing reduce risk of release real project progressMonday, November 19, 12
  • 8. how do i know i’m doing it? software is always releasable on demand prioritize keeping system releasable over delivery anybody can get fast, automated feedback on the effect of a changeMonday, November 19, 12
  • 9. deployment pipeline Delivery team Version control Build & unit Automated User acceptance Release tests acceptance tests tests Check in Trigger Feedback Check in Trigger Feedback Trigger Feedback Check in Trigger Feedback Trigger Feedback Approval Feedback ApprovalMonday, November 19, 12
  • 10. greenfield project plan for continuous delivery architect for continuous delivery skills & responsibilities project launched early business wants to scale back release frequencyMonday, November 19, 12
  • 11. devops http://www.slideshare.net/jallspaw/10-deploys-per-day-dev-and-ops-cooperation-at-flickrMonday, November 19, 12
  • 12. hiring a devop http://gun.io/blog/how-to-hire-devops/Monday, November 19, 12
  • 13. the devops role If you add a “devops” function to your existing dev, testing and ops functions, you just missed the whole point.Monday, November 19, 12
  • 14. the path of continuous delivery http://www.flickr.com/photos/jezand_rani/455116092/Monday, November 19, 12
  • 15. hp laserjet firmware team 2008 2011 10% - code integration 2% - continuous integration 20% - detailed planning 5% - agile planning 25% - porting code 15% - one main branch 25% - current product support 10% - one branch cpe 15% - manual testing 5% - most testing automated ~5% - innovation ~40% - innovation The remaining 23% on RHS is spent on managing automated tests.Monday, November 19, 12
  • 16. the economics 2008 to 2011 •overall development costs reduced by ~40% •programs under development increased by ~140% •development costs per program down 78% •resources now driving innovation increased by 5X A Practical Approach to Large-Scale Agile Development - Gruver, Young, FulghumMonday, November 19, 12
  • 17. what changed? architecture continuous integration test automation planning processMonday, November 19, 12
  • 18. organizational transformation aim to achieve measurable change as soon as possible - no more than a few monthsMonday, November 19, 12
  • 19. top down or bottom up? fetch me 100 of your finest CSMs! no! we will deliver crappy software late through self- organization!Monday, November 19, 12
  • 20. start with continuous integration Is the system working? If you broke it, you fix it.Monday, November 19, 12
  • 21. Local Develop Workstation Mainline Server Build pull Build Build ✔ Done! pushMonday, November 19, 12
  • 22. architecture “feature branching is a poor man’s modular architecture” - Dan Bodart micro-services - build a platform - bit.ly/shHRff branch-by-abstraction - bit.ly/kAUbEw strangler application - bit.ly/R4ZiJZMonday, November 19, 12
  • 23. design for test and deploy design for phoenixes - bit.ly/PFtDQy stand up system in dev environment acceptance testing in non-integrated environment create test doubles for integrationMonday, November 19, 12
  • 24. what can we do in a year? 1 -> 2 releases per month; 40% cycle time reduction low-hanging fruit: reduce branching, run tests, standardize environments, decrease build time program-level co-ordination director of continuous delivery managing initiativeMonday, November 19, 12
  • 25. finding the right team excitement existing capability (“nokia test”) slack time can demonstrate measurable changeMonday, November 19, 12
  • 26. the nokia test Are you doing iterative development? Iterations must be time-boxed to less than four weeks Software features must be tested and working at the end of each iteration. The iteration must start before the specification is complete. bas voddeMonday, November 19, 12
  • 27. the nokia test Are you doing Scrum? Do you know who the product owner is? Is the product backlog prioritized by business value? Does the product backlog have estimates created by the team? Are there project managers (or others) disrupting the work of the team? bas voddeMonday, November 19, 12
  • 28. maturity model • continuous integration • testing • environments and deployment • data management • traceability and auditing • organizational alignment • configuration management • architectureMonday, November 19, 12
  • 29. how not to do it monolithic architecture, water-scrum-fall architecture didn’t consider test and deployment expected magic CD fairy to make things better “They dont need a deployment pipeline, they need to talk to each other much more”Monday, November 19, 12
  • 30. people are the key get everyone together at the beginning keep meeting make it easy for everyone to see what’s happening continuous improvement (kaizen)Monday, November 19, 12
  • 31. takeaways understand why you want to change get measurable change fast, even if reaching your goal takes years start with continuous integration focus on organization and architecture create culture of continuous improvementMonday, November 19, 12
  • 32. questions @jezhumble | jez@thoughtworks.com http://continuousdelivery.com/ ThoughtWorks is hiring! http://jobs.thoughtworks.com/ Australia | Brazil | Canada | China Germany | India | Singapore | South Africa Uganda | UK | USA © 2012 ThoughtWorks, Inc. Sign up for my newsletter http://thoughtworks-studios.com/Monday, November 19, 12

×