0
Object Oriented Software Modeling and Design  CE 350 Abdel-Karim Al-Tamimi, Ph.D. [email_address] http://faculty.yu.edu.jo...
Overview <ul><li>Door Master Example </li></ul>Al-Tamimi 2011 ©
Door Master System <ul><li>Door Master System : a security system for controlling entry of employees through a secured doo...
Door Master: Description <ul><li>Employees  and  security guards  enter freely through the door when Door Master is disabl...
Door Master: Description <ul><li>  Security guards   change  the entry code by  </li></ul><ul><ul><li>pressing the change ...
Door Master: Description <ul><li>Security guards  change  the security code by: </li></ul><ul><ul><li>pressing the change ...
Door Master: Description <ul><li>Security guards  enable  Door Master by: </li></ul><ul><ul><li>pressing the enable button...
Door Master: Description <ul><li>Security guards  disable  Door Master by  </li></ul><ul><ul><li>pressing the disable butt...
Door Master: Initial Use-Case Diagram Al-Tamimi 2011 ©
Door Master: Refining Use-Cases <ul><li>These two use cases are common among the use cases and thus can be considered as a...
Door Master: Refined Use-Case Diagram Al-Tamimi 2011 ©
Door Master: Refining Use-Case Diagram <ul><li>The following abstract use case extends the use cases </li></ul><ul><ul><li...
Door Master: Refined Use-Case Diagram Al-Tamimi 2011 ©
Course Registration System <ul><li>Use Case Example </li></ul>Al-Tamimi 2011 ©
Course Registration System: Description <ul><li>At the start of each semester a student can request a course list. Informa...
Course Registration System: Description <ul><li>No course can have more than 10 students </li></ul><ul><li>No course can h...
Course Registration System: Description <ul><li>Tutors use the system to find which classes they are teaching and who are ...
CRS : Actors <ul><li>Actors: </li></ul><ul><ul><li>Student </li></ul></ul><ul><ul><li>Tutor </li></ul></ul><ul><ul><li>Bil...
CRS: Use-Cases/Goals <ul><li>Student: </li></ul><ul><ul><li>View Course List </li></ul></ul><ul><ul><li>Register for Cours...
CRS: Initial Use-Case Diagram Al-Tamimi 2011 ©
Documenting Use-Cases Informal Style <ul><li>Use case : Register Courses </li></ul><ul><li>Brief Description : The student...
Documenting Use-Cases Informal Style <ul><li>Primary flow of events(cont): </li></ul><ul><ul><li>The system validates the ...
Documenting Use-Cases Informal Style <ul><li>Alternative flow of events : </li></ul><ul><ul><li>If the student enters an i...
Documenting Use-Cases Formal Style <ul><li>We will add the following sections: </li></ul><ul><ul><li>Primary and secondary...
Documenting Use-Cases Formal Style Al-Tamimi 2011 © Use case name Register Courses Use case ID UC-100 Super use case - Act...
Documenting Use-Cases Formal Style Al-Tamimi 2011 © Flow of events <ul><li>The Student initiates the use case by entering ...
Documenting Use-Cases Formal Style Al-Tamimi 2011 © Alternative flows and exceptions 1a:  Invalid Student Details Entered ...
Documenting Use-Cases Formal Style Al-Tamimi 2011 © Alternative flows and exceptions 2 :  Student Selects to Create a Sche...
Resources <ul><li>http://www.irm.com.au/papers/How_to_use_Use_Cases.PDF </li></ul>Al-Tamimi 2011 ©
Upcoming SlideShare
Loading in...5
×

Lecture06

1,605

Published on

