Academic Assignment
Purpose
Academic Assignment defines how academic resources are configured and assigned within a School for a specific Academic Year.
It provides the operational layer between:
- Academic Year
- Class
- Section
- Subject
- Teachers
Academic Assignment consists of:
- Class Subject
- Section Teacher Assignment
- Subject Teacher Assignment
Class Subject
Purpose
A Class Subject defines which Subjects are offered to a Class during a specific Academic Year.
Examples:
Academic Year: 2026-2027
Grade 5
- English
- Mathematics
- Science
- Social Studies
Class Subject establishes the curriculum available to a Class.
Business Context
Subjects are master data.
Classes are master data.
The Class Subject entity establishes which Subjects are taught for a Class in a particular Academic Year.
This allows curriculum evolution without modifying Subject definitions.
Examples:
2025-2026
Grade 5
- English
- Mathematics
- Science
2027-2028
Grade 5
- English
- Mathematics
- Science
- Artificial Intelligence
Relationships
Class Subject to Academic Year
- Each Class Subject belongs to exactly one Academic Year.
- An Academic Year may contain multiple Class Subjects.
Class Subject to Class
- Each Class Subject belongs to exactly one Class.
- A Class may contain multiple Class Subjects.
Class Subject to Subject
- Each Class Subject belongs to exactly one Subject.
- A Subject may be associated with multiple Classes.
Key Design Decisions
Academic-Year Scoped
Class Subject definitions are Academic-Year specific.
Curriculum may change between Academic Years.
Reusable Subject Catalog
Subjects remain master data.
Curriculum changes are managed through Class Subject assignments.
Attributes
Identity
- ClassSubjectId
- AcademicYearId
- ClassId
- SubjectId
Ordering
- DisplayOrder
Status
Possible values include:
- Active
- Archived
Audit
- CreatedAt
- CreatedBy
- UpdatedAt
- UpdatedBy
Constraints
Curriculum Uniqueness
The combination of:
- AcademicYear
- Class
- Subject
must be unique.
Section Teacher Assignment
Purpose
A Section Teacher Assignment defines the Homeroom Teacher responsible for a Section.
Examples:
2026-2027
Grade 5A
Homeroom Teacher:
- John Doe
Business Context
Schools commonly assign a primary teacher to a Section.
The teacher is responsible for:
- Student welfare
- Parent communication
- Section administration
- Academic coordination
Teacher assignments may change over time.
Assignments should therefore be modeled separately from Sections.
Relationships
Section Teacher Assignment to Academic Year
- Each Assignment belongs to exactly one Academic Year.
Section Teacher Assignment to Section
- Each Assignment belongs to exactly one Section.
Section Teacher Assignment to User
- Each Assignment belongs to exactly one Teacher User.
Key Design Decisions
Academic-Year Scoped
Teacher assignments are Academic-Year specific.
Homeroom Teacher Support
The assignment identifies the primary teacher responsible for a Section.
Teacher Change History
Assignments support effective date tracking.
Schools may change teachers during an Academic Year.
One Active Homeroom Teacher
A Section may have only one active Homeroom Teacher at a time.
Attributes
Identity
- AssignmentId
- AcademicYearId
- SectionId
- TeacherUserId
Assignment
- EffectiveFrom
- EffectiveTo
Status
Possible values include:
- Active
- Archived
Audit
- CreatedAt
- CreatedBy
- UpdatedAt
- UpdatedBy
Constraints
Active Homeroom Teacher
Only one active Homeroom Teacher may exist for a Section at a given time.
Subject Teacher Assignment
Purpose
A Subject Teacher Assignment defines which Teacher teaches a Subject for a specific Section.
Examples:
Grade 5A
- Mathematics → Teacher A
- English → Teacher B
- Science → Teacher C
Business Context
Different Sections may have different Subject Teachers.
Examples:
Grade 5A
- Mathematics → Priya
Grade 5B
- Mathematics → Rahul
This requires assignment at the Section level.
Relationships
Subject Teacher Assignment to Academic Year
- Each Assignment belongs to exactly one Academic Year.
Subject Teacher Assignment to Class
- Each Assignment belongs to exactly one Class.
Subject Teacher Assignment to Section
- Each Assignment belongs to exactly one Section.
Subject Teacher Assignment to Subject
- Each Assignment belongs to exactly one Subject.
Subject Teacher Assignment to User
- Each Assignment belongs to exactly one Teacher User.
Key Design Decisions
Academic-Year Scoped
Assignments belong to an Academic Year.
Section-Level Granularity
Subject teaching assignments occur at the Section level.
This provides maximum flexibility.
Historical Tracking
Assignments support effective date tracking to retain teaching history.
Attributes
Identity
- AssignmentId
- AcademicYearId
- ClassId
- SectionId
- SubjectId
- TeacherUserId
Assignment
- EffectiveFrom
- EffectiveTo
Status
Possible values include:
- Active
- Archived
Audit
- CreatedAt
- CreatedBy
- UpdatedAt
- UpdatedBy
Constraints
Subject Teacher Uniqueness
Only one active teacher may be assigned to a Subject within a Section at a given time.
Valid:
Grade 5A
- Mathematics → Teacher A
- English → Teacher B
Invalid:
Grade 5A
- Mathematics → Teacher A
- Mathematics → Teacher B
Both active simultaneously.
Exclusions
The following information does not belong directly to Academic Assignment entities:
- Student Personal Information
- Student Enrollment Information
- Attendance Records
- Assessment Records
- Fee Records
These belong to their respective domain entities.
Future Considerations
The following capabilities may be introduced later:
- Team Teaching
- Co-Teachers
- Subject Coordinators
- Department Heads
- Automatic Timetable Generation
- Workload Management
- Teacher Substitution Management
These capabilities should not require redesign of the Academic Assignment model.
Summary
Core decisions:
- Academic Assignment defines operational academic setup.
- Class Subject controls curriculum for a Class.
- Section Teacher Assignment controls Homeroom Teachers.
- Subject Teacher Assignment controls teaching assignments.
- All assignments are Academic-Year scoped.
- Subject assignments occur at Section level.
- Historical assignment tracking is supported.
- Only one active Homeroom Teacher may exist per Section.
- Only one active Subject Teacher may exist per Subject per Section.