ARCHITECTURE & SRS Product Design Specification (PDS) & Technical Requirements (TRD)
🏛️ Admin Portal 📟 Gate Kiosk 📱 Parent App 👩‍🏫 Teacher App 📐 SRS Spec 🔑 Switch Persona
4-TIER EVENT-DRIVEN ARCHITECTURE

Smart Campus Student Attendance, Safety Monitoring & Parent-Teacher Communication System

Connecting Gate Security Terminals, Parent Smartphones, Teacher Handhelds, and Central Administrative Web Consoles via ASP.NET Core 9, SignalR Real-Time Event Broker, and PostgreSQL 16+ / SQLite Persistence.

1. Gate Check-In / Out Kiosk Engine (kiosk.html)
  • Symbology & Reader Integration: Code 128, QR Code, and PDF417 formats mapped to unique student IDs.
  • Dual-State Schedule Logic: Auto-selects TIME_IN (<12:00 PM) or TIME_OUT (>=12:00 PM) with manual one-tap override.
  • Instant Visual & Audio Feedback (<150ms): Full-screen Emerald Green (Recorded) or Crimson Red (Debounced / Unregistered) border + Web Audio API chimes.
  • 60-Second Anti-Bounce & Throttle: Prevents accidental double scans at both edge cache and server API.
  • Offline-First Synchronization: Local edge queue buffers scans when offline and uploads in ordered batches to POST /api/v1/attendance/ingest upon reconnection.
2. Parent & Teacher Mobile Apps (parent.html & teacher.html)
  • Sub-3-Second Push Alerts: Real-time SignalR / FCM alert banner dispatched upon gate scan.
  • Multi-Child Profile Switcher: Switch dynamically between enrolled siblings (e.g., Maria Ambia & Lucas Ambia).
  • Monthly Attendance Calendar: Color-coded Present (Green), Late (Amber), Absent (Red), and Excused (Blue).
  • Live Homeroom Roster & Manual Override: Categorizes learners into Inside Campus, Not Yet In, and Excused with 1-tap teacher manual override.
  • Emergency Headcount Mode: Crisis safety dashboard listing all learners verified inside campus grounds.
3. Excuse Note Hook & Office-Hours Messaging
  • Digital Excuse Submission: Standardized categories (MEDICAL, EMERGENCY, BEREAVEMENT, APPOINTMENT) with medical certificate upload (POST /api/v1/excuses/submit).
  • Database Approval Hook: Approving an excuse via PATCH /api/v1/excuses/{id}/review automatically updates attendance_logs.is_excused = TRUE across start_date..end_date.
  • Enrollment-Scoped 1:1 Chat: Denies unauthorized chat between unlinked parents and teachers.
  • Office Hours Safeguard: Evaluates teacher's office_hours_start and office_hours_end, silencing after-hours push alerts and sending an automated system reply.
4. Central Administrative Portal (index.html)
  • Master Data CRUD & CSV Import: Manage Students, Teachers, Classrooms, and Sections with batch CSV import.
  • Printable Barcode / QR ID Generator: Generates ready-to-print student ID cards with Code 128 visual bars and pairing codes.
  • Guardian-Student Pairing Engine: Binds guardian accounts to students via secure pairing codes.
  • DepEd Form 2 (SF2) & Exports: Monthly compliance summary, chronic tardiness flags, and 1-click CSV/Excel export.