Case Study: Sports Center Reservations Management System
A sports center offers play areas for tennis, squash and racketball which are three racket sports. It has 15 tennis courts, 5 squash courts and 8 racketball courts. He needs your help to establish the specification of a reservation management system to develop and prototype the system he plans to make available to members via the Internet.
To access the playgrounds, you must first buy an annual membership card at the sports center and become a regular member. This card can be valid for only one of the sports, a handset for the three racket sports or associate an annual subscription to the fitness center. A progressive pricing grid is applied to which are added the consumption taxes. A system already exists for managing the members and an interface with the reservation system will have to be made for the operation of the reservation management system.
A regular member can make reservations for the playgrounds according to his type of card either at the reception desk of the center or via the internet. These reservations are of two types:
• A permanent reservation (for the period from September 1st to May 31st) with a fixed day and one or more fixed hours, before the beginning of the season, in April; at this time, he must pay half the amount required at the time of booking and the other half before the start of the season in September. Although a reservation may involve two to four players, this reservation is made in the name of a single player who plays the role of a team leader and assumes for the team the responsibility for this rental.
• An occasional reservation, three days in advance or less, depending on the availability of vacant lots; the payment is made when the player shows up at the time of playing if the reservation is made by telephone; if the reservation is made at the reception desk or on the Internet, payment is made immediately upon booking.
The grounds are open from 7 am to 11 pm, for rentals of one hour at a time. Land prices are based on demand and ridership. For example, they will be more expensive in the evenings and weekends and inexpensive on weekdays when most people end up at work. Pricing must therefore be able to accommodate several time blocks (for example, 7am to 9am, 9am to noon, etc.) depending on the weekdays and weekends.
The system will also be able to accommodate some flexibility with changes that occur as:
• The ability to transfer the permanent reservation from one member to another at any time of the year.
• The possibility of subleasing a land with a permanent reservation that would otherwise be vacant at a given time period; in this case, if the lease is made, the landlord is allocated a replacement hour in a time slot of his choice according to availability.
• The possibility of canceling a reservation 24 hours in advance, in the case of an occasional reservation. It should be noted that a reservation not canceled and not occupied remains payable by the member.
The system will provide a user-friendly interface and always allow to easily visualize the occupation and land availability, so it is easy to make bookings directly at the counter, received by phone or the Internet. The system will also have to prepare daily, weekly, monthly or annual occupancy reports and be able to be queried for different types of analysis for management purposes.
Also considered as members are visiting members, instructors, customer service representatives and the reception desk. It is the member management system that enforces business rules in these cases.
Identify the actors and list the use cases.
The actor is a person who exchanges with the system.
A use can be described as a transaction performed by an actor with the system.
Actors
Uses
Member or agent
Reserve a field (one hour or permanently)
Member or agent
Pay a reservation
Member or agent
Cancel a reservation
Member
Sublease a reservation
Member
Transfers a permanent reservation
Manager
Creates a land
Manager
Establishes rental rates
Manager
Establishes land availability
Agent
Prepares reports
Actor: Any person, sensor, or other system that can exchange information with the system to perform. This actor plays a role that is outside the system.
Transaction : a transaction is a service request that will be executed by the system to meet an actor’s need and fulfill the objectives assigned to it in relation to an object in the domain; because of black box modeling, we are not concerned with the internal way in which this transaction is produced, but rather with the business rules that will have to be applied.
Objet : any object or entity that exists in the domain of the problem, concretely or abstractly, and to which a system transaction or service request relates. Indeed, each transaction has the effect of changing the state of one or more objects.
Here is an example:
A member requests to reserve a tennis court for one-hour H.
This sentence contains the following three elements:
The actor: a member, the one that triggers the transaction outside the system.
The transaction: reserve a land, a verb that describes a service corresponding to the desired goal of the actor and which will be filled by the system.
The object: a tennis court at time H, the place or time slot of the reservation board(schedule) for the requested time.
The result produced, if the transaction is completed successfully, will be the registration of a new reservation in the name of the member and a reserved time slot for a tennis court reserved for the time H.
ACTOR
TRANSACTION-SERVICE
OBJECT
Member
Reserve field (Occasional)
At hour H
Member
Reserve field
(Permanently)
For hour J
Member
Cancels
Reservation
Counter Attendant (Agent)
Reserve field (by phone)
At hour K
Member
Pays
Reservation
Manager
Creates
field
Manager
Establishes
Availability of land (rental hours)
Manager
Fixes
Rental price
Member
Transferes
Permanent reservation
Member
Sublease
Reservation (time slot)
Customer service representative
Prepare
repport
The first list of use cases:
In the form: “actor makes a transaction on an object”
1) A member reserves a lot at a given time (at the counter or via the Internet)
2) A member reserves a lot permanently.
3) A member cancels a reservation of land.
4) A member pays a reservation (at the counter or via the Internet)
5) A member requests to sublet a time slot in permanent reservation.
6) The manager creates the land.
7) The manager establishes the schedules and the availability of the grounds.
8) The manager fixes the rental price of the land.
9) A member transfers a permanent reservation.
10) An officer prepares reports.
Transactions are classified into two classes:
• Main: transactions representing normal or priority cases of the system.
• Secondary: minor complementary transactions corresponding to a complementary case in relation to a main transaction.
Main Cases:
1) A member reserves a field at a given time (at the counter or via the Internet)
2) A member reserves a field permanently.
3) The manager creates the field.
4) The manager establishes the schedules and the availability of the grounds.
5) The manager fixes the rental price of the field.
6) An officer prepares reports.
Secondary Cases :
7) A member cancels a field reservation.
8) A member pays a reservation (at the counter or via the Internet)
9) A member requests to sublet a time slot in permanent reservation.
10) A member transfers a permanent reservation.