Actor: Customer Brief Description: This actor may purchase hockey tickets at regular price or on sale. This actor may also purchase team merchandise. The actor will be requested to pay using a credit card or a team hockey card. Actor: Credit Card Validation System Brief Description: This actor ensures the validity of a given a credit card number and an expiry date. Use Case Name: Buy Tickets Brief Description: This use case is responsible for allowing customers to purchase as many tickets as they need in any section. Preconditions: At least one game and one seat is available Basic Flow: {BEGIN Use Case} {BEGIN present price list} • SYSTEM -> presents the different sections that exist in the arena and the price for a single seat in each section {END Present Price List} {BEGIN enter ticket order information} • Customer -> selects the desired game from the team’s calendar • Customer -> enters the desired section • Customer -> enters the number of tickets • Customer -> submits order request • PERFORM search tickets {END enter ticket order information} {BEGIN purchase ticket} • SYSTEM -> prompts the Customer to accept or reject the offered seats • Customer -> accepts to purchase ticket • INCLUDE Perform Transaction {END purchase ticket} {END Use Case} Alternative Flows: AT {enter ticket order information} • PERFORM search tickets IF tickets not available {BEGIN search for tickets again} • SYSTEM -> notifies the Customer that the requested tickets are unavailable RESUME {enter ticket order information} {END search for tickets again} AT {purchase ticket} • Customer -> accepts to purchase ticket IF tickets were rejected {BEGIN rejected seats} • SYSTEM -> notifies the Customer that the cancellation has been confirmed. RESUME {present price list} {END rejected seats} Subflows: SUBFLOW search tickets {BEGIN print new member’s record} • SYSTEM -> retrieve seating information about the requested games • SYSTEM -> retrieve seating information about the requested section • SYSTEM -> locates the desired number of seats in the requested section. The seats must be next to each other in the same row {END print new member’s record} Postconditions: If tickets are issued, these seats become unavailable for future customers Extension Points: Special Requirements: System must be online Use Case Name: Buy On Sale Tickets SPECIALIZES Buy Tickets Brief Description: This use case is responsible for allowing customers to purchase a maximum of six on sale tickets. Preconditions: At least one game and one seat is available Basic Flow: {BEGIN Use Case} {BEGIN present price list} • SYSTEM -> presents the different sections that exist in the arena and the price for a single seat in each section {END present price list} {BEGIN request on sale tickets} • Customer -> indicates interest to purchase on sale tickets • SYSTEM -> presents the selected games that have on sale tickets • SYSTEM -> presents the selected sections that contain on sale tickets {END request on sale tickets} {BEGIN enter ticket order information} • Customer -> selects the desired game with on sale tickets • Customer -> selects the desired section with on sale tickets • Customer -> enters the number of desired on sale tickets • Customer -> submits order request • PERFORM search on sale tickets {END enter ticket order information} {BEGIN purchase ticket} • SYSTEM -> prompts the Customer to accept or reject the offered seats • Customer -> accepts to purchase tickets • INCLUDE Perform Transaction {END purchase ticket} {END Use Case} Alternative Flows: AT {enter ticket order information} • PERFORM search tickets IF tickets not available {BEGIN search for tickets again} • SYSTEM -> notifies the Customer that the requested tickets are unavailable RESUME {enter ticket order information} {END search for tickets again} AT {enter ticket order information} • Customer-> enters the number of desired on sale tickets {BEGIN too many tickets} • SYSTEM -> notifies the Customer that the requested number tickets exceed the maximum allowed of six RESUME {enter ticket order information} {END too many tickets} AT {purchase ticket} • Customer-> accepts to purchase ticket IF tickets were rejected {BEGIN rejected seats} • SYSTEM -> notifies the Customer that the cancellation has been confirmed. RESUME {present price list} {END rejected seats} Subflows: SUBFLOW search on sale tickets {BEGIN print new member’s record} • SYSTEM -> retrieves seating information about the requested games • SYSTEM -> retrieves seating information about the requested section • SYSTEM -> locates the desired number of seats in the requested section. The seats must be next to each other in the same row {END print new member’s record} Postconditions: If tickets are issued, these seats become unavailable for future customers Extension Points: Special Requirements: System must be online Use Case Name: ABSTRACT Perform Transaction Brief Description: This use case is responsible for allowing customers to pay for their selected items Preconditions: At least one ticket is requested for purchase Basic Flow: {BEGIN Use Case} {BEGIN enter billing information} {END enter billing information} {BEGIN print receipt} {END print receipt} {END Use Case} Alternative Flows: Subflows: SUBFLOW print receipt {BEGIN print transaction information} {END print transaction information} Postconditions: If tickets are issued, these seats become unavailable for future customers If merchandise is sold, the merchandise database is updated Extension Points: Special Requirements: System must be online Use Case Name: Purchase With Credit Card IMPLEMENTS Perform Transaction Brief Description: This use case is responsible for allowing customers to pay for their selected items using a credit card Preconditions: At least one item is requested for purchase Basic Flow: {BEGIN Use Case} {BEGIN enter billing information} • SYSTEM -> requests Customer to enter billing information • Customer -> enters first and last names • Customer -> enters phone number • Customer -> enters billing address • Customer -> selects to pay using a credit card {END enter billing information} {BEGIN pay by credit card} • Customer-> enters credit card type • Customer-> enters credit card number and expiry • Credit Card Validation System -> validates given credit card {END pay by credit Card} {BEGIN print receipt} • PERFORM print receipt {END print receipt} {END Use Case} Alternative Flows: Subflows: SUBFLOW print receipt {BEGIN print transaction information} • SYSTEM -> prints Customer information • SYSTEM -> prints credit card information • SYSTEM -> print items information and total price {END print transaction information} Postconditions: If tickets are issued, these seats become unavailable for future customers Extension Points: PRIVATE EXTENSION POINT FLOW Basic Flow AT {pay by credit card} • Credit Card Validation System -> validates given credit card IF credit card information is incorrect {BEGIN enter credit card information again} • SYSTEM -> notifies the Customer that the credit card information is incorrect {END enter credit card information again} CONTINUE {pay by credit card} Special Requirements: System must be online Use Case Name: Purchase Using Hockey Team Card IMPLEMENTS Perform Transaction Brief Description: This use case is responsible for allowing customers to pay for their selected items using a preauthorized payment plan setup on their hockey team card Preconditions: At least one item is requested for purchase Customer has a hockey team card with a set PIN Basic Flow: {BEGIN Use Case} {BEGIN enter billing information} • SYSTEM -> requests Customer to enter billing information • Customer -> enters first and last names • Customer -> enters phone number • Customer -> enters billing address • Customer -> selects to pay using a hockey team card {END enter billing information} {BEGIN enter team hockey card information} • Customer -> enters team hockey team card number • Customer -> enters card PIN • SYSTEM -> verifies card number and PIN {END enter team hockey card information} {BEGIN print receipt} • PERFORM print receipt {END print receipt} {END Use Case} Alternative Flows: AT {enter team hockey card information} • SYSTEM -> verifies card number and PIN IF card information is invalid {BEGIN enter team hockey card information again} • SYSTEM -> notifies the Customer that the team hockey card information is incorrect RESUME {pay by credit card} {END enter team hockey card information again} Subflows: SUBFLOW print receipt {BEGIN print transaction information} • SYSTEM -> prints Customer information • SYSTEM -> prints team hockey card information • SYSTEM -> print items information and total price {END print transaction information} Postconditions: If tickets are issued, these seats become unavailable for future customers Extension Points: Special Requirements: System must be online Use Case Name: Buy Team Merchandise Brief Description: This use case is responsible for allowing customers to buy team merchandise such as jersey, hockey sticks, mugs and other collectibles Preconditions: Basic Flow: {BEGIN Use Case} {BEGIN display catalogue} • SYSTEM -> displays catalogue with all team merchandise items {END display catalogue} {BEGIN select items} • Customer -> selects desired items to purchase • Customer -> enters quantity of each item • Customer -> enters any desired customization information {END select items} {BEGIN purchase items} • INCLUDE Perform Transaction {BEGIN a chance to win} • Customer -> enters a ticket number for a chance to win {END a chance to win } {END purchase items} {END Use Case} Alternative Flows: Subflows: Postconditions: Extension Points: PUBLIC EXTENSION POINT Grand Prize Giveaway Special Requirements: System must be online Use Case Name: Winning Ticket Entered Brief Description: This use case is responsible for the situation where a winning ticket was entered. Extension Points: PUBLIC EXTENSION POINT BEHAVIOR EXTENDING {Buy Team Merchandise : Grand Prize Giveaway} FLOW Basic Flow AT {a chance to win} IF winning ticket was entered {BEGIN grand prize giveaway} • SYSTEM -> notifies Customer the he/she won the grand prize • Customer -> enters phone number for a Customer service representative to call {END grand prize giveaway} CONTINUE {END Use Case } Special Requirements: System must be online