Car Park System Analysis and Design
This system must provide for the day-to-day operation for car park-issuing tickets, handling payment and controlling barriers.
Operational System
The car park operational system controls entry to & exit from a car park and payment for car parking. Customers pay for their use of car park at the time they use it,
Entry to the Car Park
When a car approaches an entry barrier, its presence is detected by a sensor under the road surface, and a ‘Press Button' display is flashed on the control post.
Customer must press a button on the control post, and a ticket is printed and issued.
The ticket must be printed within five seconds. A ‘Take Ticket' display is flashed on the control post. If the car park is full, no ticket is issued, and a ‘Full' display is flashed on the control post. If a vehicle leaves the car park, then the ‘Press Button' display is activated again where there is a vehicle waiting.
When the customer pulls the ticket from the control pillar, the barrier is raised.
The ticket issued to each customer has a bar code on it. The bar code has a number on it and the date (ddmmyyyy) and time (hhmmss) of entry to the car park. The number, date and time of entry are also printed on the ticket in human readable form.
The details of the ticket are stored: ticket no., issue date, issue time, issuing machine.
The number of vehicles in the car park is incremented by 1 and a check is made against the capacity of the car park. If the car park is full, then a display near the entrance is switched on to say ‘Car Park Full', and no further tickets are issued until a vehicle leaves the car park.
Payment system
When the customer is ready to leave, he or she must go to a pay station to pay. The ticket is inserted into a slot, and the bar code is read. The ticket bar code information is compared with the stored information. If the dates or times are not the same, the ticket is ejected, and the customer is told (via an LCD display) to go to the office. In the office, the attendant has a bar code reader and can check a ticket. Typically the problem is damage to the bar code on the ticket, and the attendant can use the office system to calculate the charge, take payment and validate the ticket.
At the pay station, if the ticket dates and times are the same as the bar code dates and times, then the current date and time are obtained, and the duration of the stay in the car park is calculated. From this the car park charge is calculated and displayed on the LCD display. Calculation and display of the charge must take no more than two seconds.
As soon as the amount accumulated exceeds the charge, the ticket is validated. The current date and time are added to the stored data for that ticket (payment date, payment time).
If the amount entered exceeds the charge and change is available, then the amount of change is calculated and that amount of change is released into the return tray. Otherwise, no change is given. In either case, a message is displayed on the LCD display.
The ticket has the payment date and time printed on it and is ejected from the ticket slot. Printing and ejection should not take more than 20 seconds.
Leaving the Car Park
When the customer drives up to the exit barrier, the car is detected by a sensor, and an ‘Insert Ticket' display is flashed on the control post. The customer must insert the ticket. The bar code is read and a check is made that no more than 15 minutes have elapsed since the payment time for that ticket. If more than 15 minutes have elapsed, an intercom in the control post is activated and connected to the attendant in the car park office. The customer can talk to the attendant, and the attendant can view the details of the ticket on his or her computer. The attendant can activate the barrier remotely, for example if there is a queue to get out and the customer is likely to have been reasonably delayed.
If no more than 15 minutes have elapsed, the barrier is raised. A sensor on the other side of the barrier detects when the car has passed and the barrier is lowered.
The number of vehicles in the car park is decremented by 1 and a check is made against the capacity of the car park. If the car park was full, then the display near the entrance is switched to say ‘Spaces', and a check is made to see if any vehicles are waiting. If they are, then the control pillar for the first waiting vehicle is notified. If the driver of the vehicle waiting there does not press the button (for example, because they have backed out and left), then the control pillar for the next waiting vehicle is notified.
At any time, the attendant can view the status of a pay station or a barrier control post Once a connection is made, the status is updated every 10 seconds.
General tasks and milestones
Use the following case study to write a Business Requirements Statement for the new system. Use the Unified Modelling Language (UML) to do your logical design.
General:
• Cover page and Table of Contents
• Introduction ( Term of references)
• Neatness (readability, tidy presentation, etc.)
• List all non-functional requirements (Read the use case scenario).
Milestone 1
• Actor Glossary ( a List of actors[roles] related to the system )
• Use Case Glossary ( A list of all use cases for the system)
Milestone 2
• Analysis Use Case Model Diagram for whole system
• Analysis use case narrative for ‘payment' use case
Milestone 3
• Identify "boundaries", "controller "and "entities" objects for "Entry control" Usecase.
• Transfer "Entry control" Usecase diagram to a communication diagram
• Draw an ERD diagram obtained from "Entity" objects identified in the obtained communication diagram.
Millstone 4
• Produce Activity Diagram (Including swim lanes) for ‘"Payment" use Case
• Produce sequence diagram for ‘"leaving car park" use Case
Millstone 5
• Produce analyse class diagram for obtained objects in "Entry control" Usecase.
• Transfer the analysis class diagram to a design Class diagram.