Skip to content

Domain Model

Sophie Deng edited this page Feb 7, 2019 · 23 revisions

Domain Model

Program manager and term instructor view point

Classes related to our viewpoint:

  • User
  • UserRole (Player-Role pattern), Abstract Class
  • Program Manager
  • Term Instructor
  • Course

Classes needed for the functioning of our system:

  • Student
  • CoopPosition
  • RequiredDocument, Abstract Class

Main Decisions

UserRole class: We decided to add a class for the role of the user. Derived from the player-role pattern, it allows one user to change roles. It also allows the term instructor for a specific coopPosition to change.

No Grade: We decided that each term instructor can grade a document pass or fail. If all documents are passed, the coop position itself will be completed. Otherwise, it will be failed.


Main Functions:

  • The program manager should have a view student function that allows him to look at a student's record. He should also have a change status function to be able to pass or fail a student anytime. He should be able to have a view coop function to see all the coops and get their information, like which courses was useful for this position.
  • The course instructor should have a change status function to be able to change the status of the documents submitted. He should also have a view document function to see the documents submitted by a student.