Functional Requirements

Owner: Product
Reviewers: Engineering, QA
Status: Draft
Version: 0.1
Last Updated: 2026-09-16
Review Cycle: Per sprint/release

Requirement Inventory

Area Requirement Current Status
Authentication Login, refresh token, password reset and session security. PARTIAL
Authorization Role-based and farm-scoped access. PARTIAL
User management Create/list/update users and assign farm scopes. PARTIAL
Farm management Manage farms, owners and farm access. PARTIAL
Pond management Manage ponds, pond details, devices and dashboards. PARTIAL
Crop management Manage active crop cycles and prevent invalid operations on closed crops. PARTIAL
Water monitoring Capture/query water parameters and thresholds. PARTIAL
Alerts Create/list/resolve operational and telemetry alerts. PARTIAL
Farming logs Record daily operational activities. PARTIAL
Feeding Manage feeding information and session-level feed records. PARTIAL/PLANNED
AI feeding Recommend feed amounts. PLANNED
PCR/FCR Calculate production efficiency metrics. PLANNED
Tickets/incidents Create and track tickets for field issues. PARTIAL
Reports Export operational reports. PARTIAL
Scheduled reports Send weekly reports automatically. PLANNED
IoT ingestion Ingest MQTT/Telegraf data into PostgreSQL/Timescale. PARTIAL
Device commands Send commands and track acknowledgement/timeout. PARTIAL
Handbook Manage aquaculture knowledge content. PARTIAL
AI chatbot Answer questions with handbook references. PLANNED
Notifications Notify users about incidents and operations. PARTIAL
Dashboard Show role-appropriate overview metrics. PARTIAL

Acceptance Notes

  • Requirements marked PARTIAL must not be treated as production-complete without linked test evidence.
  • Requirements marked PLANNED remain valid PRD scope but should not be promised as current behavior.
  • API-level acceptance should be validated through Swagger, controller tests or integration tests.