Published in: Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
1,605
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
88
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Transcript of "Lecture06"

  1. 1. Object Oriented Software Modeling and Design CE 350 Abdel-Karim Al-Tamimi, Ph.D. [email_address] http://faculty.yu.edu.jo/altamimi Al-Tamimi 2011 ©
  2. 2. Overview <ul><li>Door Master Example </li></ul>Al-Tamimi 2011 ©
  3. 3. Door Master System <ul><li>Door Master System : a security system for controlling entry of employees through a secured door </li></ul>Al-Tamimi 2011 ©
  4. 4. Door Master: Description <ul><li>Employees and security guards enter freely through the door when Door Master is disabled. </li></ul><ul><ul><li>( Enter Disabled Door ) </li></ul></ul><ul><li>Employees and security guards enter through the door by following these steps: </li></ul><ul><ul><li>entering the entry code on the numeric keypad, </li></ul></ul><ul><ul><li>entering through the door </li></ul></ul><ul><ul><li>closing the door behind them </li></ul></ul><ul><ul><ul><li>The alarm is raised if the door is left open too long or if the door is not shut when Door Master is enabled </li></ul></ul></ul><ul><ul><li>( Enter Secured Door ) </li></ul></ul>Al-Tamimi 2011 © Enter Secured Door Enter Disabled Door
  5. 5. Door Master: Description <ul><li>  Security guards change the entry code by </li></ul><ul><ul><li>pressing the change entry code button on the control panel </li></ul></ul><ul><ul><li>providing authorization by entering the security code on the numeric keypad </li></ul></ul><ul><ul><li>entering the new entry code on the numeric keypad </li></ul></ul><ul><ul><li>verifying the new entry code by reentering it on the numeric keypad </li></ul></ul><ul><ul><li>( Change Entry Code ) </li></ul></ul>Al-Tamimi 2011 © Change Entry Code
  6. 6. Door Master: Description <ul><li>Security guards change the security code by: </li></ul><ul><ul><li>pressing the change security code button on the control panel </li></ul></ul><ul><ul><li>providing authorization by entering the old security code on the numeric keypad </li></ul></ul><ul><ul><li>entering the new security code on the numeric keypad </li></ul></ul><ul><ul><li>verifying the new security code by reentering it on the numeric keypad. </li></ul></ul><ul><ul><li>( Change Security Code ) </li></ul></ul>Al-Tamimi 2011 © Change Security Code
  7. 7. Door Master: Description <ul><li>Security guards enable Door Master by: </li></ul><ul><ul><li>pressing the enable button on the control panel </li></ul></ul><ul><ul><li>providing authorization by entering the security code on the numeric keypad. Door master </li></ul></ul><ul><ul><li>turns off the disabled light </li></ul></ul><ul><ul><li>turns on the enabled light </li></ul></ul><ul><ul><li>locks the door </li></ul></ul><ul><ul><ul><li>The alarm is raised if the door is left open too long or if the door is not shut when Door Master is enabled </li></ul></ul></ul><ul><ul><li>( Enable Door Master ) </li></ul></ul>Al-Tamimi 2011 © Enable Door Master
  8. 8. Door Master: Description <ul><li>Security guards disable Door Master by </li></ul><ul><ul><li>pressing the disable button on the control panel </li></ul></ul><ul><ul><li>providing authorization by entering the security code on the numeric keypad </li></ul></ul><ul><ul><li>Door master then </li></ul></ul><ul><ul><ul><li>turns off the enabled light </li></ul></ul></ul><ul><ul><ul><li>turns on the disabled light </li></ul></ul></ul><ul><ul><ul><li>unlocks the door </li></ul></ul></ul><ul><ul><li>( Disable Door Master ) </li></ul></ul>Al-Tamimi 2011 © Disable Door Master
  9. 9. Door Master: Initial Use-Case Diagram Al-Tamimi 2011 ©
  10. 10. Door Master: Refining Use-Cases <ul><li>These two use cases are common among the use cases and thus can be considered as abstract include use-cases </li></ul><ul><ul><li>Employees and security guards enter the entry code by pressing five keys on the numeric keypad followed by the enter key. Door master beeps after each key and verifies the entry code. ( Enter Entry Code ) common in ( Enter Secure Door, Change Entry Code ) </li></ul></ul><ul><ul><li>Employees and security guards enter the entry code by pressing seven keys on the numeric keypad followed by the enter key. Door master beeps after each key and verifies the entry code . ( Enter Security Code ) common in ( Change Entry Code, Change Security Code, Enable Door Master, Disable Door Master ) </li></ul></ul>Al-Tamimi 2011 © Enter Entry Code Enter Security Code <<include>> <<include>>
  11. 11. Door Master: Refined Use-Case Diagram Al-Tamimi 2011 ©
  12. 12. Door Master: Refining Use-Case Diagram <ul><li>The following abstract use case extends the use cases </li></ul><ul><ul><li>The alarm is raised if the door is left open too long or if the door is not shut when Door Master is enabled. The security guards disable the alarm by entering the security code . </li></ul></ul><ul><ul><li>( Raise Alarm ) extends ( Enable Door Master )  and ( Enter Secured Door )   </li></ul></ul>Al-Tamimi 2011 © Raise Alarm <<Extend>>
  13. 13. Door Master: Refined Use-Case Diagram Al-Tamimi 2011 ©
  14. 14. Course Registration System <ul><li>Use Case Example </li></ul>Al-Tamimi 2011 ©
  15. 15. Course Registration System: Description <ul><li>At the start of each semester a student can request a course list. Information about a course is provided, such as the tutor (instructor), department and pre-requisites. </li></ul><ul><li>The new system will allow the students to create a schedule, then select four courses. </li></ul><ul><li>Each student can choose two other courses in case their first choices become full or cancelled </li></ul>Al-Tamimi 2011 ©
  16. 16. Course Registration System: Description <ul><li>No course can have more than 10 students </li></ul><ul><li>No course can have less than 3 students or it will be cancelled </li></ul><ul><li>These functionalities will be available to other users of the system </li></ul><ul><li>When registration is complete, the registration system sends a message to the billing system to send out a bill to the student </li></ul>Al-Tamimi 2011 ©
  17. 17. Course Registration System: Description <ul><li>Tutors use the system to find which classes they are teaching and who are the students in the class </li></ul><ul><li>The registrar will administer the system </li></ul><ul><li>For a period of time at the beginning of the semester, the students can change their schedule. Students must be allowed to access the system during the this time to add or delete courses </li></ul>Al-Tamimi 2011 ©
  18. 18. CRS : Actors <ul><li>Actors: </li></ul><ul><ul><li>Student </li></ul></ul><ul><ul><li>Tutor </li></ul></ul><ul><ul><li>Billing System </li></ul></ul><ul><ul><li>Registrar </li></ul></ul>Al-Tamimi 2011 ©
  19. 19. CRS: Use-Cases/Goals <ul><li>Student: </li></ul><ul><ul><li>View Course List </li></ul></ul><ul><ul><li>Register for Courses and pay the semester bill </li></ul></ul><ul><li>Tutor </li></ul><ul><ul><li>View Teaching Courses </li></ul></ul><ul><li>Registrar </li></ul><ul><ul><li>Maintain course information </li></ul></ul><ul><ul><li>Maintain student information </li></ul></ul><ul><ul><li>Maintain tutor information </li></ul></ul><ul><ul><li>Maintain curriculum </li></ul></ul><ul><ul><li>Generates course lists </li></ul></ul>Al-Tamimi 2011 ©
  20. 20. CRS: Initial Use-Case Diagram Al-Tamimi 2011 ©
  21. 21. Documenting Use-Cases Informal Style <ul><li>Use case : Register Courses </li></ul><ul><li>Brief Description : The student initiates the use case to create, read, update or delete a course for the coming semester </li></ul><ul><li>Primary flow of events : </li></ul><ul><ul><li>The student initiates the use case by entering a student number </li></ul></ul>Al-Tamimi 2011 ©
  22. 22. Documenting Use-Cases Informal Style <ul><li>Primary flow of events(cont): </li></ul><ul><ul><li>The system validates the student number and prompts the student for the preferred activity </li></ul></ul><ul><ul><ul><li>Create a schedule </li></ul></ul></ul><ul><ul><ul><li>Review the schedule </li></ul></ul></ul><ul><ul><ul><li>Change the schedule by adding or deleting a course </li></ul></ul></ul><ul><ul><li>The student indicates when finished </li></ul></ul><ul><ul><li>A schedule is printed </li></ul></ul><ul><ul><li>The system sends details to the Billing System </li></ul></ul>Al-Tamimi 2011 ©
  23. 23. Documenting Use-Cases Informal Style <ul><li>Alternative flow of events : </li></ul><ul><ul><li>If the student enters an invalid number, the student is denied access with an error message </li></ul></ul><ul><ul><li>If a schedule already exists and a new one is created, the student will be informed and asked for another option </li></ul></ul>Al-Tamimi 2011 ©
  24. 24. Documenting Use-Cases Formal Style <ul><li>We will add the following sections: </li></ul><ul><ul><li>Primary and secondary actors </li></ul></ul><ul><ul><li>Pre-conditions </li></ul></ul><ul><ul><li>Minimum guarantees </li></ul></ul><ul><ul><li>Success guarantees/Post-Conditions </li></ul></ul>Al-Tamimi 2011 ©
  25. 25. Documenting Use-Cases Formal Style Al-Tamimi 2011 © Use case name Register Courses Use case ID UC-100 Super use case - Actor(s) Primary Actor(s): Student Secondary Actor(s): Billing System Brief description The student initiates the use case to create, read, update or delete a course for the coming semester Preconditions Registrations for the Semester are open to Students. Post-conditions A Schedule has been created/updated for a Student.
  26. 26. Documenting Use-Cases Formal Style Al-Tamimi 2011 © Flow of events <ul><li>The Student initiates the use case by entering a student number and password </li></ul><ul><li>The System prompts the student for one of the following options: </li></ul><ul><li>• Create a schedule </li></ul><ul><li>• Review a schedule </li></ul><ul><li>• Change a schedule (to add or delete a course offering) </li></ul><ul><li>3. The Student selects an option, completes the task and indicates when finished </li></ul><ul><li>4. The System saves any changes made, sends billing details to the Billing System and prints the schedule </li></ul><ul><li>5. The use case ends </li></ul>
  27. 27. Documenting Use-Cases Formal Style Al-Tamimi 2011 © Alternative flows and exceptions 1a: Invalid Student Details Entered 1. The System denies access and displays an error message 2. The use case resumes at step 1 (of Primary flow)  Continued on next slide Priority High Non-behavioral requirements The system should be able to handle at least 10,000 students concurrently Assumptions Issues Refer to UI Specification xxx for the user interface associated with this use case Source User Interview Memo 21, 8/9/01
  28. 28. Documenting Use-Cases Formal Style Al-Tamimi 2011 © Alternative flows and exceptions 2 : Student Selects to Create a Schedule 1. The System checks that the Student does not already have a Schedule for the upcoming semester. 2. The Student selects 4 primary course offerings, 2 alternative course offerings and submits their selections. 3. The System checks that the prerequisites are satisfied and adds the Student to the course offerings. 4. The System generates charges associated with the selections made. 5. The use case resumes at step 4 (of Primary flow). 3 : Student has an existing Schedule IRM Training - White Paper 1. The System displays an error stating the Student already has an existing Schedule and cannot create a new one. 2. The use case resumes at step 2 (of Primary flow).
  29. 29. Resources <ul><li>http://www.irm.com.au/papers/How_to_use_Use_Cases.PDF </li></ul>Al-Tamimi 2011 ©
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×