GWIMS: a FOSS-based water infrastructure management tool

February 12th, 2015, Published in Articles: PositionIT


Management of water infrastructure information in most local government authorities is carried out using manual systems which pose challenges for near real-time management of water infrastructure networks and effective decision-making. This article outlines the development of an affordable web-based tool for managing water infrastructure information in the city of Gweru, Zimbabwe.

Zimbabwe is one of the few countries which uses the government or municipal system of water government. This arrangement is liable to constant political interference at the expense of efficiency, effectiveness and transparency in service provision [1]. Water infrastructure is maintained by local authorities under the supervision of the Zimbabwe National Water Authority. ZINWA was created under the Zimbabwe National Water Authority Act of 1998, and is responsible for water planning and bulk supply at a catchment basis with the involvement of water users, members of government departments and private organisations from each catchment [2]. Zimbabwe is divided into seven catchment areas based on the six major river basins namely Sanyati, Manyame, Mazowe, Save, Runde, Mzingwane, and Gwayi catchments. Each catchment is managed by a Catchment Council, comprising representatives of Sub-Catchment Councils within the catchment areas. Sub-Catchment Councils regulate and supervise the exercise of rights to water within their area of jurisdiction [2]. The water and sanitation sector is divided into four distinct areas of service and institutional arrangements: (i) water resources management; (ii) urban water supply and sanitation; (iii) rural water supply and sanitation; and (iv) irrigation [2].

Fig. 1: Water infrastructure data flow in the City of Gweru.

Fig. 1: Water infrastructure data flow in the City of Gweru.

The successful establishment of any human community and conservation of land-based wildlife is dependent on the availability of freshwater [3]. Zimbabwe’s urban areas are experiencing a sharp growth in population due to the increase in rural to urban migration, with a resulting increase in the demand for clean water supply and sanitation [1]. Water supply infrastructure is being overloaded, resulting in water outages and sewer overflows, with negative impacts such as the cholera outbreak experienced between 2008 and 2009 [4].

Urban local authorities are divided into different departments, and the management of water distribution infrastructure falls under divisions in engineering departments. Such divisions are charged with the maintenance and operation of water transmission and distribution mains, distribution pump stations, storage reservoirs, service connections and water meters [5]. Housing, treasury and water works departments also play a pivotal role in the provision and management of water infrastructure related information. This inevitably creates information silos, making it very difficult to achieve high levels of data sharing among the stakeholders in the water and sanitation sector.

Zimbabwe’s town and city local councils are responsible for the distribution and billing of clean water supply and sanitation. However, many of these urban local authorities manage water infrastructure asset data using manual systems with the bulk of such data stored in filling cabinets. As a result, it is difficult to perform ad-hoc queries on the state of water infrastructure resources. This is further compounded by lack of documentation about legacy systems, most of which were setup before the attainment of political independence in 1980.

Problem definition

The current water infrastructure management workflow is based on manual processes which call on experienced personnel to execute prescribed procedures for specific events such as breakages or pipe replacements. The population of Gweru is estimated at around 250 000 inhabitants. The water infrastructure network consists of a mixture of galvanised steel, asbestos and PVC pipes. The reporting of burst water pipes and leaks is usually left to the community, and any operations on the water system are only announced verbally (if at all) in the affected areas. Plummer and Nhemachena estimated that the Gweru water distribution network had over 9000 bursts annually [6]. In most cases, the water personnel use static maps which were developed during the installation of water infrastructure resources. The deterioration of water infrastructure was exacerbated by the economic recession and hyperinflationary environment from 2000, with line ministries getting a fraction of what was budgeted [7].

Fig. 2: The GWIMS modelling process.

Fig. 2: The GWIMS modelling process.

