In this project, there exists 4 diffrent entities with diffrent attributes:
Entities:
- Student: StudentID (Primary Key), username, password(sha), email
- Project: ProjectID (Primary Key), Title, Description(optional), Deadline (Date), PrivacySetting (Public, Private), and CreatorID (Foreign Key referencing Student)
- Team: TeamID (Primary Key), ProjectID (Foreign Key referencing Project), MemberID (Foreign Key referencing Student)
- Task: TaskID (Primary Key), ProjectID (Foreign Key referencing Project), Title, Description (optional), Status (Incomplete, Complete), AssignedTo (Foreign Key referencing Student)
Relationships:
- One Student can create multiple Projects.
- One Project can have multiple Teams.
- One Student can be a member of multiple Teams.
- One Project can have multiple Tasks.
- One Task is associated with one Project and can be assigned to one Student.