Categories : All, Finance
Web Based Investment Management System – PCG is a financial services application. This application manages various investment themes and investors can choose themes to invest in, allocate funds and move their money across different themes as desired. The application will present an overview public page that requires both prospective and paying clients to register/login for more information.
1. perspective client
2. Paying client
Any visitor to portal can register themselves to gain access to login restricted information. After visitor got register, the admin staff reviews information and allow/grant access to the secured area. Only limited information can be accessed by the Perspective client. When any perspective client signs contract and mutual agreement with PCG, the PCG Admin then converts the perspective client into a paying client. The paying client can view their portfolio performance, buy/sell any theme, do fund transfer from one theme to another etc.
PCG is expected to operate automatically for all the transaction related operation. There are 3rd party APIs which provides the real time data with respect to theme, client and overall performance statistics which are highlighted on the portal for clients to review and track. System will pull raw information like individual trades in the portfolio and performance statistics for each piece of the portfolio. However, to the user it will present % day-to-day/monthly/quarterly increase or decrease from previous for each piece of the portfolios.
In general, this is a financial services app which consists of sensitive user information including account number, passwords and other individual identification data. Standard encryption (for example – iterated encrypted hash function) needs to be applied to such fields in the database for user protection.
|Operating System & Server Management||Red Hat Linux OS, Multi-Server Architecture with Staging & Production Environment through Version Controlling releases,Server Optimization,Security & SSL Implementation,Scheduler for Back-ups,Alert Monitoring System Integration,Server Performance Tuning at regular intervals,Software Firewall Configuration & Maintenance|
|Development Tools & Environment||PHP5+,Symfony Framework, Microsoft Visio, NetBeans IDE, Java Script, HTML5, CSS3, SVN etc.|
|Database||MYSQL Database Server, DB Clustering,DB Optimization,Master Slave Replication,Query Optimization,Scheduler for Backup|
|Quality Assurance Testers||1|
The design approach was built around Symfony 2.3 and MySQL SERVER 5 due to the affiliate nature of the website. Symfony 2.3 is used in order to follow rapid application development and do not repeat yourself (DRY), Keep it simple stupid (KISS) principle. Symfony 2.x have many community contributed bundles available which helps to make development really faster,efficient and more reliable for platform building
Symfony 2.x has been used in order to keep platform more secure, stable and easy to maintain. In order to most effectively access the database in an object-oriented context, an interface translating the object logic to the relational logic was used to communicate with the relational databases in an object-oriented manner. Doctrine 2.0 is used for database interaction layer. An intermediary abstraction layer was created for accessing data from the database. Triggers, store procedure and custom MySQL functions were used for complex calculation of data from multiple tables and were utilized in heavy conditional syntax to ensure smooth performance of the website.
The UI layer was kept free of any business logic with images, applications and data being called from their respective servers. Web usability guidelines provided and supported by Twitter Bootstrap bundle/package were strictly followed during development and the interface was made easily navigable through judicious use of AJAX, CSS3 and HTML5 controls.