Question
The Bucks Centre for the Performing Arts (BCPA), an entertainment venue, wants to allow customers to order tickets through the Internet. This new Online Ticketing
The Bucks Centre for the Performing Arts (BCPA), an entertainment venue, wants to allow customers to order tickets through the Internet. This new Online Ticketing System (OTS) must allow the customer to view a list of upcoming events, or view scheduled shows by date, select seat(s) from a seating chart, hold the seat(s) while they complete their selection, and purchase the selected seats.
The BCPA has contracts with several ticket agents at various ticket outlets. These contracts define the agent commissions and the terms and conditions for the sale of tickets. The contract is the agent's authorization to use the OTS. Associated with the contract is a sales agreement that defines the seats that are assigned to the agent to sell. One agent may not sell seats from another agent's assigned seats. The seat assignments apply to a set of seats for the specified date range, not for specific shows.
The venue manager is responsible for managing promotions for each show. A promotion defines the pricing structure for seats in a show. A pricing structure must accommodate differences for adult, student, child, and senior citizen seating. Discounts are defined per show. A promotion can be unique to each showing of an event. For example, the promotion for a Saturday matinee may differ from the Saturday evening show promotion. A promotion can be specific to seats within a show. A promotion may also be reused for many shows for numerous events.
The system must be capable of displaying the price for each seat on the seating chart Assigning seats to promotions must be dynamic; that is, seats may be redefined into different promotions if a show sells either better or worse than anticipated.
The system must allow the venue manager to cancel, reschedule, or add events and shows, and to allow changes to the maximumseats percustomer value for each show.
A consumer will access the OTS via the World Wide Web. The user interface will be implemented with OO language applications; that is, without browsers and hypertext mark-up language (HTML).
Consumers must provide a valid sign-on and password. Then they must provide or verify their customer profile information. The customer profile includes address information for mailing the tickets. This information is also used to target customers for special promotions. The system must keep this customer information on file so that returning consumers can use their existing sign-on and password and avoid re-entering the information.
Consumers are then given the choice between selecting a show using a list of upcoming events or a list of shows for a given date range. Once Consumers select a show, they are offered the choice of interactively selecting a seat(s) or having the system select the best available seat(s) for a price range.
When users select interactive seat selection, they are presented with a floor chart of the Concert Hall. The seating chart is colored according to the status of the seats for each show; for example, available, held, or sold. Selecting a seat places, it on hold so that no one else can select it while the users complete their transactions.
Selecting a seat removes the hold and makes the seat available again for other users. Users can select up to the maximum allowed seats per customer set for the show by the venue manager.
When users select automatic seat selection, they must provide a price range and the number of seats desired. The system will then attempt to select the "best" seats available. Once the attempt is completed, the system will either display the resulting seating chart with the selected seats highlighted, or an appropriate message. Users can then either accept the selection and change the criteria, or switch to interactive seat selection.
When consumers select a seat, the system will "hold" the seat to appear unavailable to subsequent customers. After the consumers pay for the seats, the system will mark the seat(s) reserved and generate a ticket(s). If consumers choose not to purchase the seat(s), then the system will remove the hold, thus making the seat(s) available again. In a transaction, consumers can purchase a single or multiple tickets at various prices. For some shows, volume discounts are available.
For example, ticket purchases of 100 or more might receive a 10 % discount, or buying 6 or more tickets might qualify the consumer for a 15 % discount. In all cases, each ticket must be tracked separately, with its associated price and applied discount and seat assignment. Credit cards will be the only form of currency accepted, so the system must be able to validate a card number and accept or reject the purchase. For this case study, assume that all credit card purchases are approved.
Ticket agents interact with the OTS using the World Wide Web. After signing onto the application as an agent, the agent interacts with the system on behalf of the customer. Once agents provide the customer profile information, the same initial choices of event selection by upcoming events or date range are displayed, Agents use the same features for seat selection as the consumer, with one additional feature; agents can see only the seats assigned to them. Agents can also see the total number of tickets sold for the currently displayed show or all shows for a date range.
Once the seats are placed in a hold state, an internal clock sounds an alarm after five minutes and prompts users about continuing the transaction. The alarm then sounds every minute for three minutes, after which time all "held" seats are released if the transaction is not completed. This same feature applies to the consumer.
Can you Create a Use case diagram for the Agent while answering the following question:
- How does an agent know what they've sold?
Can you create a UML Class diagram on OTS that answers the following questions?
- How does a customer make a booking for a seat?
- How can a Venue manager or agent know what purchases have been made?
- If customers are going to be able to buy tickets how are tickets to be represented?
- How do we know they've bought them, or customers they are going to sit?
Additionally
You have to implement how a consumer purchases a ticket for a show from the Online Ticketing System (OTS), as the basis for demonstrating your ability to partially implement an Objected Orientated (OO) system, comprising of at least three Classes. There should be a clear indication of how you have exploited the OO paradigm in some way, with respect to concepts such as Inheritance, Encapsulation, and Polymorphism.
Can you generate the following elements:
- Establish the set of Requirements (i.e. expected Functional/ Non-Functional) your partial system will be based upon during the Implementation stages.
- Provide a Sequence Model for at least the main function of your system (e.g. Booking a ticket, establishing a User, etc.)
- Provide Detailed Design using Pseudo-code, for individual Class member methods and variables.
- Implement in a suitable Object-Oriented language, identifying the Classes involved. (You must submit a hard copy of the code.)
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started