The first approach involves forming an envelope locally, sending it to SIDES broker, analyzing broker response for potential errors, then handling errors and re-sending the response back.
The second way is to implement SIDES business rule validation library from SIDES Broker side package. It can prevalidate responses before sending them to SIDES Broker.
This solution took lots of efforts of Bekitzur’s team due to its novelty and no official information available for such an approach. This method actually saved a lot of time and resources as it didn’t involve covering hundreds of cases that might take place during data processing.
Application domain model had to be updated and revised as per new requirement. It was necessary due to high complexity of SIDES request/response structure. SIDES responses are generated based on client data. Thus, to generate a response per each SIDES request, the application has to process and analyze client’s data first. This process takes many steps to complete, therefore leading to an extremely complex task. Especially if a domain model is not properly designed.
State Information Data Exchange System offers several types of integration with Government services. We chose the so-called “blackbox connector”, an application module that encapsulates basic exchange functionality. The basic level task for developers was to integrate this connector with the application, handling input/output data streams and errors generated by this “blackbox”.
This approach actually has a small disadvantage: you have less flexibility operating with the tool and still have to handle data streams by developing an application adaptor.
Though nothing beats an ability to put out fewer efforts to update SIDES modules. Moreover, it can be easily performed by Support Personnel without involving developers providing the data stream format is constant.
It’s worth pointing out that SIDES has strong requirements for product certification. Using our approach leads to a major number of requirements to be already covered.