12.18 (4) The following is a list of candidate associations and generalizations for the scoring system.
Prepare a list of associations and generalizations that should be eliminated or renamed for any
of the reasons given in this chapter. Give a reason for each elimination or renaming. If there is
more than one reason, give the main one.
â– scheduling software that supports the following functions
the scheduler runs on a network that many users share
user may have a schedule
â– a schedule contains multiple entries
entries pertain to a single schedule
a meeting entry may appear in many schedules
â– meetings and appointments both occur within a single day and have a start time and end time
tasks and holidays may extend over several days and just have a start date and end date.
12.19 (5) Construct a class model for the scheduling software.
Exercises 12.20-12.23 are related. Do the exercises in sequence. The following provides requirements
for meetings and extends the scheduling software from Exercises 12.16-12.19.
The scheduling software facilitates meetings. When a user (the chairperson) arranges a meeting,
the software places a meeting entry in the schedule of each attendee. The chairperson uses the sched-
uler to reserve a room for the meeting, to identify the attendees, and to find time on their schedules
when everyone is available. The chairperson can indicate whether the attendance for each attendee is
required or optional. The system tracks the acceptance status for each attendee whether an attendee
has accepted or declined.
The scheduler manages meeting notices. When a meeting is set up, the scheduler sends invitations
to all attendees, who are able to view meeting information. Each invitee can accept or refuse as well
as possibly cancel later on. The system also manages notices in case the meeting is rescheduled or can-
celled.
12.20 (3) The following is a list of candidate classes. Prepare a list of classes that should be eliminated
for any of the reasons given in this chapter. Give a reason for each elimination. If there is more
than one reason, give the main one.
scheduling software, meeting, user, chairperson, software, meeting entry, schedule, attend-
ee, scheduler, room, time, everyone, attendance, acceptance status, meeting notice, invita-
tion, meeting information, invitee, notice.
12.21 (3) Prepare a data dictionary for proper classes from the previous exercise.
12.22 (4) The following is a list of candidate associations and generalizations. Prepare a list of asso-
ciations and generalizations that should be eliminated or renamed for any of the reasons given
in this chapter. Give a reason for each elimination or renaming. If there is more than one reason,
give the main one.
scheduling software facilitates meetings
Exercises
user (the chairperson) arranges a meeting
software places a meeting entry in the schedule of each attendee
215
â– chairperson uses the scheduler to reserve a room for the meeting, to identify the attendees,
and to find time on their schedules when everyone is available
â– chairperson can indicate whether the attendance for each attendee is required or optional
system tracks the acceptance status for each attendee-whether an attendee has accepted or
declined
scheduler manages meeting notices
scheduler sends invitations to all attendees, who are able to view meeting information
â– system also manages notices in case the meeting is rescheduled or cancelled.
12.23 (7) Construct a class model for the extension to the scheduling software. Your answer should
resolve a problem from Exercise 12.19. In the class model for our answer to Exercise 12.19, we
cannot tell which user owns an entry. (Hint: You should reconcile the chairperson and attendee
associations from the extended requirements with the association between Schedule and Entry
from the Exercise 12.16-12.19 requirements.)