Skip to content

Detailed Use Cases Descriptions

Ding Ma edited this page Feb 10, 2020 · 35 revisions

Table of Contents

Register To Platform
Create advertisement
Apply to adopt a pet
Make Donation
Create a Forum Thread

Actor: Platform user

Intention: Create an account.

Precondition: The user must have internet connection. The user does not have an account but the user has the intention of creating one.

Steps for main scenario:

  1. The system asks the user for their email, username and password.
  2. The user provides his contact information onto the system.
  3. The registration system validates that the user information is correct.
  4. The system sends an email to the user’s address in order to confirm the registration.
  5. The user opens the email and follows the confirmation link.
  6. The system validates that the confirmation link is a valid one.

Alternative/Exceptional scenarios:

3a: The System determines that the user’s username is already taken; use case continues at step 1.
3b: The System determines that the user’s email is already taken; use case continues at step 1.
5a: The user does not click on confirmation link within the given time frame.
5a.1: The system deletes the user’s account.
5a.2: The system sends an email to the user informing that their registration has been cancelled; use case ends in failure.

Post-condition (failure): The system deletes the user’s account and all of its personal information.
Post-condition (success): The user now has an account on the platform, an email confirming the registration is also sent to the associated address from the pet shelter management system.


Actor: Platform User

Intention: Create an advertisement in order to put their pet to adoption.

Pre-condition: The user must have internet connection and must be logged onto the website. The user is in the Create advertisement tab.

Steps for main scenario:

  1. The user informs the system they wish to create a new advertisement.
  2. The system queries the pet profiles the user has attached to their account and asks the user which pet(s) they want to put up for adoption.
  3. The user selects which pet he wants to put on adoption from his pet profiles.
  4. The system validates the chosen pet and that it is the unique advertisement for that owner and pet.
  5. The system asks the user to provide further details about the advertisement.
  6. The user provides details about the advertisement such as location, title, and description why the pet is put on adoption.
  7. The system validates that the inputs are correct.

Alternative/Exceptional scenarios:

2a: The user has not created the pet profiles.
2a.1: The system redirects the user to the pet profile creation page where the user is asked to create a pet profile [that would be another use case].
2a.2: The case resumes at step 1.
2b: The system determines that there is already a corresponding advertisement for that owner and pet ; the use case ends in failure. 7a: The system finds an input to be invalid; use case continues at step 6.\

Post-condtion (failure): The advertisement will not be created.
Post-condtion (success): The advertisement is now created and is ready to receive applications.


Actor: Platform user

Intention: The intention of the user is to apply to adopt a specific pet advertised on the application.

Precondition: The user must have internet connection. The user is logged in and is on the application.

Steps for main scenario:

  1. The user queries the available advertisements from the system.
  2. The system fetches all existing unfulfilled advertisements and prompts the user to select one they are interested in.
  3. The user selects an advertisement and informs the system of their choice.
  4. The system validates the request.
  5. The system prompts the user with a form to fill out asking for the dimensions of the home, the number of pets and inhabitants that reside in it and reasons to adopt.
  6. The user fills out the form and submits it.
  7. The system validates the form.

Alternative/Exceptional scenarios:

2a: There are no existing advertisements; use case ends in failure.
4a: The system finds that the user has already applied for the selected advertisement; use case continues at step 3.
7a: The system finds that a field was left empty; use case continues at step 6.

Post-condition (failure): The user has not applied to adopt a pet.
Post-condition (success): The user has applied to adopt a pet and an email is sent to the pet owner informing them an application was submitted.


Actor: Platform user

Intention: Donate for the Pet Shelter

Pre-condition: The user must have internet connection. The requirement for an account on petshelter.com is optional.

Steps for main scenario:

  1. The system asks the user the amount that they wish to donate
  2. The user inputs the desired amount they wish to donate.
  3. The system validates that the entered amount is valid.
  4. The system asks the user to provide their payment information. **
  5. The user provides their payment information. **
  6. The system validates and proceeds to charge the user’s payment information. **

Alternative/Exceptional scenarios:

3a: The system determines that the amount entered is invalid; use case continues at step 1.
6a: The system determines that the payment credentials are invalid and informs the user; use case ends in failure. **

Post-condition (failure): The system sends an email to the user informing about the failure.
Post-condition (success): The system sends a receipt to the user’s email and logs it into the database.

** Note: This part would not be present in on our website; we simply want a number. We added it for completeness and for the use case to be realistic.


Actor: Platform user

Intention: The intention of the user is to create a new forum thread that other users can see and post to.

Precondition: The user must have internet connection. The user is logged in and is on the application. The user is on the forum tab.

Steps for main scenario:

  1. The user requests to create a new forum thread.
  2. The system prompts the user to select a forum topic, create a forum title, create a forum description, and optionally add a link to one or more advertisements in the pet shelter.
  3. The user selects a forum topic, creates a forum title, creates a forum description, adds a link to an advertisement, and selects to publish the thread.
  4. The system validates the topic, title, and description are not empty.
  5. The system publishes the forum thread, allowing all users to view it and make posts to it.
  6. The system confirms to the user that the thread has been published and adds the user to the thread's list of subscribers.

Alternative/Exceptional scenarios:

4a: The system finds that the topic, title, or description is empty.
4a.1: The system tells the user that the topic, title, and description are required to create a forum thread.
4a.2: Use case resumes at step 3.

Post-condition: The system creates the thread successfully.