The application development guidelines were formulated to enable creation of geo-enabled mHealth applications that fulfil expected objectives using the RoadMApp project as a case study. The integral part of the RoadMApp application is anchored on 5 components i.e. the identification of pregnant women in the communities, recruitment and registration of the pregnant women at the health facilities, the pregnant woman’s savings towards her transportation, prompts and advice on travel risk and travel options respectively, and transportation of the women to health facilities, as shown in Fig. 1. In this project, a process from preparatory work, through data gathering to developing the geo-enabled mobile health application included: 1. user requirements assessment, 2. GIS data needs assessment, data gathering and modelling, 3. database design and development and 4. the front-end mobile application development.
The agile approach to mobile application development was adopted in this project. These processes are described in detail below.
-
User requirements assessment
User requirements assessment involves discovering and assessing the needs of users in order to meet those needs[12]. To
develop a phenomenally successful geo-enabled mobile health application, a user-centred design method should be adopted. User expectation is the most fundamental part of the designing stage, to discover the potential application’s behaviour and usage. The user-centred design method allows for direct end-user engagement throughout the design process, facilitating the development of a tool that can provide the most beneficial outcome possible[13].
As part of user-need assessment context, a literature search through a scoping review study was carried out to gain evidence about the possible implementation of the application in a developing country perspective. The scoping review mainly focused on transport options and travel times to seek healthcare implemented elsewhere in the world. A scoping study’s main aim in this context was to rapidly map the key concepts underpinning a research area and the main sources and types of evidence available[14].
A qualitative study was then carried out to gather contextual information from the study site to identify key community perspectives on the RoadMApp application intervention to understand the characteristics of target population, that is the cultural, demographic, social and economic characteristics. These characteristics were factored into the development of RoadMApp at a disaggregated spatial level, to produce an equitable platform that would prioritise the most vulnerable, whilst being an efficient and effective tool for the least vulnerable. The study, under the RoadMApp- Improving Access to maternal care - project was carried out in the Kwekwe District, Midlands Province in Zimbabwe. The study area had a mix of urban, per-urban and a rural setup. Of the 49 health facilities in the district, 2 hospitals (rural and urban), 4 rural health centres, 2 peri-urban clinics, and 2 urban clinics were selected. The qualitative study included focus group discussions (FGDs), key informant interviews and community engagement. The key informant interviews encompassed traditional chiefs, local government authorities, midwives, fire brigade and ambulance personnel and other players offering maternal services. FGDs were used to collect data from focus groups made up of pregnant women, women of childbearing age, spouses, and other community members. For the RoadMApp, it was crucial to identify the transport options available for all the pregnant women in the study area. Instead of assuming that every woman could be driven from their locations to the facilities, like most existing applications have, the study revealed that if we had proceeded with that assumption and only modelled driving in the application, the most vulnerable women would have been unable to reap the benefits of the application. The qualitative study revealed that some remote areas are not accessible by vehicular transport, as the road conditions were not suitable for driving regardless of the season. Considering this, other modes of transport, like walking, ox driven carts, wheelbarrows, bicycles, etc, given by the community members as the modes of transport they use where cars cannot reach, were factored into the model as transport that links the woman and the drivers at the beginning of a road segment suitable for cars. The visualisation of the expected functioning of the combined transport systems within the application is shown in Fig. 2.
-
GIS data needs assessment, data gathering and modelling
One of the major problems that the development of GIS applications is facing today is data acquisition[15]. In high income countries (HIC), access to GIS data for healthcare utilisation is more readily available than in LMIC, albeit in different formats. In LMIC countries, most of the data is collected directly from primary sources such as surveys and mapping exercises, as there are few secondary sources of data available as either open or proprietary sources. Even when the data is available as secondary data, its use for new applications is often hampered by poor documentation, obscure semantics of data, diversity of data sets, heterogeneity of existing systems in terms of data modelling concepts, data encoding techniques, storage structures, access functionalities, etc [15]. When it comes to collecting framework/base data for GIS modelling, a systematic way to check data availability is to carry out a data inventory and evaluation. A nine step approach, which is a documented framework for gathering and creating framework GIS data was used[16]. The most critical GIS datasets needed for the creation of geo-apps are shown in Table 1. After following guidelines proposed in [16], GIS datasets required for the mobile application back-end processes were prepared using online open source resources, OpenStreetMap (OSM) and Google maps. Defining the location of health services in relation to the communities they are intended to serve is the cornerstone of health system planning[17]. Lists of health facilities were obtained from the provincial health ministry offices were geocoded using google maps and OSM. The road dataset was also initially extracted from existing vector data using OSM. The gaps in the dataset were filled through digitizing, using OSM resources. However, the accuracy is often questionable as most of this data is made available through crowdsourcing[18]. Crowd sourced geographic data is an opensource collection of geographic data contributed by lots of non-professionals and provided to the public[19]. As a result, data directly obtained from crowdsourced resources should be checked for accuracy. Using ArcGIS software, the road dataset was then cleaned to correct for any topological errors. The roads were classified into highway, paved major, paved minor, unpaved major, unpaved minor and trails.
Two important geographical perspectives on health care service access can be distinguished as accessibility and utilisation[20]. Modelling potential geographical access to health services is the main application of GIS in maternal health research[21], [22]. Our modelling approach was focused on accessibility i.e. the availability of the health facility and the means of reaching it to promote and improve facility utilisation. GIS data gathering and preparation preceded the creation of road network dataset in ArcGIS. Wet and dry period access models were produced using “Modelbuilder in ArcGIS”, using the closest facility and the route layer tools. The process for producing these models is highlighted in detail in [4].The location of the pregnant woman and that of the driver would be initiated from the mobile application where it is determined in real-time using the mobile inbuilt “Global Positioning System”. The access model was published as a service on the ArcGIS Server hosted on “Microsoft Azure” cloud services. This model was accessible to the mobile application through the “ArcGIS REST API” service.
Table 1
Datasets required and their use in Geo-enabled mobile health applications development
Dataset | Gathering process | Role in App development |
Road network Feature lines in Esri shapefile format. | The initial road network is adopted from Open Street Map. The dataset is comprised of mainly highways and major roads. Missing roads and paths in the dataset are digitised from high resolution Bing Maps satellite image service to fill the data gaps. These roads are classified into highways, major paved roads, major unpaved roads, minor paved roads, minor unpaved roads and trails done in ArcGIS. Quality of the dataset is be monitored by checking GIS topology. Speed limits were assigned to each road segment depending on the road type, precipitation level and flood extent. | Road dataset is needed to create a road network data in GIS environment. The road network is used to create access model used in the mobile application for navigation to health facilities from home and for the driver to pick the woman from a certain location. |
Health facility (Point features in Esri shapefile(.shp) format) | GPS coordinates of the health facilities were collected from google earth, OSM. | Health facilities are needed as facilities in the modelling process |
administrative boundaries, polygon features in (.shp) files | Administrative boundaries up to ward level were downloaded from DIVA-GIS. | These represents locations where women live. Community boundaries are used for sending prompts to pregnant women ward-based. |
Precipitation and floods Raster images (.TIFF) | Historical data records of precipitation stretching from the previous 5 years was downloaded from CHRS Data Portal. | These datasets were integrated with data from roads to assign speed limits on roads, adjust on travel time to seek care and predict and inform travel risk on a weekly basis. |
-
Database Development for the Mobile Application
The term database embraces many different approaches from paper records to vast computerised collections of data. However, in our context a database is a large collection of data in a computer, organized so that it can be expanded, updated, and retrieved rapidly for various uses[23]. The database is an essential part of the application as it holds the GIS data to be utilised by the mobile application. Data in a relational database is stored as tables which are related to other tables within the database. Structured Query Language (SQL) allows for information manipulation from the database. Two categories of datasets stored in the database can be identified which are datasets that are relatively static in nature such as administrative boundaries, health facilities and roads as well as datasets that are collected in real-time such as location of pregnant woman and the driver. Information collected by facilities using the health facility and CHW components of the application is also stored in the database.
In the case of RoadMapp intervention, standard database development processes were followed as: requirements elicitation, conceptual modelling, logical modelling and physical modelling as described in [24]. The database uses client-server architecture, which entails establishing a system with ‘n’ number of clients (application users) who interact with a server. The database is particularly important as it is used for storage of data generated and used by the mobile application. The database designing was done in open source “Postgres/PostGIS” database system. PostGIS is an extension of Postgres allowing storage of location aware data such as health facilities location, roads, and administrative boundaries.
-
Front-end Mobile Application Development and Testing
Mobile application development is the process of building application software for mobile devices. Through the use of mobile apps, the user is provided with various features that will enable him/her to fulfil all his/her needs and much more[25]. The front-end mobile application development process or cycle utilised the Agile philosophy through the Scrum framework. Agile is a model for developing software applications where project implementation is done iteratively or incrementally[26]. In others words, the framework offers an answer to the eager business community asking for lighter weight along with faster and nimbler software development processes[27].
The Scrum framework provides the processes to implement the Agile philosophy through iterative and incremental agile software development process cycle. Its focus is on “a flexible, holistic product development strategy where a development team works as a unit to reach a common goal”[28].
The process of front-end mobile application development started with Agile requirements-gathering through the development of User Stories by the Product Owner. User stories where based on the qualitative data collection from the intervention area, the scoping review and original ideas of the Product Owner. Each User Story described the behaviour and characteristics of each specific feature of the mobile application. The developed User Stories were then evaluated by means of INVEST criteria before being entered in the project tracking tool. The INVEST criteria are Independent, Negotiable, Valuable, Estimable, Small, and Testable characteristics.
In this agile approach, the development team and the client or product owner met regularly to discuss progress in the development of the application. Any problems arising in the absence of the client during development would quickly be solved in regular meetings. The feedback received from the Product Owner was then used to improve the app until the final product was ready for use. The Agile application development process employed in this approach gives the mobile application developers a chance to work with geospatial scientists to create a robust product. The geospatial scientists were responsible for the behaviour of the whole application as well as supplying all the necessary required resources for the GIS-based back-end processes of the application.
The front-end mobile application had 4 main interfaces i.e. Community Health Worker (CHW), health facility, the pregnant woman and the driver interfaces. The CHW interface enables community/village health workers to capture basic information of the pregnant woman including the coordinates of the household where the woman resides. The coordinates are important for follow-up to the woman in case she misses registration at the facility or misses any ANC visit. The health facility interface integrates data from the CHW interface with additional information that enables the pregnant woman to be registered in the database for ANC. The driver application interface enables the driver to receive requests for transport from pregnant women. The woman and the driver interfaces are linked to the back-end access model with navigation capabilities. The driver is also able to locate position of the woman and pick her up to the health facility using the shortest route possible. The driver interface also receives notifications of payment into their mobile wallet accounts for transport services offered from the pregnant woman’s micro savings account once she has been delivered at the health facility. The pregnant woman’s interface enables the woman to select the closest driver and request for transport services. The pregnant woman’s interface comprises of a payment gateway, funds balance checking, receiving notifications about antenatal visits and transport risk and the general information about pregnancy.
After the initial development of the application, user application testing was conducted. User application testing evaluates the usability, functionality, user experience, and design of the application by involving the end-user. It involves a situation where product faults are reported, tracked, fixed and re-analysed until it conforms to the requirements of the objectives. For RoadMApp application, testing was performed by both the client and the end-user. Client testing involved both functionality and usability testing to check the application’s functionality and compare with the user’s requirements. The end-users testing basically involved usability testing to check the application’s link validation, multiple browsers’ support, screen resolution[29]. A sample of women, hospital facility personnel, drivers, community health workers was used in the end-user testing of the application.