DEV Community

Discussion on: Explain in few words what is Continuous Integration, Delivery, and Deployment?

Collapse
 
bousquetn profile image
Nicolas Bousquet • Edited

Continuous Integration, Delivery and Deployement mean that each time you commit a change to your software, the tooling will automatically make it progress up to the production without necessary human intervention as long as all the intermediate steps are successful including automatic testing and quality checks.

For that to happen, no human/manual intervention is necessary, quite reducing the delay between the developper fixing a bug or implementing a new feature and it's availability into production.

The same tooling is available at any development step, typically done in the background by a farm of build/test servers to give continuous feedback to the developper if what he has done works or not.

This pipeline, its stability/robustness, its efficiancy have tremendous impact on the productivity of a developpement team and for the time to market.

The availability in production may not be the last step. Companies having such automatic workflow will activate the new case only in a small number of case/request/customer, gather KPI on the feature, all automatically and decide to deploy it worldwide or fallback depending of the KPI results (% of error rate, response time, behaviour of clients...). Even that rampup/fallback can be completely automatic.