Categories : All, Case Study, Retail / E-commerce
The purpose is to develop a Loyalty Platform with Mobile Application compatibility with all the mobile devices like iPhone, iPad, & Android and a mobile website.
Customers: Using this app, the customers can register their check-ins and redeem their loyalty points for various business vendors available through the platform. Customers can request for various offers based on their keyword specific preferences via SMS. The users can also be able to subscribe to the information using web and telecom services. In all instances subscription delivery will ONLY be to mobile phones by means of a text (SMS) message.
Business Vendor: There will be a web CMS for the business vendors to manage their store offerings and communicate to the client with their special offers, new collection invites, special incentives…etc. The business vendors will also be able to track the loyalty stats of all their customers.
Super Admin: There will be a web CMS for the Super Admin to manage Application Business Model and the associated business vendors account activeness. The customers using this app can sign up for various merchants available in various categories.
At each merchant, the customer shall be Able to see his reward points, see the offers specially crafted for him or offers, be able to see the communication targeted directly towards him, and finally redeem the reward points by being able to purchase directly from the app, by partial or full redemption of his reward points.
Client required a cross platform mobile application and m-commerce website exposing consumers to multiple brands and merchants allowing them to shop, avail offers, manage loyalty programs and redeem coupons from this single application.
The app, its m-commerce and information updated at all ends.programs with banks and other
purchase from affiliates they get preset policy.
This application is a collaborated platform for users to manage loyalty or customer retention programs from all or selected merchants. Every field of the application is dynamic and can be changed during the run time.
|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+, Zend Studio, Magento, SQLite Framework, iOS SDK, Android, XCode 4.2.1, Core Data Framework, Java Script, HTML5, CSS etc.|
|Database||MYSQL Database Server, SVN, DB Clustering, DB Optimization, Master Slave Replication, Query Optimization, Scheduler for Backups|
The application life cycle constitutes the sequence of events that occurs between the launch and termination of your application. In iPhone/iPad OS, the user launches the application by tapping its icon on the Home screen. Shortly after the tap occurs, the system displays some transitional graphics and proceeds to launch your application by calling its main function. From this point on, the bulk of the initialization work is handed over to UIKit which loads the application’s user interface and readies its event loop. During the event loop, UIKit coordinates the delivery of events to your custom objects and responds to commands issued by your application. When the user performs an action that would cause your application to quit, UIKit notifies your application and begins the termination process.
The following figure depicts the simplified life cycle of an iPhone application. This diagram shows the sequence of events that occur from the time the application starts up to the time it quits. At initialization and termination, UIKit sends specific messages to the application’s delegate object to let it know what is happening. During the event loop, UIKit dispatches events to your application’s custom event handlers.
Figure:Application life cycle
After the UI Application main function initializes the application it starts the infrastructure needed to manage the application’s event and drawing cycle which is depicted in the following figure. As the user interacts with a device, iPhone/iPad OS detects touch events events and places them in the application’s event queue. The event-handling event infrastructure of the UI Application object takes each event off the top of this queue and delivers it to the object that best suited to handle it. For example, a touch event occurring in a button would be delivered to the corresponding button object. Events can also be delivered to controller objects and other objects indirectly responsible for handling touch events in the application.
Figure: The event and drawing cycle
In the iPhone OS Multi-Touch event model, touch data is encapsulated in a single event object (UI Event). To track individual touches, the event object contains touch objects (UI Touch) one for each finger that is touching the screen. As the user places fingers on the screen, moves them around and finally removes them from the screen, the system reports the changes for each finger in the corresponding touch object.
When it launches an application, the system creates both a process and a single thread for that application. This initial thread becomes the application’s main thread and is where the UI Application object sets up the main run loop and configures the application’s event-handling code. Figure shows the relationship of the event-handling code to the main run loop. Touch events sent by the system are queued until they can be processed by the application’s main run loop.
The project is developed using Magento open source due to the online selling store nature of the website. The application is built for multiple platforms including iOS and Android. The application runs on the latest versions of iOS and Android. Almost all the modules are developed using foundation, core graphics and UIKIT frameworks. All the user interface items are placed in view controllers that are linked with the controller files project along with the outlets, actions of the UI element. Geo-fencing technology was used at different stages. Integration of various 3rd party tools was required. The site was developed and fully functional within a span of 9 months.