Our customer operates in a strongly regulated investment arena with an ever-changing regulatory framework. When the Alternative Investment Fund Managers Directive (AIFMD) and Form PF both went into effect, there were new and complex regulatory reporting requirements to meet. Additionally, with the implementation of FAS 157, our customer needed to provide its clients with specific reports detailing investment fund activities. To perform these tasks, our customer required a dedicated reporting system that could present an unprecedented breadth of information.
In response to AIFMD, an ETL system, data warehouse and reporting tool were created, offering the ability to generate 50 reports in automatic mode. To produce the reports, a user-friendly form was created to help collect all information according to the requirements and specifications of the directive.
Because Form PF reporting is rather complicated and uses multiple internal and external data sources, a manual approach is inefficient. Therefore, Sprinterra implemented an automated complex data aggregation process that included a user interface for data viewing, along with input, data storage, processing tools and approvals workflow.
To create specific client reports according to the new transparency requirements, Sprinterra proposed implementing a data warehouse with analytical functionality, which could provide the data in various forms for a long period of time. The data was prepared with the help of ETL and significantly reduced the time necessary for report generation. The team also created OLAP-cubes to decrease the request processing time and in turn reduce system latency. The reports were generated on corporate style sheets.
- Total automation
- Reduction of time- and labor-consuming operations
- Total compliance with all regulatory requirements
- Strongly regulated arena
- Ever-changing regulatory framework
- Complex regulatory reporting requirements
- Specific reports
- Java Core
- JSF, PrimeFaces
- HTML, Twitter bootstrap
- MyBatis, Jersey
- Sybase IQ
The application is a solution for reading, checking and loading source system data to a database. Uploaded data is used for report logic, included in the reports and contains both a summary and detailed level of reports.
The system supports the most popular file formats for data uploading such as .txt, .csv and .xlxs. Data file templates can be easily configured and changed without additional development efforts.
The system executes numerous logical, semantic and business validations before data is uploaded to DWH.
The database keeps uploaded input data and stored procedures for reports and data processing. Any data changes and operations are automatically logged into historical tables for audit and changes traceability.
The reporting module contains more than 50 reports for regulatory reporting and up to 20 additional reports for data analytics and supporting functions.
Reports have several levels of data presentation: calculation results, input data details, validation pages and cross-linking between pages.
The system has a self-service web tool, which is:
- A data cleanup module to provide the user with a self-service feature to delete incorrectly loaded data
- A securities classification module that could automate business processes in the regulatory security master, letting users successfully assign, maintain and override securities with the appropriate asset types
- Queue administration to manage file uploads and classification processes
- An analytical module to analyze and compare results of classifications for different reporting periods
The system is oriented to make the business user self-supporting. Error handling is based on user feedback, so all error messages are made according to user preferences and contain prompts for the next steps of handling the issue. Any updates and processing results are sent to initiators via email notifications and contain processing results and useful links to both the knowledge base and analytic reports.
An automatic monitoring system checks the status of all solution nodes and informs the technical support unit if any issues arise.