
Solution
-
API Gateway
- What we did > Design, implement, and deploy a new integrator-facing component which facilitates the exchange of messages and acts as a request validator with a persistence mechanism.
- The value > By introducing this intermediate component, Qaiware allowed the integrators of the banking software to access its data objects as simple API requests. The synchronisation between the API Gateway and the banking software provided the necessary bridge to update information on demand and keep all persisted data up-to-date.
-
Automatically generated GraphQL API
- What we did > Due to the design and implementation of the client’s banking software, an automated UML modelling tool was used to generate the entire database. The client wanted to introduce a GraphQL API to its integrators, which will allow them to create, update. delete, and retrieve objects from the database. However, the sheer amount of objects supported made manual development unfeasible. Therefore, Qaiware’s solution was to use the provided UML models and generate an entire GraphQL API.
- The value > By using the client’s database models, Qaiware was able to create the necessary components required. In a short amount of time, the integrators had an entire working GraphQL API with more than 100 queries and mutations, custom error messages, schema validations, and persistence.
-
Custom executable functions
- What we did > During the design of the GraphQL API, it was determined that specific business functions must be executed during the request processing. In order to fulfil this requirement, Qaiware’s teams analyzed, developed, and deployed a number of methods and functions, which on the client’s request can be activated during a specific GraphQL mutation or query.
- The value > Fulfilling this requirement provided the client with the flexibility to customize their GraphQL API without having to update any GraphQL executable files. It gave them the freedom to satisfy any new integrator’s requirement and still retain the overall GraphQL flexibility.
-
Unified error handling
- What we did > During the initial analysis of the client’s monolithic application, Qaiware discovered a lack of clear and well defined error handling. Therefore, we proposed introducing common error handling (format, content, context).
- The value > With common error handling and shared error messages, the integration journey is simplified and consistent throughout the different phases. It reduces the overall time and assistance required from the client's side to solve integrator’s technical issues.