Contents
The Science of Lean Software and DevOps: Building and Scaling High Performing Technology Organizations
book by Nicole Fosgren, Jez Humble, and Gene Kim started in Year 35
The authors describe engineering excellence, which they call “software delivery performance”, in terms of 24 capabilities across 5 categories:
Capabilities
Continuous Delivery
- Version control
- Deployment automation
- Continuous integration
- Trunk-based development
- Test automation
- Test data management
- Shift left on security
- Continuous delivery
Architecture
- Loosely-coupled architecture
- Empowered Teams
Product and process
- Customer feedback
- Value stream
- Working in small batches
- Team experimentation
Lean management and monitoring
- Change approval process
- Monitoring
- Proactive notification
- WIP limits
- Visualizing work
Cultural
- Generative organizational culture (Westrum)
- Supporting learning
- Collaboration among teams
- Job satisfaction
- Transformational leadership
Metrics
Accelerate recommends the 4 key metrics from the DevOps Research and Assessment (DORA) group to measure software delivery performance:
- Lead time: the amount of time from customer request to it being live in prod
- Deployment Frequency: how frequently changes are pushed to prod (a proxy for batch size, since frequent deploys typically implies smaller deploys)
- Mean time to restore: how long does it take to fix failures in production
- Change fail percentage: how often do intended changes fail and need to be rolled back
As with any metrics, some caveats apply which ThoughtWorks summarizes.