Getting software released to users is often a painful, risky, and time-consuming process.This groundbreaking new book sets out the principles and technical practices that enable rapid, incremental delivery of high quality, valuable new functionality to users. Through automation of the build, deployment, and testing process, and improved collaboration between developers, testers, and operations, delivery teams can get changes released in a matter of hours―sometimes even minutes–no matter what the size of a project or the complexity of its code base.
Jez Humble and David Farley begin by presenting the foundations of a rapid, reliable, low-risk delivery process. Next, they introduce the “deployment pipeline,” an automated process for managing all changes, from check-in to release. Finally, they discuss the “ecosystem” needed to support continuous delivery, from infrastructure, data and configuration management to governance.
The authors introduce state-of-the-art techniques, including automated infrastructure management and data migration, and the use of virtualization. For …
Getting software released to users is often a painful, risky, and time-consuming process.This groundbreaking new book sets out the principles and technical practices that enable rapid, incremental delivery of high quality, valuable new functionality to users. Through automation of the build, deployment, and testing process, and improved collaboration between developers, testers, and operations, delivery teams can get changes released in a matter of hours―sometimes even minutes–no matter what the size of a project or the complexity of its code base.
Jez Humble and David Farley begin by presenting the foundations of a rapid, reliable, low-risk delivery process. Next, they introduce the “deployment pipeline,” an automated process for managing all changes, from check-in to release. Finally, they discuss the “ecosystem” needed to support continuous delivery, from infrastructure, data and configuration management to governance.
The authors introduce state-of-the-art techniques, including automated infrastructure management and data migration, and the use of virtualization. For each, they review key issues, identify best practices, and demonstrate how to mitigate risks. Coverage includes
Automating all facets of building, integrating, testing, and deploying software
Implementing deployment pipelines at team and organizational levels
Improving collaboration between developers, testers, and operations
Developing features incrementally on large and distributed teams
Implementing an effective configuration management strategy
Automating acceptance testing, from analysis to implementation
Testing capacity and other non-functional requirements
Implementing continuous deployment and zero-downtime releases
Managing infrastructure, data, components and dependencies
Navigating risk management, compliance, and auditing
Whether you’re a developer, systems administrator, tester, or manager, this book will help your organization move from idea to release faster than ever―so you can deliver value to your business rapidly and reliably.
An excellent and thorough textbook that's well worth a read by anyone implementing or involved in Continuous Integration, Deployment and Delivery systems. A little dated as it tends to focus on Java and doesn't really discuss the impact of containers, but the principles are still clear and there are plenty of software orgs that don't follow the basic tenets laid out.