Book Cover


This book defines software delivery performance and how to measure it. Software delivery performance can be measured by the four following metrics:

  • Lead time
  • Deployment frequency
  • Mean time to restore (MTTR)
  • Change fail percentage

These four measures of software delivery performance are classifiers for three groups:

  • High performers
  • Medium performers
  • Low performers

Finally, the following 24 capabilities are suggested to drive improvement to software delivery performance.

  • Continuous Delivery
    1. User version control for all production artifacts.
    2. Automate your deployment process.
    3. Implement continuous integration.
    4. Use trunk-based development methods.
    5. Implement test automation.
    6. Support test data management.
    7. Shift left on security.
    8. Implement continuous delivery.
  • Architecture
    1. Use a loosely coupled architecture.
    2. Architect for empowered team.
  • Product and Process
    1. Gather and implement customer feedback.
    2. Make the flow of work visible through the value stream.
    3. Work in small batches.
    4. Foster and enable team experimentation.
  • Lean Management and Monitoring
    1. Have a lightweight change approval process.
    2. Monitor across application and infrastructure to inform business decisions.
    3. Check system health proactively.
    4. Improve processes and manage work with work-in-progress limits.
    5. Visualize work to monitor quality and communicate throughout the team.
  • Cultural
    1. Support a generative culture (as outlined by Westrum).
    2. Encourage and support learning.
    3. Support and facilitate collaboration among teams.
    4. Provide resources and tools that make work meaningful.
    5. Support or embody transformational leadership.