How to map your DevOps journey

public://webform/writeforus/profile-pictures/brian_dawson.jpg
Brian Dawson, DevOps Evangelist, CloudBees

If you haven’t jumped on the DevOps bandwagon by now, you're already behind. After all, DevOps, which took the software industry by storm, shows no signs of slowing down. But even if you've already implemented a DevOps model, you'd best track your progress closely and know where you are on your DevOps journey.

The DevOps Quadrant Maturity Model lets you do exactly that. Use it to assess where you are in your DevOps transformation as well as where your organization needs to go next. It's also a great tool for IT executives who want to get going on a DevOps transformation and want to develop a strategy for getting started.

How to Build a DevOps Toolchain That Scales

Get real-world about your DevOps transformation

The DevOps Quadrant Maturity Model derives from the real-world transformations of Fortune 500 organizations in many different industries. To frame the space representing non-DevOps and DevOps organizations, the model establishes two axes. The axis includes the phases of a software development lifecycle: define, plan, code, build, integrate, test, release, deploy, and operate. The model divides these phases into two groups based on traditional organizational and cultural boundaries and observation of industry practices: agile upstream and agile downstream. 

The y axis displays the levels of adoption for agile practices that you can deploy at the team, workgroup, or enterprise level.  

Which quadrant is your organization in?

Quadrant 1: Team-level agile (upstream)

Organizations in the first quadrant have one or more teams that have adopted agile development practices and implemented continuous integration (CI). But tools, project management, and development processes are team-specific, and that can cause disconnects at the enterprise level. These organizations also take a "water-Scrum-fall" approach.

Quadrant 2: Team-level CD (downstream)

Those in quadrant two have applications supported by automated testing, dynamically provisioned environments, configuration management, and containers. Team-level CI extends to continuous delivery (CD), and the integration of development tools with delivery tools. Organizations in quadrant two focus on standardizing practices and shared solutions for tools and infrastructure management, and on refining the overall development processes.

Quadrant 3: Enterprise agile (upstream)

IT teams in the third quadrant follow standard, enterprise-wide agile development practices. They have aligned the overall business with agile specifications, and have adopted common project management and development processes. Organizations in this quadrant should integrate tools at the enterprise level in order to move forward.

Quadrant 4: Enterprise DevOps (downstream)

These organizations are among the 10% that made it to this phase of DevOps adoption. They have standard tools and processes for automated test and deployment, dynamically provisioned environments, and use configuration management and containers. The overall business and its customers are aligned with agile specifications, and the organization has integrated its tools with a common platform to support reporting, security, governance, and traceability. These organizations foster a culture of collaboration, learning, and innovation. 

[ Webinar: Agile Portfolio Management: Three best practices ]

Barriers to enterprise DevOps

The benefits of enterprise DevOps are clear, so what’s standing in the way for the 90% of organizations that aren’t there yet? It comes down to the DevOps trinity: people and culture, process and practices, and tools and technology. When organizations attempt a DevOps transformation without considering all three, they often face unmet expectations. 

Consider an organization that dismisses cultural change as a requirement, but seeks to accelerate the delivery of higher-quality software using only tools and technology. It makes significant investments in automated tools for testing, but lacks a quality-first culture. Teams go through the motions, but don’t actively take steps to ensure quality. But if they emphasized cultural change, the organization would have set quality goals and implemented automation and collaboration across silos to correct problems early and quickly.

In contrast, an organization that's committed to cultural change but doesn’t  adopt agile methods and automated tools will find the cultural changes too difficult to sustain. It will suffer from too many manual steps, heavyweight processes, cumbersome legacy tools, and so on. The organization won’t achieve faster delivery, and the initiative will fail.

So focus on what processes you need to have in place, what technology you need to make those processes seamless, and what cultural changes you require to get your initiative off the ground in a sustainable manner.

The right way to get started with DevOps

When launching a DevOps initiative be pragmatic, not dogmatic. You can't know everything as you start, so approach and plan your initiative using the knowledge you have, and adjust along the way.

Patience is key to figuring out which processes are right for your teams. Treat the transformation as an evolution by pursuing a gradual progress that your team can sustain over time. If  your teams can't keep up, they'll make mistakes.

Choose your first project wisely. Pick one that's high-value, low-risk and assign it to a team that can demonstrate what DevOps can do. The right team will be innovative, constantly driving change in the product development process, willing to test new tools and processes, and open to change.

Finally, showcase the value of DevOps to upper management and other teams. Keep track of improvements, and document everything so you can show management that your initiative is successful and should be expanded. People will quickly see the benefits, and you’ll be one step closer to enterprise-wise DevOps. 

Whether you’re far along your DevOps journey or just getting started, the DevOps Quadrant Maturity Model is a great way to see where you are and map out where you need to go. And it’s not just about going through the motions and investing in the right tools, so be dedicated and patient with the process. The process isn't easy, but it's definitely worthwhile.