상황
A university and multiple host organizations manage internships where interns log attendance, mentors approve records, and academic supervisors evaluate final reports.
이 도면에 담긴 내용
그 이면의 의사결정을 읽어 보세요.
01
Model shared user identity with an abstract User and a Role enumeration to keep cross-organization roles explicit.
02
Separate InternshipPlacement, AttendanceRecord, and EvaluationReport as distinct aggregates linked by association rather than inheritance.
03
Use composition from EvaluationReport to EvaluationCriterion because criteria exist only within a report.
Reuse for any internship or work-integrated learning platform that must track placement, daily attendance, approvals, and multi-role evaluations across organizations.