2.7 KiB
Implementation Epics
EPIC 01 — Repository and Runtime Foundation
Goal: create a runnable full-stack foundation with backend, frontend, database, worker and shared conventions.
Must deliver:
- FastAPI app booting
- health endpoints
- SQLAlchemy/Alembic setup
- PostGIS-enabled PostgreSQL connection
- React app booting
- Docker Compose local stack
- basic CI-friendly test commands
EPIC 02 — Project and Area Management
Goal: allow users to create project workspaces and define Kempen analysis areas.
Must deliver:
- project CRUD
- area CRUD
- polygon validation
- area surface calculation
- geometry storage in PostGIS
- frontend project dashboard
- map drawing workflow
EPIC 03 — Dataset Manager
Goal: upload, register and inspect geospatial datasets.
Must deliver:
- dataset upload endpoint
- metadata extraction
- storage path registration
- dataset table
- dataset detail page
- processing status model
EPIC 04 — Raster Foundation
Goal: support GeoTIFF metadata, preview, clipping and tiling readiness.
Must deliver:
- Rasterio metadata extraction
- bounds, CRS, band count, resolution
- clip request contract
- tile generation contract
- raster preview placeholder backed by real metadata
EPIC 05 — Vector Foundation
Goal: support GeoJSON/Shapefile/GPKG import and core vector operations.
Must deliver:
- GeoPandas import
- CRS transform
- clip to area
- area/perimeter calculation
- vector layer display/export
EPIC 06 — GRB Reference Integration
Goal: retrieve GRB features for selected areas and cache them in PostGIS.
Must deliver:
- GRB source config
- WFS request service
- cache table or dataset registration
- building reference layer
- failure handling and source metadata
EPIC 07 — Detection Pipeline Skeleton
Goal: run object detection over prepared raster tiles and store georeferenced outputs.
Must deliver:
- model registry stub
- detection job request
- tile inference interface
- detections table
- GeoJSON export
- map overlay
The first implementation may use a deterministic fixture model only if the full interface is identical to a future YOLO implementation.
EPIC 08 — QA/QC Engine
Goal: compare detections against GRB reference features.
Must deliver:
- spatial matching
- IoU calculation
- precision/recall/F1
- false positives/false negatives
- QA result layer
- metrics panel
EPIC 09 — Export Layer
Goal: export useful outputs.
Must deliver:
- GeoJSON export
- analysis metadata export
- QA summary JSON
- future-compatible report registry
EPIC 10 — Stabilization and Polish
Goal: make the MVP coherent, testable and demo-ready.
Must deliver:
- error states
- empty states
- loading states
- validation messages
- test coverage on critical services
- changelog and release notes