
Download the free Kindle app and start reading Kindle books instantly on your smartphone, tablet, or computer - no Kindle device required.
Read instantly on your browser with Kindle for Web.
Using your mobile phone camera - scan the code below and download the Kindle app.
Image Unavailable
Color:
-
-
-
- To view this video download Flash Player
Follow the authors
OK
Continuous Delivery: Reliable Software Releases through Build, Test, and Deployment Automation (Addison-Wesley Signature Series (Fowler)) 1st Edition
Winner of the 2011 Jolt Excellence Award!
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.
- ISBN-109780321601919
- ISBN-13978-0321601919
- Edition1st
- PublisherAddison-Wesley Professional
- Publication dateJuly 27, 2010
- LanguageEnglish
- Dimensions7.35 x 1.3 x 9.4 inches
- Print length512 pages
Similar items that ship from close to you
From the Publisher

From the foreword by Martin Fowler
"Getting [Continuous Integration] working takes effort, but benefits are profound. Long, high-intensity releases become a thing of the past. Customers of software see ideas rapidly turn into working code that they can use every day. Perhaps most importantly, we remove one of the biggest sources of baleful stress in software development. Nobody likes those tense weekends trying to get a system upgrade released before Monday dawns.
It seems to me that a book that can show you how to deliver your software frequently and without the usual stresses is a no-brainer to read. For your team’s sake, I hope you agree."
Editorial Reviews
Review
“If you need to deploy software more frequently, this book is for you. Applying it will help you reduce risk, eliminate tedious work, and increase confidence. I’ll be using the principles and practices here on all my current projects.”
–Kent Beck, Three Rivers Institute
“Whether or not your software development team already understands that continuous integration is every bit as necessary as source code control, this is required reading. This book is unique in tying the whole development and delivery process together, providing a philosophy and principles, not just techniques and tools. The authors make topics from test automation to automated deployment accessible to a wide audience. Everyone on a development team, including programmers, testers, system administrators, DBAs, and managers, needs to read this book.”
–Lisa Crispin, co-author of Agile Testing
“For many organizations Continuous Delivery isn’t just a deployment methodology, it’s critical to doing business. This book shows you how to make Continuous Delivery an effective reality in your environment.”
–James Turnbull, author of Pulling Strings with Puppet
“A clear, precise, well-written book that gives readers an idea of what to expect for the release process. The authors give a step-by-step account of expectations and hurdles for software deployment. This book is a necessity for any software engineer’s library.”
–Leyna Cotran, Institute for Software Research, University of California, Irvine
“Humble and Farley illustrates what makes fast-growing web applications successful. Continuous deployment and delivery has gone from controversial to commonplace and this book covers it excellently. It’s truly the intersection of development and operations on many levels, and these guys nailed it.”
–John Allspaw, VP Technical Operations, Etsy.com and author of
The Art of Capacity Planning and Web Operations
“If you are in the business of building and delivering a software-based service, you would be well served to internalize the concepts that are so clearly explained in Continuous Delivery. But going beyond just the concepts, Humble and Farley provide an excellent playbook for rapidly and reliably delivering change.”
–Damon Edwards, President of DTO Solutions and co-editor of dev2ops.org
“I believe that anyone who deals with software releases would be able to pick up this book, go to any chapter and quickly get valuable information; or read the book from cover to cover and be able to streamline their build and deploy process in a way that makes sense for their organization. In my opinion, this is an essential handbook for building, deploying, testing, and releasing software.”
–Sarah Edrie, Director of Quality Engineering, Harvard Business School
“Continuous Delivery is the logical next step after Continuous Integration for any modern software team. This book takes the admittedly ambitous goal of constantly delivering valuable software to customers, and makes it achievable through a set of clear, effective principles and practices.”
–Rob Sanh
From the Back Cover
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.
About the Author
Dave Farley has been having fun with computers for nearly 30 years. Over that period he has worked on most types of software, from firmware, through tinkering with operating systems and device drivers, to writing games, and commercial applications of all shapes and sizes. He started working in large scale distributed systems about 20 years ago, doing research into the development of loose-coupled, message-based systems - a forerunner of SOA. He has a wide range of experience leading the development of complex software in teams, both large and small, in the UK and USA. Dave was an early adopter of agile development techniques, employing iterative development, continuous integration and significant levels of automated testing on commercial projects from the early 1990s. He honed his approach to agile development in his four and a half year stint at ThoughtWorks where he was a technical principal working on some of their biggest and most challenging projects. Dave is currently working for the London Multi-Asset Exchange (LMAX), an organization that is building one of the highest performance financial exchanges in the world, where they rely upon all of the major techniques described in this book.
Jez Humble has been fascinated by computers and electronics since getting his first ZX Spectrum aged 11, and spent several years hacking on Acorn machines in 6502 and ARM assembler and BASIC until he was old enough to get a proper job. He got into IT in 2000, just in time for the dot com bust. Since then he has worked as a developer, system administrator, trainer, consultant, manager, and speaker. He has worked with a variety of platforms and technologies, consulting for non-profits, telecoms, financial services and on-line retail companies. Since 2004 he has worked for ThoughtWorks and ThoughtWorks Studios in Beijing, Bangalore, London and San Francisco. He holds a BA in Physics and Philosophy from Oxford University and an MMus in Ethnomusicology from the School of Oriental and African Studies, University of London. He is presently living in San Francisco with his wife and daughter.
Product details
- ASIN : 0321601912
- Publisher : Addison-Wesley Professional
- Publication date : July 27, 2010
- Edition : 1st
- Language : English
- Print length : 512 pages
- ISBN-10 : 9780321601919
- ISBN-13 : 978-0321601919
- Item Weight : 2.1 pounds
- Dimensions : 7.35 x 1.3 x 9.4 inches
- Best Sellers Rank: #231,603 in Books (See Top 100 in Books)
- #33 in Software Design & Engineering
- #107 in Computer Programming Languages
- #218 in Software Development (Books)
- Customer Reviews:
About the authors
Jez Humble is co-author of several books on software including Shingo Publication Award winner Accelerate, The DevOps Handbook, Lean Enterprise, and Jolt Award winner Continuous Delivery. He has spent his 20 year career in software tinkering with code, infrastructure, and product development in companies of varying sizes across three continents, including working for the US Federal Government’s 18F team as part of the Obama Tech Surge, and co-founding startup DevOps Research and Assessment LLC, which was acquired by Google in December 2018. He works for Google as a site reliability engineer, and teaches classes on agile software engineering and product management at UC Berkeley’s School of Information.
Dave Farley is co-author of the award winning book 'Continuous Delivery' and a contributor to the 'Reactive Manifesto'. He has been having fun with computers for over 30 years. During that period he has worked on most types of software, from firmware, through tinkering with operating systems and device drivers, to writing games, and commercial applications of all shapes and sizes. In recent years Dave has worked in the field of low-latency systems and was a contributor to the Duke award-winning 'LMAX Disruptor', open-source project.
He started working in large scale distributed systems about 25 years ago, doing research into the development of loose-coupled, message-based systems-a forerunner of today's Micro-Service architecture. He has a wide range of experience leading the development of complex software in teams, both large and small, in the UK and USA.
Dave was an early adopter of agile development techniques, employing iterative development, continuous integration and significant levels of automated testing on commercial projects from the early 1990s. He honed his approach to agile development in his four and a half year stint at ThoughtWorks where he was a technical principal working on some of their biggest and most challenging projects.
Dave is currently working as an independent software developer and consultant.
Customer reviews
Customer Reviews, including Product Star Ratings help customers to learn more about the product and decide whether it is the right product for them.
To calculate the overall star rating and percentage breakdown by star, we don’t use a simple average. Instead, our system considers things like how recent a review is and if the reviewer bought the item on Amazon. It also analyzed reviews to verify trustworthiness.
Learn more how customers reviews work on AmazonCustomers say
Customers find this book comprehensive and well-written, making it an absolute must-read for software and application development professionals. The book effectively explains continuous delivery concepts and includes real-world examples, with one customer noting it covers every area in the software release lifecycle. Customers appreciate its value for money, and one review highlights its solid foundation on CI/CD processes.
AI Generated from the text of customer reviews
Select to learn more
Customers appreciate the book's brevity, with several noting it does a good job of explaining the concepts behind continuous delivery, and one customer mentioning it serves as a great resource for DevOps and Continuous Delivery.
"...The second part is the core of the book. It explains the continuous delivery pipeline...." Read more
"...Deploying and Releasing Applications, and 15. Managing Continuous Delivery. Believe me, I have read and reread these chapters...." Read more
"...specialization and work effectiveness, log bug rate, and shorter delivery cycles with speed feedback can be achieved with the individuals in the..." Read more
"This book does a good job of explaining the concepts behind continuous delivery including why it is so important to software projects...." Read more
Customers appreciate the book's realistic approach, highlighting its real-life experiences and real-world examples.
"...detailed and in-depth treatment of this subject with real examples that are relevant...." Read more
"...My favorite parts might be the many real-world stories of how things can go wrong or how applying some of the principles smoothed things out...." Read more
"...I loved the real life samples and the way they describes how you can go from a zero to a 4 level of CI in your organization...." Read more
"...Integration/Delivery in clear and concise terminology with real-world examples...." Read more
Customers find the book effective, with reviews highlighting its usefulness for QA, Dev, and Operations teams, and one customer noting it provides a great target for organizations.
"...In practical sense, specialization and work effectiveness, log bug rate, and shorter delivery cycles with speed feedback can be achieved with the..." Read more
"...concepts behind continuous delivery including why it is so important to software projects...." Read more
"...Provides a great target for any organizaiton and good recommendations for your trip to achieving that target!" Read more
"...it is some years old it STILL has very current principles that are useful!" Read more
Customers appreciate the book's validation approach, with one customer noting its solid foundation on CI/CD processes and another highlighting its focus on automated acceptance testing.
"...not make you an expert but it will defiantly give you a solid foundation on CI/CD processes...." Read more
"...Configuration Management, 3. Continuous Integration, 8. Automated Acceptance Testing, 10. Deploying and Releasing Applications, and 15...." Read more
"...It covers planning, development, testing and deployment...." Read more
"...Perhaps the most valuable thing this book gives me is validation for processes I've been begging to get done where I work...." Read more
Customers find the book well worth the purchase.
"...The authors make an excellent case for reducing software project risks by working towards the goal of continuous delivery...." Read more
"There's so much value in this book, it blew me away!..." Read more
"Excellent product" Read more
"Delivering value continuously is an achievable reality..." Read more
Customers appreciate the encyclopedia content of the book, with one customer noting it covers every area in the software release lifecycle, while another mentions it encapsulates years of experience.
"...old which makes it a classic in the world of I.T, so it covers timeless processes and not the latest and greatest trendy tools...." Read more
"Covers every area in the software release lifecycle with great details and best practices, with business justifications for each recommendation...." Read more
"Great book with practical guidelines. It clearly encapsulates years of exp. Highly recomended. Have no more to say but I have to add seven words." Read more
Reviews with images

