Use Case Diagrams

20
Use Case Diagrams A Detailed Description

Transcript of Use Case Diagrams

Page 1: Use Case Diagrams

Use Case Diagrams

A Detailed Description

Page 2: Use Case Diagrams

Use Case Diagrams

• Use case diagrams describe relationships between users and use cases

• A use case is a (usually high-level) user activity in the system– A use case is a collection of related success and

failure scenarios that describe actors using a system to support a goal

– A use case name should generally begin with a verb

Page 3: Use Case Diagrams

Use Case Diagrams

• Use case diagrams consist of at least two components:– An actor

• Actors are represented as stick people, with a label below, naming the actor's role

• There may be multiple actors in a diagram

– A use case• Use cases are represented as ellipses, with a label

inside, naming the use case

• There may be multiple use cases in a diagram

Page 4: Use Case Diagrams

Use Cases

• For an example, consider an auction website (e.g. eBay)

• The actor customer might:– Register for an account– Search for items by keyword– Place a bid on an item– Put an item up for auction– Check the status of this item

Page 5: Use Case Diagrams

Actors

• An actor represents a role that a user might play– For example, a network administrator at a

company might play the following roles:• NetAdmin• Employee

– Each role must be represented separately

Page 6: Use Case Diagrams

Use Cases

• For the auction website example, a system administrator can act in two roles:– Administrator– Customer

Page 7: Use Case Diagrams

Auction Website Use Cases

Customer

Auction Website

Search for item

Place bid

Put item upfor auction

Register account

Page 8: Use Case Diagrams

Use Case Diagrams

• Obviously, actor and use case names must be unique within a given diagram

• Consider use cases to be similar to classes:– A use case describes an activity that is possible– A given system may have several instances of

that activity throughout its lifetime– A use case is a (coarse-grained/large) unit of

behaviour, and a class is a unit of software

Page 9: Use Case Diagrams

A simple example

• Example: In an on-line Bookstore system, user needs to log-in first before he/she could order and purchase any desired books. Describe the use case for the log-in process of the on-line Bookstore system.

• Answer: For every log-in process, there are two flows– When the log-in is successful (main-flow)– When the log-in is not successful (alternate-flows)

For each flow, we can describe the sequence/flow of events.

Page 10: Use Case Diagrams

Use Case:Log-in

Use Case Description:A CUSTOMER needs to log-in before performing any transaction

Pre-condition:A registered user.

Post-condition:The CUSTOMER has been authorised to perform transactions.

Log-inLog-in

Customer

Page 11: Use Case Diagrams

Case Study: On-Line Bookstore

Page 12: Use Case Diagrams

• On-line Bookstore is a web application that can be accessed by the store’s registered customer, whereby each customer can order books, review one or more books sold in the book store, and sell used books to other customers. Before performing any one of these transactions, the customer must first log-in into the system using their user id and password kept in their account.

• Problem: Draw the use-case diagram for the above system

Page 13: Use Case Diagrams

• The steps involved: -– Identify the actor : CUSTOMER– Identify the use case for the actor:

• CUSTOMER– REGISTER– LOG-IN– ORDER BOOKS– CHECK OUT– REVIEW BOOKS– SELL USED BOOKS

– For each use case, determine include and extend relationships, if any

• A Customer must log-in first before he/she can order books, check out, review books or sell used books: include relationship

• A Customer can proceed to check out after he/she has ordered books: extend relationship

Page 14: Use Case Diagrams

RegisterRegister

Order booksOrder books

Sell used Sell used booksbooks

Review booksReview books

CustomeCustomerr

On-line Bookstore On-line Bookstore SystemSystem

Log-inLog-in

<<include<<include>>>>

<<include<<include>>>>

<<include<<include>>>>

Check outCheck out<<extend<<extend

>>>>(CustID)(CustID)

Use Case Use Case Context Context

DiagramDiagram

Page 15: Use Case Diagrams

Use Case

Description

Register A new CUSTOMER needs to first register into the system before performing any transaction.Actor/s: CUSTOMERPre-condition: An unregistered CUSTOMER.Main flow of events:1. The CUSTOMER clicks the REGISTER button on the Home Page.2. The system displays the Register Page.3. The CUSTOMER enters all of the required information.4. The CUSTOMER clicks the SEND button.5. The system checks that all of the required information were entered. If yes, the system update the CUSTOMER’s record in the CUSTOMER and ACCOUNT tables in the database. System displays OK message.Post-condition:The new CUSTOMER has registered. The ACCOUNT and CUSTOMER tables are updated.

