Major Investment Bank Discovers the True Cost of Codebase Gremlins
Challenge
A world-renowned investment bank needed to seize the opportunity of digital acceleration with an upgrade and assessment of its widely distributed software estate.
Outcome
We conducted an application rationalisation exercise without compromising internal privacy restrictions. Pinpointing deficiencies and technical debt, we armed the management team with a clear path to growth.
Finding a rationale for change
A world-renowned investment bank was ready to step into a new chapter in its 150+ year history. To seize the opportunities posed by digital acceleration, the lender resolved to upgrade its suite of applications.
But a successful modernisation programme cannot be conducted on an ad hoc basis. A strategy must prevail, with every move assessed on whether it optimises for the business’s goals. When a strong case can be made for replacing a pre-existing application, it should be adhered to. But what isn’t broken doesn’t need fixing.
This is the basis for an application rationalisation exercise – a form of software assessment that identifies which applications should be retained or replaced. The client engaged Endava to inspect nine applications from across their software estate and produce a rationale for action. The code for these nine applications was distributed across approximately 260 repositories.
But the client’s policy of not revealing their codebase, in order to safeguard their intellectual property, presented a challenge. Similarly, thanks to region-specific data privacy laws, the names of the code’s authors were not available to us.
Digging deep into the code at speed
Thanks to Endava’s approach to software assessment, a lack of direct access to the code is not an impediment to our work.
To construct a useful impression of their codebase without compromising their internal privacy restrictions, we asked the client to run an open-source tool called Voyager on their raw code. This programme, which requires no installation and runs locally, scans the code and its repositories and, in a matter of hours, produces a computer-readable file.
This file does not contain a single line of code or any names. It consists of metadata on the structure and condition of the codebase. We then fed this file through our unique, in-house software assessment framework, CHRONOS.
When processing this raw code metadata, CHRONOS can do more than identify deficiencies in the portfolio of applications and their adverse effects on business functions. It can also pinpoint previous attempts to patch up these problems that have only ended up compounding them.
In this case, the software estate had been subjected to many keyhole-style operations, each designed to fix a different, individual flaw. The problem is that all these focused mini-fixes were undermining the cohesion of the codebase.
The common term for this process, where quick but limited maintenance stores up broader costs for the future, is technical debt.
In this client’s case, large ‘blobs’ of dormant legacy code, patched in at various points as short-term fixes, were muddying the structure and visibility of the application estate. This had bloated the codebase and raised the risk of costly bugs going undetected.
It also meant that applications had lost their clear boundaries. Defunct repositories were sitting empty, while some particularly old ones had become black boxes, their contents unknown even to the client’s team. All this redundancy created considerable risk while weighing heavily on operational confidence and efficiency.
Pinpointing the consequences of inaction
Using the insights from the CHRONOS process, our consultants created a series of comprehensive reports for presentation to the client’s development team.
We created individual reports for each of the nine applications under review. We also presented our Global Analysis Report, summarising the recurrent patterns found across the client’s application environment.
These reports were able to conclusively expose the high cost of the client’s technical debt. We presented evidence of how the resources spent maintaining a faulty codebase had chewed away the bandwidth for improvements or new features. Just keeping the lights on was draining budgets without any productivity improvements or customer benefits whatsoever.
This stark proof of the case for change spurred the client to act. The management team, armed with a clearer view of the weak points in their software estate, were able to proceed with a laser focus in choosing what to overhaul.
They have requested a rerun of the analysis further down the line to confirm the positive impact of their decisions. We will be happy to provide another bedrock of evidence on which to make informed choices that spark growth.
Explore the industry
Finance and Banking
Navigate a complex and shifting financial landscape and accelerate innovation with hand-crafted technologies and strategies.
Interesting? We love when people share.