Skip to content

Detailed Specification of Use Cases

Yichen Wu edited this page Mar 14, 2021 · 15 revisions

List of use cases

  1. Login account
  2. Book appointment
  3. Add service
  4. View available appointment
  5. Add timeslot

Detailed Specifications

Use Case: Login account

Actor: Customer, Technician, Owner, Administrative Assistant

Description Of Scenario: When a person launches the repair shop website, the repair shop system shall display a text input for the user email and text input for the person's password prompting them to log in to an existing account. Upon the successful authentication of the person, the repair shop system shall grant their access to the home page of the website corresponding to their account type.

Intention: Access to the repair shop system.

Precondition: The person launches the repair shop website under the stable internet connection environment.

Main Success Scenario:

  1. The person launches the website and the system prompts the person to input their login credentials.
  2. The person inputs the email and the password and clicks the login button.
  3. The system verifies the person login information by attempting to match the provided credentials to the stored information in the database.
  4. The system grants access to the user and leads to the corresponding home page according to the type of account the user has.

Alternative Scenarios:
3a. The system fails in verifying the user’s credentials either in logging in or creating a new account.
3b. The system notifies the user and allows them to try again unlimitedly.

Post-condition (failure): The system notifies the person and allows them to try again unlimitedly.
Post-condition (success): The system grants access to the person and jumps to the homepage of the corresponding account.


Use Case: Book Appointment

Actor: Customer

Description Of Scenario: When a user wants to book an appointment for a service, they browse the list of services offered by the system and choose the desired one. The user also selects the time they wish to have the appointment. The system consumes this information to verify if the service, the timeslot and a technician are available. The system books an appointment for the user and sends the user a notification.

Intention: Book an appointment

Precondition: The customer has already signed up for a new account or logged into their existing account.

Main Success Scenario:

  1. The system prompts the customer to enter the time and type of appointment.
  2. The customer provides when they would like to schedule the appointment.
  3. The system verifies that the chosen timeslot and a technician is available.
  4. The system sends a notification to the customer that they have successfully booked an appointment.

Alternative/Exceptional Scenarios:
3a. The system determines that the time slot is unavailable; use case continues at step 1
3b. The system determines that the technician is unavailable; use case continues at step 1

Post-condition (failure): The system does not book an appointment for the customer
Post-condition (success): The system books an appointment for the customer at the specified time.


Use Case: Add service

Actor: Administrative assistant

Description Of Scenario: The Administrative Assistant can add different services that the customers can choose from for their appointment.The administrative assistant knows the expertise level of the available technicians (which is not handled by the system) and uses this information to add a service accordingly.

Intention: Add a new service to the system

Precondition: The administrative assistant must be logged into their account. The service must not be in the system when adding it for the first time.

Main Success Scenario:

  1. The Administrative Assistant informs the system they wish to add a new service.
  2. The system asks the Administrative Assistant for new service details.
  3. The Administrative Assistant provides new service details to the system.
  4. The system validates that the system details are correct and service to be created
    does not already exist in the system.
  5. The new service is added to the list of all available services for the customer to
    choose from.

Alternative/Exceptional Scenarios:
4a. The provided new service details contain errors. The case resumes at 2.
4b. The service already exists in the system. The use case ends in failure.

Post-condition (failure): The system does not create a new service and returns an error.
Post-condition (success): The system creates a new service and adds it to the list of all available services.


Use Case: View available Appointment

Actor: Customer

Description Of Scenario: When a customer wants to book an appointment for a service and after they browse the list of services offered by the system and choose the desired one, the user needs to select a time slot . To pick a time slot, the customer should be able to see a list of available appointments and then confirm the booking.

Intention: View available appointment time slots that can be booked

Precondition: The customer should have signed up for a new account or logged into their existing account, and should have selected their desirable service from the list of available services.

Main Success Scenario:

  1. The administrative assistant would have updated the latest list of available timeslots that the customer can view
  2. After selecting a suitable service from the list, the customer view the appointment calendar to pick a suitable time slot.
  3. They can then confirm their booking

Alternative/Exceptional Scenarios:
1a. The administrative assistant might have updated the available appointments list due to the unavailability of a technician , and the system might fail to update the same and ends up showing that as an available appointment time slot.

Post-condition (failure): The system does not let the customer see a list of available appointment timeslots and the customer can try viewing it again by re-logging in or refreshing .
Post-condition (success): The customer can view a list of available appointments and can successfully choose one to confirm their booking


Use Case: Add Time Slot

Actor: Administrative Assistant

Description Of Scenario: The Administrative Assistant can enter time slots during business hours with designated technicians.The administrative assistant knows the schedule of the technicians (which is not handled by the system, and uses this information to enter in the desired time slots. These time slots are for customers to book appointments from.

Intention: Enter in a time slot

Precondition: The customer should have signed up for a new account or logged into their existing account, and should have selected their desirable service from the list of available services.

Main Success Scenario:

  1. The admin selects enter a time slot
  2. The admin enters in the correct starting and ending times, as well as the date
  3. The admin selects submit, and the time slot is now available to customers

Alternative/Exceptional Scenarios:
3a. The entered time or date does not exist, therefore submit would return an error

Post-condition (failure): The system does not add a time slot for appointments to be booked from, error is returned.
Post-condition (success): The system adds a time slot for appointments to be booked from