Phase 3 — Logical Design Assumptions¶
This section records assumptions used while finalizing Phase 3 logical design.
Assumptions¶
USER.emailis the logical unique identifier for user-level identity checks.FAMILY_MEMBERis always owned by oneUSER(user_idis mandatory).MEDICAL_HISTORYrecords are mandatory links to both a family member and a standardized health condition.HEALTH_EVENTsupports partially linked records (member_idandcondition_idare optional) to allow flexible event logging workflows.RISK_ALERTalways belongs to a valid family member and may remain unresolved (resolved_datecan beNULL).APPOINTMENTmust always reference a validUSERandCLINIC.AWARENESS_CONTENTis independent and intentionally not linked by foreign keys.- Enumerated status/risk/severity domains represent controlled business vocabularies.
Constraint Behavior Assumptions¶
ON UPDATE CASCADEis used to preserve references if key values change.- Deletion behavior varies by relationship based on ownership semantics:
- Cascading deletes for owner-owned dependent data (for example
USER->FAMILY_MEMBER). - Restrictive deletes where historical integrity should be protected (for example
HEALTH_CONDITIONreferenced by medical records). CHECKconstraints represent domain validity rules (onset_agerange and alert date ordering).
Outcome¶
These assumptions ensure that the logical schema remains consistent, implementable, and aligned with the physical MySQL implementation.