Use Case Diagram for the Parking Lot

Learn how to define use cases and create the corresponding use case diagram for the parking lot system.

Let’s build the use case diagram of the parking lot system and understand the relationship between its different components.

First, let’s define the different elements of our parking lot, followed by the complete use case diagram of the system.

System

Our system is a "parking lot."

Actors

Here are the main actors of our parking lot system.

Primary actors

  • Customer: This actor can park the vehicle in the allocated parking space according to the vehicle type and pay for the parking before exit.

  • Parking agent: The parking agent will assist the customer and perform all the tasks that a customer can do, such as paying the parking ticket on behalf of the customer.

Secondary actors

  • Admin: This can add, remove, or update a spot, agent, entry/exit panels, and view/update accounts.

  • System: This is responsible for giving details of parking spot availability and assigning a parking spot to a vehicle.

Use Cases

In this section, we will define the use cases for the parking lot. We have listed down the use cases according to their respective interactions with a particular actor.

Note: You will see some use cases occurring multiple times because they are shared among different actors in the system.

Admin

  • Add spot: To add a parking spot

  • Add agent: To add a new agent

  • Add/modify rate: To add/modify hourly rate

  • Add entry/exit panel: To add and update exit/entry panel at each entry/exit

  • Update account: To update account details and payment information

  • Login/Logout: To login/logout to/from agent or admin account

  • View account: To view account details like payment status or unpaid amount

Customer

  • Take ticket: To take a ticket at the entrance, that contains information regarding the vehicle and its entrance time

  • Scan ticket: To scan the ticket at the exit and get the parking fee

  • Pay ticket: To pay the parking fee at the exit panel via cash or a credit card

  • Cash: To pay the parking fee via cash

  • Credit card: To pay the parking fee via credit card

  • Park vehicle: To park the vehicle at the assigned destination

Parking agent

  • Update account: To update account details and payment information

  • Login/Logout: To log in/log out to/from the agent or admin account

  • View account: To view account details like payment status or unpaid amount

  • Take ticket: To take a ticket at the entrance, that contains information regarding the vehicle and its entrance time

  • Scan ticket: To scan the ticket at the exit and get the parking fee

  • Pay ticket: To pay the parking fee at the exit panel via cash or a credit card

  • Cash: To pay the parking fee via cash

  • Credit card: To pay the parking fee via credit card

  • Park vehicle: To park the vehicle at the assigned destination

System

  • Assigning parking spots to vehicles: To check the vehicle type and associate a free spot according to it

  • Remove spot: To remove a parking spot if it is not available for parking

  • Show full: To display the status of the parking lot as full

  • Show available: To show the details of available parking spots

Relationships

This section describes the relationships between and among actors and their use cases.

Generalization

  • The “Parking agent” has a generalization relationship with the “Customer” since the parking agent can perform all those tasks that a customer can perform.

  • “Cash” and “Credit card” use cases are used for payments. Hence, both have a generalization relationship with the “Pay ticket” use case.

Associations

The table below shows the association relationship between actors and their use cases.

Level up your interview prep. Join Educative to access 80+ hands-on prep courses.