QASymphony / Blog / Understanding the DevOps Journey With a Simple Maturity Model
Understanding the DevOps Journey With a Simple Maturity Model
Change is here whether we like it or not.
That was the impetus behind the Quality Jam 2018 keynote from Brian Dawson, DevOps evangelist and coach at CloudBees. And Dawson made it exceedingly clear that software developers must be prepared to respond to that change, because the companies that fail to innovate will become a distant memory.
But delivering higher quality software faster is easier said than done. Anyone who has recently embarked on an agile transformation to streamline the development cycle has likely found that going faster creates more friction, which in turn causes things to heat up and break down. In short, it’s a recipe for failure.
That said, it is possible to increase your speed without causing a breakdown if you optimize and automate your software development lifecycle through DevOps.
And the benefits of achieving DevOps speak for themselves. According to the 2016 State of DevOps Report, DevOps organizations release faster, release more frequently, experience fewer issues and recover from failures faster.
Furthermore, DevOps organizations also see improvements to the bottom line through increased efficiency and reduced costs.
How Do You Achieve DevOps?
There are so many tools and practices associated with DevOps, it’s easy to get lost in the details and mired in a state of analysis paralysis. Far too often, organizations get too complex or follow a false path on their DevOps journey.
But the best way to achieve DevOps is to think simple. Instead of worrying about what practice or tool you need to adopt to achieve DevOps, start simple and ask questions like: Where are we today? What do we do well? What do we do poorly? Where do we want to be? The answers to those questions should help you clearly define the problem you need to solve. From there, you can determine the solution.
One of the best (and simplest) ways to achieve DevOps is to follow the 4 Quadrants Model, which is derived from real world DevOps transformations and offers a flexible way to assess maturity.
In this model, the X axis focuses on the software development lifecycle and is separated into two halves: Agile Upstream (covers define, plan, code and build) and Agile Downstream (covers integrate, test, release and deploy and includes practices like automated testing, continuous delivery and continuous deployment). Meanwhile, the Y axis represents adoption of Agile Upstream and Agile Downstream across the organization, with levels for team, workgroup and enterprise adoption.
Every team should strive to reach Quadrant 4, because that is where you can truly innovate faster, increase productivity, respond to market changes, gain a competitive advantage and increase employee satisfaction and retention.
Today, most organizations fall in the first two quadrants.
What’s holding them back? Chasms in the “DevOps Trinity” of people and culture, process and practices and tools and technology.
Responding to Change
How can you cross these chasms and continuously improve as you work your way toward the ultimate DevOps maturity of Quadrant 4? It starts with three simple steps:
Discover: Determine your current state and maturity
Define: Establish your objectives and secure alignment among stakeholders
Map: Outline your journey through the quadrants to achieve your objectives