Continuous Delivery
Continuous Delivery by Jez Humble and David Farley is one of the foundational texts in modern software engineering and DevOps. It formalized the idea that software releases should be automated, lowβrisk, and routine, not stressful events.
What the book is about
Section titled βWhat the book is aboutβThe core message is that teams should keep software always in a deployable state and use a fully automated deployment pipeline to move changes from commit to production. This pipeline includes automated builds, tests, deployments, and verification steps.
Key ideas:
- Deployment Pipeline β an automated sequence from code checkβin to production release, extending CI into full CD.
- Automate Everything β build, test, deploy, environment provisioning, configuration.
- Small, frequent releases β reduce risk and increase feedback loops.
- Rigorous automated testing β unit, integration, acceptance tests as the backbone of safe delivery.
- Infrastructure as Code β treat environments as versioned, reproducible artifacts.
- Zeroβdowntime techniques β blue/green deployments, canary releases, feature toggles.
- Crossβteam collaboration β Dev, QA, Ops working as one delivery system.
The book also explains the ecosystem needed for CD: configuration management, data migration strategies, virtualization, governance, and risk management.
Why it matters
Section titled βWhy it mattersβIt is widely considered the original comprehensive guide to Continuous Delivery and a precursor to the DevOps movement. Martin Fowlerβs foreword highlights how it extended CI into full delivery automation.
It remains a reference for engineering teams adopting CI/CD pipelines.