Don't read it cover to cover.
Top reviews from the United States
There was a problem filtering reviews. Please reload the page.
- Reviewed in the United States on October 19, 2013Format: HardcoverVerified PurchaseContinuous Delivery from Jezz Humble and David Farley is an important contribution to the field of software development. It takes continuous integration to the logical conclusion and covers how to set up a continuous integration system which covers everything from check-in to delivery to production. It doesn't state you have to deliver directly in production, but it will explain how technically it is achievable to do that and what enormous benefits this brings to your organization.
Continuous delivery consists of three parts: 1) Foundation, 2) Deployment Pipeline, and 3) Delivery Ecosystem
The first four chapters cover the fundamentals the rest of the book is based on. The first chapter provides some problems with more traditional approaches and also introduces some principles extracted out of continuous delivery. The next three chapters cover topics that provide the basics of continuous delivery. Someone involved with agile development for a while is probably aware of most of this and it will be a quick read. For new people, these chapter provide a quick introduction to these topics so that you can understand the rest of the book. The chapters are: "configuration management," "continuous integration," and "implementing a testing strategy."
The second part is the core of the book. It explains the continuous delivery pipeline. This pipeline is a series of stages (a series of continuous integration systems) each stage covering higher-level wider-range of testing so that the confidence in the product increases the later the stage in the deployment pipeline passes. The stages the authors recommend in the deployment pipeline are: commit, acceptance, capacity, manual, production. Each of these stages (except for manual) has its own chapter which explains tools and practices that the authors have found useful in that stage of the deployment pipeline. The part also contains an additional 'foundation' chapter about build and deployment scripting.
The last part of the book is one that I myself found most interesting which covers perhaps some 'advanced' topics. The part is called "delivery ecosystem" and the chapters aren't directly related to each other but each chapter covers a common topic related to the deployment pipeline. Chapter 11 talks about managing and automating your infrastructure as part of your build also. It introduces a vast amount of topics related to automation (pupper, chef), virtualization, cloud computing and monitoring. Unfortunately, the book is only able to touch a little upon each of these topics as each of them could easily fill several others books (and they do!). Chapter 12 covers a very frequent problem in testing and test automation related to managing data. It explains several different approaches and then evaluates them and shares the experiences and recommendations of the authors. Managing test data is a common problem and is rarely covered in the amount of detail as this book does. Chapter 13 discusses different scaling options by componentizing the product and what effect this has on the continuous deployment pipeline (basically adding another dimension to the pipeline). Chapter 14 is about version control and can be summarized as "avoid branching" but the authors do a good job explaining that message and why the alternatives are indeed worst. Chapter 15 was a short (and I slightly disliked this chapter) about managing continuous delivery. It felt like the standard "and now... what actions to take"-chapter. It was a bit shallow though.
When the book was published, I read it through rather quickly and liked it but didn't appreciated the depth of the book yet. I re-read it the second time more thoroughly and enjoyed the careful comparisons and explanations of the recommendations of the authors. They shared the experiences they have had very clear. The book is interesting to me as it covers a vast area and thus it is hard to not touch everything shallowly, but they don't, they go in more depth at the points where the authors feel it is appropriate (for example, parts that are controversial or often done differently).
The book isn't perfect though! As some other reviewers pointed out, it is repetitive and should have been thinner. I agree with that. Also, sometimes the book side-tracks in interesting facts that are unlikely to help the reader a lot such as the history of version control. Next, the book contains some very basic things that could have perhaps been left out (or put as appendix), such as an explanation of maven. My last comment is that the book sometimes contradicts itself such as the recommendation to do things "at the beginning of the project" but then later stating that "at the beginning of the project, all these decisions will change". There I still felt the influence of standard 'project' thinking.
With all these drawbacks, I still decided to rate the book five stars because I do think it is an very influential and important book. It tells and *shows* that continuous delivery is not just a perfection state but that it can be achieved today. Not only that, it can be achieved in larger projects, not just small web projects. This is a huge contribution to the industry and I think and hope that the practices of continuous delivery will become standard practices everywhere. Excellent read (except for the repetition) and highly recommended.
- Reviewed in the United States on September 13, 2010Format: HardcoverVerified PurchaseThis is one of the most important software books published in years. From the beginning and throughout the book, the authors emphasize the importance in establishing one delivery team consisting of various experts throughout the software lifecycle - developers, DBAs, Systems/Operations, network specialists, testers and so on. The overarching pattern the authors describe is the Deployment Pipeline, which is basically a staged process consisting of all of the steps to go from bare/virtual metal to a working system whenever there is a change to source files. Of course, the only way this can be done is through copious amounts of automation. The other key point the authors make is that this automated delivery system - itself - is versioned with every change. Not just the custom source code, but also the operating system(s), tools, configuration and everything necessary to create a working software system - a crucial aspect of the Deployment Pipeline.
To sum up key points from the book in a few bullets:
* The purpose of Continuous Delivery is to reduce the cycle time between an idea and usable software
* Automate (almost) everything necessary to create usable software
* Version complete software systems (not just source code) for every change committed to version control system
* Employ a Deployment Pipeline in which the entire system is recreated whenever a change is committed to the version-control system and provide continuous feedback
* Identify one delivery team consisting of various delivery experts - build, deploy, provisioning, database, testing, etc. - a concept emphasized in the DevOps movement
The authors go into great detail in describing each of these themes. So, if you want the process of delivering software to any target environment - including production - to be a click of a button and something that can be accomplished as often as the business requires, get this book. When you employ the practices in this book, no longer will you need to artificially throttle changes delivered to users for months or even years because of the expense and risk required to deliver software.
- Reviewed in the United States on August 11, 2024Format: KindleVerified PurchaseThis book is one of the hardest I’ve ever read. Not because of the concept, but the number of words that make things clear at first to later drawn in uncertainty.
Nevertheless I still think it’s a must-read, because it’s not displaying what the future looks like. It’s what is now in many leading companies.
Top reviews from other countries
- Franck MikuleczReviewed in the United Kingdom on November 4, 2012
5.0 out of 5 stars Gold on paper
Format: HardcoverVerified PurchaseRarely have I seen a book so full of teachings and so uniformly dense with knowledge. I have enjoyed it end-to-end and am here back for writing a review after quite a wile. The book will be accessible for business management people as well, and will give insight on the "why" as well as the how.
I mostly recommend it for teams of developers that are a bit cranky and stuck in their old ways.
The kind of book you buy multiple copies of, just to make friends or co-workers happy one day.
I would have appreciated it even as Christmas present !
-
ElcioReviewed in Brazil on April 16, 2025
5.0 out of 5 stars Avaliação
Format: KindleVerified PurchaseAvaliação
-
Andrea, Jole, Giugiu e LilliReviewed in Italy on July 31, 2020
5.0 out of 5 stars Pietra miliare per la CI...forse un po' dispersivo
Format: HardcoverVerified PurchaseQuesto libro è considerato una pietra miliare del movimento DevOps.
Ed in effetti sono d'accordo sul fatto che sia il miglior libro sulle pratiche DevOps di sempre. Nelle sue pagine illustra le migliori pratiche e quali problemi risolvono.
Il libro è anche una cassetta degli attrezzi di tutto ciò che va sapito sulla CI, dall'automazione della distribuzione alla gestione della configurazione alla gestione dei dati e persino ad aspetti di qualità e controllo.
Forse poteva essere compattato in il libro meno dispersivo.
-
Jose María González CogollorReviewed in Spain on September 27, 2014
5.0 out of 5 stars Un libro obligatorio para cualquier desarrollador
Format: HardcoverVerified PurchaseAunque un poco repetitivo, es un gran libro para introducirse en el mundo de Devops. Me ha ayudado a mejorar muchos procesos de mi empresa.
- Daniel DoironReviewed in Canada on November 24, 2010
5.0 out of 5 stars A great book on pain management!
Format: HardcoverVerified PurchaseAgile practice states that if something hurts the remedy is to repeat until the pain goes away.
Humble's and Farley's work is about alleviating the discomfort associated with moving code from check-in to production and managing the following 3 degrees of freedom - branching, dependencies and the deployment pipeline. In showing us this new paradigm, which must be heavily supported by tools and automation, we are taught how to tackle the middleware components as well: binaries, configurations and data.
The book brought me back to Donald Knuth's vision and warnings made more than 40 years ago on anti-patterns vis-a-vis performance tuning. The authors remind us that there's nothing like Prod metrics to fine tune performance of the Prod environments.
If business governance and the imperative of delivering software are of paramount importance to you, this book is loaded with practical solutions, market knowledge and tips. It also contains a great maturity model and will introduce concepts like canary releasing and blue-green deployments.