glasses__cleanup_srgb

Part of the TechLab_Report19

Back to overview

Continuous delivery

In the midst of Digital Transformation, speed is the most important metric technology departments should focus on. With the right speed, you can deliver features and fix problems in production systems at a moment’s notice, several times a day.

To do that safely, you need to invest in establishing a set of systems and practices that enable the continuous delivery of value, without compromising quality and reliability.

Aim for continuous deployment to production

Continuous integration and continuous deployment (CI/CD) are well-known automation practices which have become widely used to deliver software quickly and safely. Quite often, however, these automaton pipelines only go as far as a testing or ‘staging’ environment, where code changes and infrastructure changes build until such a time as a decision maker says it’s time to push the button to go live.

While this is great for the development process, you’ll then most likely hit the same issues you’re trying to avoid during development in your deployment into production. Continuous deployment to production essentially takes these practices one step further – all the way to production.

Make small changes, often

Continuous deployment to production means every feature is “done” when it’s running in production. The process generally starts when a feature or a part of a feature has been written by (a pair of) engineers, reviewed, and merged into the master branch of a repository. The automation then kicks in to run all the tests and any other automated quality checks, eventually ending with a deployment to the production environment, in front of customers, with no further manual gates.

Making small changes often has been proven to help de-risk software delivery. Small changes made in the morning and deployed in the afternoon allow for any small issues after deployment to be easily tracked down, debugged, and fixed quickly – even if your automated checks didn’t catch them (which, over time, becomes pretty rare).

Experience the benefits

The benefits of constantly shipping small changes to production aren’t limited to quality and reliability. Product, user experience, visual design and ultimately your customers also benefit from these changes as the time through the deployment loop is the lower bound on how quickly things can change and adapt. With continuous delivery, it can be significantly reduced. This allows a full change in how you go about product delivery, enabling a shift to a continuous build, measure and learn cycle.

Quite simply, continuous delivery (and infrastructure to support it) is the number one strategic capability you need to have.

Read more about our other specialisms:

Back to overview
groupshot_1024
Want to learn how to apply this thinking to your business? Register your interest in forthcoming events.