Top Banner
Implementing Continuous Product Delivery @MattRogish mattrogish.com The Product Mentor
46

Implementing Continuous Product Delivery

Jan 22, 2015

Download

Business

Jeremy Horn

Slides Matt Rogish recently used in his discussion w/ mentees of The Product Mentor.

The Product Mentor is a program designed to pair Product Mentors and Mentees from around the World, across all industries, from start-up to enterprise, guided by the fundamental goals…Better Decisions. Better Products. Better Product People.

Throughout the program, each mentor leads a conversation in an area of their expertise that is live streamed and available to both mentee and the broader product community.

http://TheProductMentor.com
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
  • 1. Implementing Continuous Product Delivery @MattRogish mattrogish.com The Product Mentor

2. About Me Programmer (Ruby on Rails), DBA CTO / Dir. Product Consultant Founder 3. Continuous Delivery Continuous Delivery (CD) is a design practice used in software development to automate and improve the process of software delivery. Techniques such as automated testing, continuous integration and continuous deployment allow software to be developed to a high standard and easily packaged and deployed to test environments, resulting in the ability to rapidly, reliably and repeatedly push out enhancements and bug xes to customers at low risk and with minimal manual overhead. The technique was one of the assumptions of extreme programming but at an enterprise level has developed into a discipline of its own, with job descriptions for roles such as "buildmaster" calling for CD skills as mandatory. 4. tl;dr Any code commit may be released to customers at any point 5. Why? Get product to customers and stakeholders faster Reduce disruption caused by bugs Product is more valuable Makes everyone happier 6. Feature Flags Kanban Agile Continuous Delivery 7. The Bad Old Days 8. Waterfall Process resistant to change Releases take forever Assumes too much 9. Assumptions People Risk Process Risk Product Risk 10. Whats More Valuable? Project A will eventually cost about a million dollars and produce value of around $1.1 million Project B will eventually cost about a million dollars and produce value of more than $50 million 11. Tom DeMarco To my mind, the question thats much more important than how to control a software project is, why on earth are we doing so many projects that deliver such marginal value? 12. Agile 13. Agile ! Minimize assumptions/risk Iterate, iterate, iterate High degree of test coverage, CI, refactoring, retrospectives, etc. Continuous improvement 14. Feature Flags Kanban Agile Continuous Delivery Agile Continuous Delivery 15. Kanban 16. Inventory = Muda Feature Backlogs Undeployed Features Unxed Bugs 17. Inventory = Muda Feature Backlogs Undeployed Features Unxed Bugs 18. Kanban Continuous one-piece pull-based ow Minimize inventory/waste Features are released when nished Pulled from Toyota Production System 19. Feature Flags Kanban Agile Continuous Delivery Agile Continuous Delivery Kanban Agile Continuous Delivery 20. Feature Flags 21. Feature Flag Turn features on and off in code Toggle for particular users, groups, or environments Can turn off if something blows up Give marketing control 22. Feature Flags Kanban Agile Continuous Delivery 23. Lean 24. Continuous Delivery 25. Why? Get product to customers and stakeholders faster Reduce disruption caused by bugs Product is more valuable Makes everyone happier 26. Why? Get product to customers and stakeholders faster Reduce disruption caused by bugs Product is more valuable Makes everyone happier 27. Implementing Continuous Product Delivery @MattRogish mattrogish.com The Product Mentor