More Related Content Similar to E-Score Data Management system on mobiles to survey the electrical usage (20) More from Mike Taylor (20) E-Score Data Management system on mobiles to survey the electrical usage1. www.brainvire.com | © 2013 Brainvire Infotech Pvt. Ltd Page 1 of 1
Case Study
E-Score Data Management - EDM
2. www.brainvire.com | © 2013 Brainvire Infotech Pvt. Ltd Page 2 of 2
This is an internal application for users (advisors) to evaluate/survey customers on their electrical
usage and rate their e-score based on the below parameters.
• Air Sealing
• Attic Insulation
• Knee wall Insulation
• Duct System
• Lighting
• HVAC Equipment
• Appliances
• Water Heating
• Refrigerator
• Windows & Doors
• Wall Insulation
• Direct H2O
• Health & Safety Data
Client Requirement
Project Challenges
Team faced the following challenges:
• Developing android application that works in offline as well as on online mode.
• Developing and implementing seamless data transmission and synchronization with
the server through web services.
• There was huge data synchronization that needed to be carried out once any survey
or inspection was completed.
• Data transfer to be carried out at a low bandwidth even in 3G network as compared
to Wi-Fi.
• Implementing stringent security measures to safely handle the vast transfer of data.
3. www.brainvire.com | © 2013 Brainvire Infotech Pvt. Ltd Page 3 of 3
Technologies Used
Manpower
Planning
Keeping in mind the enormous structure of the website and the challenges involved a
four-tier development approach was adopted consisting of:
• For frequent and secured data transfer need, web services were being developed using SOAP.
Also, it allowed us to share information seamlessly in XML format for future development and
other 3rd
party integrations.
• Due to multiple image transfer between server and device, FTP data transfer protocol was used
instead of http. This made data transfer faster and more reliable. Also, it helped application to
transfer data asynchronously as a background activity.
• The Database layer containing MySQL Server Database, Tables, Stored Procedures and so on.
• The Data Access layer containing the libraries responsible for accessing data from the database.
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+, LAMP Platform, Android Platform, Rational Rose Enterprise
Edition
Database MYSQL Database Server, DB Clustering, DB Optimization, Master
Slave Replication, Query Optimization, Scheduler for Backups
Project Leader 1
Developers 4
Designers 1
Quality Assurance Testers 1
4. www.brainvire.com | © 2013 Brainvire Infotech Pvt. Ltd Page 4 of 4
• The Business Logic layer consisting of all the business logics, procedures for e-score, customers
and advisors modules.
Architecture
Since the targeted users were internal staff members - Android, NoSQL, PHP and MySQL formed
the basis of development. SOAP based web service were designed to communicate between
Android and Web server applications.
The entire application data was being stored in device in NoSQL (database that provides a
mechanism for storage and retrieval of data that employs less constrained consistency models
than traditional relational databases) to work in offline mode. The architecture was designed to
get all application level data through web service as per the user’s credentials.
To update information to and fro, background service was designed in android application which
calls web services to transfer all updated data and fetch all updated data from the web server. In
case of any conflicts the data modified last as per timestamp takes precedence.
Development Highlights
With robust and secure communication in place, data syncing happened real-time without any
glitch. All data transmission is been logged in case of failure to maintain data consistency and
integrity. To keep the track of previous records, information is maintained into application device
for pre-configured time period which lead to reduced bandwidth usage.