DevOps and the Mainframe: The Ultimate Win-win
At first glance DevOps and mainframe IT seem incompatible. DevOps is speed: strategies for rapid change and implementing feedback loops for ever-increasing acceleration. Mainframe IT is reliability: handling high transaction volume, usually financial, with low error rates and little or no downtime. But the DevOps tent is big enough to encompass the mainframe. In this post, we’ll explore how that is.
The “2017 State of the DevOps Report” provided by Puppet and DORA supplies some key insight into this topic. The companies categorized as high performers had 46 times more frequent code deployments and 400 times faster lead time to deploy but also produced a five-times-lower change rate.
This means high-performing DevOps organizations can achieve both fast deployment and high reliability. This is a significant finding for traditionally risk-averse mainframe sites: it offers an approach to both ship code as quickly as the business demands and still incur fewer failures.
Of course, the trick is not just to embrace DevOps but to become a high performer. Here the “2017 State of DevOps Report” lists six key constructs of a high performer. Mainframe IT might be well served to take these as a to-do list:
- Test and Deployment Automation: Do you rely on manual testing and deployment?
- Continuous Integration: Do your development teams hold onto coding changes until the very last moment? (Are you sure?)
- Trunk-based Development: Is your source control management product robust enough for DevOps?
- Shift Left on Security: Where do you sit with security? Is it the old school, mainframe approach of security through obscurity?
- Loosely Coupled Architecture: Have you started to split your monolithic mainframe programs to enable microservices?
- Empowered Teams: Is your mainframe development culture still stuck in the ‘80s? Or are your mainframe teams empowered to their full potential?
Not sure where to get started on this journey to becoming a high-powered DevOps performer? Check out “10 Steps to True Mainframe Agility.”
At this point it might look like a one-way road: DevOps has much to offer mainframe IT, but what can mainframe IT give back to DevOps? Let’s take a look at that side of the coin.
What the Mainframe Offers DevOps
In the early days of DevOps, the consensus was the model would only truly work in greenfield development, that is, development working on something entirely new; a blank slate with no constraints based on previously written software. DevOps has worked hard to extend the model to include brownfield development, where new software occurs within an existing software system.
DevOps with mainframe IT is yet another appreciable step forward. Mainframe is not greenfield, but it isn’t brownfield either—mainframe exists on a plane independent of both these classifications.
Instead I would borrow a concept from Peter Wohlleben in his book The Hidden Life of Trees. While people often consider the oldest trees as being the weakest and most fragile, Wolhlleben’s research found the converse was true: the older the tree the more energy it has and the more productive it is.
“Big tree” development is an accurate description of mainframe IT: huge potential just waiting to be tapped. It has lain mostly independent and mainly dormant until now.
The time is now to unleash that energy to the benefit of organizations. As mainframe IT organizations face increasing competition from start-ups, this is their ace in the hole, and it’s a way to dramatically improve how they serve their customers.
So, DevOps has a lot to offer the mainframe IT community: a strategy for rapid deployment and improved quality. Mainframe IT has a lot to offer the DevOps community, living proof that the model is flexible to encompass all IT.