#!/usr/local/bin/dot
#
# Class diagram 
# Generated by UMLGraph version 5.3 (http://www.umlgraph.org/)
#

digraph G {
	edge [fontname="Helvetica",fontsize=10,labelfontname="Helvetica",labelfontsize=10];
	node [fontname="Helvetica",fontsize=10,shape=plaintext];
	nodesep=0.25;
	ranksep=0.5;
	// School
	c97 [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>>, URL="null", fontname="Helvetica", fontcolor="black", fontsize=10.0];
	// Department
	c98 [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>>, URL="null", fontname="Helvetica", fontcolor="black", fontsize=10.0];
	// Student
	c99 [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>>, URL="null", fontname="Helvetica", fontcolor="black", fontsize=10.0];
	// Course
	c100 [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>>, URL="null", fontname="Helvetica", fontcolor="black", fontsize=10.0];
	// Instructor
	c101 [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>>, URL="null", fontname="Helvetica", fontcolor="black", fontsize=10.0];
	// School HAS Student
	c97:p -> c99:p [taillabel="1..*", label="Member", headlabel="*", fontname="Helvetica", fontcolor="black", fontsize=10.0, color="black", arrowhead=none, arrowtail=ediamond, dir=both];
	// School COMPOSED Department
	c97:p -> c98:p [taillabel="1..*", label="Has", headlabel="1..*", fontname="Helvetica", fontcolor="black", fontsize=10.0, color="black", arrowhead=none, arrowtail=diamond, dir=both];
	// Department ASSOC Course
	c98:p -> c100:p [taillabel="1..*", label="", headlabel="1..*", fontname="Helvetica", fontcolor="black", fontsize=10.0, color="black", arrowhead=none];
	// Department ASSOC Instructor
	c98:p -> c101:p [taillabel="0..*", label="", headlabel="0..1 chairperson", fontname="Helvetica", fontcolor="black", fontsize=10.0, color="black", arrowhead=none];
	// Department HAS Instructor
	c98:p -> c101:p [taillabel="1..*", label="AssignedTo", headlabel="1..*", fontname="Helvetica", fontcolor="black", fontsize=10.0, color="black", arrowhead=none, arrowtail=ediamond, dir=both];
	// Student ASSOC Course
	c99:p -> c100:p [taillabel="*", label="Attends", headlabel="*", fontname="Helvetica", fontcolor="black", fontsize=10.0, color="black", arrowhead=none];
	// Instructor ASSOC Course
	c101:p -> c100:p [taillabel="1..*", label="Teaches", headlabel="*", fontname="Helvetica", fontcolor="black", fontsize=10.0, color="black", arrowhead=none];
}

