UML class diagram conceptual schema

2k views Asked by At

I have done a UML diagram but I think I have done it wrong for the parts stated below (and shaded grey in the picture). Any help and advice is appreciate. :) Thanks. enter image description here

Rules:

  1. An office is usually occupied by only one academic staff member. The members of support staff member share the offices. An office may be also empty for a certain period of time.

  2. A faculty staff member is assigned to each student as an advisor for his or her major. Students who has more than one major are assigned a faculty advisor for each major.

  3. Every subject has at least one textbook required an up to three supplementary textbooks. For a given session in a year, an academic unit can run many subjects.

  4. Each running subject can be taught by a difference academic staff in the academic unit.

  5. For each running subject, the start date, end date, and final examination date are recorded. Students may register up to two running subjects each session.

  6. If a student fails a subject, the student may take the subject again later in another session when the subject is run again.

  7. To administer that, the final grade the students obtain for each subject is kept in a database.

2

There are 2 answers

0
io10 On

Office can be empty also , so introduce 0..1 on academic staff side of academic staff to office relationship , when it is empty no one is attached . Registration part is unnecessary because there is one to one onto mapping between subjects and registration(if final exams are not on same date ) , include that in subject only . In final grade include subject ID and student ID also , link 1 to 1

0
Gangnus On
  1. On offices. If something is only USUALLY a rule, you can't build your logic as if it is ALWAYS so. Or your SW will be unusable in the real life. So, 0..* instead of 1.

  2. You should divide subject, courses and classes. There could be several different courses organized by different lectors for the same subject. The student registers to some courses. He can even have two or more different courses of the same subject. And so on. All the stuff around courses is shown here. Of course, your structure can be more complicated, but not LESS complicated.

  3. Make Grade as an Enumeration type. And simply make an association from Subject to it, named finalGrade.

  4. Major, Student and Ac.St.MEm. are three sides of one relationship. You can do it as tertiary association or mace a class MajorAssignment and connect it to all three classes.

  5. For your rule 6 you have done nothing.

  6. Draw a diagram and we'll look at it. But better for the future set more narrow questions. One rule + how your attempts to realize it look out + part of the problem you can't manage = correct question.