I'm having trouble designing a data model that allows for the following:
Courses can have many assignments.
Assignments can be defined recursively. e.g. "There is reading homework every tuesday".
Users can each complete an instance of the recurrent assignment at their own time and with their own grade and their own priority.
So, focusing on the assignment aspect of these requirements I came up with the following partial ER model: (It's missing how users are related to courses, teachers, etc...):
*There's a mistake in the picture, an event is related to 0 or 1 assignment
A teacher would then create an assignment for their course, let's say: 'Hand in math lab every tuesday due for tuesday next week'.
A single assignment will be created along with all the events for each occurrence.
When a user interacts with a specific event instance of the assignment. The assignmentUser will be created with the corresponding data.
Is this a good way to model this? I'm worried about the recurrent events side of this. Maybe it would be better to only have one event per assignment and generate all assignments that fit the recurrence rule on creation?