diff options
author | Jonas Smedegaard <dr@jones.dk> | 2025-03-01 16:24:37 +0100 |
---|---|---|
committer | Jonas Smedegaard <dr@jones.dk> | 2025-03-01 16:24:37 +0100 |
commit | 6521292fd4b034272a6e061b7e40bec627840e6a (patch) | |
tree | 6504129b72680d5ba2d813edc194ef068afdf1eb /classes.puml | |
parent | 533c9afa8f47fae59ef014b9c60f3318a487243c (diff) |
update UML diagram
Diffstat (limited to 'classes.puml')
-rw-r--r-- | classes.puml | 74 |
1 files changed, 64 insertions, 10 deletions
diff --git a/classes.puml b/classes.puml index 9ce32b6..781bf21 100644 --- a/classes.puml +++ b/classes.puml @@ -5,34 +5,88 @@ abstract class Person { abstract class Employee extends Person { +ssn + +email } class Tap extends Employee { } -enum VipRole { - DEAN - RESEARCHER - RESEARCH_ASSISTANT +class Vip extends Employee { } -class Vip extends Employee { - +VipRole role +class Dean extends Vip { +} + +class ResearchAssociate extends Vip { + +field +} + +class Supervisor extends ResearchAssociate { +} + +class Lecturer extends ResearchAssociate { } class Student extends Person { } abstract class Org { - +name + +orgName } -class Institute extends Org { +interface Place { + +address +} + +class University implements Place +class University extends Org { +} + +class Faculty extends Org { } +Faculty -* University +Faculty "1" *- Dean -class Faculty extends Org, Institute { +class Institute implements Place +class Institute extends Org { +address } +Institute -* Faculty +Intitute *- ResearchAssociate + +abstract Project { + +name + +dateBegin + +dateEnd +} + +class ProjectHours { +} +ProjectHours "1" *-- Project +ProjectHours o-- ResearchAssociate + +interface ProvidesEcts { + +ects +} + +class Course implements ProvidesEcts +class Course extends Project { + +id + +name + +hoursWeekly +} +Course -- Lecturer -VipRole - Vip +class StudentProject implements ProvidesEcts +class StudentProject extends Project { +} +StudentProject --o Vip +StudentProject -- Supervisor + +class Programme { + addActivity() +} +Programme o- Course +Programme o- StudentProject +Programme *- Student @enduml |