www.brainvire.com | © 2013 Brainvire Infotech Pvt. Ltd Page 1 of 1
Case Study
Web Based Investment
Management System
www.brainvire.com | © 2013 Brainvire Infotech Pvt. Ltd Page 2 of 2
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.
There are mainly 2 different types of users for the platform:
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.
Client Requirement
- Incorporating web usability principles while developing numerous features designed
for enhancing the users’ experience.
- Security of user’s transactional data is the key challenge of the platform.
- Platform supports multiple investment trends along with real time performance
indicator over historical period as well.
- Rapid application development was main target behind building this application.
- Utilizing community available bundles and customize/override according to the
requirement was most challenging part of the development cycle.
- Customization of FOS user bundle for supporting multiple roles along with managing
separate dashboard area was key part of main system technical architect.
- Client investment and theme portfolios statistics sync with the 3rd
party backend
system was technically challenging for core part of the platform.
- Ensuring more complex relation between data and their consistency. Each entity or
information is being used in various places in conjunction with other information.
Showing most relevant information at various places by clear way of presentation is
the main challenge as almost all information are similar to the different entities.
Challenges
www.brainvire.com | © 2013 Brainvire Infotech Pvt. Ltd Page 3 of 3
The following four-tier development approach was adopted to equip the site with
numerous features and functionality mentioned before:
• The Database layer containing MySQL Server Database, Tables, triggers and so on.
• The Data Access layer managed by Doctrine 2.x which containing the Data Access DLL
responsible for accessing data from database.
• The Business Logic layer consisting of all business logic procedures for modules.
• The User Interface Layer which forms the Graphical User Interface of the website. This
part/aspect of platform is built using Symfony’s View layer.
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 &
Environments
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 Backups
Project Leader 1
Developers 2
Designers -
Quality Assurance Testers 1
Technologies
Planning
Team Size
www.brainvire.com | © 2013 Brainvire Infotech Pvt. Ltd Page 4 of 4
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.
Development Highlights

Web Based Investment Management System

  • 1.
    www.brainvire.com | ©2013 Brainvire Infotech Pvt. Ltd Page 1 of 1 Case Study Web Based Investment Management System
  • 2.
    www.brainvire.com | ©2013 Brainvire Infotech Pvt. Ltd Page 2 of 2 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. There are mainly 2 different types of users for the platform: 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. Client Requirement - Incorporating web usability principles while developing numerous features designed for enhancing the users’ experience. - Security of user’s transactional data is the key challenge of the platform. - Platform supports multiple investment trends along with real time performance indicator over historical period as well. - Rapid application development was main target behind building this application. - Utilizing community available bundles and customize/override according to the requirement was most challenging part of the development cycle. - Customization of FOS user bundle for supporting multiple roles along with managing separate dashboard area was key part of main system technical architect. - Client investment and theme portfolios statistics sync with the 3rd party backend system was technically challenging for core part of the platform. - Ensuring more complex relation between data and their consistency. Each entity or information is being used in various places in conjunction with other information. Showing most relevant information at various places by clear way of presentation is the main challenge as almost all information are similar to the different entities. Challenges
  • 3.
    www.brainvire.com | ©2013 Brainvire Infotech Pvt. Ltd Page 3 of 3 The following four-tier development approach was adopted to equip the site with numerous features and functionality mentioned before: • The Database layer containing MySQL Server Database, Tables, triggers and so on. • The Data Access layer managed by Doctrine 2.x which containing the Data Access DLL responsible for accessing data from database. • The Business Logic layer consisting of all business logic procedures for modules. • The User Interface Layer which forms the Graphical User Interface of the website. This part/aspect of platform is built using Symfony’s View layer. 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 & Environments 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 Backups Project Leader 1 Developers 2 Designers - Quality Assurance Testers 1 Technologies Planning Team Size
  • 4.
    www.brainvire.com | ©2013 Brainvire Infotech Pvt. Ltd Page 4 of 4 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. Development Highlights