{"id":99,"date":"2023-02-21T07:16:00","date_gmt":"2023-02-21T07:16:00","guid":{"rendered":"https:\/\/cloudtechner.com\/blog\/?p=99"},"modified":"2024-06-13T11:04:39","modified_gmt":"2024-06-13T11:04:39","slug":"mainframes-and-devops-modernization-of-hidden-power","status":"publish","type":"post","link":"https:\/\/cloudtechner.com\/blog\/mainframes-and-devops-modernization-of-hidden-power\/","title":{"rendered":"Mainframes and DevOps \u2014 Modernization of Hidden Power"},"content":{"rendered":"\n<p>Author: <a href=\"https:\/\/www.linkedin.com\/in\/mohinder-kumar-0b622010\/\">Mohinder Kumar<\/a>, Director<\/p>\n\n\n<div class=\"taxonomy-post_tag wp-block-post-terms\"><a href=\"https:\/\/cloudtechner.com\/blog\/tag\/devops\/\" rel=\"tag\">DevOps<\/a><span class=\"wp-block-post-terms__separator\">, <\/span><a href=\"https:\/\/cloudtechner.com\/blog\/tag\/ibm-z\/\" rel=\"tag\">IBM Z<\/a><span class=\"wp-block-post-terms__separator\">, <\/span><a href=\"https:\/\/cloudtechner.com\/blog\/tag\/legacy\/\" rel=\"tag\">Legacy<\/a><span class=\"wp-block-post-terms__separator\">, <\/span><a href=\"https:\/\/cloudtechner.com\/blog\/tag\/mainframe\/\" rel=\"tag\">Mainframe<\/a><span class=\"wp-block-post-terms__separator\">, <\/span><a href=\"https:\/\/cloudtechner.com\/blog\/tag\/modernization\/\" rel=\"tag\">Modernization<\/a><\/div>\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter\"><img decoding=\"async\" src=\"https:\/\/miro.medium.com\/v2\/resize:fit:700\/0*1PCumk1MgMOphfzd.jpg\" alt=\"\"\/><\/figure><\/div>\n\n\n<p id=\"bf32\">Back in 2006 Amazon launched its cloud services providing infrastructure on demand which drastically changed the way infrastructure used to work and with DevOps in 2009 added further power, speed and agility. Since then, IT infrastructure has undergone huge changes. From on-premises infrastructure to cloud infrastructure, manual provisioning to automated provision, virtualized hardware to docker containers and then DevOps to DevSecOps everything has changed so fast in recent years. Despite these disruptive technology revolutions still there is an old workhorse running since years without much change and that\u2019s a&nbsp;<strong>Mainframe.<\/strong><\/p>\n\n\n\n<p id=\"7062\">The history of mainframes is very long, they have been running since early 50s. With the advent of new technologies like virtualisation, cloud computing, many people started predicting that it\u2019s an end of mainframe era. But the reality is far away, as per 2020 reports, 44 of top 50 banks use mainframes, 90% of credit card transactions are still handled by mainframes, 23 of top 25 airlines use mainframes. According to&nbsp;<a href=\"https:\/\/www.globenewswire.com\/news-release\/2019\/07\/10\/1880904\/0\/en\/Global-Mainframe-Market-Is-Expected-to-Reach-2-90-Bn-by-2025.html\" rel=\"noreferrer noopener\" target=\"_blank\">Allied Market Research<\/a>, the mainframe market is expect to touch $2.9 billion by 2025. Reason? No cloud computing comes close to matching the speed, reliability , security and more important cost-efficiency of mainframes in longer run and due to this mainframes are still heartbeat of many large financial organizations. \u201cThere are 6900 tweets, 30,000 facebook likes and 63,000 Google searches per second but the mainframe CICS (mainframe based transactions) runs&nbsp;<strong>1.1m<\/strong>&nbsp;transactions per second which equates to&nbsp;<strong>10bn<\/strong>&nbsp;per day\u201d \u2014 (source Rob Lambs IBM Hurley Laboratory director).<\/p>\n\n\n\n<p id=\"8cd4\"><strong>If all running perfectly then why change? Does it really makes sense to bring DevOps on Mainframes?<\/strong><\/p>\n\n\n\n<p id=\"f8f4\">Despite all benefits like speed, security and reliability of mainframes, one of the biggest challenge of working with mainframes is slow time to market and mainframe \u201cbrain drain\u201d.<\/p>\n\n\n\n<p id=\"64f0\">With technology revolution customer expectations have increased, they want new services that too quick without compromising on the quality and security. Due to increasing competition, reduce time to market and increase demand to deliver new and agile solutions, DevOps is a critical contributor to the success of business. As we have seen with DevOps and agile methodology, the speed of delivery has significantly improved from several months to few minutes with more even more than hundred releases in a day is a reality now. While reports show mainframe usage will continue to grow in upcoming years but if organisation wants to continue to provide reliable services with reduce time to market and innovation they can\u2019t succeed without DevOps and agile process.<\/p>\n\n\n\n<p id=\"a1a4\">To tackle \u201cbrain drain\u201d or declining Mainframe expertise, we must focus on enabling , uplifting and empower Mainframe SMEs with DevOps.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"0c63\">Adoption Challenges<\/h3>\n\n\n\n<p id=\"c945\">DevOps success in any organization is based on three key principles People, Culture and Automation. Lack of automation capabilities and tools, build and deployment limitations and more important people who are working on mainframes since decades are about to retire in upcoming years do not want to change themselves, all these factors make it really hard to bring DevOps on mainframes and that\u2019s the reason DevOps being largely looked at distributed world only and mainframes are still neglected by DevOps community.<\/p>\n\n\n\n<p id=\"3c16\">Talent is another challenge in fact risk to DevOps adoption on mainframes, no new people willing to work on mainframes and hardly any trainings on mainframes which can fill the gap of old generation vs new generations<\/p>\n\n\n\n<p id=\"afc9\">Further moving off the mainframes is also not a solution as its too risky, costly redesign and too time consuming process. With billions of lines of code added every year, for many firms it\u2019s almost impossible to move off the mainframes.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"41d0\">How to overcome?<\/h3>\n\n\n\n<p id=\"ee72\">Over the recent years, organisations working on mainframes have realised the importance of DevOps and made significant progress on building the tools for automation around mainframes. With mix and match of distributed and mainframes specific tools, DevOps on mainframes is a reality now. Many organisations already got success in implementing DevOps on mainframes with new edge cutting mainframes tools while many are on it. A recent IDC survey reveals that 55% of organizations have invested in and integrated DevOps as part of a mainframe transformation initiative.<\/p>\n\n\n\n<p id=\"361a\">Below some high level overview of DevOps strategy which can be adopted to enable Mainframes aligned with DevOps process for faster delivery and agility.<\/p>\n\n\n\n<h5 class=\"wp-block-heading\" id=\"c2d5\">Cultural Change<\/h5>\n\n\n\n<p id=\"8a13\">Everyone feels Elephants can\u2019t dance. The biggest challenge with Mainframes DevOps adoption is the mindset change. Educate, and Empower the team on the need for DevOps.<\/p>\n\n\n\n<h5 class=\"wp-block-heading\" id=\"e060\">Tools Enablement<\/h5>\n\n\n\n<p id=\"98e2\">The biggest hurdle in adopting DevOps for mainframes was lack of right set of tools for automation. Thanks to IBM, who has made significant progress in moving mainframes tool stack from Closed source to Open-Source frameworks. Following tools can be adopted for Mainframes DevOps adoption<\/p>\n\n\n\n<ul>\n<li><strong>Operating System \u2014 IBM Z<\/strong>&nbsp;\u2014 Back in 2006 IBM launched Z system which supports three operating system Z\/OS, TPF and now latest z series can run linux as well which makes distributed DevOps people to automate easily.<\/li>\n\n\n\n<li><strong>IDE \u2014 IBM IDZ<\/strong>&nbsp;\u2014 One of the biggest challenge with mainframe was lack of any development tool like eclipse to allow developers to work simultaneously with recent advances IBM launched IBM developer for Z system which provides eclipse like functions for mainframes.<\/li>\n\n\n\n<li><strong>Version Control \u2014 GitHub with Rocket GIT \u2014&nbsp;<\/strong>Rocket GIT is the portable versions of GIT client specifically designed for Z\/OS which enables the distributed version control system for mainframes.<\/li>\n\n\n\n<li><strong>CI \u2014 Jenkins \u2014&nbsp;<\/strong>Jenkins is a popular Opensource CI tool. With IBM Z\/OS connect plugin one can easily integrate Z\/OS slaves with Jenkins.<\/li>\n\n\n\n<li><strong>Build Tool \u2014&nbsp;<\/strong>IBM has come up with Groovy based build tool named&nbsp;<strong>DBB groovy&nbsp;<\/strong>which can be integrated with Jenkins pipeline to build mainframe programs like COBOL\/Assembler\/C\/C++<\/li>\n\n\n\n<li><strong>Unit Testing- Topaz\/IBM Zunit \u2014&nbsp;<\/strong>Topaz and IBM zunit enables shift left approach for unit testing on mainframes<\/li>\n\n\n\n<li><strong>Code quality \u2014 SonarSource \u2014&nbsp;<\/strong>Sonarsource being popular quality control tool which already provide functionality to scan mainframe languages like COBO\/C\/ASSEMBLER<\/li>\n\n\n\n<li><strong>Testing \u2014 IBM Rational Test Workbench (RTW) \u2014&nbsp;<\/strong>IBM RTW provides software testing tools to support a DevOps approach: API testing, functional UI testing, performance testing and service virtualization.<\/li>\n\n\n\n<li><strong>Deployment \u2014 IBM UrbanCode deploy \u2014&nbsp;<\/strong>Automated deployment tool for mainframes<\/li>\n<\/ul>\n\n\n\n<h5 class=\"wp-block-heading\" id=\"f2c9\">Closed-Source to Open-Source<\/h5>\n\n\n\n<p id=\"5d57\">On Mainframes, Endevor is an integrated set of management tools for automating, controlling, and monitoring the mainframe software development lifecycle. All the source code is maintained by the Endevor system on Mainframes<\/p>\n\n\n\n<p id=\"afe6\">First and foremost thing for enabling DevOps Automation for Mainframes is to migrate source code from close source Endevor system to Open-source system like GitHub. Migration may involve following steps<\/p>\n\n\n\n<ul>\n<li>Create configuration files from Endevor system using JCL scripts<\/li>\n\n\n\n<li>Fetch any required dependencies for each code file from Endevor system using JCL scripts<\/li>\n\n\n\n<li>Change Extension of each file based on mainframes Datasets type<\/li>\n\n\n\n<li>Using z\/OS utilities and Rocket GIT client plugin copy and push source code to GitHub repository<\/li>\n<\/ul>\n\n\n\n<h5 class=\"wp-block-heading\" id=\"993c\">Enable Development Experience using IBM IDZ<\/h5>\n\n\n\n<p id=\"8bd3\">IBM IDZ for z\/OS is a modern, robust toolset for developing and maintaining IBM z\/OS applications through the use of DevOps practices.<\/p>\n\n\n\n<p id=\"8be2\">IBM IDZ offers true development experience without login to mainframes itself with support of COBOL, PL\/I, High Level Assembler, REXX, C\/C++, JCL, and JavaTM development tools on an Eclipse base. , and it can fetch code from GitHub using Rocket GIT client tool and do the build using Dependency based build (IBM DBB Groovy). IBM IDZ also offers unit testing capabilities using zUnit and code coverage capabilities with Sonarqube.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"b433\">Sample Mainframes DevOps Pipeline Using Jenkins<\/h3>\n\n\n\n<p id=\"27a5\">Jenkins supports IBM Z\/OS connect plugin which can easily integrate Z\/OS slaves with Jenkins. Following an example of sample pipeline including build, deploy and automated testing frameworks<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/miro.medium.com\/v2\/resize:fit:1400\/1*cVarp0SOkFUi8PMDRn2qAg.png\" alt=\"\"\/><figcaption class=\"wp-element-caption\"><strong>Sample DevOps Pipeline for Mainframes<\/strong><\/figcaption><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"7d36\">Final Word<\/h3>\n\n\n\n<p id=\"8099\">Not all application may be ready for DevOps. E.g. in many organizations, there would be a team that looks after a batch application running on Mainframes primarily running in maintenance mode OR an application for a tax update every few years. They may not be best candidate to adopt DevOps. Check for compatibility, adaptability, and ROI to select the applications to undergo DevOps transformation.<\/p>\n\n\n\n<p id=\"e08a\">The mainframes are backbone of financial organisations and are not going away soon. So like it or not, they are here to stay. But with increasing competition and customer demands they need to adopt DevOps and agile process. Using right set of tools, and support for culture change can help Mainframes unleash into the new world of innovation and speed. Let years of neglect not become barrier of adopting DevOps.<\/p>\n\n\n\n<p id=\"9829\">Let the Elephant Dance!<\/p>\n\n\n\t<div id=\"respond\" class=\"comment-respond wp-block-post-comments-form\">\n\t\t<h3 id=\"reply-title\" class=\"comment-reply-title\">Leave a Reply <small><a rel=\"nofollow\" id=\"cancel-comment-reply-link\" href=\"\/blog\/wp-json\/wp\/v2\/posts\/99#respond\" style=\"display:none;\">Cancel reply<\/a><\/small><\/h3><form action=\"https:\/\/cloudtechner.com\/blog\/wp-comments-post.php\" method=\"post\" id=\"commentform\" class=\"comment-form\"><p class=\"comment-notes\"><span id=\"email-notes\">Your email address will not be published.<\/span> <span class=\"required-field-message\">Required fields are marked <span class=\"required\">*<\/span><\/span><\/p><p class=\"comment-form-comment\"><label for=\"comment\">Comment <span class=\"required\">*<\/span><\/label> <textarea id=\"comment\" name=\"comment\" cols=\"45\" rows=\"8\" maxlength=\"65525\" required=\"required\"><\/textarea><\/p><p class=\"comment-form-author\"><label for=\"author\">Name <span class=\"required\">*<\/span><\/label> <input id=\"author\" name=\"author\" type=\"text\" value=\"\" size=\"30\" maxlength=\"245\" autocomplete=\"name\" required=\"required\" \/><\/p>\n<p class=\"comment-form-email\"><label for=\"email\">Email <span class=\"required\">*<\/span><\/label> <input id=\"email\" name=\"email\" type=\"text\" value=\"\" size=\"30\" maxlength=\"100\" aria-describedby=\"email-notes\" autocomplete=\"email\" required=\"required\" \/><\/p>\n<p class=\"comment-form-url\"><label for=\"url\">Website<\/label> <input id=\"url\" name=\"url\" type=\"text\" value=\"\" size=\"30\" maxlength=\"200\" autocomplete=\"url\" \/><\/p>\n<p class=\"comment-form-cookies-consent\"><input id=\"wp-comment-cookies-consent\" name=\"wp-comment-cookies-consent\" type=\"checkbox\" value=\"yes\" \/> <label for=\"wp-comment-cookies-consent\">Save my name, email, and website in this browser for the next time I comment.<\/label><\/p>\n<p class=\"form-submit\"><span class=\"bloghash-submit-form-button\"><input name=\"submit\" type=\"submit\" id=\"submit\" class=\"submit\" value=\"Post Comment\" \/><\/span> <input type='hidden' name='comment_post_ID' value='99' id='comment_post_ID' \/>\n<input type='hidden' name='comment_parent' id='comment_parent' value='0' \/>\n<\/p><\/form>\t<\/div><!-- #respond -->\n\t\n\n\n<p><a href=\"https:\/\/medium.com\/@mohinder_97306?source=post_page-----3886173a1352--------------------------------\"><\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Author: Mohinder Kumar, Director Back in 2006 Amazon launched its cloud services providing infrastructure on demand which drastically changed the way infrastructure used to work and with DevOps in 2009&hellip;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[38,37],"tags":[39,43,42,40,41],"_links":{"self":[{"href":"https:\/\/cloudtechner.com\/blog\/wp-json\/wp\/v2\/posts\/99"}],"collection":[{"href":"https:\/\/cloudtechner.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/cloudtechner.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/cloudtechner.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/cloudtechner.com\/blog\/wp-json\/wp\/v2\/comments?post=99"}],"version-history":[{"count":3,"href":"https:\/\/cloudtechner.com\/blog\/wp-json\/wp\/v2\/posts\/99\/revisions"}],"predecessor-version":[{"id":145,"href":"https:\/\/cloudtechner.com\/blog\/wp-json\/wp\/v2\/posts\/99\/revisions\/145"}],"wp:attachment":[{"href":"https:\/\/cloudtechner.com\/blog\/wp-json\/wp\/v2\/media?parent=99"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/cloudtechner.com\/blog\/wp-json\/wp\/v2\/categories?post=99"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/cloudtechner.com\/blog\/wp-json\/wp\/v2\/tags?post=99"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}