Scenario:
You are developing a system where teachers can record and update grades of students. Teachers should also be able to distribute report cards. Here is a complete list of the requirements for the system:
- A teacher can record grades. Whenever grades are recorded, students receive an email about the new grade.
- A teacher can update grades. Whenever grades are updated, the existing grade is loaded.
- A student can submit an appeal about his or her grade, and the student must also submit a note through the system justifying the appeal.
- A teacher, a registrar, and a student can view grades.
- Students can send emails to teachers using the system.
- An online student is a kind of student, and an online student can request one-on-one online chatting session with the teacher.
- An offline student is a kind of student, and an offline student can request a face-to-face meeting with the teacher.
- A teacher can distribute report cards. Whenever a teacher distributes report cards, students receive an email about the report card.
- A registrar can put a hold on a student’s registration, and in order to do this the registrar must view the report card as well.
- When a teacher records grades and a student receives an “F” the registrar receives a notification email.
Please answer the following questions:
1. Identify the actors (i.e. name them):
2. Are any of these actors a specialized type of another more general actor? If so, identify which one(s) is the generalized actor and which is the specialized actor.
3. Identify the Use Cases (i.e. name them all):
4. Are any of the Use Cases “always” used by (an)other Use Case(s)? If so, what type of relationship is it? Identify which Use Case(s) is (are) always using (an)other Use Case(s) and which Use Case(s) is (are) always used.
5. Are any of the Use Cases “sometimes” used by (an)other Use Case? If so, what type of relationship is it? Identify which Use Case(s) is (are) “sometimes using” and which Use Case(s) is (are) “sometimes used.”
6. Use MS Visio, and draw a use-case diagram based on the requirements and your answers above (i.e., actors, Use Cases, and relationships). Be sure to use the correct notations for all actors, Use Cases, and relationships. Also be sure to label each and every actor, Use Case, and relationship.