class Diagrams uml diagrams-basic [for educational purpose only]

download class Diagrams uml diagrams-basic [for educational purpose only]

of 20

Transcript of class Diagrams uml diagrams-basic [for educational purpose only]

  • 8/8/2019 class Diagrams uml diagrams-basic [for educational purpose only]

    1/20

    Sheet#8Registration System

    Class Diagram + Coding

    CAP252 - Entesar Al-Mosallam

  • 8/8/2019 class Diagrams uml diagrams-basic [for educational purpose only]

    2/20

    Class Diagram

  • 8/8/2019 class Diagrams uml diagrams-basic [for educational purpose only]

    3/20

    public class website

    {

    private CourseCatalog courseCat;

    private Student student;

    private Committee committee;

    private Admin admin;

    //---------------------------

    public void CreateNewRequest( int secNum, int CourseNum)

    {

    Vector PreqList = courseCat.getPreqList(CourseNum);

    boolean pass = student.check(PreqList);

    if (pass)student.createReq(secNum);

    }

    //---------------------------

    public void updateInstName(int secNum, String name)

    {

    committee.updateInstName(secNum,name);

    }//---------------------------

    public void submitRequest()

    {

    student.submitRequest();

    }

    //---------------------------

    public void Define(int courseNum, Vectorlist)

    {

    admin.Define(courseNum,list );

    }

    //---------------------------

    public void Assign(int courseNum, int level)

    {

    admin.Assign(courseNum, level);

    }

    //---------------------------

    }

  • 8/8/2019 class Diagrams uml diagrams-basic [for educational purpose only]

    4/20

    public class Committee

    {

    private ManageSection Msec;

    public void updateInstName(int secNum, String name)

    {

    Msec.updateInstName(secNum, name);

    }

    }

  • 8/8/2019 class Diagrams uml diagrams-basic [for educational purpose only]

    5/20

    public class ManageSection

    {

    private SectionCatalog secCat;

    public void updateInstName(int secNum, String name)

    {

    secCat.updateInstName(secNum, name);

    }

    }

  • 8/8/2019 class Diagrams uml diagrams-basic [for educational purpose only]

    6/20

    public class SectionCatalog

    {

    private Vector secSpecVector;

    public void updateInstName(int secNum, String name)

    {

    SectionSpecification secSpec = findSection( secSpecVector , secNum );

    secSpec.updateName(name);

    }

    public SectionSpecification findSection(Vector secSpecVector,int

    secNum)

    {

    //This method search in the collection object (the Vector here)

    }

    }

  • 8/8/2019 class Diagrams uml diagrams-basic [for educational purpose only]

    7/20

    public class SectionSpecification

    {

    private Section sec;

    public void updateName(String name)

    {

    sec.updateName(name);

    }

    }

  • 8/8/2019 class Diagrams uml diagrams-basic [for educational purpose only]

    8/20

    public class Section

    {

    private Instructor inst;

    public void updateName(String name)

    {

    inst.updateName(name);

    }

    }

  • 8/8/2019 class Diagrams uml diagrams-basic [for educational purpose only]

    9/20

    public class Instructor

    {

    private String name;

    public void updateName(String name)

    {

    this.name = name;

    }

    }

  • 8/8/2019 class Diagrams uml diagrams-basic [for educational purpose only]

    10/20

    public class Admin

    {

    public void Define(int courseNum, Vector list

    )

    {

    ManageCourse mCourse = new ManageCourse();

    mCourse.Define(courseNum,list );

    }

    public void Assign(int courseNum, int level){

    ManageCourse mCourse = new ManageCourse();

    mCourse.Assign(courseNum, level);

    }

    }

  • 8/8/2019 class Diagrams uml diagrams-basic [for educational purpose only]

    11/20

    public class ManageCourse

    {

    private CourseCatalog courseCat;

    public void Define(int courseNum, Vector list)

    {

    courseCat.Define(courseNum,list);

    }

    public void Assign(int courseNum, int level)

    {courseCat.Assign(courseNum, level);

    }

    }

  • 8/8/2019 class Diagrams uml diagrams-basic [for educational purpose only]

    12/20

    public class CourseCatalog{

    private Vector CourseSpecVector;

    public Vector getPreqList(int courseNum)

    {

    CourseSpecification courseSpec = findCourseSpec(CourseSpecVector, courseNum);

    return courseSpec.getPreqList();}

    public void Define(int courseNum, Vector list)

    {

    CourseSpecification courseSpec = findCourseSpec(CourseSpecVector, courseNum);

    courseSpec.Define(list);

    }public void Assign(int courseNum, int level)

    {

    CourseSpecification courseSpec = findCourseSpec(CourseSpecVector, courseNum);

    courseSpec.Assign(level);

    }

    public CourseSpecification findCourseSpec( Vector

    CourseSpecVector,int courseNum)

    {

    //this method search in the collection object (vector here)

    }

    //-----------------------

    }

  • 8/8/2019 class Diagrams uml diagrams-basic [for educational purpose only]

    13/20

    public class CourseSpecification

    {

    private Course course;

    public Vector getPreqList()

    {

    return course.getPreqList();

    }

    public void Define(Vector list){

    course.Define(list);

    }

    public void Assign(int level)

    {

    course.Assign(level);

    }

    }

  • 8/8/2019 class Diagrams uml diagrams-basic [for educational purpose only]

    14/20

    public class Course

    {

    protected int level;protected Vector preqList;

    public Vector getPreqList()

    {

    return preqList;

    }

    public void Define(Vector list){

    preqList= list;

    }

    public void Assign(int level)

    {

    this.level= level;

    }

    }

  • 8/8/2019 class Diagrams uml diagrams-basic [for educational purpose only]

    15/20

    public class FinishedCourse extends Course

    {

    private double grade;}

  • 8/8/2019 class Diagrams uml diagrams-basic [for educational purpose only]

    16/20

    public class Student

    {

    private Transcipt transcipt;

    private Vector requests;

    private Advisor advisor;

    public boolean check( Vector preqList)

    {

    return transcipt.check(preqList);

    }

    public void createReq(int secNum)

    {

    Request req = new Request();

    req.setSecNum(secNum);

    req.setStatus("pending");

    requests.addElement(req);

    }

    public void submitRequest()

    {

    Email email = new Email(requests, advisor.getEmailAddress());

    email.send();

    }

    }

  • 8/8/2019 class Diagrams uml diagrams-basic [for educational purpose only]

    17/20

    public class Transcipt

    {

    private Vector finishedCoursesVector;

    public boolean check( Vector preqList)

    {

    if (finishedCoursesVector.contains(preqList))

    return true;

    else

    return false;

    }

    }

  • 8/8/2019 class Diagrams uml diagrams-basic [for educational purpose only]

    18/20

    public class Request

    {

    private Date date;private int requestNum;

    private String status;

    private int secNum;

    public void setSecNum(int s)

    {

    secNum = s;

    }

    public void setStatus(String s)

    {

    status = s;

    }

    }

  • 8/8/2019 class Diagrams uml diagrams-basic [for educational purpose only]

    19/20

    public class Advisor

    {

    private String emailAddress;

    String getEmailAddress()

    {

    return emailAddress;

    }

    }

  • 8/8/2019 class Diagrams uml diagrams-basic [for educational purpose only]

    20/20

    public class Email

    {

    private Object emailBody;

    private String emailAddress;

    public Email( Vector requests, String emailAddress)

    {

    emailBody = requests;

    this.emailAddress = emailAddress;

    }

    public void send()

    {

    }

    }