Neo Technology’s Emil Eifrem discusses how dependency management techniques and technologies are helping financial services improve their tech infrastructure
As we all know, banking systems still in use dating from the 1970s are compromising bank performance, and it’s an issue that’s dogged the industry for years.
Technology underpins nearly every major banking process, as it’s software and infrastructure that links services to business units, customers, and back-office functions. These systems not only drive the banks’ day-to-day operations, but also serve as the core IT enabler for new capabilities and growth.
Yet many financial service institutions – even leadership ones – remain saddled with outdated systems and architecture, at a time when their operators face renewed pressure to cut costs and adjust to volatile conditions in a financial system barely over the 2008 global crash.
Ideally, fully replacing or upgrading these systems is the best way to reduce complexity and better support business growth. However, such suggestions gave many banking CIOs pause for reflection, since the magnitude of the change translates into high costs and high risks. However, the processes and tools for managing systems change have improved considerably, and banks that use these tools to introduce IT improvements have achieved measurable performance improvements.
The ripple effect
Companies can now draw on a number of best practices, in particular world-class dependency management systems that exploit the power of graph technology. For instance, one particular customer we are working with decided to upgrade and improve a core system, its investment bank trading platform, set up to support traders in currencies, FX, and a wide range of other financial instruments, with graph technology.
The challenge: to tackle the problem of application change management, especially the issue of the ripple effect, where one small change can impact many other programmers’ work. Hundreds of developers were tasked with the job of managing change on this mission-critical trading platform – a historic challenge exacerbated by complex compliance workflows and on-going use of legacy, and even manual, processes.
Being a bank with a regulatory requirement that requires knowing what is deployed where, by whom and when, means that everything has to be vetted and checked. To better manage change, meet compliance objectives and reduce the problems of the butterfly effect, a completely new bespoke internal dependency management tool has been developed.
The new system allows developers to bundle any code change and relevant modules into a safe place so whenever they change a process or propose any kind of an upgrade to the system a special release of the system can be generated for testing.
If this special release does not pass stringent testing and quality assurance procedures, the software prompts the programmer to think again – a process that repeats until a release with the change is generated that passes all tests, guaranteeing no hidden surprises.
This radically simplifies the change management process while significantly contributing to overall programming quality. Even better, the solution automates the whole process, recording all the information needed for monitoring and QA, such as when the release was built, for which environments, and so on. This saves time and limits any chance of error.
Relational not the right tool for the job
The only convincing data framework that could manage the level of complexity in the banking environment was a graph database. Traditional relational databases were rejected very early on for the job of modelling that complexity, as their rigid definitional requirements and fixed schema were deemed far too restrictive. The other attraction of using a graph database solution was the availability of the increasingly popular query language Cypher to support the project.
In this case Neo Technology’s market-leading Neo4j was the graph technology chosen; as Neo4j is built ground-up as graph it is perfectly suited for the role. According to the bank, the graph-based platform for its important change management processes has proven so beneficial that the plan is to roll it out across the banking group so as to create a more stable environment for system change and progress.
Summing up, our banking IT customer was facing complexity and inefficiency through a lack of visibility into the effect of proposed changes to a core application. Graphs have helped chart those complicated change effects, avoiding the butterfly effect of ripples of uncontrollable and unpredictable secondary changes through the system, and promoting change.
While banks have begun to consider dependency management techniques, many more banks should.
That’s because there’s growing evidence that the resulting efficiencies and growth can help mitigate risk – and bring banking infrastructure into the 21st century.