CASE STUDY
COBOL to Java
U.S. Air Force SBSS ILS-S Modernization
Client
Software
SBSS ILS-S
Language Pairing
Time to Completion
History
The Software Revolution, Inc. (TSRI) was contracted by Array Information Technology, Inc. (now CGI Federal) and NTT Data under the NETCENTS-2 contract vehicle to help modernize the Standard Base Supply System (SBSS) Integrated Logistics Systems-Supply (ILS-S). This is the quintessence of a mission-critical system; with more than 18,000 end users and serving over 100,000 consumers across 250+ U.S. Air Force, Air Force Reserve, and Air National Guard locations globally to provide daily retail supply and equipment support. The system tracks over 35 million assets, valued at $18 billion, including 230K assets in deployable air containers for contingencies and special operations.
Part of the ILS-S was a modern Java/Oracle® application, but the Standard Base Supply System (SBSS, an aged but key portion of the ILS-S system) consisted of a legacy back-end system running on Unisys® mainframe computers. The latter system provides the core business logic and authoritative data to ensure the availability of base-level management of supplies and equipment for warfighting missions. This modernization targeted the AWS GovCloud in the U.S. to address stringent security and compliance requirements, such as U.S. citizenship, set forth by the U.S. Air Force.
The core requirements that define the goals of this project included modernizing the SBSS application needed to exhibit performance and functionality equivalent to or better than the legacy system. The USAF selected AWS GovCloud (US) Cloud One as its target environment because the provider aligned with the future technical direction of ILS-S, including cybersecurity, DevOps, and AWS’ native automated continuous integration and delivery tools. SBSS is a widely used critical production system, there was little to no tolerance for code freeze or business disruption.
Finally, after 50 years of development and maintenance, the code needed comprehensive documentation to elucidate the system's structure, interfaces, middle-ware components, and processes.
Highlights
100% of Code & Database Refactored
99.9982% Automation
Lowest Technical Risk
On-Time Delivery
Lowest Bid Project & Lowest Risk
Increased Performance
Code & Database Modernization
Code-Level Documentation
Knowledge Transfer
Deployed on AWS GovCloud Cloud One
90+% TCO Reduction
Consolidation of 5 Mainframes
The Team
The Team started developing the ILS-S SM-RP solution by reviewing options that included a total rewrite, a re-architecture solution, a COBOL to Micro Focus COBOL migration solution, and an automated code conversion. The total rewrite and re-architecture solutions failed to meet the program time constraints, had historically low success rates, and were too costly.
The COBOL to Micro Focus COBOL migration solution was a stopgap measure that failed to reach the Red Hat Enterprise Linux (RHEL)/Java/Oracle architectural future state. The Team selected the automated code conversion solution because it had the highest probability for success in a cloud-native environment and the lowest cost.
Next, the team selected the right code conversion tool. The Team initially reviewed 12 code conversion tool vendors. The Team conducted a competition with four down-selected tool vendors: Semantic Designs, Dell Innowake, EvolveWare, and TSRI.
Each vendor submitted a written proposal outlining their technical approach, project schedule, risk/mitigation strategy, total cost, expected level of effort from the government, and past performance for similar size, scope, and technology projects.
The Team selected TSRI based on the following:
For Program Executive Officer (PEO) Air Force Business and Enterprise Systems (BES) Reliability and Maintainability Information System (REMIS), TSRI successfully converted 3,100,000 lines of HP NonStop Tandem COBOL code into object-oriented C++ and Java/JEE, which resulted in the prime contractor naming TSRI “Small Business of the Year.”
TSRI offered an automated code roll tool capable of converting 95% of the legacy SBSS code, which minimized costs and allowed the Team to focus on overall conversion quality instead of manual code conversion; TSRI also provided the highest probability of meeting the 25-month schedule.
The TSRI solution had the lowest total price of the solutions assessed, was the only company to understand the entirety of the code base and was able to identify that some code was missing within a few days. Furthermore, TSRI was able to take the proof of concept code to a working state, showcasing code documentation and side-by-side transformed code. No other vendor was able to do this.
TSRI offered an automatically generated blueprint capability that provided the direct 1-to-1 COBOL-to-Java traceability and accountability required to confirm that all software capabilities in the “as-is” system migrate into the “to-be” system and automatically identify any Unisys operating system gaps as a result.
The Team’s goal from the outset was to assist PEO BES successfully launch a high-confidence information technology (IT) program. Enhancing the probability of success required due diligence and commitment by both government and industry.
Collectively, government and industry invested the time and resources to fully understand the requirements, risks, and timelines to ensure the ILS-S re-platform program was delivered as promised.
TSRI Technology and Past Performance
At the core of TSRI’s technology is JANUS Studio®, an artificial intelligence-based, model-driven transformation engine. Rather than simply line-by-line transliterating “source” code to “target” code and generating JOBOL (COBOL-looking Java), the JANUS Studio® engine executes a mature translation/transformation to modern architectures by first constructing a comprehensive model of the legacy system in an intermediate language.
This model-driven approach allows for fully automated refactoring between any practical combination of source and target languages, as well as the production of code-level documentation and automated refactoring of systems.
The final requirement was the production of code-level documentation. TSRI uses the JANUS Studio® engine to quickly generate comprehensive UML-based code-level blueprints: the Application Blueprint® and the Transformation Blueprint®.
These allow developers to understand both the as-is source code (COBOL, for ILS-S), as well as the transformed target code (in this case Java), in side-by-side hyperlinking format and serve as a knowledge-transfer document during the transition phase of the project - helping new developers see where code came from and how it was transformed.
The artifacts and graphs produced include Control Flow, Data Flow, Cause-Effect, Complexity Analysis, State Transition Tables, and other analyses of the structure and flow of the application.
This approach has been used in over 250 major modernization projects, including:
Code documentation to aid extraction of business rules for an assessment project on the Air Force CAMS application.
Modernization of the Air Force MEMSIZE and NEWSCAN applications from Fortran to C++.
Assessment and Transformation of Air Force F-16 Data Entry Cockpit Interface Set (DECIS) Up Front Display System from Jovial to C++.
Modernization of the Air Force Weather Data Analysis Capability (WDAC) from Fortran to Java.
Modernization of portions of the Air Force Command and Control System-Consolidated (CCS-C) program.
Two modernizations of the Air Force REMIS System - first from COBOL to C++ and again from COBOL and C++ to Java.
Modernization of the Air Force Weapons System Cost Retrieval System (WSCRS) from COBOL to C++.
Modernization of Air Force Joint Mission Planning System (JMPS) from VB6 to C#.
Modernization of the Air Force Electronic Systems Center Ballistic Missile Early Warning System (BMEWS), which migrated Ada and Fortran to Java and C++.
Other projects, including avionics modernization, for the F-16, P-3C Orion, and E-2C aircraft, air traffic control systems, radar and electronics systems, and many others.
SBSS Modernization
In the case of SBSS, the source application was a Unisys/COBOL system comprising 1,260,679 lines of COBOL code and 10,078 lines of C code. The SBSS has been in existence for over 54 years and the Air Force had tried several times to modernize away from Unisys.
They failed each time due to the seemingly overwhelming complexity of the task. In fact, SBSS modernization was regarded as such a difficult task that the book Modernizing Legacy Systems: Software Technologies, Engineering Processes, and Business Practices referred to the project in chapter 2 as “The Beast.”
After SBSS was modeled within JANUS Studio® engine (intermediate model construction), TSRI’s modernization engineers began an iterative process of applying rules and tuning to the engine to output the transformed system in the target language from the intermediate language according to the Air Force’s specifications.
The target, as defined by the customer, was a mid-tier Java environment, including Unix Shell Scripting, Red Hat Enterprise Linux® operating system, Apache web servers, JBoss, and Oracle RDBMS on the AWS GovCloud (US) Cloud One.
During the project, the Unisys COBOL hirarchical network database code was transformed to 1.3 million lines of COBOL with SQL. TSRI then transformed this COBOL/SQL code to a Java target on AWS along with the rest of the application code.
The SBSS transformation resulted in 7.9 million total lines of Java code - a large expansion from the original 1.3 million lines of COBOL. This is a common result for a first-pass transformation and where other transformation solutions stop, due to the expansion of copybooks and other cut-and-paste portions of the application. TSRI used its proprietary automated refactoring capability to reduce the size of output code through the following refactoring methods:
Identical Record Consolidation
Similar Record Consolidation
DAO Method Consolidation
Similar Statement Consolidation
Unused Definition Removal
Orphaned Code Removal
The platform and complexity earned SBSS the nickname of the “Beast”. The prospects of modernizing the Beast were so daunting that it became the principal subject of an academic text produced by Carnegie Mellon’s Software Engineering Institute on modernizing legacy systems.
TSRI considers a system like SBSS to be of medium size and medium complexity due to having modernized over 1 billion lines of COBOL already. As a result, although TSRI can undertake code transformation using a “spiral” development model, which parcels the code into units conducive to rapid, progressive delivery, integration, and testing, the relatively small size allowed TSRI to regenerate the entire code base with each iteration. With each new improvement, TSRI delivered the code to the development team to integrate and test as compiling, integration-ready Java.
TSRI’s transformation left external calls stubbed out; the team completed the work of reintegrating items like schedulers and other utilities, testing the initial spiral of code, and providing TSRI with defects via Bugzilla. In response to each spiral delivery evaluation, TSRI adapted its transformation rules and regenerated improved iterations of the spiral code according to internal evaluation and the Team’s requests.
TSRI proceeded through spirals sequentially until all 1.3 million lines of source code were transformed. These techniques, along with the improved method synthesis algorithm mentioned above, brought the code size down by 34%.
The resulting final multi-tier architecture utilizes cloud-native AWS services, modern middle-ware components, and horizontal and vertical scalability.
Application Testing
TSRI and the Team also collaborated on application testing of the output product. The solution architects chaired daily meetings during the testing phase to coordinate synchronization of the involved teams.
TSRI used its automated toolset to inject telemetry into the legacy COBOL system, which was then placed back into production. Telemetry allowed the team to capture data put into the system, and data generated back out, so they could compare that data with the same inputs and outputs of the modernized system. When the data streams from the legacy system were compared with data streams from the modernized application, discrepancies were identified by the Team and fed back into TSRI’s toolset. This automated approach allowed for more rapid debugging and proof of functional equivalence. As of today, this automated telemetry approach has been used by TSRI for a number of customers, including the U.S. Navy, and results in relatively efficient and accurate testing as compared to less automated methods.
After testing, the following issues were identified. Often, when undertaking transformation work, TSRI’s process uncovers bugs latent in the original source code, e.g., 43 original COBOL and 48 Unisys COBOL/SQL issues. In the entire 1.3 million lines of code, only 62 transformation issues were identified: one defect per 21,000 lines of code transformed. These results compare very favorably with validated industry standards of 15-50 defects per 1,000 lines of code written manually:
290
Issues Total
Lessons Learned
In the ILS-S codebase, control flow proved to be particularly tricky. The application contained numerous GOTOs jumping out of perform ranges, never to return. To resolve this, TSRI extended its rules and method synthesis algorithms and GOTO elimination strategies. This resulted in code expansion and duplication of the transformed code. Addressing these by-products was not within the initial project's scope, and didn't have a functional impact, but TSRI identified strategies to further improve handling of similarly control flow patterns, records, and statements, which was pursued in a subsequent contract focused on refactoring.
The Team used TSRI's same JANUS Studio® solution and reused refactoring rules and patterns to introduce systematic change into the Java application and generated another iteration refactored for readability, maintainability, security, and performance. This effort was done by TSRI in a fully automated manner, based on feedback and inputs from the Team and the ILS-S program office, as well as from 3rd-party tools reports from SonarQube and Checkmarx scans.
After the code transformation, database conversion, and user interface modernization was completed in 8 months, the refactoring phase began where the application was automatically refactored in a two months timeframe to meet the quality standards of the United States Air Force meeting and exceeding the SonarQube and Checkmarx rules of the program.
Result
Following the first two phases of this project in which TSRI modernized COBOL to Java, then used automated refactoring to develop an optimized version of the Java code, the project partners were able to deploy the transformed application to the AWS GovCloud in the U.S. The project was considered highly successful, and the USAF received an end-to-end solution for a mission-critical legacy application in a very low-risk and efficient development, testing, and deployment environment.
The Team not only modernized and implemented “The Beast,” but also in parallel delivered three major FIAR releases, deployed to the AWS GovCloud, migrated into big data, and embarked on a DoD-leading mobile implementation.
The team accomplished the SBSS re-platforming on time and under budget. It delivered an open standard platform that met or exceeded the original SBSS performance specifications and eliminated the need to maintain five legacy proprietary mainframes. This led to a $25 million reduction in annual hosting costs.
With the SBSS re-platformed to a flexible, open standard environment and the software development teams now empowered with significant agile capabilities, the ILS-S program pivoted to the cloud for further modernization.
Now that TSRI has a JANUS Studio® instance tuned specifically to the SBSS target code and architecture, future modernization projects for the Air Force with similar source code and a similar target architecture in the cloud will enjoy the advantages of schedule and effort reduction.
The automated JANUS Studio® toolset learns with each project, and the code transformation rules created have been automatically reused in subsequent projects. This has major implications for other large Air Force systems written in COBOL and may be targeting similar Java implementations to the cloud.
The Team also learned how to rapidly take TSRI’s outputs and evaluate, test, and return information for retransformation. Together, our team is prepared to tackle even more complex modernization projects and deliver them successfully.
MIGRATION, TRANSITION, AND KNOWLEDGE TRANSFER
The USAF continuously innovates by adopting new digital technologies that'll amplify mission readiness while driving down operational costs. In 2017, USAF launched an initiative to take advantage of the cloud.
The USAF chose to migrate ILS-S to the AWS GovCloud, accessed through the USAF’s Cloud One, migrating the entire ILS-S staging and production environment, including more than 120 servers and 5TB of operational data, to the AWS GovCloud Cloud One. The deployment was 100% automated using Infrastructure as Code delivered via a comprehensive CI/CD pipeline extending from development through the production environment.
The team migrated the system over a single weekend.
This cloud transformation empowered the long-standing partnership between USAF and the Team with new opportunities to expand the value of ILS-S - including tools to implement DevSecOps, automated CI/CD, and monthly production software updates using SAFe, agile software development practices.
Along with the modernization, the Team provided knowledge-transfer workshops, training, and documentation for both, operational and technical transition to enable modern developers to take over the application development and maintenance. This was accelerated by TSRI's automatically generated code-level UML documentation, called the Transformation Blueprint® showing the structure of the application, featuring Structure Charts, Control-Flow Graphs, Data-Flow Diagrams, McCabes Cyclomatic Complexity, State Machine Models, and many more UML graphs and diagrams.
The USAF and the Team have digitally transformed the ILS-S over a period of nearly 20 years and through multiple contract transitions. Together, they have delivered the technical leadership required to successfully transition the mission critical ILS-S from waterfall to agile, migrate a legacy system to a modern platform, and successfully migrate that to the cloud with even more improvements on the horizon.
Mainframe migration resulted in a $25M+ Total Cost of Ownership (TCO) reduction annually
Transformed system from a customized COBOL on Unisys platform to Java deployed on the AWS GovCloud Cloud One
Migrated hierarchical DMS2200 database to Oracle relational database on RDS
Guaranteed future agility, scalability, and disaster recovery with security through modern DevSecOp pipelines
Accelerates platform modernization with transition from waterfall to agile
Consolidated and eliminated footprint on a cluster of five legacy mainframes to one modern multi-tier cloud-native application
Migrated 120+ servers with 5TB production environment to AWS GovCloud Cloud One
Enabled monthly releases using agile delivery to support the program office and accelerate the capabilities to the warfighter
Sources:
Defense Logistics Agency (DLA) - https://www.dla.mil/AboutDLA/News/NewsArticleView/Article/2890067/system-tracks-every-item-in-the-air-force-inventory/
Federal News Network - https://federalnewsnetwork.com/it-modernization/2022/11/lessons-learned-from-air-forces-ils-s-logistics-system-modernization/?readmore=1
NTT Data - https://us.nttdata.com/en/case-studies/modernizing-at-mission-speed
Amazon Web Services (AWS) - https://aws.amazon.com/blogs/apn/automated-refactoring-of-a-u-s-air-force-mainframe-to-aws/