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.

Modern Continuous Software Delivery


Published on

A talk by Martin J Logan (@martinjlogan) about how to simply implement the technical and cultural changes required for continuous software delivery. These tools include VCS, config management, continuous integration, packaging and a few more.

Published in: Technology
  • Be the first to comment

Modern Continuous Software Delivery

  1. 1. WebOps, Into the Cloud, Agile, DevOps, etc...Modern Software Delivery By Martin J. Logan @martinjlogan
  2. 2. Who is Martin J. Logan Author. This is my book Happily employed here I Founded this because I love DevOp Created this because I love Erlang Run this ( Package Management built here
  3. 3. Outline•Old school software delivery•What agile/lean taught us•Tools of the trade•The trade
  4. 4. The Old School
  5. 5. Phases and Gates
  6. 6. Too Function FocusedAt the end of the day we are trying to please people!!
  7. 7. Lessons of AgileIndividuals and interactions over processes and toolsWorking software over comprehensive documentationCustomer collaboration over contract negotiationResponding to change over following a plan
  8. 8. In Practical TermsDesign Development Testing
  9. 9. See What’s Missing? Operations
  10. 10. The Full CircleDesign DevelopOperate Test
  11. 11. Done means in production!
  12. 12. The Tool Chain Version Control Artifact Repo Config ManagementPackages Monitoring Virtualization/ CI Simple Deployment Cloud Scripts
  13. 13. Simple Happy CD• Write code on for a couple hours• Check-in. The process runs unit tests and flags the code for review• Code is reviewed and merged with the main line• Mainline commit triggers a full build and a full unit test run. Code is then packaged and pushed to staging.• Staging sees a new instance(s) provisioned for the artifact to be installed on• Tests are run (performance, UI, API) in staging and if all passes the package is installed into production
  14. 14. Version ControlStore everything (almost) here.
  15. 15. Packages Consistency is key.Build once, use many times.
  16. 16. Continuous Integration It is all about feedback. Small batch sizes. Continuously integrated. Feature Flags.
  17. 17. DeployKeep it simple at first.
  18. 18. Deploy pt. 2Using CM and Virtualization/Cloud More Power!! .
  19. 19. Monitoring Keep it simple at first.Graphite