Sumber dari http people cs missouri edusk ubicm332Usecases
Sumber dari : http: //people. cs. missouri. edu/~sk ubicm/332/Use_cases. ppt Computer Science Dept. Fall 2003
Use cases • Use-cases are a scenario based technique in the UML which identify the actors in an interaction and which describe the interaction itself • A set of use cases should describe all possible interactions with the system • Sequence diagrams may be used to add detail to use-cases by showing the sequence of event processing in the system Each use case represents a set of scenarios An actor is something outside of the system to be developed. Computer Science Dept. Fall 2003
Lending use-case Computer Science Dept. Fall 2003
Library use-cases Computer Science Dept. Fall 2003
Sequence diagram shows detail: Catalogue management Computer Science Dept. Fall 2003
Another Library Use Case Diagram A computerized library system for a university keeps track of all books and periodicals in the library and their check-out status. Checkout and return are automated through a bar code reader (an external device). The library system also interfaces with an external relational database which stores information about the library users (students, faculty, and staff), including whether they have any library items checked out. . Library users can access the catalog and recall books and periodicals. Library employees have the same access as well as additional capabilities (e. g. , listing the status of an item). (Note: the library catalog is part of the library computer system so it is not shown as an actor. ) Computer Science Dept. Fall 2003
Use Case for Employee Login 1. Employee initiates use case by entering user name 2. System prompts for password 3. If password is valid, employee is logged on and now has access to employee commands Starting and Ending Conditions? Exceptions? e. g. , cannot find the employee login Computer Science Dept. Fall 2003
Use Case for Check book availability 1. 2. 3. 4. 5. User/Employee initiates use case by selecting the check book availability option System prompts for choice of search by title, author, or call number User makes selection and enters title, author or call number System performs search through the library catalog database If a match is found, system displays item status (not checked out, checked out and due date, overdue) Starting and Ending Conditions? Exceptions? Computer Science Dept. Fall 2003
Use Case Associations • Use case association = relationship between use cases • Important types: – Extends • A use case extends another use case – Include • A use case uses another use case (“functional decomposition”) – Generalization • An abstract use case has different specializations Computer Science Dept. Fall 2003
<<Include>>: Functional Decomposition • Problem: – A function in the original problem statement is too complex to be solvable immediately • Solution: – Describe the function as the aggregation of a set of simpler functions. The associated use case is decomposed into smaller use cases Create. Document <<include>> Scan Computer Science Dept. Fall 2003 OCR Check
<<Include>>: Reuse of Existing Functionality • Problem: – There already existing functions. How can we reuse them? • Solution: – The include association from Use Case A to Use Case B indicates that an instance of A performs all the behavior described in B (“A delegates to B”) • Example: – The use case “View. Map” describes behavior that can be used by the use case “Open. Incident” (“View. Map” is factored out) • Note: The base cannot exist alone. It is always called with the supplier use case <<include>> Open. Incident Base Use Case View. Map <<include>> Allocate. Resources Computer Science Dept. Fall 2003 Supplier Use Case
Home Automation example – factor out common functionality Computer Science Dept. Fall 2003
Another Home Automation example – factor out common functionality Computer Science Dept. Fall 2003
<<Extend>> Association for Use Cases • Problem: – The functionality in the original problem statement needs to be extended. • Solution: – An extend association from Use Case B to Use Case A indicates that B is an extension of A. • Example: – The use case “Report. Emergency” is complete by itself , but can be extended by the use case “Help” for a specific scenario in which the user requires help • Note: In an extend association, the base use can be executed without the use case extension Base Use Case Field. Officer Computer Science Dept. Fall 2003 B Help A Report. Emergency <<extend>>
Home Automation example Computer Science Dept. Fall 2003
Generalization association in use cases • Problem: – You have common behavior among use cases and want to factor this out. • Solution: – The generalization association among use cases factors out common behavior. The child use cases inherit the behavior and meaning of the parent use case and add or override some behavior. • Example: – Consider the use case “Validate. User”, responsible for verifying the identity of the user. The customer might require two realizations: “Check. Password” and “Check. Fingerprint” Check. Password Parent Case Validate. User Computer Science Dept. Fall 2003 Check. Fingerprint Child Use Case
Example using <extend> Computer Science Dept. Fall 2003
Simplified with an abstract use case Computer Science Dept. Fall 2003
- Slides: 18