Let’s start with maybe the best definition you can find on Devops (credit to AWS) : “DevOps is the combination of cultural philosophies, practices, and tools that increases an organization’s ability to deliver applications and services at high velocity: evolving and improving products at a faster pace than organizations using traditional software development and infrastructure management processes. This speed enables organizations to better serve their customers and compete more effectively in the market.”.
Devops has always be closed to Agile. In Wikipedia, “DevOps is complementary with Agile software development; several DevOps aspects came from the Agile methodology”. 20 years after the Agile Manifesto, the pupil has mabye surpassed the master.
DORA, the Devops Explorer
DORA is a research program about the state of devops. They belong to Google now and you can find it there where you have all the reports about the state of devops year by year. They also have this great schema :
The legend was very small so I did some coloring on it
The focus is really on capabilities (cultural, technical, process and monitoring). If you are mastering all these capabilities, your outcomes like performance (+) and your efficiciency (-) will be better.
You have here an example of capability (for product & process excellence). It is how you are going to define the size of each feature. It has a direct impact on how many times you can deploy new features and how long does it take. When you click on Learn more, you have many advices about how to do that
Practices < Capabilities ?
This is a common way to explain Agile by showing this graphic
Just before Tools & Processes, you have « Practices » : the most visible way that your organisation is implementing Agile. But of course, people tell you that the success of Agile is in the Principles, Values & Mindset.
Clearly, having all those practices will make you be more adaptative and it is important in this complex world but will you be faster and efficient ? It was never the Agile promise (maybe the most misunderstanding point) and that’s why Capabilities become the next frontier. Behind every Agile methodology, they will never talk about your context and we can understand that. But the result is implémenting agile without a minimum of capabilities in your context is like building on sand.
You can see many projects using the Agile methodology having hard life because they have to build the foundations and start the decoration. This is where the « quick and dirty » begins.
Accelerate more important than being just Agile ?
This book is a must read !
In this book, this is clearly a sound explanation about the difference between the elite and the mere mortals that we all are. We can talk for hours about the culture but at the end, the difference is in the capabilities.
This book is describing no less than 24 capabilities to master. And they underline KPI like lead time, deployment frequency, mean time to restore and change fail percentage and how huge the difference can be between 2 organisations.
Agile will be there for a long time : some of the values and principles will take time to implement but I do not see any disruption in this field (I maybe totally wrong). But it will become less important and I see the subject about capabilities becoming more and more central. Transformation will be focus on the capabilities of each organisation. Do not deliver user stories, deliver capabilities that will be useful for years. That’s why Devops is the future of Agile.