COBOL, a programming language, stands as a testament to the enduring power of legacy systems in today’s digital landscape. Surprisingly, it powers over 43% of global banking systems and is considered a strategic asset by 92% of IT leaders. Its persistent role in our rapidly advancing technological age is intriguing and unexpected.
Given COBOL’s deep-rooted presence in our financial systems, you might ask: is it truly feasible to transition away from it? While migrating from this legacy system presents challenges, it’s achievable with expert guidance. Leveraging the expertise of professionals who understand COBOL’s legacy intricacies and the nuances of modern systems can pave the way for a smoother transition.
In this article, we’ll provide practical tips on how to deal with COBOL migration successfully. This will help your businesses navigate the transition smoothly and effectively.
What is COBOL Programming Language?
COBOL, short for “Common Business-Oriented Language,” is a high-level programming language created for business, finance, and administrative tasks. It was developed in the late 1950s and early 1960s and is one of the longest-standing programming languages in the history of computing.
What is COBOL Used For?
COBOL allows users to translate high-level source code into machine-readable code, which can then be turned into executable programs for mainframe systems. Additionally, it streamlines transaction processing and provides tools for users to interact with and modify structured data records.
Now, you might wonder, is COBOL still used today? Surprisingly, yes! Despite its age, many critical business systems across different industries still rely heavily on COBOL.
Why and What Organizations Still Use COBOL?
According to Enlyft, over 38,000 companies continue to utilize COBOL, with a significant majority based in the United States. These COBOL examples span a range of industries, notably including insurance agencies, banking sectors, and government entities. Let’s look into a few examples:
Many prominent banks and financial institutions rely on COBOL for their core banking systems. Industry giants like Bank of America, Visa, American Express, Fiserv, and JPMorgan Chase depend on COBOL to facilitate a substantial portion of daily transactions. COBOL is behind up to 95% of ATM transactions and 80% of all daily transactions for these financial giants.
While these institutions have successfully managed their COBOL systems for years, unexpected challenges can arise. For instance, according to CNN, New Jersey, which also uses COBOL for specific systems, faced significant challenges with its 40-year-old mainframes during the COVID-19 pandemic, leading to a public call for COBOL programmers.
Government entities, mainly those responsible for managing extensive databases and legacy systems, also use COBOL. For instance, the Social Security Administration relies on COBOL to support over 60 million lines of Social Security code. While these systems have been operational for years, unforeseen circumstances can strain them.
During the COVID-19 pandemic, many government systems, especially those handling unemployment benefits, were overwhelmed due to their reliance on COBOL, leading to a sudden demand for COBOL programmers.
In the healthcare sector, where sensitive data is paramount, COBOL-powered mainframes have been a trusted resource for managing the records of approximately 60 million patients. CVS Health, a prominent healthcare organization, harnesses COBOL’s capabilities to oversee patient records, healthcare billing, and critical data processes.
Like the financial industry, insurance companies rely on heavy mainframes, some of which are powered by COBOL codes written decades ago. Industry leaders like Cigna and Nationwide use applications written in COBOL to manage the intricate systems that drive policy management, claims processing, and data-driven operations.
IBM, a global technology innovator, incorporates COBOL into its extensive portfolio to meet diverse client needs, bolstering its technology solutions with COBOL’s robust capabilities.
Retail and Inventory Management
In the retail sector, many large organizations still use COBOL to power their inventory management systems, streamlining inventory control and point-of-sale processes. A good example is Kroger, which leverages COBOL throughout its extensive retail network.
Transportation and Logistics
COBOL plays a pivotal role in the transportation and logistics sector, with an astounding 96% of bookings in this industry being powered by it. Industry stalwarts like UPS and FedEx rely on COBOL to drive logistics and transportation operations.
Who and why still uses legacy systems in 2023? 5 Examples of Legacy Systems: Where and Why Ones are Still in Use
While newer and smaller companies might opt for contemporary programming languages, established organizations like the ones mentioned, have COBOL deeply embedded in the heart of their systems. Transitioning from COBOL brings daunting challenges, encompassing significant costs, time, and potential operational disruptions. Given these hurdles, many companies often lean towards upgrading their COBOL infrastructure rather than abandoning it entirely.
So, is COBOL that bad, and should you migrate immediately? Let’s figure it out.
The Good and Bad of COBOL Software
Here are some pros and cons of using COBOL software for businesses:
Pros (The Good)
1. Stability and Reliability
COBOL software is renowned for its stability and reliability, making it a trusted choice for critical business applications like banking and finance, where precision and consistency are paramount.
COBOL efficiently handles substantial data volumes, rendering it well-suited for businesses with extensive data processing requirements.
3. Legacy System Integration
Many businesses have significantly invested in COBOL systems. For these enterprises, maintaining and expanding upon existing COBOL systems can often be cost-effective instead of undertaking a full-scale replacement.
4. Readability and Understandability
COBOL’s syntax is relatively straightforward and resembles natural language. This simplicity enhances code comprehension and maintenance, a vital aspect for businesses focusing on long-term software sustainability.
Cons (The Challenges)
1. Aging Workforce
Most COBOL developers are nearing retirement age, resulting in fewer younger professionals possessing COBOL expertise. This poses a notable risk to businesses relying heavily on COBOL systems as the skilled talent pool diminishes.
2. Limited Modern Features
COBOL lacks many modern programming language features and libraries, making it less suitable for developing new and innovative applications requiring cutting-edge functionalities.
3. Maintenance Complexities
As COBOL systems age, maintaining and extending them can become progressively intricate and costly. This may lead to the accumulation of technical debt, where it becomes challenging to keep systems up-to-date and aligned with evolving business needs.
4. Cost Implications
While COBOL is not an expensive language, the overall cost of maintaining legacy COBOL systems and integrating them with contemporary technologies can be substantial. Budget considerations are essential for businesses evaluating their COBOL investments.
5. Security Concerns
Older COBOL systems may carry security vulnerabilities that are challenging to address due to their age and the scarcity of experts with relevant expertise. This exposes businesses to potential security risks associated with maintaining legacy systems.
4 Key Approaches for COBOL Modernization
COBOL has been a mainstay in the business world for decades, but its outdated nature and limited talent pool pose significant risks for organizations. To address this issue, there are four critical approaches to COBOL software modernization that businesses can consider:
Rewriting is a radical approach to COBOL modernization that involves the total rewrite of COBOL applications using modern languages like Java, C#, or .NET. COBOL’s business rules and logic must be analyzed and meticulously replicated in the chosen language. This approach is ideal when maintaining existing COBOL code becomes complex, lacks flexibility, or no longer suits current business needs. It offers the advantage of embracing modern technologies and practices. However, it’s resource-intensive and time-consuming.
Another reason to rewrite COBOL is when you are dealing with COBOL V5 migration or enterprise COBOL V6 migration. Those versions are quite different from COBOL migrations, so they may require more profound code changes.
Refactoring focuses on improving the internal structure of the COBOL code without altering its external behavior. This can involve restructuring the program, optimizing routines, or removing redundant code sections. For example, COBOL’s PERFORM statements might be optimized, and standardized data structures like COPYBOOKS could be implemented across programs to enhance maintainability.
Of course, it’s a safer approach to deal with COBOL, but it may be lengthy and ultimately turn into a more comprehensive migration.
Complex, interconnected COBOL systems can opt for integration as a modernization route. This approach requires the development of APIs (such as RESTful, SOAP, or GraphQL) to expose COBOL functionality to other systems and applications.
Integration is ideal when leveraging existing COBOL logic alongside modern technologies like cloud services, mobile apps, or web frameworks is necessary. It offers flexibility and scalability, enabling the adoption of modern practices without disrupting existing COBOL systems.
In the replatforming approach, the COBOL application is adapted to run in a new environment. This might require changes to data access methods or the introduction of new middleware. For instance, COBOL programs might be modified using embedded SQL to interface directly with modern relational databases. If the original system utilized CICS (Customer Information Control System) for transaction management, alternatives like Micro Focus Enterprise Server might be adopted.
COBOL Modernization Expertise
For a successful and seamless migration from COBOL, you’ll need the help of experts. Regardless of your approach, ModLogix, in a partnership with NRI (Nomura Research Institute, Ltd.), offers hands-on experience in COBOL modernization and legacy application modernization services.
Since 1965, Nomura Research Institute, Ltd. has been providing insight-driven research, consulting, and managed services to speed up companies’ digital transformation.
Together, we aim to streamline your modernization process, ensuring agility and efficiency for your operations.
Ready to modernize your COBOL systems? Just contact us.
COBOL Migration Tools
Automated tools are another option if you don’t like the idea of manually rewriting COBOL codes. Here are some popular COBOL conversion tools to consider:
- Code Assistant for IBM Z
- EvolveWare’s Intellisys
Using the COBOL migration tools will simplify the process, but it can’t be the final solution to cure COBOL software. In any case, you’ll need code adjustments to the system to function as expected in the new environment. Our experts have already revealed this problem for Visual Basic automated migration, which applies to almost all legacy software solutions.
What You Should Consider Before Moving from COBOL
Thinking of moving from or modernizing COBOL? Here are some factors and best practices to consider before getting started:
- Business Objectives and Realistic Migration Goals: Start by determining what you aim to achieve – improving operational efficiency, reducing costs, enhancing scalability, meeting compliance requirements, or combining these. As we already said, COBOL migration can be complex, so divide the migration path into achievable milestones for expected outcomes.
- Legacy System Assessment: Assessing your existing COBOL system to know exactly what you are getting into is crucial. For example, many COBOL systems use VSAM files for data storage, which function like key-value storage and differ from modern SQL databases. Also, in most cases, data is often encoded in EBCDIC, an older character encoding standard incompatible with ASCII. Then, there will likely be GDG (Generation Data Group) files for version control.
- Modernization Approach: Choose the most suitable COBOL application modernization approach based on your legacy system’s complexity and specific needs. Consider whether you’ll rewrite, refactor, integrate, or re-platform your COBOL applications.
We recommend applying for a phased migration to modernize the app piece-by-piece instead of a big-bang approach. That way, you’ll avoid unnecessary business disruptions and prioritize critical features and modules.
- Testing: According to IBM, a large percentage of COBOL migration has data-related issues, which makes testing one of the crucial parts. Include unit, functional, performance, security, and usability testing to ensure your software supports business goals and meets migration objectives.
- Backup and Contingency Plans: Ensure you have a reliable backup of your existing system and data, allowing you to revert quickly if issues arise. Contingency plans should outline steps to address potential setbacks and minimize downtime. These plans are essential regardless of whether you’re undergoing a COBOL to Java migration, COBOL to C# migration, or COBOL to .NET migration.
- Long-Term Sustainability: Consider the long-term sustainability of your modernized system. Ensure it can accommodate future growth, evolving technology trends, and changing business requirements.
To Sum Up
COBOL is still very popular today in 2023, as it was decades ago. However, many organizations want to modernize their COBOL applications in line with the changing digital landscape.
Whether you’re considering a COBOL to .NET migration, COBOL to Java migration, or migration from COBOL to Python, modernization can be a complex and challenging process. However, it can be managed effectively with the right expertise and support. ModLogix is a trusted and experienced provider of legacy mainframe modernization COBOL services. Our team of experts can guide you through the entire migration process, ensuring a seamless transition while minimizing disruption to your business.
Contact ModLogix, a legacy software, and COBOL modernization expert, today to discuss your COBOL migration needs and how we can assist you.