Exploring Enterprise DevOps
This week, I am starting a two-part series on enterprise DevOps. Let me begin with the term enterprise then I’ll move on to DevOps.
Enterprise Meant Mainframe
To many of us, enterprise means mainframe. It wasn’t always that way but when mainframes became an out-of-favor platform in the 1990s, we started using the more indirect term “enterprise systems” to name them so we didn’t stir any emotions. Since mainframes are cool again, the term enterprise has been reexamined and now has a properly expanded definition.
If you examine enterprise in the context of “enterprise DevOps,” you read that Enterprise DevOps is the application of DevOps values in an environment that contains many inter-dependent and related systems, subsystems, software and teams that rely on each other. These systems often have extensive change control processes and frequently have security, financial and medical compliance requirements. This scope of enterprise systems includes mainframes and many other important systems of record and incumbent applications that bring value to companies.
Real Enterprise DevOps
DevOps for enterprise systems—is it real? In 2014, the Wall Street Journal posted an article, “DevOps Is Great for Startups, but for Enterprises It Won’t Work—Yet,” that stated that although DevOps promises higher productivity at lower costs, adapting DevOps to most enterprises may be difficult given the IT cultural changes required. This article was challenged by many practitioners as pointed out in a followup article in Forbes. The Forbes article cited the State of DevOps Report from Puppet that indicated that not only is DevOps working within the enterprise, but it is also driving higher employee satisfaction. Here five ideas from that report that if followed, should result in improved IT performance:
- Use a peer-reviewed change approval process as reviews from within the team where everyone shares accountability are the most productive form of approvals.
- Use version control for all production artifacts like application code, system configurations, scripts, infrastructure artifacts and everything else that makes up a deployment.
- Use proactively monitoring so that you can detect anomalies in any layer of the architecture as opposed to waiting for alerts to inform you that your server is about to crash.
- Create a high trust culture that allow people to experiment, fail and learn.
- Eliminate silos between development and operations and work toward a common goal of building reliable software.
Enterprise DevOps Solutions
It’s often useful to look at DevOps solutions that IT companies are promoting and intuit the problems that they are addressing. Consider these:
Discover, understand and analyze enterprise application logic to modernize apps for digital and hybrid cloud transformation.
Modernization is an important activity that some companies do on an on-going basis or just once-in-a-while when disruption caused by new technology forces their hand. DevOps has a role to play in modernization efforts because when companies modernize they have the opportunity to revise their way of working and employ DevOps methods.
Deliver ongoing software innovation with new test optimization analytics.
Improving testing is an important initiative for many companies. DevOps plays a role in this because continuous testing and test automation techniques plays an important role in delivering no defect applications.
Deliver enhancements to business-critical applications quicker with less cost and lower risk.
There is constant pressure to reduce costs. Any approach that has a track record of making things better can’t be ignored. Consider this statistic from the State of DevOps report as reported in Forbes —“Last year’s key finding was high-performing organizations are deploying code 30 times more often with 50 percent fewer failures.”
Create and maintain COBOL applications for z/OS environments.
This week, I read this quote at the end of Jean Sammet’s obituary in the New York Times—“More than 200 billion lines of COBOL code are now in use and an estimated 2 billion lines are added or changed each year, according to IBM Research.”
These four areas are a field of opportunity for DevOps innovation. Next week, I’ll continue this focus on enterprise DevOps with more of a tools and process focus.