System Overview
C4 System Context, batas sistem klinis, dan arsitektur terdistribusi OrthoBreath.
docs/ARCHITECTURE.md, src/app/layout.tsxTests: tests/unit/rbacEnforcement.test.tsSystem Architecture Overview#
Arsitektur sistem OrthoBreath v1.0.0 dirancang dengan pendekatan modular multi-tier, zero-trust network perimeter, dan standar integritas data medis terdesentralisasi.
1. C4 System Context Diagram#
2. Arsitektur Terdistribusi#
Sistem terbagi ke dalam 4 tingkatan arsitektur: 1. Edge Tier: Sensor tekanan aliran nafas (ESP32) dan kamera intraoral yang berkomunikasi melalui MQTT TLS 8883 dan HTTP lokal. 2. Presentation & Application Gateway Tier (Vercel): Next.js 16 bertindak sebagai Single Page Application untuk browser sekaligus Backend-for-Frontend (BFF) yang memvalidasi sesi, otorisasi RBAC, dan sanitasi payload. 3. Machine Learning Tier (Render Docker): FastAPI mandiri yang menjalankan pipeline ekstraksi HOG dan model klasifikasi Support Vector Machine. 4. Data & Storage Tier: Google Cloud Firestore untuk penyimpanan data NoSQL terenkripsi, Firebase Auth untuk manajemen identitas, dan Cloudinary untuk media gambar intraoral.
3. Batasan Trust & Keamanan Medis#
- Zero Direct Public AI Access: Endpoint inferensi AI pada Render tidak menerima request langsung dari browser publik; seluruh request dienkapsulasi dan diotentikasi oleh Serverless API Gateway menggunakan secret internal.
- Clinic Multi-Tenancy: Data pasien dan rekam medis terisolasi secara logis berdasarkan
clinicIdpada dokumen Firestore. - Audit Immutability: Seluruh perubahan data klinis dan tindakan administratif dicatat dalam koleksi
auditLogsyang tidak dapat dimodifikasi oleh pengguna biasa.