mirror of https://github.com/dspinellis/UMLGraph
39 lines
4.7 KiB
Plaintext
39 lines
4.7 KiB
Plaintext
#!/usr/local/bin/dot
|
|
#
|
|
# Class diagram
|
|
# Generated by UMLGraph version R5_6-9-g37cd34 (http://www.umlgraph.org/)
|
|
#
|
|
|
|
digraph G {
|
|
graph [fontnames="svg"]
|
|
edge [fontname="Helvetica",fontsize=10,labelfontname="Helvetica",labelfontsize=10,color="black"];
|
|
node [fontname="Helvetica",fontcolor="black",fontsize=10,shape=plaintext];
|
|
nodesep=0.25;
|
|
ranksep=0.5;
|
|
// School
|
|
c103 [label=<<table title="School" border="0" cellborder="1" cellspacing="0" cellpadding="2" port="p"><tr><td><table border="0" cellspacing="0" cellpadding="1"><tr><td align="center" balign="center"> School </td></tr></table></td></tr><tr><td><table border="0" cellspacing="0" cellpadding="1"><tr><td align="left" balign="left"> name : Name </td></tr><tr><td align="left" balign="left"> address : String </td></tr><tr><td align="left" balign="left"> phone : Number </td></tr></table></td></tr><tr><td><table border="0" cellspacing="0" cellpadding="1"><tr><td align="left" balign="left"> addStudent() </td></tr><tr><td align="left" balign="left"> removeStudent() </td></tr><tr><td align="left" balign="left"> getStudent() </td></tr><tr><td align="left" balign="left"> getAllStudents() </td></tr><tr><td align="left" balign="left"> addDepartment() </td></tr><tr><td align="left" balign="left"> removeDepartment() </td></tr><tr><td align="left" balign="left"> getDepartment() </td></tr><tr><td align="left" balign="left"> getAllDepartments() </td></tr></table></td></tr></table>>];
|
|
// Department
|
|
c104 [label=<<table title="Department" border="0" cellborder="1" cellspacing="0" cellpadding="2" port="p"><tr><td><table border="0" cellspacing="0" cellpadding="1"><tr><td align="center" balign="center"> Department </td></tr></table></td></tr><tr><td><table border="0" cellspacing="0" cellpadding="1"><tr><td align="left" balign="left"> name : Name </td></tr></table></td></tr><tr><td><table border="0" cellspacing="0" cellpadding="1"><tr><td align="left" balign="left"> addInstructor() </td></tr><tr><td align="left" balign="left"> removeInstructor() </td></tr><tr><td align="left" balign="left"> getInstructor() </td></tr><tr><td align="left" balign="left"> getAllInstructors() </td></tr></table></td></tr></table>>];
|
|
// Student
|
|
c105 [label=<<table title="Student" border="0" cellborder="1" cellspacing="0" cellpadding="2" port="p"><tr><td><table border="0" cellspacing="0" cellpadding="1"><tr><td align="center" balign="center"> Student </td></tr></table></td></tr><tr><td><table border="0" cellspacing="0" cellpadding="1"><tr><td align="left" balign="left"> name : Name </td></tr><tr><td align="left" balign="left"> studentID : Number </td></tr></table></td></tr><tr><td><table border="0" cellspacing="0" cellpadding="1"><tr><td align="left" balign="left"> </td></tr></table></td></tr></table>>];
|
|
// Course
|
|
c106 [label=<<table title="Course" border="0" cellborder="1" cellspacing="0" cellpadding="2" port="p"><tr><td><table border="0" cellspacing="0" cellpadding="1"><tr><td align="center" balign="center"> Course </td></tr></table></td></tr><tr><td><table border="0" cellspacing="0" cellpadding="1"><tr><td align="left" balign="left"> name : Name </td></tr><tr><td align="left" balign="left"> courseID : Number </td></tr></table></td></tr><tr><td><table border="0" cellspacing="0" cellpadding="1"><tr><td align="left" balign="left"> </td></tr></table></td></tr></table>>];
|
|
// Instructor
|
|
c107 [label=<<table title="Instructor" border="0" cellborder="1" cellspacing="0" cellpadding="2" port="p"><tr><td><table border="0" cellspacing="0" cellpadding="1"><tr><td align="center" balign="center"> Instructor </td></tr></table></td></tr><tr><td><table border="0" cellspacing="0" cellpadding="1"><tr><td align="left" balign="left"> name : Name </td></tr></table></td></tr><tr><td><table border="0" cellspacing="0" cellpadding="1"><tr><td align="left" balign="left"> </td></tr></table></td></tr></table>>];
|
|
// School has Student
|
|
c103:p -> c105:p [arrowhead=none,arrowtail=ediamond,dir=back,weight=4,taillabel="1..*", label="Member", headlabel="*"];
|
|
// School composed Department
|
|
c103:p -> c104:p [arrowhead=none,arrowtail=diamond,dir=back,weight=6,taillabel="1..*", label="Has", headlabel="1..*"];
|
|
// Department assoc Course
|
|
c104:p -> c106:p [arrowhead=none,weight=2,taillabel="1..*", headlabel="1..*"];
|
|
// Department assoc Instructor
|
|
c104:p -> c107:p [arrowhead=none,weight=2,taillabel="0..*", headlabel="0..1 chairperson"];
|
|
// Department has Instructor
|
|
c104:p -> c107:p [arrowhead=none,arrowtail=ediamond,dir=back,weight=4,taillabel="1..*", label="AssignedTo", headlabel="1..*"];
|
|
// Student assoc Course
|
|
c105:p -> c106:p [arrowhead=none,weight=2,taillabel="*", label="Attends", headlabel="*"];
|
|
// Instructor assoc Course
|
|
c107:p -> c106:p [arrowhead=none,weight=2,taillabel="1..*", label="Teaches", headlabel="*"];
|
|
}
|
|
|