Skip to content
This repository has been archived by the owner on May 24, 2022. It is now read-only.

Use Cases

Friedrich edited this page Mar 10, 2022 · 1 revision

User

Create User

The creation of a new user

Part of process:

Creating a new user

Primaire actor

Student

Objective

Creating a new user

Pre-condition

  • The new user is a student
  • The user has an email address

Normal flow

  1. The student fills in the form and sends it to the server.

Post-condition

The user is in the database of users to be reviewed.

The user now has to create an engagement.

Alternative Flow

(An admin creates a new admin, that is possibly not a student.)

To be checked: do we have to create a use case “create student”, “create coach”, …?

The user creates an accoubt with “Connect to GitHub”

Activate User

Before you can use your newly created account an admin first has to approve it

Part of process:

Create user

Primaire actor

Admin

Objective

Accepting a user

Pre-condition

  • The user had been created.
  • The user has not yet been activated.

Normal flow

  1. The admin gets a notification that a new user has been created.
  2. The admin accepts the user.

Post-condition

The user has been activated and is in the group of people to be reviewed.

Alternative Flow

The user is denied and deleted.

Delete User

A user requests to have his account deleted

Part of process:

User modification

Primaire actor

Admin

Objective

Deleting a user

Pre-condition

  • The user account has been created.

Normal flow

  1. The system deletes the account.
  2. The system deletes the linked engagements.

Post-condition

The user is removed from the system and no information is left about it.

Alternative Flow

Not applicable.

Delete all users

After each edition, all users are cleared from the database

Part of process:

User modification

Primaire actor

Admin

Objective

Deleting all users

Pre-condition

  • The session has ended

Normal flow

  1. The system deletes all accounts.
  2. The system deletes the linked engagements.

Post-condition

All users are removed from the system and no information is left about it.

Alternative Flow

Not applicable.

Project

Create project

The creation of a new project

Part of process

create project

Primaire actor

admin

Objective

Create project.

Pre-conditions

Project is not created yet.

Normal Flow

Fill in form for new project:

  • required skills for the project
  • who is the partner
  • number of students needed

Post-condition

Project is created.

Suggest user (student)

A coach suggests a student for a project

Part of process:

suggest yes/no/maybe for user for project

Primaire actor

coach

Objective

user has tag yes/no/maybe from specific coach for specific project

Pre-condition

  • The user had been created.
  • The user has been activated.
  • The coach has been assigned a project

Normal flow

  1. The coach chooses suggestion (yes/no/maybe)
  2. update user

Post-condition

user is updated

Alternative Flow

Assign user (student) to project

An admin deems that a certain is the right person for a certain project

Part of process:

Create project

Primaire actor

Admin

Objective

Assigning a user to a project.

Pre-condition

  • The user had been created.
  • The project has been created.

Normal flow

  1. The admin can assign a student to the project

Post-condition

The user has been added to the project.

Alternative Flow

The user is swiped to the project, but is already assigned to another project.

  1. The admin gets a notification that there is a conflict.
  2. The admin needs to resolve the conflict, by deleting student from project.

Assign user (coach) to project

During project initialization an admin needs to assign coaches to a project

Part of process:

Create project

Primaire actor

Admin

Objective

Assigning a coach to a project.

Pre-condition

  • The user had been created.
  • The project has been created.

Normal flow

  1. The admin can assign a coach to the project

Post-condition

The user has been added to the project.

Alternative Flow

Email

Send mail

During certain steps mails need to be sent out

Part of process:

Notification

Primaire actor

Admins

Objective

Let student know yes/maybe/no OR if account is removed.

Pre-condition

  • The user has been created.
  • The admins have decided on yes/maybe/no OR the student asked to remove its data.
  • The student has not yet received an email about the same subject.

Normal flow

  1. The button to decide on a student is hit OR the student has hit the button to remove its profile.
  2. The template for yes/maybe/no is taken and parameters are filled in OR the template that a user has been deleted is filled in.
  3. The email is sent to the student.

Post-condition

The student has received an email from the admins.

Alternative Flow

Add template

The creation of a new template

Part of process:

Send e-mail

Primaire actor

Admin

Objective

Create a template for an automated email.

Pre-condition

None

Normal flow

  1. The admin creates an email template with placeholders for certain words, names, ...
  2. The admin saves the template.

Post-condition

A new email template is created and can be used to send emails to certain users for certain actions.

Alternative Flow

The user is swiped to the project, but is already assigned to another project.

  1. The admin gets a notification that there is a conflict.
  2. The admin needs to resolve the conflict, by deleting student from project.

Edit template

A template should be editable

Part of process:

Create project

Primaire actor

Admin

Objective

Assigning a user to a project.

Pre-condition

  • The user had been created.
  • The project has been created.

Normal flow

  1. The user can be matched with the project.
  2. The admin can be swiped into the project.

Post-condition

The user has been added to the project.

Alternative Flow

The user is swiped to the project, but is already assigned to another project.

  1. The admin gets a notification that there is a conflict.
  2. The admin needs to resolve the conflict, by deleting student from project.
Clone this wiki locally