Annexure A โ System Architecture
Deliverable for Milestone 1 โ Design specification document and EO data integration architecture plan.
Overviewโ
The platform is structured as a four-layer architecture connecting raw satellite data sources to a health surveillance dashboard consumed by public health partners.
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ Layer 1 โ Data Sources โ
โ EO Satellites ยท NICD ยท Public Health ยท Ground Sensors ยท DWSโ
โโโโโโโโโโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ Layer 2 โ EO Data Pipeline โ
โ Ingestion โ Pre-process โ Feature Extraction โ Storage โ
โโโโโโโโโโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ Layer 3 โ Analytics & Modelling Engine โ
โ Pathogen index ยท NCD risk ยท Spatial analysis ยท Alerts โ
โโโโโโโโโโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ Layer 4 โ Health Surveillance Dashboard โ
โ Interactive maps ยท Time-series ยท Alerts ยท Reports โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
Layer 1 โ Data Sourcesโ
| Source | Type | Data provided |
|---|---|---|
| Sentinel-2/3 | EO satellite | NDWI, NDVI, turbidity, chlorophyll-a |
| Landsat 8/9 | EO satellite | Land surface temperature (LST), land cover |
| MODIS | EO satellite | Soil moisture, vegetation index |
| NICD | Epidemiological | Disease case counts, outbreak alerts |
| DoH | Public health | Disease registry, facility data |
| DWS | Water agency | Water body status, quality indices |
| SAWS | Meteorological | Air temperature, rainfall |
| Ground sensors | Field obs. | Water quality, in-situ validation |
Layer 2 โ EO Data Pipelineโ
See EO Data Pipeline โ for the full six-stage breakdown.
Summary steps:
- Ingestion โ scheduled API pulls via Google Earth Engine
- Pre-processing & QA/QC โ atmospheric correction, cloud masking, normalisation
- Feature extraction โ NDWI, NDVI, turbidity, LST, chlorophyll-a
- Spatial-temporal fusion โ join EO features with health & ground data by GPS + date
- Storage โ cloud database + data lake (CSV for prototype, PostGIS for production)
Layer 3 โ Analytics & Modelling Engineโ
Malaria risk indexโ
The composite risk score is computed per ward per month:
def calculate_dynamic_risk(d):
score = 0
if d['Soil_Moisture'] > 0.35: score += 40
elif d['Soil_Moisture'] > 0.25: score += 20
if 25 <= d['LST_Surface_C'] <= 30: score += 30
if d['NDWI_Water'] > -0.1: score += 20
if d['Population_Density_Per_KM2'] > 300: score += 10
return score # 0โ100
Risk thresholds:
| Score | Label | Colour |
|---|---|---|
| โฅ 50 | High | #d93025 |
| 25โ49 | Moderate | #f9bb06 |
| < 25 | Low | #34a853 |
NCD risk factorsโ
NCD risk is derived from:
- Air Quality Index (AQI)
- Urban heat stress (LST deviation)
- Population density and healthcare access
- Lifestyle and land-cover proxies
Spatial analysisโ
- Ward-level and municipality-level aggregation (Limpopo, using GADM ADM3 boundaries)
- Country-level NCD choropleth (South Africa, Botswana, Zimbabwe, Lesotho)
- Hotspot detection via spatial clustering
Alert engineโ
- Configurable risk thresholds trigger notifications
- Outputs: dashboard flags, email/SMS alerts, automated PDF reports
Layer 4 โ Health Surveillance Dashboardโ
The dashboard is a Leaflet-based single-page application deployed on AWS Amplify.
| Component | Description |
|---|---|
| Interactive maps | Risk-coloured circle markers per ward; Leaflet with OSM tiles |
| Region selector | Province โ Municipality โ Ward drill-down with Apply/Reset |
| Time slider | Monthly snapshots from January 2025 to January 2026 |
| Risk filter | Show all / High / Moderate / Low |
| Environmental panel | Habitat type, population density, agricultural area, surface temperature, soil moisture |
| Risk prediction panel | Current risk level label + percentage |
| Popup cards | Per-ward risk summary on marker click |
Technology stackโ
| Layer | Technology |
|---|---|
| EO processing | Google Earth Engine (Python API) |
| Frontend | HTML ยท CSS ยท JavaScript (ES6) |
| Mapping | Leaflet.js + OpenStreetMap |
| CSV parsing | PapaParse |
| Hosting | AWS Amplify |
| Boundary data | GADM ADM1/ADM3 GeoJSON |
Validation partnersโ
The system architecture has been scoped in consultation with:
- UCT โ University of Cape Town (environmental health modelling)
- CSIR โ geospatial analysis and EO validation
- NICD โ epidemiological data integration
- TuksNovation / NeoFrontiers โ incubation and funder oversight