As departments battled to survive, purchasing hardware and proprietary software packages required for migrating to electronic systems assumed a very low priority. It is very difficult to identify faulty water lines, carry out risk assessment, plan new infrastructure layouts, and track maintenance records using the current systems. These manual systems make it extremely difficult to provide quick information about the water infrastructure network for effective decision-making. It is imperative to have systems that are affordable and easy to develop, deploy and maintain with minimal disruption of workers’ routines while at the same time integrating with existing government policies and practices. Free and open source software (FOSS) is fast becoming the most viable solution in situations such as the one currently being faced by the City of Gweru, Zimbabwe.

GWIMS objectives

The main objective behind the development of the Gweru Water Infrastructure Management System was to develop an effective and affordable tool for maintaining the current and future water infrastructure in the department of water and sewerage in the city of Gweru. The system was to be developed entirely using free and open source software products.

In order to achieve the main objective, the following specific objectives were formulated:

  • Assess water infrastructure dataflow within Gweru City Council
  • Identify the system requirements for GWIMS
  • Design the Gweru Water Infrastructure Management System based on a free and open source software architecture
  • Implement the proposed GWIMS using a web-based approach
  • Generate reports such as route analysis, maintenance planning and water equipment from GWIMS


The development of Gweru Water Infrastructure Information System (GWIMS) was based on the Waterfall approach. This entailed the formulation of system requirements, system design, prototyping, testing and implementation.

Fig. 3: GWIMS conceptual model.

Fig. 3: GWIMS conceptual model.

GWIMS data flow diagram

The management of water infrastructure in Gweru falls under the jurisdiction of four departments: engineering, water works, housing and treasury. The engineering department handles the installation of the water infrastructure. The water works department handles the water supplies, meter reading and repairs of the water supply and processing infrastructure. The water works department mainly handles repairs to water infrastructure located within the central business district (CBD). The housing department maintains the up-to-date records of house tenants within the city or town council’s jurisdiction. The treasury department handles the payment of water bills in collaboration with the water works department. Fig. 1 summarises the flow of data between these departments, and forms the basis for the requirements of the Gweru Water Infrastructure Management System.

System design

An object-oriented approach was adopted to design the system (Fig. 2), resulting in data and application modelling components.

During conceptualisation, skeleton entities were formulated and the conceptual data model was drawn up. This was followed by an object model showing object hierarchies of how the objects would interact within the application using data from the database. A logical model was drawn up which showed the entities and their attributes as well as their associated relationships. The attributes were taken and placed as properties within classes which resulted from the refined object model. Classes included the operations that were to be performed on the properties in the form of algorithms.

Fig. 4: Water Line Object Model [8].

Fig. 4: Water Line Object Model [8].

Data modelling

The GWIMS conceptual model comprises entities such as area, tenants, premises, water meters, water equipment, maintenance, and water lines (Fig. 3). The City of Gweru has an administrative area where it manages water supplies infrastructure. The administrative area is divided into many administrative units with many houses that are serviced by the city council, each of which has exactly one tenant but a tenant might own several premises in the same administrative unit. Whenever the city council services a particular premise, exactly one meter for billing the tenant is installed. Waterlines in a particular area transport water from the source to supply the serviced premises in that area. Whenever a waterline is serviced, a maintenance record is logged into GWIMS. Water equipment comprises fittings, valves, and hydrants that are connected to a waterline for a specific purpose. A single waterline can have multiple water equipment. Water equipment has maintenance records as well.

Application modelling

The GWIMS application’s object model comprises waterlines and water equipment as major objects. Waterlines have specific spatial operations that are performed on them. There are two types of waterlines namely the mainline, and the lateral line. The mainline relies on pressure within the supply line or gravity to deliver clean water to its recipients. The lateral line takes the water supply from the mainline and delivers it to the premises. No mainline delivers water directly to the premises (Fig. 4).

A water equipment object model was generated where water equipment is regarded as having fittings, which join the different waterline segments to each other. These fittings can be valves or hydrants. Valves are further subdivided into two types, namely control and system. Control valves simply control the flow of clean water within waterlines, and the system valve regulates the inlet of water into a system of waterlines. Hydrants are the connection points for the fire brigade, and any other emergency or refill purpose.

Fig. 5: GWIMS implementation concept.

Fig. 5: GWIMS implementation concept.

