Continuous Delivery: Reliable Software Releases through Build, Test, and Deployment Automation, 1st edition

Published by Addison-Wesley Professional (July 27, 2010) © 2011

  • Jez Humble
  • David Farley
Products list
  • Available for purchase from all major ebook resellers, including InformIT.com
Products list

Details

  • A print text
  • Free shipping
  • Also available for purchase as an ebook from all major ebook resellers, including InformIT.com

This product is expected to ship within 3-6 business days for US and 5-10 business days for Canadian customers.

Getting software released to users is often a painful, risky, and time-consuming process. This 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 virtualisation. 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 organisational 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 organisation move from idea to release faster than ever—so you can deliver value to your business rapidly and reliably.

Foreword by Martin Fowler

Preface

Acknowledgements

About the Authors

Part I Foundations

1 The Problem of Delivering Software

2 Configuration Management

3 Continuous Integration

4 Implementing a Testing Strategy

Part II The Deployment Pipeline

5 Anatomy of the Deployment Pipeline

6 Build and deployment scripting

7 Commit Testing Stage

8 Automated Acceptance Testing

9 Testing Non-Functional Requirements

10 Deploying and Releasing Applications

Part III The Delivery Ecosystem

11 Managing infrastructure and environments

12 Managing Data

13 Managing components and dependencies

14 Advanced version control

15 Managing Continuous Delivery

Bibliography

Index

Need help? Get in touch