Talk To Us For FREE

We are in the Business of Support and that starts before you even become a client.
Please prove you are human by selecting the Cup.

E-Score Data Management

Categories : All, Mobile and Wireless

Client Requirement

project_manager_cicle

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

Project Challenges

Team faced the following challenges:
  • There was huge data synchronization that needed to be carried out once any survey or inspection was completed.
  • Developing and implementing seamless data transmission and synchronization with the server through web services.
  • Developing android application that works in offline as well as on online mode.
  • 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.

Technologies Used

Operating System & Server ManagementRed 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 & EnvironmentsPHP5+, LAMP Platform, Android Platform, Rational Rose Enterprise Edition
DatabaseMYSQL Database Server, DB Clustering, DB Optimization, Master Slave Replication, Query Optimization, Scheduler for Backups

Manpower

Project Leader1
Developers4
Designers1
Quality Assurance Testers1

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.
  • 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.

[Total: 0    Average: 0/5]