In 2017, Freecom delivered a web application to meet the needs of the Compass Group plc for their ‘Mobilisation Process Automation Project’. The software was created to allow the designing of mobilisation project templates which could then be applied to new mobilisations. Users could then be assigned to individual tasks allowing for a custom ‘dashboard’ so that operatives would know which jobs were outstanding etc. This web application was later branded ‘.mobilise’.
Further requirements have been issued for a mobile application to replicate the end-user experience on a smartphone. As Compass Group plc use Android-based devices the application will be target to this platform only.
As the application is not meant for public installation it will not be deployed to the Google Play store. Instead it will be delivered as a compiled ‘APK’ file (this is a file that can be installed directly on a device). This could then be hosted directly on Compass Group’s server hosted by Freecom (a link to this installation file could then be emailed to the intended users to open directly on their devices).
The initial view within the app will be the login screen. This will require a username and password to be entered (the same credentials as used on the website). On successful validation, a pair of ‘access tokens’ will be sent back to the mobile app and stored for future communication. This way we do not need to store the username and password on the device.
If the user has previously logged into the app, upon launching a request is made to the server to ensure that the authentication tokens are still correct before proceeding. If the tokens are invalid, the login screen is presented.
Should the user reset their password from the website or an administration user reset the password for them, then the tokens are automatically invalidated requiring the user to log in again.
Project Selection Screen
The first screen displays the list of projects that the user is assigned to. When the screen is shown for the first time, a request is made to the server to fetch the current list of projects; these details are then stored in the local database within the app. Tapping on a project takes the user to the task list.
The task list provides the user with the group of tasks assigned for the current week. On-screen navigation will allow moving backwards and forwards between weeks. An internet connection will be required initially to download the list of tasks from the server and store them in the app’s database. If a connection is not found subsequently, this stored list of tasks will be displayed and there will be a visual cue that this list is from the ‘cache’. Tapping on a task will open its details.
The task details screen shows the information held regarding the selected task – it’s title, current status, history and any comments. The user can add comments to this task and update its status (In Progress, On Hold, Complete). If an internet connection is found, the details are sent to the server. If no connection is available, just the local version of the task will be updated and its details will be synchronised to the server the next time access is available.
REST web services for the .mobilise platform – including token-based authentication – to support the operation of the mobile application.
Additional database design to support the operation of distributed data and synchronisation.