Menu

Continuous Delivery reading recommendations

Books can help expand your understanding of a topic in your field. With so many books and topics, the choice can be overwhelming. Even if you narrow your choices, time is precious, and you want to make the most of it by reading books that matter.

Book recommendations


Continuous Delivery

By Jez Humble, David Farley

Continuous Delivery (CD) is a popular term in DevOps. CD describes the fast, incremental delivery of high-quality, valuable new functionality to users.

A mature CD system can deploy new changes to users in minutes compared to much longer deployment times for traditional systems.

This book outlines the practices to build a ‘deployment pipeline’ and how to automate and manage all changes. The book discusses the environment surrounding the pipeline to support Continuous Delivery.

Topics include:

  • Automating all parts of building, integrating, testing, and deploying software
  • Implementing deployment pipelines at a 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 Deployments and zero-downtime releases
  • Managing infrastructure, data, components, and dependencies
  • Navigating risk management, compliance, and auditing

Continuous Delivery cover has a small image of the Forth Bridge (a cantilever railway bridge) at sunset

Modern Software Engineering

By David Farley

Modern Software Engineering is by the pioneer of Continuous Delivery, David Farley. It helps software professionals think about and manage their work more effectively and improve their applications.

You can distill software engineering into two exercises:

  1. Learning and exploration
  2. Managing complexity

The book includes principles that will improve the way you code, from your mindset to quality.

Topics include:

  • Clarify what you’re trying to accomplish
  • Choose your tools based on sensible criteria
  • Organize work and systems to facilitate continuing incremental progress
  • Evaluate your progress toward thriving systems, not just more legacy code
  • Gain more value from experimentation and empiricism
  • Stay in control as systems grow more complex
  • Achieve rigor without too much rigidity
  • Learn from history and experience
  • Distinguish good new software development ideas from bad ones

Modern Software Engineering cover features a photograph of a complex circuit board

Test-Driven Development

By Kent Beck

Testing is an essential part of the DevOps lifecycle. Continuous Testing ensures downstream components are achieving their intended function.

Having a culture around testing can improve the quality of a software application. Test-Driven Development is about helping developers embrace testing through continuous feedback.

The author lays out two rules for Test-Driven Development:

  1. Only write new business code when an automated test fails
  2. Cut any duplication

These rules are further expanded on through the Red/Green/Refactor model. Through practical examples and valuable frameworks, Test-Driven Development is a helpful tool in a developer’s toolkit to improve as a software engineer.

Test-Driven Development cover features a small photograph of a large cathedral with two spires

Exploring Octopus Deploy

By Steve Fenton

This book explains the concepts and features of Octopus Deploy that help you make your complex deployments and runbooks a breeze.

You’ll learn:

  • How automation brings more than just speed
  • What excellent deployments look like
  • What makes operations runbooks great
  • About Octopus Deploy features, concepts, and terms
  • How you can use Octopus to level up deployments and runbooks

The second edition is a complete rewrite of Exploring Octopus Deploy, updated with all the features added or updated since the first edition. Find out how to get the most from Octopus by using it for deployments, operations tasks, and self-service actions for your teams.

You can download Exploring Octopus Deploy for free.

Exploring Octopus Deploy has a cover with the text: A journey to simplify deployments and operations tasks with powerful automation

Continuous Delivery Pipelines

By Dave Farley

Zooming in with a practical guide to implementation, Continuous Delivery Pipelines takes you through the process of selecting an application and introducing automated deployment pipelines. The book explains what a deployment pipeline is, how to build one, and practices that are relevant to the process.

The pipeline is then explained in stages:

  • Commit cycle
  • Artifact repository
  • Acceptance stage
  • Manual testing
  • Performance testing
  • Non-functional testing
  • Test data and data migration
  • Release into production

This is valuable hands-on guide to getting deployment pipelines right.

Continuous Delivery Pipelines

Progressive Delivery

By James Governor, Kimberly Harrison, Heidi Waterhouse, and Adam Zimman

Progressive Delivery is about delivering software in a way that minimizes risk and maximizes value. It’s a modern approach to software delivery that’s built on the principles of Continuous Delivery and DevOps.

The book describes 4 key elements to sustainable product development:

  • Abundance
  • Autonomy
  • Alignment
  • Automation

One of the stand-out concepts in this book is the idea of users being given more control over when they accept new features, instead of features being pushed out to users in big bang releases.

Progressive Delivery

Cloud Native DevOps with Kubernetes

By Justin Domingus and John Arundel

Kubernetes is an open-source container orchestration system created by Google and managed by the Cloud Native Computing Foundation.

This book explains the concepts of Kubernetes with practical examples to help you start. You’ll learn how to run Kubernetes in Production at scale and optimize for performance, reliability, and cost. It also teaches best practice for security, observability, and monitoring.

Cloud Native DevOps with Kubernetes

Help us continuously improve

Please let us know if you have any feedback about this page.

Send feedback

Categories:

Next article
DevOps