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.

The case for continuous delivery

424 views

Published on

The case for continuous delivery

Published in: Technology
  • Be the first to comment

  • Be the first to like this

The case for continuous delivery

  1. 1. The case for Continuous Delivery Engaging the client and demonstrating business value Laurentiu Mandru Victor Chircu 25th of April 2015
  2. 2. Continuous... Integration Delivery Deployment
  3. 3. The context
  4. 4. Current landscape: technical
  5. 5. Current landscape: business processes On the spot, verbal agreements Information is quickly becoming unclear via word of mouth or via long e-mail threads Absent, poorly maintained or adopted strategic knowledge management tool Same for the decision register tool
  6. 6. The enhancements
  7. 7. Continuous Delivery Principles Create a Repeatable, Reliable Process for Releasing Software Automate Almost Everything Everybody Is Responsible for the Delivery Process If It Hurts, Do It More Frequently, and Bring the Pain Forward
  8. 8. The Deployment Pipeline source: http://continuousdelivery.com/2010/02/continuous-delivery/
  9. 9. The benefits
  10. 10. Bringing value to the team Less stress Empowered teams Increased collaboration Shared ownership
  11. 11. Bringing business value Increased confidence in the build once it passes the CD pipeline Ability to deploy almost any time Much faster feedback for the technical teams, the same goes for the business (see your idea in UAT in a few days) Automated and consistent processes, SLAs and monitoring enable data-driven decision making (increases client’s ability to respond, plan and keep ahead of competition)
  12. 12. Bringing business value Roll back or forward with much greater confidence Release thoroughly tested patches quickly Faster access to reports (trends, charts) Less stress on deployment day for everyone Cycle time
  13. 13. Bringing business value Team collaboratively focuses on unique activities that provide business value Develops a high trust culture and improves job satisfaction (higher team stability) Continuous Delivery enables cheap, low-risk experimentation allowing opportunities that would otherwise be missed to be uncovered
  14. 14. Bringing business value Shifts focus and newly available budget from releasing to research, analysis, development, testing etc… (cost benefit – shifts or lowers staffing costs without compromising quality) 4 days 1 day 10 days 3 days 10 days 3 days Work time Release time
  15. 15. The Plan
  16. 16. Maturity model – other considerations Will bring everyone together around one picture People will feel very engaged and eager to contribute on their areas Will learn about other areas and think how could they help others Will start a thought process that will last for more than the duration of the meeting
  17. 17. Next Steps Start with a walking skeleton Continuous Improvement
  18. 18. Build Deploy Application Commit Acceptance Pack
  19. 19. Build Static Code Analysis Unit Tests + Code Coverage Deploy Application Commit Acceptance Pack
  20. 20. Build Static Code Analysis Unit Tests + Code Coverage Deploy Application Acceptance Tests Commit Acceptance Pack
  21. 21. Build Static Code Analysis Unit Tests + Code Coverage Dependency Checks Deploy Application Smoke Tests Acceptance Tests Commit Acceptance Pack
  22. 22. Build Static Code Analysis Unit Tests + Code Coverage Dependency Checks Deploy Application Update Database Schema Smoke Tests Acceptance Tests Commit Acceptance Pack
  23. 23. Build Static Code Analysis Unit Tests + Code Coverage Dependency Checks Deploy Application Update Database Schema Smoke Tests Acceptance Tests Deploy Application Update Database Schema Smoke Tests Commit Acceptance UAT Pack
  24. 24. Build Static Code Analysis Unit Tests + Code Coverage Dependency Checks Deploy Application Update Database Schema Smoke Tests Acceptance Tests Deploy Application Update Database Schema Smoke Tests Commit Acceptance UAT Pack
  25. 25. Commit Acceptance UAT Commit Acceptance UAT Commit Acceptance UAT Deploy All Applications End to End Tests Performance Tests Staging
  26. 26. Setting business’ expectations Variable operational costs may ramp-up in the beginning (but will likely decrease below current values after the wide adoption of CD) Acquisition of new hardware and software plus their installation and configuration Includes trainings and staff exposure to the use and best practices of the new technologies and tools Test systems on which to make mistakes and learn from them (will probably be rebuilt) Consultancy (don’t reinvent the wheel)
  27. 27. Setting business’ expectations Job coverage while team members are attending training sessions will decrease Internal processes have to be amended or devised Aligning with other groups, work streams and third parties incurs overhead and as you probably expected will take time to refine Release management is simple in theory
  28. 28. Setting business’ expectations Change management If the client is using older software development methodologies (for example waterfall), the learning curve is quite steep The business must maintain existing operations “Hands-on” team members may mistrust the heavy use of automation Change equals disruption, make sure to bring clarity to the vision, the risks, the costs and the benefits
  29. 29. Setting business’ expectations Also with regards to change management, be aware and accept that the business’ pressure to deliver visible business value will start to be felt in a few sprints Return of investment can be expected only after at least one project is using the CD practice and successfully goes live)
  30. 30. Questions & answers
  31. 31. The case for Continuous Delivery Laurentiu Mandru (laurentiu.mandru@endava.com) Victor Chircu (victor.chircu@endava.com) 25th of April 2015 Please fill in your evaluation form

×