Location Based Restaurant Survey System
Location Based Restaurant Survey System application is the web and mobile-based survey system for restaurants.
It extensively makes use of the location-based technology.
The client required the following:
- Survey form loads on user’s mobile device.
- The system must allow setting rewards for consumers.
- Flexible UI that allows restaurant owners to build concise and interactive surveys.
- Social network integration to enable instantaneous sharing.
- Ability to reduce chances of fake surveys (integrated user blocking mechanism).
- Advanced filter and sorting techniques.
- Data archival facility.
- Quick data assimilation facility according to trends, demographics, fashion etc.
- Ability to print detailed analysis (graphical) reports.
- Ability to generate and print an executive summary of the survey.
- Location-based restaurant survey application that alerts users about nearby restaurants and best deals.
Team faced the following challenges:
- Developing a Survey form as per restaurant owners’ requirement . We used a custom tool that allowed creating a survey form dynamically. Managing the data of dynamically designed form came as a challenge.
- As survey questions are dynamic it’s hard to generate any report from the given row data.
- Generating interactive reports such as graphical representation of data in pie chart and bar chart.
- Implementing and managing the survey form on mobile as per the users’ location and demographics.
- Generating a unique coupon for each user.
- Providing a robust framework for supporting the smooth functioning of a comprehensive community portal accessed by thousands of users simultaneously.
- Sustaining good load balance for a feature-rich website that is available 24/7.
- Incorporating web usability principles while developing numerous features designed for enhancing the users’ survey experience.
- Ensuring user privacy and safeguarding their content .
|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||PHP, Linux, Apache, Mysql, Android, IOS, Blackberry, AJAX, Java Script, HTML5, CSS3 etc.|
|Database||MYSQL Database Server, DB Clustering, DB Optimization, Master Slave Replication, Query Optimization, Scheduler for Backups|
|Quality Assurance Testers||2|
Keeping in mind the enormous structure of the website and the challenges involved a four-tier development approach was adopted consisting of:
- 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 modules like Survey Creation, Location Creation, Location Manager Creation, User Profiles, Reporting etc.
- The Database layer containing MYSQL Server Database, Tables, Stored Procedures and so on.
- The User Interface layer which forms the Graphical User Interface of the website.
The online survey characteristic of the website called for the design approach to be built around PHP and MYSQL Server. Modules like Survey Creation, Location Creation, Location Manager Creation, User Prof iles and Reporting were developed in PHP such that they can be executed directly from the UI layer. These PHP f iles consisted of all the business logics used for respective modules like Save (Add/Update), Delete, Get Single Object, Get Multiple Objec ts for Listing and were designed to be capable of handling many more logics which were not related to the database. 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.
An intermediary abstraction layer was created for accessing data from the database. Stored procedures were used only for complex retrieval of data from multiple tables and were entirely avoided with 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.
The site was equipped with a robust architecture to offer centralized access for numerous survey creation, survey fill up and monitoring statistics such of survey under one roof. An extensive database of statistics and graphs was incorporated to provide systematic survey reports based on each server. Extensive pre-development research was carried out to make the entire database compatible. SEO activities performed ensured high visibility for the site over the internet. Web usability guidelines were strictly followed during development and the interface was made easily navigable through judicious use of AJAX, CSS and HTML controls. The site was developed and fully functional within a span of 4 months.