Files
slp-modular-cms/aidlc-docs/features/slp-modular-cms-api/construction/plans/availability-module-functional-design-plan.md
T

32 lines
1.8 KiB
Markdown

# Functional Design Plan — Unit 03: Availability Module
Dit plan beschrijft de stappen voor het functioneel ontwerpen van de Availability Module (Unit 03).
## Functional Design Stappen
- [x] Definiëren van de `StubAvailabilityService` gedrag (altijd beschikbaar in MVP).
- [x] Ontwerpen van de `AvailabilityController` voor publieke status check.
- [x] Uitwerken van de "Remote Shutdown" interface (placeholder).
- [x] Opstellen van de business rules voor beschikbaarheids-gebaseerde toegang.
## Vragen voor Functional Design (Unit 03)
### 1. Beschikbaarheidsstatus
**Vraag 1.1**: Welke informatie moet het publieke `GET /api/availability/status` endpoint teruggeven?
- A) **Simpel**: Alleen een boolean `isAvailable`.
- B) **Gedetailleerd**: Een status string (`Available`, `Maintenance`, `Degraded`) en een timestamp.
- C) **Extended**: Inclusief versie informatie van de API en geladen modules.
### 2. Remote Shutdown Mechanisme
**Vraag 2.1**: Voor de toekomstige "remote shutdown" functionaliteit (FR-05): hoe moet dit mechanisme in de architectuur verankerd worden?
- A) **Middleware**: Een globale middleware die de `IAvailabilityService` checkt bij elk request en 503 Service Unavailable retourneert indien niet beschikbaar.
- B) **Filter**: Een globaal Action Filter voor controllers.
- C) **Manual Check**: Modules checken zelf de status indien nodig (niet aanbevolen voor consistentie).
### 3. Bypass voor Beheerders
**Vraag 3.1**: Mogen Beheerders en Owners de API nog wel gebruiken als de status op "Niet Beschikbaar" staat (bijv. voor onderhoud)?
- A) Ja, Beheerders/Owners moeten altijd toegang hebben om het systeem te kunnen herstellen.
- B) Nee, als het systeem uit staat, staat het voor iedereen uit.
## Volgende Stappen
Na beantwoording van deze vragen worden de artifacts gegenereerd in `aidlc-docs/construction/availability-module/functional-design/`.