Erstellen Sie in kürzester Zeit interaktive Geschäftsanwendungen mit unserer Entwicklungsplattform, die ohne viel Programmieren auskommt.
Lassen Sie uns Ihre Erwartungen übertreffen, erkunden Sie die Kernbanken-Plattform, die wir schon heute für die Banken von morgen erstellt haben.
“Naqoda macht genau das, was drauf steht!”
Hauptarchitekt bei Infosys
Core banking: no more lipstick please
Traditionally, core banking systems have been developed as large monolithic systems. There are a few issues with this approach.
- To scale such systems, the only way is to scale vertically, i.e. use larger and larger hardware, whether it be mainframes or UNIX systems. The cost of such vertical scaling is exponential.
- The more and more changes that are applied to such systems, the more and more difficult, costly and risky it becomes to change these systems. At some stage it becomes impossible to change and a replacement is required.
- Such systems are also typically built by quite hierarchical organisations. According to Conway's Law, the systems that are built by an organisation mimic that organisation's communication structure. An organisation where communication is difficult will build a system that is typically monolithic.
- The practice of Continuous Deployment is becoming more and more popular. In CD, one considers that any change, however small, should be a possible release candidate. So rather than waiting and accumulating many changes for months and then doing for example quarterly releases, every change can be a release. To enable this, we need to automate the whole pipeline from code change, via automated testing, to release.
- Micro-services, an evolution of SOA, has seen the light and pioneered at institutions such as Twitter and Linkedin. The idea is to break down a monolithic system in small parts according to business functionality provided. A micro-service is a service like in SOA but the important thing is the 'micro' part, it does something small but it does it completely and it does only that. Another important aspect is the communication between micro-services. It uses lightweight protocols such as REST and publish subscribe messaging systems such as Apache Kafka. No more big ESB's. A micro-services approach aims to build a system that is loosely coupled and highly cohesive which is what software architecture is all about. Changing such a system is much easier since changes will typically only need to be made to certain micro-services without upsetting the whole system.
- Thanks to the openness of micro services and API based services, building a system is now more about assembling services rather than building things from scratch.
- Today, organisations have increasingly flatter structures which improves communication, something which we then see reflected in the systems that are built. Combined with the micro-services and continuous deployment approach, you see smaller teams taking end to end responsibility for small parts of the system. In some organisations, such as Amazon, teams are responsible not only for developing something but also for running it in production. Contrast this with organisations where you have a team of developers and a support team.
- New technologies such as Docker make it very easy to implement and deploy micro services as stand-alone entities. Micro-services can be easily distributed over different systems using technologies such as Docker containers.
- Cloud providers have evolved a lot, see for example how easy it is start up a system on Amazon Web Services.