Accelerate Nicole Forsgren, Jez Humble, Gene Kim
Building and Scaling High Performing Technology Organizations
March 19, 2023 - 254 words - 2 mins Found a typo? Edit meAccelerate explores how software development teams using Lean Software and DevOps can measure their performance and the performance of software engineering teams impacts the overall performance of an organization.
Note: DevOps is about integrating and automating software development (Dev) and IT operations (Ops), focusing on improving (and shortening) the systems development life cycle.
Key Capabilities
Continuous Delivery
- Use Version Control for all Production Artifacts
- Automate Your Deployment Process
- Implement Continuous Integration
- Use Trunk-Based Development Methods
- Implement Test Automation
- Continuous Delivery (CD)
Architecture
- Use a Loosely Coupled Architecture
Product and Process
- Gather and Implement Customer Feedback
- Make the Flow of Work Visible through the Value Stream
- Work in Small Batches
- Foster and Enable Team Experimentation
Lean Management and Monitoring
- Have a Lightweight Change Approval Processes
- Monitor across Application and Infrastructure to Inform Business Decisions
- Check System Health Proactively
- Improve Processes and Manage Work with WIP (Work-In-Process) Limits
- Visualize Work to Monitor Quality and Communicate throughout the Team
Cultural
- Support a Generative Culture
- Encourage and Support Learning
- Support and Facilitate Collaboration among Teams
- Provide Resources and Tools that Make Work Meaningful
- Support or Embody Transformational Leadership
Four Key Metrics
- Change Lead Time
- Time to implement, test, and deliver code for a feature
- Deployment Frequency
- Number of deployments in a given duration of time
- Change Failure Rate
- Percentage of failed changes over all changes (regardless of success)
- Mean Time to Recovery
- Time it takes to restore service after production failure
150 pages