Categories : All, Case Study, Finance
This system is being implemented to automate the existing and large manual system of Bullion Trading. As per the client’s requirement, the portal provides features to buy bullion online and to carry out other trading related activities.
As per the client’s requirement, BTP (Bullion Trading Portal) should be synchronized with the existing BTS (Bullion Trading System) with request-response cycle and the data of BTP should be managed in web database. For some modules, the BTP should be synchronized with BTS for validations, authentication and authorizations. BTP should display updated bullion prices which should also be synchronized with MCX server. The MCX server should get updated MCX scripts from the third-party MCX server on daily basis and all the trades carried out by the user should be synchronized with BTS.
The system is accessible by two types of users i.e. External and Internal. The external users are further categorized as Standard and Premium Users. The users will load the modules based on authorization of type of the users. Internal types of users are Admin, Super User and Internal Users. These users are given the authorities to manage the back-office modules.
The external type of users needs to be registered before accessing the BTP modules. The registration process is of two steps for Standard Users and of 12 steps for Premium Users. On completion of the registration process for Premium Users, the users should be able to verify and send the auto-generated PDF form. While logging in as a Premium User it should ask Security Token Code which should be verified with the device provided to the clients. Other common features for all front-end type of users are viewing account information, managing user profiles, accessing periodic charts and accessing research reports. The trading facility is provided only to the Premium Users. The Premium Users should be allowed to have multiple logins as 1 primary user and other sub-users. The Premium Users can belong to different classes as available in BTS.
The Internal Users should be allowed to configure trade limits for different locations and different metals. They should also be allowed to set day wise minimum and maximum trade limit for different classes and metals. The functionalities that are accessible to internal users are setting currency exchange values for INR, setting portal information display, approving the user registration, generating alerts for the external customers,resetting the passwords on customer’s request,maintaining research reports and announcements periodically, enable or disable users etc.
|Quality Assurance Testers|
|Operating System & Server Management||Windows OS, Multi-Server Architecture with Staging & Production Environment through Version Controlling releases Server Optimization, Security & SSL, Implementation, Alert Monitoring System Integration,Server Performance Tuning at regular intervals, Software Firewall Configuration & Maintenance|
|Development Tools & Environments||VC#,Eclipse Indigo, SVN,HTML5,CSS3,Java Script, Spring,Hibernate,JDBC Template, JSF, JSon, Esper Engine, Velocity Template etc.|
|Database||MYSQL Database Server, JBoss,DB Clustering, DB Optimization,Master Slave Replication,Query Optimization,Scheduler for Backups|
The Bullion Trading Portal application consists of 3 parts: JSF UI, Java Server and the Data Sources. In addition to these, there are data scripts running to load data from various external sources into the client’s database system.
The heart of the application is the JBoss server. The application is installed on ROOT. The codes for the client’s website is served by the ROOT deploy (jboss-5.1.0.GA/server/ew/deploy). Also, we used Flex for business logic wiring and database access to generate charts.
The application follows socket-based architecture and communicates with external systems such as BTS and MCX Server for data exchange. All remote method calls originating from the JSF UI are processed by the JBoss services (http://www.jboss.org/) which then utilizes one or more Java Services. Calls such as login, validations and subscribe which originate from HTML pages are processed by the Spring Framework, JSF and Servlet layer that further uses the Java Services. Sending mails are managed by the Mail API and Velocity Templates. Also, periodic events are scheduled to run using Esper event management APIs and Cron expressions.
The Delegate layer has the business logic and uses the Data Extractor layer to get either Hosted Data from the Edelweiss database server or fetches data saved on the file system used by the user uploaded data.
We have configured the application to read script’s data every 2 seconds from the MCX Server. The data shared from MCX Server should be shared with application server synchronously over socket-based connections. Using Servlet and JSON objects the bullion prices are updated