Fortune 500 Financial Services Firm collaborates with CloudFrame to explore a tool-assisted approach to refactoring
For almost 90 years, this financial services company has been one of the largest banks in the United States and a household name. With over $50B in revenue, over $1T in assets and over 80,000 employees, they have earned the right to be called a tier-1 bank.
The central question the client was dealing with was “how to start”: should they do a manual rewrite (greenfield)”, an extremely time and resource intensive effort or “should they use a more gradual, tool-based approach (brownfield)”. That’s where Renovate came in. CF Renovate is a facilitator and accelerator. After Renovate converts COBOL to Java, the client does their refactoring and enhancement work to the code that was converted by Renovate. To test the capabilities of CF Renovate, a pilot project was chartered by the bank that used Renovate to do a conversion of COBOL to Java on a broader scale (approximately 3 million lines of code).
The bank wanted a tool that would speed up this project by doing a clean job of converting old legacy COBOL to modern Java, ensuring that that the automated conversion was delivering highly maintainable code, 100% functional equivalence and numeric precision. This would provide them a
defined code base launching point to begin the identified refactoring work to deploy to their Azure architecture faster.
The central challenge faced by the client was the need to transition from COBOL to Java while minimizing disruption and reducing the time and resources required for such a massive undertaking. The client needed to make a critical decision: should they opt for a manual rewrite, a traditional yet labor-intensive approach, or explore a tool-assisted method to expedite the conversion process. The latter would involve leveraging the Renovate tool to automate the COBOL-to-Java conversion, providing a clean and functional codebase as a starting point for further enhancements.
Phase 0 of the pilot project involved taking 6 business functions and converting the code associated with them using Renovate to fully evaluate customer experience. This evaluation included the DIY experience, the quality of the generated code, the validation of functional equivalence and numeric precision.
The intent was not to deploy the converted application, but to take the converted code which Renovate would render maintainable, and refactor it towards the approved Microsoft Azure architecture. The end-to-end process involved the validation of the automated conversion capabilities of Renovate, evaluating the ease of refactoring the generated code towards the Azure architecture, and being able to deploy these 6 business functions to production by the year end.