Phase Change President Steve Brothers recently authored a contributed article for Nextgov.com about how artificial intelligence (AI) tools can help governments deal with the mainframe-developers skills shortage and continue to maintain critical legacy systems.
Brothers' article explains why the problem isn't just language skills, it's the lack of application knowledge to productively maintain applications. Supporting applications is very different than creating them. Defects are discovered through behaviors, which the developer must trace back to the flawed source code. The defective code and its dependencies can be spread throughout the codebase in multiple modules and repositories. Without the application knowledge to know how the system works, maintenance becomes an unproductive scavenger hunt. Then the developer must discover how the repair will impact the rest of the system.
AI tools help developers locate and isolate defective code by conceptualizing code computations at machine speed. It eliminates code unrelated to the bad behavior and enables the developer to find and focus on defects. Then the AI simulates running the repaired code to determine change impact so the developer is confident his work won't negatively affect the application.
The International Conference on Software Maintenance and Evolution (ICSME) 2021 accepted a technical paper authored by current and former Phase Change research scientists for presentation at its 37th annual event in Luxembourg City, Great Duchy of Luxembourg, September 27 - October 1.
The authors' goal is to direct the attention of researchers and practitioners towards investigating and addressing challenges associated with mainframe software development. More specifically, they present results from surveys of COBOL and more modern programming languages regarding defects and defect-location strategies. Software development has made substantial advances in software maintenance for modern programming languages but mainframe programming languages receive limited attention.
Meanwhile, mainframe systems are facing a critical shortage of experienced developers as the current generation retires. Without extensive mainframe and application-specific experience, replacement developers face significant difficulties, even during routine maintenance tasks such as code comprehension and defect location.
ICSME is an annual event sponsored by the Institute of Electrical and Electronics Engineers (IEEE) to present, discuss, and debate the most recent ideas, experiences, and challenges in software maintenance and evolution. This year's conference will be a virtual event.
Todd Erickson is a Technology Writer with Phase Change. You can reach him at [email protected].
The so-called "COBOL Skills Shortage" is compelling many organizations to impetuously hire and train programmers to maintain, support, and attempt to modernize their COBOL systems.
But understanding how to write COBOL is not enough — developers have to comprehend what an application actually does and how code changes can impact the system as a whole to avoid critical missteps. That work for those developers is cognitively difficult.
Phase Change President Steve Brothers recently wrote an article for Built In Colorado.com about how artificial intelligence (AI) can help solve the application knowledge gap problem, but only when traditional AI technology gets more creative and moves beyond understanding general business knowledge and instead learns specialized industry and institutional domain knowledge.
AI & software development
AI can help solve the application knowledge gap dilemma, but popular contemporary AI approaches are insufficient. Some AI tools can help with the syntax of writing code, but these remedies only provide incremental value.
Developers spend nearly 75 percent of their time finding the area in the source code in which they need to make a change because understanding code in these large complex systems is difficult and time-consuming.
AI will emerge as a paradigm-changing technology when it can understand code intent and “reimagine” computation into concepts, thereby doing what a developer does when they code — but at machine speed.
Phase Change COO Steve Brothers was interviewed and quoted in a TechRadar Pro article published on December 18 about the 'COBOL skills shortage.' He shared his insights on how 'knowledge attrition' – an organization's declining application knowledge due to the departure of experienced software developers – was really the cause of government system failures during the COVID-19 pandemic, and why it remains a serious problem today.
Legacy applications and the COBOL skills shortage were widely blamed for government financial-aid system failures during the first few months of the Coronavirus pandemic. But the TechRadar Pro article revealed that the system failures were not a result of the lack of COBOL programmers. The problem was a severe shortage of legacy-application programmers that understand how these legendary applications work and what the source code does.
“In the COBOL space, you have millions of lines of active code and, to perform necessary maintenance, you need developers that understand what that code does," Brothers said. "But when you’re writing complex applications, code written in the morning becomes legacy by the afternoon.”
The story describes Phase Change's initial market product, COBOL Colleague, which is currently in beta testing and scheduled for release in Q2, and how it is designed to collaborate with developers new to legacy applications and make it easier for them to complete maintenance tasks without requiring experienced colleagues or subject matter experts.
A Reuters' article published March 22, 2020, claims that the IRS will have difficulty delivering stimulus checks to help Americans endure the economic hardships caused by the mandated social-distancing protocols put in place to combat the COVID-19 global pandemic. The story, written by Washington, D. C., correspondent Andy Sullivan, explains how budget cuts and reliance on obsolete technologies, including COBOL-based applications, may not only delay the delivery of the stimulus checks by months but are also preventing the agency from effectively completing its main job of collecting tax revenue.
While the article incorrectly judges the usefulness of COBOL because the IRS can't find enough qualified programmers, it does highlight the issue that Phase Change has been pounding the table about for years – the lack of qualified legacy application developers is a major problem for the enterprises and government bodies that rely on them.
A great number of the developers that maintain COBOL-based applications are retiring, and the younger generations of programmers don't have much interest in learning the language. More importantly, the application knowledge lost when experienced developers walk out the door cannot be easily replaced by reliant organizations such as the IRS.
The programmers the IRS adds to support the $2 trillion economic stimulus package will not be ready to support the agency's massive delivery of stimulus checks. They may be experienced developers, and they may have a good grasp of COBOL, but they do not understand the complex applications the IRS uses to process and issue recovery payments.
It can take months for programmers to become productive in applications new to them, and possibly years to become proficient. During the time they are learning the source code, they are more likely to make mistakes and definitely require mentoring and oversight, which decreases the productivity of the rest of the team, prolongs the time it takes to complete projects (such as mailing checks) and increases the risk of major mistakes.
That knowledge gap is what the IRS and many other organizations reliant on COBOL applications are facing today.
Steve Brothers is the President of Phase Change Software. You can reach him on LinkedIn or at [email protected].
Phase Change announces the launch of its initial product website – CodeCatalyst.ai. The website will support the company's market entry product, COBOL Colleague, the first cognitive tool for software development, by targeting organizations that rely on COBOL-based applications for critical business operations.
The CodeCatalyst.ai website details how COBOL Colleague will assist COBOL reliant organizations with their unique issues, such as a vanishing workforce, lost application knowledge, and lagging productivity.
COBOL Colleague reads-in the source code, extracts the embedded concepts, discovers the dependencies, reveals the buried knowledge, and becomes an expert that never tires and never leaves.
Natural-language-interaction enables developers and stakeholders with limited COBOL experience to collaborate with the cognitive agent and work productively with their COBOL applications.
Find bugs and dead code in seconds, not minutes or hours. Make changes with full knowledge of the downstream impact. Confidently add new features, products, and services. Empower anyone with a basic understanding of COBOL to interact and engage with your COBOL applications.
Everything you dreamed of in COBOL-based environments is now a reality. Visit CodeCatalyst.ai.
Todd Erickson is a tech writer with Phase Change Software. You can reach him at [email protected].
To stay up-to-date with the latest news and commentary surrounding COBOL-based applications, we track and archive COBOL-related online articles. Below is our current collection of stories, which we try to update frequently.
COBOL was first published in January 1960 by the Conference on Data Systems Languages (CODASLY), who based it on the first compiler developed by Admiral Grace Hopper and her team at Remington Rand in 1952. It’s designed to develop portable business applications that could be run on systems developed by multiple manufacturers.
It remains vital to the world’s financial systems because of its simplicity and reliability.
One measure of its importance is the number of news and commentary articles published in reliable industry sources that repeat a common theme, namely that the programming language is ancient, nobody wants to use it, but it’s so vital to the financial and government sectors that it won’t go away – COBOL is dead! Long live COBOL!
Once or twice a year a new piece pops up and we typically pass it around the office, discuss new information or opinions it reveals, and archive it.
Recently, one of our shrewd colleagues suggested we post links to these articles here on our website so others in the small but influential COBOL community can reference them.
So we did. We’ll update this page when we discover new COBOL media pieces. If we’ve missed something important, email [email protected].
The 2018 GAO Report that says government systems are at significant risk due to their reliance on legacy programming languages is nonsense. Evolving architecture is always bridging the gap between older and modern applications.
Instead of ripping and replacing legacy systems and code, which can be prohibitively expensive and time consuming, some banks are maintaining these systems and wrapping customer engagement systems around them.
COBOL-based systems continue to run much of the world’s financial systems. But its supporting workforce is retiring and efforts to convert these applications to modern programming languages are expensive and time-consuming.
Many of the world’s financial institutions and U.S. government agencies, such as Homeland Security, Department of Veterans Affairs, and Social Security, rely on COBOL-based systems, but a shortage of programming talent and education institutions that provide programming courses is on the horizon.
Organizations that rely on Cobol-based applications have a hard time replacing retiring programmers and support personnel, which has given veteran developers opportunities to continue working, even after retirement.
2016
Title
Date
Author
Snippet
Why it’s time to learn COBOL
April 1, 2016
Paul Rubens
CIO.com
Acquiring COBOL programming skills might be a wise career move. Hundreds-of-billions of lines of COBOL code are still in use and many universities have stopped offering classes in the 50+ year old language.
The looming shortage of COBOL programmers will inevitably lead to COBOL programming once again becoming an in-demand skill set.
2014
Title
Date
Author
Snippet
CIOs should prepare for lack of Cobol (Yes, Cobol) developers
October 2, 2014
Sharon Florentine
CIO.com
While the demand for talented and skilled Cobol programmers remains steady, the programming language’s lack of popularity has shrunk the available talent pool. As the existing Cobol support workforce ages and retires, companies are resorting to novel strategies to acquire and train staff.
CIOs that rely on Cobol-based systems keep developer staff as long as possible while others prefer new hires with multi-language capabilities over Cobol-specific or Cobol-only skills.
COBOL isn’t sexy or even that popular. But the basic tenants of supply and demand remain true – if there are still a lot of COBOL applications running critical systems and not a lot of programmers interested in learning the 50-year-old programming language, then brushing up on your COBOL skills might make it easier to find a job earning more money.
The U.S. federal government’s Office of Personnel Management released its “Strategic Information Technology Plan” for revamping the agency’s IP operations. Part of the plan discusses the office’s plans for maintaining and eventually migrating away from the roughly 60-million-lines of production COBOL code that enable the agency to meet a number of its regulatory requirements.
2012
Title
Date
Author
Snippet
Brain Drain: Where COBOL systems go from here
May 21, 2012
Robert L. Mitchell
CIO.com
Not only does losing experienced COBOL programmers hurt many companies’ ability to maintain its mainframe systems, but it also means the loss of the programmers’ deep understanding of the business logic. A number of organizations are teaming with private businesses to educate younger programmers and team them with experienced developers before it’s too late.
Results from the Compuworld survey on Cobol use in business and government, which showed that nearly 50 percent of respondents had operational Cobol-based systems and a large number continue to develop new business applications with Cobol.
When thinking about maintaining or replacing their COBOL systems, companies must consider the employee angle. Can they continue to hire COBOL programmers when experts forecast that a major COBOL skills gap in on the horizon, and is that enough of a reason to rip and replace?
COBOL-based systems will not be going away anytime soon because of the millions of invested man-hours and dollars already spent to develop these mainframe programs and the enormous predicted replacement costs. There’s also the fact that we don’t have anything better enough to make the change.
Fun
*All images are copyrighted by their respective owners
Todd Erickson is a tech writer with Phase Change. You can reach him at [email protected].
Discover why the recent spotlight on COBOL systems and the shortage of qualified COBOL programmers isn’t due to a lack of qualified engineers, it's due to a lack of knowledge.
At Phase Change, we pay attention to legacy systems and their challenges. So, why was a mainframe language developed in 1959 suddenly the topic of multiple news articles?
Reuters and The New Stack recently published articles about COBOL, an often-overlooked programming language that was developed before John F. Kennedy became the 35th President of the United States.
Organizations like the Department of Veteran Affairs and large financial companies, such as Bank of New York Mellon and Barclays PLC, are examples of the types of institutions that rely on COBOL applications for nearly $3 trillion worth of daily transactions. But they’ve used COBOL for decades, so, that doesn't explain the recent attention.
A little history
The U.S. government developed the common business oriented language (COBOL) in conjunction with Rear Admiral Grace Hopper and a coalition of industry and higher-education envoys. It's simplicity and portability have stood the test of time, and are the main reasons why 50-year-old COBOL applications continue to play a critical role in finance, banking, and government operations. That plus the inertia that characterizes large, critical systems.
It's because the engineers that maintain COBOL-based systems are leaving the workforce, there aren't qualified developers available to replace them, and these institutions are freaking out. The COBOL brain drain is threatening the organizations that economies are built upon.
Brain drain refers to how departing software engineers leave with all of their system and domain knowledge supposedly locked away in their brains. That knowledge is thought to be lost from the organization forever.
The average age of a Cobol programmer is somewhere between 45 and 60 years old and they are retiring. The problem is that few programmers are interested in replacing them, and the availability of COBOL training resources has dropped precipitously because it's just not a cool language anymore.
We won't repeat all of the statistics that show how much COBOL code is still in use and how important those systems are. Read the Reuters and The New Stack articles, which both mirror a series of comprehensive feature articles published by ComputerWorld in 2012. The metrics and themes haven’t changed much.
Basically, these companies have three options to deal with Cobol brain drain, and all involve high risks. First, they can simply replace their COBOL systems with systems built on more modern programming languages. That project took the Commonwealth Bank of Australia 5 years and $749.9 million, which was 30% over budget. The risk associated with implementing such a massive new system has kept most financial institutions from doing it.
Second, they can engage consultants like the Cobol Cowboys, or hire and train new programmers to support their COBOL systems. This option also involves a great amount of risk because companies have to find engineers that have the skills and interest to support COBOL applications, and then hope they can unravel the layers of modifications and system integrations that accrue with five decades of maintenance, usually with little documentation.
Third, they can completely stop modifying core systems that nobody understands, but are too critical to risk changing or replacing. The USDA faced that choice.
It's not a people problem
But from our perspective, the issue is not a human-resources problem. The companies that rely on Cobol-based systems don't lack the right people, they lack the right knowledge.
If the new engineers assigned to work on COBOL-based applications could access the departing developers' system and domain knowledge, or better yet, all of the programming and domain knowledge imbued into the system from prior engineers, imagine how much easier it would be for them to comprehend these complex systems. It would be like having a personal mentor always available — even while the previous engineers are off enjoying retirement.
That's why this is a knowledge problem and not a people problem.
It's a huge opportunity for someone that can reach all of that trapped knowledge and make it easily comprehensible.
Exploiting the knowledge left behind
Phase Change's objective aim is to use our assistive AI technology to unlock all of the trapped programming and domain knowledge – as well as the human intent behind it – inside software applications, no matter which programming languages were used to create them, and make it easy to access that knowledge with natural-language interaction.
Engineers and stakeholders will literally talk to their software applications to reveal the hidden encoded knowledge they require to comprehend the overwhelming scale and complexity resulting from decades of modifications and system mergers, and hundreds of contributing developers.
Unlocking the encoded knowledge that's trapped in COBOL system will give these large institutions the knowledge they need to make informed decisions about their legacy systems.
Todd Erickson is a tech writer with Phase Change. You can reach him at [email protected]. Elizabeth Richards is Phase Change's director of business operations. You can reach her at [email protected].
Brain drain is a serious problem facing organizations that use software applications to run their businesses. Learn how you can seal the drain and retain all of the knowledge trapped in your applications.
At the end of every workday, your software development teams walk out the door with all of their knowledge leaving with them. Some of them don’t come back, and that loss of information and expertise, or brain drain, is a growing business problem, especially with IT industry turnover rates hovering between 20-30% annually.
Consider how much knowledge your organization loses when key members of your development team retire or join other companies. Not only do you lose development expertise, but the knowledge your engineers have regarding how your software applications work, such as:
How the system is architected
The subject-matter expertise used to implement functionality
The business considerations that drove product and feature designs
How third-party and external systems are integrated
Many of these retirees are the software engineers that developed and maintain the many systems that still run on Cobol and other mainframe programming languages. The impact of losing thousands of mainframe engineers and their vast programming and business knowledge will be widespread. The 240 billion lines of Cobol code running today power approximately 85 percent of all daily business transactions worldwide.
Most organizations don't have the processes in place to capture their employees' business and system intelligence before they leave for good.
It’s especially difficult for engineers. Today’s software tools don't allow them to easily convey their expertise to others – or enable developers, business managers, and executives to easily discover and utilize any previously shared knowledge.
What can you do?
You might be surprised to discover that your engineers’ domain and system knowledge already resides in one other place outside their minds – your software. While creating the code, development teams pour their organization, programming, and business intelligence into your applications.
Imagine what you could do if your organization's technical and business stakeholders had access to all of the knowledge and human intent embedded in your software applications. Imagine asking your software application how it works and having it answer you back.
How can you unlock all of that untapped knowledge?
Liberate encoded knowledge
Phase Change Software is creating AI-assistive technology that unlocks the encoded knowledge embedded in your software applications.
Our assistive AI understands your software and turns it into formal units of knowledge. In essence, software is transformed into data.
Our AI assistant will liberate your software's hidden knowledge and help it understand itself. Our natural language processing (NLP) techniques will enable your technical and business stakeholders to easily interact with applications.
You will soon be able to literally have a conversation with your software, and have it teach you its encoded programming, business, and domain knowledge.
Todd Erickson is a tech writer with Phase Change Software. You can reach him at [email protected].