Case Study Web–Based CRM Application with Interactive Graphs
www.brainvire.com | © 2013 Brainvire Infotech Pvt. Ltd
Page 1 of 4
Client
Requirement
Client wanted to develop a web-based CRM application for its entire sales department to track and record all the activities moving around sales. This is an interactive and customizable application having important modules as follows: Contact Management: This module stores all the details related to the potential customers and provides the ability to create, modify and remove the detailed interaction log with the contact. The user can also scan the business card of any contact, attach related document and can add custom field into the application. Opportunity Details: Companies usually mark ‘confirmed leads’ as ‘opportunities’. The user has the option to add, edit or delete an opportunity based upon access rights and permissions assigned. The user can also search a particular opportunity and can record information such as hit ratio, contacts, opportunity details etc. Alerts and Reminders: This module runs independently and can be associated with the rest of the modules in the application. The user can set reminders and alerts for anything across the system. Dashboard: The application dashboard is a crucial part as it gives a collaborated view of all the important activities. It enables users to view and understand the statistics promptly. It comprises of four types of graphs like Hit Graph, Scheduler Graph, Contacts Graph And Opportunities Graph neatly placed for better and quick understanding. Apart from the above, the system also includes quick links inside each module which provides ease of access to frequently used links. It also has a feature called “Last Viewed” which shows the last 5 accessed modules. For security purpose access limitation has been applied across the system. Also, the entire contact data remains encrypted in the system which ensures zero information theft. The system provides access to five type of users having different roles and they can access the system accordingly as follows: User A: Director has access to all the information in the system. He also has access to other Director users in the company. User B: User B refers to the Sales Manager group. This type of users have access to their information and the information used by their and added by their subordinates or group C users. User C: This refers to Sales Representatives and they have restricted access to the high level information. User D: D types of users are Admin people. They can create other users, grant rights to them, restrict access and provide a role to each user. User E: User E defines the role of a Secretary. They have access to Director-level information and can add/edit/update information on behalf of the Directors.
www.brainvire.com | © 2013 Brainvire Infotech Pvt. Ltd
Page 2 of 4
Project
Challenges
The challenges faced were:
Providing user accessibility, creating different roles and authorizing them.
Encoding and decoding all the primary contact information across the system.
Developing graphical dashboards came as a challenge to the team. Depicting various types of interactive charts over the Dashboard was an intricate task.
Setting up of independent Alerts & Reminders module using cronjob was difficult too.
Creating a dynamic site against the basic nature of Apache OFBiz framework which provides little or no dynamicity.
Technologies Operating System & Server Management
Development Tools & Environments
Used Windows 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 Groovy, Apache OFBiz Framework, Eclipse Indigo, CSS, JavaScript, HTML, SVN, Hibernate, Struts, Beanshells etc. MYSQL Database Server, DB Clustering, DB Optimization, Master Slave Replication, Query Optimization, Scheduler for Backups
Database
Manpower Project Leader
1
Developers
3
Designers
1
Quality Assurance Testers
1
www.brainvire.com | © 2013 Brainvire Infotech Pvt. Ltd
Page 3 of 4
Planning Keeping in mind the structure of the website and the challenges involved, a four-tier development approach was adopted consisting of:
The Database layer containing MYSQL Server Database, Tables, Stored Procedures and so on.
The Interface layer and Database Abstraction layer for converting data between incompatible type systems in databases and accessing data from the database respectively.
The Business Logic layer consisting of all the business logic procedures for interactive modules.
The User Interface layer which forms the Graphical User Interface of the website.
Architecture
Development
Highlights
The site was equipped with a robust architecture to offer centralized access to multiple users. Customizable viewing options were designed to enhance user experience and allow personalization. Access control and other security measures were applied on primary level to protect the data from theft and misuse. Third-party tool, Jasperchart was integrated for the use of Flash on the Dashboard. The web application was developed according to the latest web standards. For timely delivery, we specifically used Ant-build framework for rapid application development. The system makes extensive use of the APIs such as Velocity for multiple template access. The interface was made easily navigable through the judicious use of HTML and CSS controls. The site was developed and fully functional within a span of 4 months.
www.brainvire.com | © 2013 Brainvire Infotech Pvt. Ltd
Page 4 of 4