Getting software released to users is often a painful, risky, and time-consuming process.

Through reliable, low-risk releases, Continuous Delivery makes it possible to continuously adapt software in line with user feedback, shifts in the market and changes to business strategy. Test, support, development and operations work together as one delivery team to automate and streamline the build, test and release process.

Why continuous delivery?

Continuous delivery provides a competitive advantage for organizations that are willing to invest the effort to pursue it.

The practices at the heart of continuous delivery help you to achieve several important benefits:

Low risk releases. The primary goal of continuous delivery is to make software deployments painless, low-risk events that can be performed at any time, on demand.

Faster time to market. It’s not uncommon for the integration and test/fix phase of the traditional phased software delivery lifecycle to consume weeks or even months. When teams work together to automate the build and deployment, environment provisioning, and regression testing processes, developers can incorporate integration and regression testing into their daily work and completely remove these phases.

Higher quality. When developers have automated tools that discover regressions within minutes, teams are freed to focus their effort on user research and higher level testing activities such as exploratory testing, usability testing, and performance and security testing. By building a deployment pipeline, these activities can be performed continuously throughout the delivery process, ensuring quality is built in to products and services from the beginning.

Lower costs. Any successful software product or service will evolve significantly over the course of its lifetime. By investing in build, test, deployment and environment automation, you can substantially reduce the cost of making and delivering incremental changes to software by eliminating many of the fixed costs associated with the release process.

Better products. Continuous delivery makes it economic to work in small batches. This means getting feedback from users throughout the delivery lifecycle based on working software. This means we can avoid the 2/3 of features we build that deliver zero or negative value to your business.

Happier teams. Peer-reviewed research has shown continuous delivery makes releases less painful and reduces team burnout. Furthermore, when you release more frequently, software delivery teams can engage more actively with users, learning which ideas work and which don’t, and seeing first-hand the outcomes of the work they have done

Dave Farely, founder and director of Continuous Delivery Ltd, is a thought-leader in the field of Continuous Delivery, DevOps and Software Development in general.

Dave is co-author of the book "Continuous Delivery" which describes the use of high levels of automation and collaboration in the delivery process to ensure high quality software and a reduction in errors and late nights.

He has spent 30 years writing software and was Technical Principal on some of ThoughtWorks' biggest, most challenging projects. Dave led software development for the London Multi-Asset Exchange (LMAX), building one of the highest performance financial exchanges in the world, and where they relied heavily upon continuous delivery.