You are on page 1of 3

CS3716 Fall 2012 Example of a Fully Dressed Use Case

Enroll on a Course
Primary Actor: Student

Stakeholders and Interests:

▪ Student: wants to enrol for a course and for no eligibility problems to later arise,
wants proof of enrolment, wants the process to be clear and simple.
▪ School Office Staff: wants only eligible students to enrol for courses, want
accurate records of which students are enrolled on which courses, want to know
how many students are registered to each course.
▪ Lecturer: wants accurate lists of students enrolled for the courses he or she will
teach.
▪ MUN: wants system to accurately record student enrolment on courses and for
eligibility to be correctly applied to satisfy student ('customer') interests.

Preconditions:

▪ Student is identified and authenticated by system.

Success Guarantee (Postconditions):

▪ Student is aware of enrolment on chosen course. List of students enrolled to


course is updated. Student has proof of enrolment.

Main Success Scenario:

1. The user requests a list of courses currently available for enrolment. [Alt1: No
courses available]
2. The system retrieves the list of courses available and displays the list to the user.
3. The system provides the user with the opportunity to select a course or to exit the
use case [Use Case Ends].
4. The user selects a course for which he or she wants to enroll.
5. The system retrieves the details for the chosen course, including the course outline,
timetable and eligibility requirements and displays the details to the user.
6. The user confirms that he or she wants to enroll for the course. [Alt2: User declines
to enroll]
7. The system checks that the user has taken and passed the pre-requisite courses for
the chosen course. [Alt3: User is not eligible to enroll due to missing pre-requisites]
8. The system checks that the user is not already enrolled on a course whose
timetable clashes with the chosen course. [Alt 4: User is not eligible to enroll due to
timetable clashes]
9. The system records that the user is now enrolled to the chosen course, updating the
list of students.
10. The system informs the user that enrolment has been successful, and offers the
student the opportunity to receive proof of enrolment.
11. The user elects to obtain proof of enrolment. [Alt 5: User declines proof of
enrolment]
12. The system provides the user with proof of enrolment.
13. The system provides the user with the opportunity to enroll for further courses [Alt
6: User elects to enroll for further courses] or to exit the use case [Use Case Ends].

Alternative Flows:

Alt1: No courses available


1. The system informs the user that no courses are currently available for enrolment.
Use case ends.

Alt2: User declines to enroll


1. Flow resumes at Main Success Scenario Step 13.

Alt3: User is not eligible to enrol due to missing pre-requisites


1. The system informs the user that he or she is missing pre-requisites and provides
the user with the list of missing courses.
2. Flow resumes at Main Success Scenario Step 13.

Alt 4: User is not eligible to enroll. due to timetable clashes


1. The system informs the user that he or she cannot enrol for the course due to a
timetable clash with another course, and identifies that course.
2. The system offers the user the opportunity to deregister their enrolment on the
clashing course [Extension: Deregister from a Course], or to enrol for other courses.

Alt 5: User declines proof of enrolment


1. Flow resumes at Main Success Scenario Step 13.

Alt 6: User elects to enroll for further courses


1. Flow resumes at Main Success Scenario Step 3.

Exceptions:

If at any time the system is unable to retrieve, record or provide details then the system
informs the user of the problem, attempts to record the time and nature of the failure
and the use case ends.

Special Requirements:
Colours and sizes of text fonts used must provide - or be able to provide - for the
visually impaired (e.g. colour blindness).
Confirmation of student enrolment (or reason for failure) to be provided to the user
within 30 seconds of submission.

Open Issues:
▪ do we have a full list of pre-requisites for every course?
▪ what if a course's timetable has not yet been finalised?
▪ do any courses have maximum/minimum capacity issues?

You might also like