System integration

The Gweru Water Infrastructure Management System is implemented using an n-tier architecture comprising the data, business/logic, and presentation layers or tiers (Fig. 5). The data layer, implemented in PostgreSQL, holds all the spatial and non-spatial data necessary for GWIMS to function. The logic layer, implemented in PHP, houses the programming logic to handle user requests, retrieve, analyse, and format data from the data layer. Finally, the presentation layer comprises client-side scripting using OpenLayers in JavaScript and basic HTML to display the client request in the form of maps, popups, and attribute data tables. PostgreSQL’s PostGIS extension was used to manage the spatial data in the form of spatial queries, while PHP was used to retrieve the spatial data from the database and convert it into GeoJSON data format for OpenLayers to interpret and display the spatial data in the client’s web browser. Classes from the Class Model were implemented using PHP, and all the operations on spatial and non-spatial data were handled in PHP – including all the spatial queries. pgRouting sits on top of PostGIS and was used for water supply analysis.

Data about water supply pipes, hydrants, and stands which are required by the new system is currently in the form of hard copy maps. The data was scanned and placed into the geo-database using Quantum GIS (QGIS) for geo-referencing and digitising. The scanned images were geo-referenced to WGS 1984 (with SRID of 4326), and the required spatial datasets were digitised and populated with the attribute data. The data on installed meters was not readily available in spatial format, and therefore the digitised locations of the meters were not based on the true locations of meters. The geo-database is implemented in PostgreSQL with the PostGIS and pgRouting extensions installed for spatial queries. PostGIS enables GWIMS with a spatial and data conversion reference framework necessary to take the spatial features from the geo-database in PostgreSQL to the GWIMS web client, while pgRouting integrates common network graph algorithms such as Shooting Star, and Shortest Path Dijkstra with PostGIS.

Fig. 6: GWIMS water infrastructure map.

Fig. 6: GWIMS water infrastructure map.

Spatial queries are made using Standard Query Language (SQL) on the spatial data in the geo-database. Spatial operations on waterlines include tracing water flow, simulating closed and opened valves, identifying supplied households, and risk assessment of waterlines within a specific administrative area. The result of the queries is returned and displayed in the client’s web browser in the form of maps and attribute tables represented in GeoJSON data format. These spatial queries are initiated using clicks on the maps displayed to the user, or selection of menu options. The setup of GWIMS does not need any extra installations on the user’s end/client side, save for a standard web browser. GeoJSON supports points, MultiPoint, Linestring, MultiLinestring, Polygon, MultiPolygon, and Feature geometries, as well as FeatureCollection and GeometryCollection. PHP is a server side scripting language acting as the middle man between the GWIMS client and the GWIMS geo-database. GWIMS uses PHP 5.3.1 which has the PostgreSQL database drivers preinstalled, and ready for use; other versions of PHP have compatibility issues with PostgreSQL.

OpenLayers is a free and open source JavaScript library developed to make it easy to integrate dynamic maps into a website [9]. It is compatible with most desktop and mobile browsers, and spatial data sources which include OpenGIS Consortium’s Web Mapping Service (WMS), Web Feature Service (WFS), and Microsoft’s Bing Maps. The latest version of OpenLayers (Version 3.0 Beta 1) adds the support of WebGL, and 3D mapping in addition to the currently available 2D Web Canvas [10, 11]. GeoJSON is an open standard for data interchange of various spatial features over the web using the popular JavaScript Object Notation [12].

Results and analysis

GWIMS presents its data with a combination of popups, maps, and attribute tables. GWIMS generates an infrastructure map (Fig. 6), where the green circles represent valves and the maroon circles represent water meters connected to households.

Fig. 7: Valve information.

Fig. 7: Valve information.

The features on the infrastructure map are highly interactive. Clicking any one of them results in a popup with details on the selected feature as well as spatial operations that can be performed on the same feature. Houses can be searched by tenant, or by house number within a given administrative area, and their water supply route analysed. This is useful for troubleshooting faulty waterlines. The city engineer and technician can simulate what happens when certain valves are closed or opened using the water supply tracing function. Water personnel can obtain information about a particular line or valve as shown in Fig. 7.