Log-in A CUSTOMER needs to log-in before performing any transactionActor/s: CUSTOMERPre-condition: A registered user.Main flow of events:1. The CUSTOMER clicks the Log-in button on the Home Page.

Page 16: Use Case Diagrams

Use Case DescriptionLog-in(continue…)

2. The system displays the Log-in Page.3. The CUSTOMER enters his/her user ID and password.4. The CUSTOMER clicks the OK button.5. The system validates the log-in information against the ACCOUNT table in the database.6. CUSTOMER is an authorised user; the system displays the Personal Home Page to the CUSTOMERPost-condition:The CUSTOMER has been authorised to perform transactions.Alternate flow:1. The CUSTOMER clicks the Log-in button on the Home Page.2. The system displays the Log-in Page.3. The CUSTOMER enters his/her user ID and password.4. The CUSTOMER clicks the OK button.5. The system validates the log-in information against the ACCOUNT table in the database.6. CUSTOMER is not an authorised user; the system displays a pop-up message to inform the CUSTOMER.Post-condition:The CUSTOMER is not authorised to perform transactions.

Page 17: Use Case Diagrams

Use Case DescriptionOrder Books

A CUSTOMER can order books to purchase.Actor/s: CUSTOMERPre-condition: User have logged-in.Main flow of events:1. The CUSTOMER enters the keyword for a book and clicks the SEARCH button on the Personal Home Page.2. The system displays the matching books on the web Page.3. The CUSTOMER chooses the desired book and clicks the ADD TO SHOPPING CART button on the web page. 4. The system adds the book into the CUSTOMER’s Order table in the database. Post-condition:The ORDER table has been updated.

Check Out A CUSTOMER can purchase the books in his/her Shopping Cart.Actor/s: CUSTOMERPre-condition: The user have logged in and has at least one book in the Shopping Cart. Main flow of events:1. The CUSTOMER clicks the Check out button on the Web Page.

Page 18: Use Case Diagrams

Use Case DescriptionCheck Out(continue…)

2. The system displays the books in the ORDER table of the CUSTOMER on the web Page.3. The CUSTOMER checks the order list for any inconsistency. If nothing found, CUSTOMER clicks the PROCEED button. 4. The system displays the Invoice page.5. The Customer enters the relevant credit card information and clicks the OK button.6. The system checks that the credit card is valid. Then, the system displays the Delivery Details page.7. The CUSTOMER chooses destination for delivery, along with delivery options. Then, he/she clicks the PROCEED button. 8. The system will display the check-out information for confirmation.7. The CUSTOMER checks that all information is correct and then clicks the OK button. 8. The system sends a confirmation via CUSTOMER’s e-mail.Post-condition:The ORDER table has been updated.

Sell used books

A CUSTOMER can sell his/her used books.Actor/s: CUSTOMERPre-condition: The user have logged-in..

Page 19: Use Case Diagrams

Use Case DescriptionSell Used Books(continue…)

Main flow of events:1. The CUSTOMER clicks the Sell Used Books button on the Home Page.2. The system displays the Sell used books web page.3. The CUSTOMER enters the required information on the used books that he/she wants to sell. 4. The CUSTOMER clicks the SEND button on the webpage.5. The system displays a confirmation page listing the information that the CUSTOMER has entered. 6. The CUSTOMER checks that the information displayed are accurate. If yes, the CUSTOMER clicks the OK button on the web page.7. The system updates the USED BOOKS table in the database. Post-condition:The Used Books table has been updated.

Review Books

A CUSTOMER can review books.Actor/s: CUSTOMERPre-condition: User have logged-in..Main flow of events:1. The CUSTOMER enters the keyword to search for a book and then clicks the SEARCH button on the Personal Web Page.

Page 20: Use Case Diagrams

Use Case DescriptionReview Books(continue…)

2. The system displays the matching books on the web Page.3. The CUSTOMER checks for the desired book and clicks on the chosen book icon. 4. The system displays the book’s detail in the Book Detail web page.5. The CUSTOMER clicks the REVIEW button on the web page.6. The system displays the Review Book web page.7. The CUSTOMER clicks on the desired star button and the click the OK button on the web page.8. The system calculates the overall rating of the book and updates the Book table in the database.9. The system displays the Book Detail web pages that have been updated. Post-condition:The BOOK and REVIEW tables are updated.