I had a chance to read a book “Team Topologies” which is about team structure for high performance and summarized it in this post. One book that was referenced throughout this book and got my attention is “Accelerate: The Science of Lean Software and DevOps: Building and Scaling High Performing Technology Organizations”.
Although it is a technology related book which was released in 2018, the key messages in this book is still relevant in current situation and, I think, in the years to come.
In summary, this book is a report on DevOps research. It summarizes factors that can improve performance of technology organization, both commercial and non-commercial. These factors are DevOps and Agile related practices. What I really like about this book is that the causes and effects presented are quite clear and easy to understand. It could serve as a guideline for any organizations who want to improve their performance through technology.
Figure 1 - Factors and their relationships
These are all the factors and their relationships depicted in one picture. One factor can impacts, drives or correlate to other factors.
I divided my summarization into 4 posts. Each one of them will cover each key factor.
- Software Delivery Performance (this post)
- Organizational Culture
- Continuous Delivery
- Lean Management
Part 1 - How to accelerate Software Delivery Performance
This post is part 1 of 4 parts series. It describes Software Delivery Performance, how to measure it and what impacts it has on organizational performance.
Figure 2 - Software Delivery Performance and its impacts
How to measure software delivery performance
Since our goal is to improve software delivery performance, firstly, what we need to know is our current performance and how much we are improving. This needs measurements. In this book, they define 4 key performance indicators.
- Lead Time - time taken from commit to release
- Deployment Frequency - how often is production deployment
- Mean Time To Restore (MTTR) - average time taken to restore from deployment failure
- Change Fail Percentage - rate of failed deployments over all deployments
Lead Time and Deployment Frequency mean organizations are able to make change to their product more often - Speed. MTTR and Change Fail Percentage mean their deployments do not cause production issues - Stability.
They found that these indicators separate between high performer and low performer organizations which makes sense, an organization that can deliver software fast and with less problems should be able to adapt to change faster and has more chance to win their customers.
Impact of delivery performance on organizational performance
As shown in Figure 2, the report shows that organizations that are good at software delivery as indicates by measurements above, also have a good performance in both organizational goals - profit, revenue and market share, and non-commercial performance - customer satisfaction, productivity and quality of product.
Conclusion
In knowing these sound indicators, leaders in technology organizations should take advantage of this insight and start measure their software delivery performance. Then, learn more about how to improve these indicators (in my next posts) and apply them to their organizations.