GWIMS performs supply route analysis and can generate lists of households that will be affected by a planned configuration of control valves in an area (Fig. 8). GWIMS can also generate results of queries about water supply cut-off lists, maintenance records, and water usage volumes within a specific area.

The new system can generate maintenance plans where valves have been closed or opened to determine which water pipes are affected during maintenance operations. In Fig. 9, the blue linear feature represents a live water supply line and the orange linear feature shows the water line branching from the live one but with the valve joining the two closed. This spatial operation is useful when testing different valve configurations in the office prior to carrying out maintenance.

Fig. 8: Supply route analysis.

Fig. 8: Supply route analysis.


The development of a prototype for the system presented a steep learning curve because of the number of free and open source packages that had to be integrated into the system. Developing the water supply analysis function presented challenges and took longer than anticipated. The major challenge was representing valve states in relation to the water flow directions on waterlines under analysis. This problem was solved by setting negative forward and reverse costs whenever there was a need to restrict flow in a forward and reverse direction respectively.

The prototype GWIMS is currently running using a local host as permission to install the system on the GCC server has not yet been granted. The system can manage information relating to the distribution of clean water resources within the City of Gweru. It is possible to extend the system to cater for the management of sewer infrastructure as well. A fully operational Gweru Water Information Management System will be an invaluable management tool aimed at lowering management costs for the city’s water and sewerage infrastructure. It will expose some of its functionality, through a defined web interface, to selected third party users such as the fire brigade which uses the hydrants installed on the City Council’s waterlines.

Fig. 9: Water network maintenance planning function.

Fig. 9: Water network maintenance planning function.


This paper was presented at AfricaGEO 2014, and is republished here with permission.


[1] I Nhapi: ‘The water situation in Harare, Zimbabwe: a policy andmanagement problem’, Water Policy, vol. 11,pp. 221–235, 2009.
[2] AfDB: Infrastructure and Growth in Zimbabwe: An Action Plan for Strengthened Recovery – African Development Bank, 2011. Viewed 20 February 2014,
[3] TO Nyarumbu: Using the Planning and Management Model of Lakes and Reservoirs (PAMOLARE) as a tool for planning the rehabilitation of Lake Chivero, MSc Thesis, University of Zimbabwe, 2011.
[4] UNICEF: UNICEF Zimbabwe – Water, Sanitation and Hygiene – Improved Water, Sanitation and Hygiene for Rural Households in Zimbabwe, n.d. Viewed 12 January 2014,
[5] HCC: Harare City Council – Water production, 2012. Viewed 28 February 2013,
[6] J Plummer and G Nhemachena: ‘Preparing a concession: Working towards private sectorparticipation in water and sanitation services in Gweru, Zimbabwe’, 2001. Viewed 21 February 2014,
[7] WSP: Water Supply and Sanitation in Zimbabwe: Turning Finance into Services for 2015 and Beyond, 2011. Viewed 28 February 2014, Zimbabwe.pdf.
[8] S Grise,. et al.: Water Utilities. In: ArcGIS Data Models. New York: Esri Press, pp. 78-81, 2001.
[9] OSGeo: OpenLayers Info Sheet, n.d. Viewed on 19 December 2013,
[10] TechNet: WebGL Considered Harmful – Security Research & Defence – Site Home – Technet Blogs, n.d. Viewed 21 December 2013,
[11] WHATWIG: 4.12.4 The canvas element – HTML Standard, n.d. Viewed 21 December 2013,
[12] H Butler et al.: GeoJSON Specification, n.d. Viewed 19 December 2013,

Contact Charles Paradzayi, Midlands State University,

Related Articles

  • Economic street level imagery surveys for smaller municipalities
  • Information is nothing without ethical action
  • Setting up a real-time inventory management system
  • GIS software achieves top user ranking
  • High performance IMU for demanding data collection