UC-FCM-201: Bulk Screening Audit
1. Metadata
| Property | Value |
|---|---|
| ID | UC-FCM-201 |
| Actor | Field Coordinator |
| Trigger | Scheduled on-site school audit / Compliance check |
| Pre-conditions | Coordinator is within 500m of the school (GPS check); Teacher has submitted screening data |
| Post-conditions | Audit report submitted; Discrepancy report generated |
| Side Effects | Flag school for 'High Discrepancy' in the National Dashboard if variance > 5% |
2. Description
A high-integrity audit workflow designed to verify the accuracy of nutritional data (Height/Weight) reported by school teachers.
3. Success Scenario
- Site Arrival: Coordinator checks in at the school using the app's GPS-validated QR scanner.
- Sample Selection:
- System generates a random 10% sample of the student population for re-screening.
- Coordinator views the list on the mobile app.
- Execution:
- Coordinator re-measures the selected students.
- System enforces "Blind Entry": Coordinator cannot see the teacher's previous measurement while inputting the audit value.
- Visual Evidence:
- Coordinator captures 3 photos: (1) The screening equipment (2) A wide shot of the session (3) The physical logbook.
- Cross-Validation:
- Upon submission, the system performs a real-time variance check between Teacher and Coordinator data.
- If variance is within +/- 1%: Audit "Green."
- If variance exceeds 5%: Audit "Flagged."
- Reporting: Coordinator signs the digital audit form and submits the report.
4. Acceptance Criteria
- [ ] Geo-Fencing: Audits can only be submitted if the device GPS matches the school's registered coordinate.
- [ ] Image Integrity: All uploaded photos must include a translucent white-label watermark with Timestamp and GPS coordinates.
- [ ] Audit Speed: The coordinator must be able to complete a 10-student spot-check in under 20 minutes.
- [ ] Privacy Compliance: No student faces should be clearly identifiable in session photos (Auto-blur requirement).
5. Audit Logic (Variance Check)
flowchart TD
Audit[Audit Submission] --> Var{Variance Check}
Var -- "< 1%" --> Green[Result: Green]
Var -- "> 5%" --> Flag[Result: Flagged]
Var -- "> 10%" --> Rescan[Trigger Full Re-scan]