WHITEPAPER WHEN CA GEN ISN’T COOL ANYMORE THE BUSINESS CASE, CHALLENGES, AND SOLUTION FOR MOVING CA GEN APPLICATIONS TO A MODERN PLATFORM Introduction CA Gen is a Computer Aided Software Engineering (CASE) application development environment marketed by CA Technologies. Gen was previously known as IEF (Information Engineering Facility), Composer by IEF, Composer, COOL:Gen, Advantage:Gen and AllFusion Gen. CA Gen applications are usually of considerable size and accumulate complex business logic. A lack of skilled resources, limited integration and high costs create challenges around maintaining CA Gen. This whitepaper covers the current state of CA Gen in the enterprise and the most efficient, low-risk way to modernize. Contents The Business Case: Why Move? Compelling reasons to update CA Gen technology based on real customer feedback The Business Case: What Are Your Choices? Options for addressing business challenges of maintaining CA Gen systems Customer Success: Bank of Canada Find out how we worked with DXC to take Bank of Canada from CA Gen to Java Technical Overview: Modern Systems’ Solution How our translation platform and process works Conclusion Closing statement, About Modern Systems page - 02 | WHEN CA GEN ISN’T COOL ANYMORE “ Modern Systems worked closely with our teams from the inception of the project through the sizing and planning to the delivery. The project has been completed within timescale and budget and this enables us to move onto the next stage of our IT strategy. David Loughenbury, CIO Police Mutual Assurance Society, UK ” The Business Case: Why Move? Total Cost of System Ownership The ability to move to a lower cost platform and more open source technologies can greatly impact Information Technology’s (IT’s) bottom line, generating flexibility to add resources to other critical areas. A recent study by HP, Micro Focus, Microsoft, and Unisys Corporation estimates that the equivalent of 1,715 MIPS could run on one 8-CPU Intel Xeon enterpriseclass system. The difference in cost between the two platforms is illustrative of the substantial savings organizations realize when migrating away from mainframe systems. While CA Gen applications generate significant tangible costs associated with hardware and licensing, the impact on internal resources can have a higher strategic cost. Most organizations with mainframebased systems are spending close to 75 percent of their development resources to simply maintain existing applications, leaving only 25 percent of their development resources with time to strategize solutions to deliver value to the business. Effecting a 25-percent reduction in maintenance costs means that investment in business-driven IT advancements can be almost doubled. Feature Freeze Many companies are running mission-critical applications on legacy systems that do not have a roadmap for significant feature improvement. In the case of CA Gen, no significant features have been added in over a decade. Unlike modern platforms, CA Gen’s development roadmap doesn’t accurately reflect the value of the data stored on the platform. “ One of the greatest growing risks for these [legacy] systems is not the applications themselves, but rather the skills necessary to continue to develop, maintain, and operate them. Impact of Generational IT Skills Shift on Legacy Applications ” Diminishing Skills & Resources For legacy languages such as CA Gen, programmers are becoming increasingly difficult to find. The reality is, people who know mainframe technology are steadily retiring. To make matters worse, most universities no longer offer mainframe instruction. As the shortage of experienced programmers grows, the cost of these resources will continue to rise. Difficulty Responding to Competitive Pressure Lack of frameworks, productive and advanced IDEs, debugging tools, and test automation add significant time to development cycles on the mainframe. Organizations relying on legacy systems have a high time-to-market for new business needs and respond slowly to challenges from competitors. In recent years, digital transformation, underpinned by modern agile practices such as continuous integration and DevOps, has further exacerbated the troubles associated with sluggish development cycles in legacy environments. Even if new applications are developed using modern technologies, integrating these with core business functionality running on legacy systems is a time intensive and risky task. page - 03 | WHITEPAPER: WHEN CA GEN ISN’T COOL ANYMORE The Business Case: What Are Your Choices? Maintain Status Quo The first choice for any scenario is always to do nothing, to “let it play out”. As time passes, dealing with CA Gen legacy will be more and more difficult – less available expertise, more application development backlog, and more money thrown away for CA Gen licensing that could be spent on projects that improve IT efficiency and competitive advantage. Third Party Off-the-Shelf Solutions This approach focuses on replacing mainframe application functionality with packages and components available from third party vendors. A positive of this approach is the reduced amount of maintenance of source code, since most vendors shoulder responsibility for fixing production bugs and implementing new functional enhancements. However, commercial off-the-shelf (COTS) packages offer standard domain business processes that often differ from the homegrown mainframe application they’re meant to replace. Reuse of existing business logic isn’t possible, therefore some level of business process re-engineering or customization of the third party solution will be required. Both of these processes can be time consuming and expensive. In our experience, the older and more critical a legacy system is, the higher the likelihood of significant customization requirements will be. Fully Re-engineer Known as the “big bang approach”, re-engineering is the most expensive and risky solution for CA Gen modernization. It includes requirement capturing, coding, debugging, testing, and refining. To recreate the legacy solution’s wealth of functionality with newly written application code that is stable and error-free requires significant time and effort. Impact on end users and their adjustment cycle is also a major factor. The cost, time, and risk involved with re-engineering is so high, that few organizations choose to embark on large-scale rewrite projects. Further, those who do often abandon these projects once the scale and depth of work solidifies and millions have been dumped into the effort. As multi-cloud and microservices adoption has exploded in popularity (and shrunken in cost), so has the urge to re-engineer monolithic mainframe environments directly into containerized microservices. Historically, reengineering towards relative functional equivalence has been the prevailing strategy and harbinger of disaster that makes re-write projects so infamous. While extending the scope of such an endeavor to include business services modularization may be appetizing on the surface, it only multiplies the likelihood of catastrophic failure. Automated Conversion Modern Systems’ automated conversion technology is at the core of this approach, which guarantees functional equivalence as compared to the legacy environment, while empowering customers to leverage the advantages of modern platforms and development practices. Our software catalogs the application code in the CA Gen encyclopedia and automatically converts it to pure Java or C#. Other solutions start with the generated COBOL, which is nearly impossible to decipher, and produce unreadable Java or C#. In contrast, the code produced by a Modern Systems conversion is as clean, readable, and maintainable as the original CA Gen. Java and C# developers can easily use it with mainstream development tools, achieving the same level of productivity enjoyed with CA Gen without the shackles of third-party code or licensing. Most modernizations involve a phased approach, with some combination of automated conversion and refactoring to reduce risk and maximize agility post-deployment. This enables developers to easily extend or modularize the Java or C# code for DevOps-friendly cloud deployments without the long timelines, substantial risk, and obscene costs of a soup-to-nuts re-engineering effort. page - 04 | WHITEPAPER: WHEN CA GEN ISN’T COOL ANYMORE How It’s Done: The Modern Systems Solution CA Gen automated conversion using Modern Systems’ tooling delivers a modern application with 100% like-for-like functionality as compared to the legacy assets, based on fully maintainable open systems. This reduces cost, allows for deeper integration, unshackles organizations from outdated languages and expensive licenses, while unlocking infinite customization potential to meet any business requirements. Best of all, once the application is converted, developers can extend application functionality in Java or C# directly without having to navigate CA Gen or the code it generates to do it. Legacy systems such as mainframes, and the applications they house, have been around a very long time. In many cases, the code housed within the legacy environment has been in place since before the developer charged with maintaining it was even born. Chances are, it has been augmented, tweaked, and extended multiple times by a multitude of developers. The longer the system has been in place, the less a company knows about its inner workings. This is the fundamental nature of every automated conversion project we undertake, and steps must be taken to ensure the modernization scope and approach is appropriate for the challenge at hand. Modern Systems meets the legacy modernization challenge by leveraging automated tooling combined with proven methodologies and conversion processes that are time-tested and continuously evolving with each modernization project. This evolution seeks to maximize code quality, reduce risk, and ease the migration away from legacy. Assess & Design Modern Systems begins all modernization efforts with an assessment and design process consisting of two key service activities. The automated application assessment is intended to clearly define the current state of applications and databases, while the operational and infrastructure assessment identifies the current state of operations and infrastructure. Customer Assessed Count Referenced Count Scope Reduction Based On Count Assessed Lines Referenced Lines Scope Reduction Based On Lines 1 10,897 6,919 37% 2,099,751 1,461,965 30% 2 43,922 24,773 41% 8,995,039 4,900,208 46% 3 64,727 36,332 44% 14,777,426 11,574,369 22% 4 14,229 7,906 44% 3,098,034 2,053,362 34% 5 18,797 10,165 46% 3,618,627 2,118,206 41% 6 20,424 10,913 47% 5,641,564 3,909,054 31% 7 24,915 12,426 50% 4,664,394 3,361,225 28% 8 64,015 30,024 53% 10,748,398 5,049,761 53% 9 43,922 20,140 54% 8,995,039 3,642,442 60% 10 18,677 7,504 60% 3,804,963 2,477,239 35% 11 17,487 6,540 63% 4,517,160 2,295,331 49% 12 12,157 4,481 63% 1,511,899 752,142 50% 13 50,333 18,333 64% 20,805,460 8,843,802 57% A key element of the automated 66% 30% 14 27,844 9,377 3,516,482 2,475,551 68% 51% 15 35,856 11,463 3,473,909 1,701,200 application assessment is a focus on 69% 56% 16 18,591 5,801 4,001,832 1,767,920 upfront scope reduction. In most cases, 69% 76% 17 24,451 7,814 10,638,436 2,513,857 legacy applications are overflowing with 77% 76% 18 76,607 17,838 27,307,461 6,439,242 dead and unused code, code referencing 77% 67% 19 39,116 9,028 7,937,964 2,643,381 external resources that have long-since 78% 79% 20 76,550 17,223 17,840,574 3,813,395 been retired, and other artifacts that can 78% 78% 21 125,700 27,427 44,310,210 9,594,969 be carefully and safely eliminated from Customer Legacy Codebase Footprints Before & After Assessment the environment. In fact, after the assess and design process is complete, our customers see an average codebase footprint reduction of up to 70%. The addition of an operational and infrastructure assessment provides a complete picture of the legacy system that reduces ongoing complexity, enabling our team of experts to fully define a modernization project plan including assignments, responsibilities, timeframes, and costs. page - 05 | WHITEPAPER: WHEN CA GEN ISN’T COOL ANYMORE Automated Application Assessment During the automated application assessment, application components are classified and listed in detail with notes attached to components requiring special attention. All application components are inventoried and cross-referenced, while missing components are collected and added to the inventory. Duplicate components residing in multiple repositories are also eliminated from the inventory with guidance from the customer. Modern Systems also highlights topics that could be troublesome during maintenance or augmentation, and which must be addressed prior to the modernization effort. Once these areas of concentration are identified, customer teams and Modern Systems’ experts work together to implement appropriate Chicago Mercantile Exchange (CME) solutions. The most common areas of concentration in CA Gen environments revolve around COBOL External Action Blocks (EABs). CME needed help modernizing their settlement, banking, and asset systems. Modern Systems’ automated conversion technology enabled CME Operational & Infrastructure Assessment to move to a new Linux platform, significantly reducing operational costs, and improving The operational and infrastructure assessment complements application development agility. and cross-references the findings of the automated application Customer Snapshot The converted application matches the assessment to ensure an understanding of the customer’s entire functionality of the original exactly, is maintainable legacy landscape. The infrastructure assessment focuses on the by the existing CME developers, and dramatically hardware requirements for the appropriate target distributed improves the performance of the application it system architecture. Captured information is used to determine replaced. the associated architecture and cost of the target infrastructure. We will also gather and evaluate performance measurements and availability requirements in order to determine the size of the infrastructure hardware, systems software, and data storage to support the target environment. We also assess and organize all vendor software products used in the existing environment, the current standards and procedures used to operate and administer the environment, and the existing standards and software products deployed in the target environment. A detailed inventory of products is compiled within the legacy ecosystem, along with details of any license agreements that may accompany them. The aim is to ensure there’s a deep understanding of the processes in place for managing and monitoring the application workloads in the target environment, how to monitor and performance-tune the environment, and the composition and options are available to adequately outfit the target environment, including cloud-based platforms. Transform The transformation process begins after the assess and design process is complete and a strategy for moving ahead is established. Automated database and data conversion is performed alongside automated application conversion. In addition, the target environment and relevant operational infrastructure is built out, alongside any necessary operational data migration activities. Transformation is the heart of the automated conversion solution, which will enable developers to extend application functionality directly without having to navigate CA Gen or the jumbled mess of code it generates to do it. Throughout the transformation, precious business logic from the legacy system is preserved, enabling deeper integration, cloud migration, and customization to meet business requirements. page - 06 | WHITEPAPER: WHEN CA GEN ISN’T COOL ANYMORE Automated Database & Data Conversion The data and database conversion phase is an important component of every legacy modernization project. Each environment is handled differently, from pre-relational to relational migrations, and everything in between. Although the specific tasks associated with this phase vary widely, Db2 is often the primary database component in CA Gen modernization projects. Our automated tooling combined with proven conversion methodology ensures a smooth data and database transition, regardless of source or target, in lock-step with application conversion activities. Automated Application Conversion While the database conversion takes place, CA Gen is loaded into our proprietary tools for conversion. Modern Systems’ toolset automatically converts existing CA Gen applications to fully maintainable and easily extendable Java or C# code. We maximize the maintainability of the target application code by using the CA Gen encyclopedia as input, not its generated code. Our solutions enables flexibility around the deployment configuration - regardless of what it is, we can automatically convert it. Whether it’s batch, 3270 blockmode, CICS, IMS TM, client/server, GUI, proxies, it’s all compatible with the Modern Systems tooling. COBOL External Action Blocks are converted automatically alongside the CA Gen, while JCL jobs and procs are migrated to scripts on the target platform. Customers who prefer to keep their database in the same place after the transition may do so, or we can modernize the database to Oracle, Db2 LUW, or SQL Server, and pair it with the converted application on the target platform. Our goal is to empower the customer to make the choice that’s right for them, while providing a flexible environment for doing so. Converted application architecture conforms to object-oriented, web-centric requirements and will run on any Java application server (i.e. WebSphere, WebLogic, Apache Tomcat, etc.) or on Microsoft IIS when the target language is C#. Even though the converted code is adapted to Java or C# requirements, it follows the same component and naming structure as the original application (even comments are preserved). Developers familiar with the source environment should easily be able to recognize familiar business logic in the target environment. Thus, only basic Java or C# training is required to navigate the target application. 1. HTML & AngularJS performs data binding, recognizes sent command, & sends JSON request to the server WEB CLIENT 2. Framework sets system variables & calls business logic 3. Business Logic performs business actions, communicates with database 4. Framework retrieves next dialogue to display according to navigation flow or transaction code 5. Framework, using AngularJS and HTML, displays user screens 6. Web Server sends a JSON REST response 7. Browser communicates with the Web Server by calling REST services INTERNET/INTRANET WEB APPLICATION SERVER Target Architecture: Pure Java or pure C# page - 07 | WHITEPAPER: WHEN CA GEN ISN’T COOL ANYMORE Operational & Infrastructure Implementation During this phase, all operational and infrastructure components required by the modernized applications are provisioned, configured, implemented and integrated. This includes the underlying hardware platform and all required third-party software. QA/Test environments are built out first, and applications are tested to ensure complete functionality before deploying to the final target environment. If necessary, specific operational data migration-related tasks are completed during this phase, including the migration of required batch job schedules, security profiles, and any archived data. Test, Deploy, & Support “ Modern Systems’ proven technology and methodology significantly reduced risk, cost, and timeline for the US Department of Agriculture. Their automated process eliminated manual conversion errors and allowed us to quickly provide our customer with an open, scalable web services based application. Mike Boyd, Capability Lead: Legacy Modernization Unisys Federal Systems ” The automated application conversion phase delivers modernized, functionally equivalent application code to the customer in a series of work packets, based on milestones determined during the assess and design process. Modern Systems tests the converted code for functional equivalence, then delivers it along with any required libraries to the customer for the test, deploy, and support phases of the modernization process. Testing is a critical phase of any modernization project and typically accounts for over 50% of the entire modernization effort. Although key business logic is retained through automated conversion, the underlying application is adapted and refactored to operate within the new target operating environment. Thus, a detailed validation of the migration is extremely important, and the best means of achieving that validation is with thorough testing. Validation testing typically includes stages such as functional (regression), non-functional (performance), integration, high availability, disaster recovery, security, and user acceptance testing. A major misconception is that testing starts only once converted applications become available to validate. Testing actually begins prior to even starting down the modernization path, by ensuring that appropriate test plans and test-related artifacts (test cases, test data, test results, etc.) are available to conduct the necessary testing and validation of the migrated applications. To assist with this, Modern Systems offers a test strategy workshop (typically on-site) during the assess and design phase. Test-related areas of concentration are discussed, and solutions are addressed. A key deliverable of the test strategy workshop is a test strategy report providing an overview of the testing approach with detailed responsibilities, milestones, and ownership of each of the test-related service activities. Testing, deployment, and support activities can vary widely, As such, the processes described in the following paragraphs are intended to be a baseline. Testing Typical Modern Systems-led testing service activities include pre-delivery testing against a mutually defined subset of the converted CA Gen application using a test plan with documented test scenarios provided by the customer. A customer-led baseline for testing service activity defines and executes tests on the existing system to capture and record the expected results. Modern Systems then runs the tests against the same data on the converted system, identifies, investigates, and fixes discrepancies in the expected behavior of the modernized application by modifying the automated tooling rules to ensure the conversion process is fully automated. Pre-delivery testing consists of select test cases from the available functional tests, which represent parts of the application. Modern Systems also provides application discrepancy correction throughout the different customer-led testing stages, where any problems found related to the application and data migration are fixed. page - 08 | WHITEPAPER: WHEN CA GEN ISN’T COOL ANYMORE Testing requires the greatest amount of customer involvement of any phase of the project. Thus, the impact of customer resources during testing play a major role in the overall success of the project, both in completeness of the testing, and the duration of the project itself. In addition to offering the test strategy workshop, Modern Systems can also provide support in the form of a test lead, test manager, and additional test resources to augment a customer test team. The automated conversion process does not require code freezes, which is a major risk reducer for customers, however, it is necessary to bring the new codebase up-to-date, therefore once pre-delivery testing is complete and any discrepancies in application behavior are resolved, Modern Systems performs a code refresh to ensure that any changes that took place in the legacy application environment during the conversion process are accounted for, converted into the target language and environment, and tested. Deployment & Support The Modern Systems team works closely with customer teams to ensure a smooth and error-free transition into production. Part of this transition includes the cooperative construction and testing of a go-live production cutover plan to reduce the potential risks associated with application deployments. The golive plan typically includes multiple dry run cutovers and fall back procedures to validate and fine tune the cutover process. Information is captured related to the time to implement the production cutover (and the time to delay specific processing while the final transition is taking place), ensuring that all data is converted and ready for production in the time allotted. The plan also assesses overall go-live readiness and validates the documented process. Our teams also provide any required assistance during the pre-negotiated warranty period following the deployment as well as post-conversion support of the modernized application, available at a fixed rate or in hourly buckets purchased as needed by the customer. Conclusion Companies of all sizes are grappling with aging, complex systems that are costly to maintain and too inflexible to support new business initiatives. Most vendors are more concerned with selling new systems than helping to retire old ones. It can take a lot of effort to move data off the old system, archive the application’s data, and decommission the supporting infrastructure. It can be a challenging project because of lack of documentation or data — or both — but the more legacy applications that are retired, the greater the cost savings in ongoing maintenance. This helps companies meaningfully shift their IT spending to more business-focused initiatives. Further, companies can manage operations more effectively with common technologies and processes. Modern Systems’ automated conversion technology is the safest, lowest-risk, and most cost-effective solution for modernizing CA Gen systems in the world. About Modern Systems Modern Systems, Inc. is the leading provider of legacy language and database modernization. Leveraging over 30 years of best-practice domain expertise, Modern Systems works closely with its customers to minimize risk and provide a clear path from legacy languages like Assembler, COBOL, Natural, CA Gen, ADS/Online, and databases like IMS, IDMS, Adabas, VSAM, and others to modern solutions like SQL Server, Oracle, Db2, COBOL, Java, C# and more. Modern Systems was chosen by Walmart, Inc. to modernize the world’s largest order system. We’ve also modernized the world’s largest trading platform. Modern Systems has offices in the USA, UK, Italy, Romania, and Israel. To learn more, visit https://modernsystems.com page - 09 | WHITEPAPER: WHEN CA GEN ISN’T COOL ANYMORE