Leader Price : Courseur
A service-oriented app
Based on the observation that many people use their vehicle to fetch supplies from the closest supermarket to their home, Courseur decided to create an app that enabled users to limit such travel with a view to reducing their environmental footprints. This worked by enabling users who visited the supermarket to buy another user’s shopping on their behalf and to have it delivered to them via the app.
Adaptation and responsiveness
Since the lead time was particularly short, the agency adopted an agile approach by doing away with the traditional specifications regarding the working method. As for the technical aspects, the developers used a hybrid technology combining Cordova and Ionic that enabled them to code in web language whilst at the same time being supported by native languages for iOS and Android. The agency also used a special server for storing the data and created an API (business logic). This was designed with Ruby On Rails.
Very comprehensive test phases
In order to ensure that the app worked as best it could, the agency’s technical teams introduced a series of tests using Gitlab and a docker registry, as well as using Selenium via Browserstack. Communication with the web app version of the API was also important in order for Protractor to be able to test it on all browsers.
The iterative method enabled each developer to modify part of the code, send it to our Git (Gitlab) source server and have these tests performed automatically to verify that the app was working as it should. Whilst the developers were obliged to use this testing method, they did enjoy being able to try out new technologies such as Appium and AWS Device Farm.
Three environments for greater flexibility
148 Agency was able to quickly reconfigure the server using the various scripts pertaining to the Ansible platform and therefore to also create three environments - one for testing, another for production and a third for implementing the app demo. This single-track method makes it possible to work in one environment without any direct impact on the other two, meaning that it was far easier and quicker to adjust and modify the various components of the app.