icon picker
DATA


On aura une ou plusieurs user stories pour chaque cas d'usage, un ou plusieurs critères d'acceptation par user story et une ou plusieurs tâches par user story dans le kanban
Feature > Use Case > User Stories > Acceptance Criterias
Feature > Use Case > User Stories > Acceptance Criterias
Conventions:
Features are Pages
Use Cases are action phrases
Features (Use Case Diagrams)
Feature
Link to Chart
Use Cases
Feature
Use Cases
Task
Connexion Page
4
Log In
Create a Login Page
Sign Up
Create a Sign Up Page
Reset Password
Create the Reset Password Pages
Sign Up
Chat Page
2
See conversation records
Create the Chat Page showing the chat tabs
Send a message
Chat Page: ability to send and receive messages
Manage Contacts Page
5
Add a contact
Create the Manage Contacts Page
Add a contact
Manage Contacts Page: Possibility to search for a user and add it as a contact
Add a contact
Manage Contacts Page: Possibility to accept or deny a contact request
Delete a contact
Manage Contacts Page: Possibility to accept or deny a contact request
Calendar Page
5
See the calendar
Create the Calendar Page showing the user’s calendar
Add an event
Delete an event
Invite another User to an event
Edit an event
Task Management Page
6
See tasks
Create a task
Edit a task
Delete a task
Mark task as done/undone
Create a task for their student
Dashboard Page
3
See most important information
Access to other pages
Logout
Edit Profile Page
1
Edit Profile

User: tutor or student with an existing account in the app
Visitor: person who doesn’t have an account in the app
App: (website + mobile app)
Contact: user of the app that is able to send and receive messages. Users have to add each other as contacts to send and receive messages from each other.
Event: Specific time and date where at least one user is participating.
Done / todo task: Status of a task. Done marks the task with a checked box, undone with an unchecked box
User Stories
Feature
Use Cases
User Stories
[FR] User Stories
1
Connexion Page
Log In
As a logged out user, I want to log in securely so I can access the application's features and my data in a protected way.
En tant qu'utilisateur déconnecté, je veux me connecter de manière sécurisée afin de pouvoir accéder aux fonctionnalités de l'application et à mes données de manière protégée.
2
Connexion Page
Sign Up
As a visitor, I want to signup to the app as a new student or tutor so I can access the features I need
En tant que visiteur, je veux m'inscrire à l'application en tant que nouvel élève ou tuteur afin de pouvoir accéder aux fonctionnalités dont j'ai besoin.
3
Connexion Page
Reset Password
As a logged-out user, I want to be able to log in if I have forgotten my password, in order to access the application
En tant qu'utilisateur déconnecté, je veux pouvoir me connecter si j'ai oublié mon mot de passe, afin d'accéder à l'application.
4
Dashboard Page
Logout
As a logged-in user, I want to be able to log out easily, so I can avoid somebody else accessing my information
En tant qu'utilisateur connecté, je veux pouvoir me déconnecter facilement, afin d'éviter que quelqu'un d'autre n'accède à mes informations.
5
Dashboard Page
Access to other pages
As a user, I want to be able to access the chat, calendar and task management pages from the dashboard, to view them in more detail
En tant qu'utilisateur, je veux pouvoir accéder aux pages de chat, de calendrier et de gestion des tâches à partir du tableau de bord, afin de les consulter plus en détail.
6
Dashboard Page
See most important information
As a user, I want to see a summary of my tasks on the dashboard, to make sure I don't forget them
En tant qu'utilisateur, je veux voir un résumé de mes tâches sur le tableau de bord, pour m'assurer que je ne les oublie pas.
7
Dashboard Page
See most important information
As a user, I want to see the list of upcoming events on the dashboard, to make sure I don't miss an event
En tant qu'utilisateur, je veux voir la liste des événements à venir sur le tableau de bord, pour m'assurer que je ne manque aucun événement.
8
Dashboard Page
See most important information
As a user, I want to see on the dashboard if I have any unread chat messages, so I don't miss them
En tant qu'utilisateur, je veux voir sur le tableau de bord si j'ai des messages de chat non lus, pour ne pas les manquer.
9
Dashboard Page
Access to other pages
As a user, I want to be able to easily return to the dashboard page when I use the different features, so I can easily navigate the app
En tant qu'utilisateur, je veux pouvoir revenir facilement à la page du tableau de bord lorsque j'utilise les différentes fonctionnalités, afin de pouvoir naviguer facilement dans l'application.
10
Chat Page
See conversation records
As a user, I want to be able to consult the history of my conversations with my contacts, to easily find information exchanged
En tant qu'utilisateur, je veux pouvoir consulter l'historique de mes conversations avec mes contacts, pour retrouver facilement les informations échangées
11
Manage Contacts Page
Add a contact
As a user, I want to be able to search and add a contact, to be able to chat with them later
En tant qu'utilisateur, je veux pouvoir rechercher et ajouter un contact, afin de pouvoir chatter avec lui ultérieurement.
12
Manage Contacts Page
Add a contact
As a user, I want to be able to accept or decline a contact request, so I don't receive messages by contacts I don't want to communicate with
En tant qu'utilisateur, je veux pouvoir accepter ou refuser une demande de contact, afin de ne pas recevoir de messages de contacts avec lesquels je ne souhaite pas communiquer.
13
Manage Contacts Page
Delete a contact
As a user, I want to be able to delete a contact, so that I don't receive any more messages from that user
En tant qu'utilisateur, je veux pouvoir supprimer un contact, afin de ne plus recevoir de messages de cet utilisateur.
14
Chat Page
See conversation records
As a user, I want to be able to see the sender's profile picture next to each message, to make it easier to read the conversation and make sure I'm talking to the right contact
En tant qu'utilisateur, je veux pouvoir voir la photo de profil de l'expéditeur à côté de chaque message, afin de faciliter la lecture de la conversation et de m'assurer que je parle au bon contact.
15
Chat Page
Send a message
As a user, I want to be able to send messages to my contacts so that I can exchange information with them
En tant qu'utilisateur, je veux pouvoir envoyer des messages à mes contacts afin d'échanger des informations avec eux.
16
Chat Page
See conversation records
As a user, I want to see when a message was sent, to better coordinate my exchanges
En tant qu'utilisateur, je veux voir quand un message a été envoyé, afin de mieux coordonner mes échanges.
17
Chat Page
See conversation records
As a user, I want to be able to see if a message I have sent has been read by the recipient
En tant qu'utilisateur, je veux pouvoir voir si un message que j'ai envoyé a été lu par son destinataire.
18
Chat Page
See conversation records
As a user, I want to see if I have any unread message so I can make sure I read them
En tant qu'utilisateur, je veux voir si j'ai des messages non lus afin de m'assurer de les lire.
19
Calendar Page
See the calendar
As a user, I want to be able to navigate to any day of my calendar, to see events that do not appear in the current view
En tant qu'utilisateur, je veux pouvoir naviguer vers n'importe quel jour de mon calendrier, pour voir les événements qui n'apparaissent pas dans la vue actuelle.
20
Calendar Page
Add an event
As a user, I want to be able to add an event to my calendar, so I can organise my time
En tant qu'utilisateur, je veux pouvoir ajouter un événement à mon calendrier, afin de pouvoir organiser mon temps.
21
Calendar Page
Add an event
As a User, I want to be able to invite one of my contacts to an event I created, so I can coordinate our appointments
En tant qu'utilisateur, je veux pouvoir inviter un de mes contacts à un événement que j'ai créé, afin de coordonner nos rendez-vous.
22
Calendar Page
Delete an event
As a user, I want to be able to delete an event from my calendar, to keep my schedule up to date
En tant qu'utilisateur, je veux pouvoir supprimer un événement de mon calendrier, afin de garder mon emploi du temps à jour.
23
Calendar Page
Edit an event
As a user, I want to be able to edit an event I’ve created from my calendar so I can correct mistakes or update the event without creating a new one
En tant qu'utilisateur, je veux pouvoir modifier un événement que j'ai créé à partir de mon calendrier afin de pouvoir corriger des erreurs ou mettre à jour l'événement sans en créer un nouveau.
24
Task Management Page
See tasks
As a user, I want to be able to see my complete task list to manage my tasks easily
En tant qu'utilisateur, je veux pouvoir consulter ma liste de tâches complète pour gérer facilement mes tâches.
25
Task Management Page
See tasks
As a student, I want to be able to see which of my tasks have been assigned by my tutor, so I can make sense of my tasks
En tant qu'étudiant, je veux pouvoir voir quelles sont les tâches qui m'ont été assignées par mon tuteur, afin de pouvoir donner un sens à mes tâches.
26
Task Management Page
See tasks
As a tutor, I want to be able to see which tasks are mine and which tasks I have assigned to my student, to make sure I don't make mistakes in my task management
En tant que tuteur, je veux pouvoir voir quelles sont mes tâches et quelles sont les tâches que j'ai assignées à mon élève, afin de m'assurer que je ne fais pas d'erreurs dans la gestion de mes tâches.
27
Task Management Page
Create a task
As a User, I want to be able to create a task in my task management page, so I can see them on that page
En tant qu'utilisateur, je veux pouvoir créer une tâche dans ma page de gestion des tâches, afin de pouvoir les voir sur cette page.
28
Task Management Page
Create a task for their student
As a tutor, I want to be able to create tasks and assign them to my student, so they can complete them
En tant que tuteur, je veux pouvoir créer des tâches et les assigner à mon élève, afin qu'il puisse les accomplir.
29
Task Management Page
Edit a task
As a tutor I want to be able to edit a task’s description and assign the task or not to my student
En tant que tuteur, je veux pouvoir modifier la description d'une tâche et l'attribuer ou non à mon élève.
30
Task Management Page
Edit a task
As a user, I want to be able to mark a task as done / todo easily, so I can visualise which tasks are done
En tant qu'utilisateur, je veux pouvoir marquer facilement une tâche comme effectuée / à effectuer, afin de pouvoir visualiser les tâches effectuées.
31
Task Management Page
Edit a task
As a user, I want to be able to edit a task description
En tant qu'utilisateur, je veux pouvoir modifier la description d'une tâche.
32
Task Management Page
Delete a task
As a user, I want to be able to delete any of my tasks (tasks I can see on “my tasks” tab) so I can keep my page clean
En tant qu'utilisateur, je veux pouvoir supprimer n'importe laquelle de mes tâches (tâches que je peux voir dans l'onglet "Mes tâches") afin de garder ma page propre.
33
Task Management Page
Delete a task
As a tutor, I want to be able to delete any of the tasks I have assigned to my student, so I can keep my page clean
En tant que tuteur, je veux pouvoir supprimer toutes les tâches que j'ai assignées à mon élève, afin de garder ma page propre.
34
Edit Profile Page
Edit Profile
As a user, I want to be able to change my username, email, password and profile picture so I can personalise my account
En tant qu'utilisateur, je veux pouvoir modifier mon nom d'utilisateur, mon adresse électronique, mon mot de passe et ma photo de profil afin de personnaliser mon compte.
35
Connexion Page
Sign Up
As a user, I want to know if I already have an account on the app when I try to sign-up, so I can use the login page instead
En tant qu'utilisateur, je veux savoir si je possède déjà un compte sur l'application lorsque j'essaie de m'inscrire, afin de pouvoir utiliser la page de connexion à la place.
There are no rows in this table
Tasks
1
Tasks
Feature
Formated task
Link to most relevant use case
Link to feature
Column
1
Create a Sign Up Page
🔑
🔑 Create a Sign Up Page
Sign Up
Connexion Page
ANALYZE
2
Create a Login Page
🔑
🔑 Create a Login Page
Log In
Connexion Page
ANALYZE
3
Create the Reset Password Pages
🔑
🔑 Create the Reset Password Pages
Reset Password
Connexion Page
ANALYZE
4
Create the Chat Page showing the chat tabs
💬
💬 Create the Chat Page showing the chat tabs
See conversation records
Chat Page
ANALYZE
5
Create the Manage Contacts Page
🤝
🤝 Create the Manage Contacts Page
Add a contact
Manage Contacts Page
ANALYZE
6
Manage Contacts Page: Possibility to search for a user and add it as a contact
🤝
🤝 Manage Contacts Page: Possibility to search for a user and add it as a contact
Add a contact
Manage Contacts Page
ANALYZE
7
Manage Contacts Page: Possibility to accept or deny a contact request
🤝
🤝 Manage Contacts Page: Possibility to accept or deny a contact request
Add a contact
Manage Contacts Page
ANALYZE
8
Manage Contacts Page: Possibility to delete a contact
🤝
🤝 Manage Contacts Page: Possibility to delete a contact
Delete a contact
Manage Contacts Page
ANALYZE
9
Chat Page: ability to send and receive messages
💬
💬 Chat Page: ability to send and receive messages
See conversation records
Chat Page
ANALYZE
10
Create the Calendar Page showing the user’s calendar
🗓
🗓 Create the Calendar Page showing the user’s calendar
See the calendar
Calendar Page
ANALYZE
11
Calendar Page: possibility to add/delete an event
🗓
🗓 Calendar Page: possibility to add/delete an event
Add an event
Calendar Page
ANALYZE
12
Calendar Page: notify participant when they are added/removed to an event
🗓
🗓 Calendar Page: notify participant when they are added/removed to an event
Invite another User to an event
Calendar Page
ANALYZE
13
Create the Task page for Tutors
✅ Create the Task page for Tutors
See tasks
Task Management Page
ANALYZE
14
Create the Task page for Students
✅ Create the Task page for Students
See tasks
Task Management Page
ANALYZE
15
Task page for Tutors: ability to assign a task to a student
✅ Task page for Tutors: ability to assign a task to a student
Create a task for their student
Task Management Page
ANALYZE
16
Task Page: Ability to create/edit/mark as done or todo/delete events
✅ Task Page: Ability to create/edit/mark as done or todo/delete events
Create a task
Task Management Page
ANALYZE
17
Create the Dashboard Page
📊
📊 Create the Dashboard Page
See most important information
Dashboard Page
ANALYZE
18
Create the Edit Profile Page
✍️
✍️ Create the Edit Profile Page
Edit Profile
Edit Profile Page
ANALYZE
19
Edit Profile Page: possibility to change email, username, password and profile picture
✍️
✍️ Edit Profile Page: possibility to change email, username, password and profile picture
Edit Profile
Edit Profile Page
ANALYZE
20
Dashboard / Main menu: possibility to logout
📊
📊 Dashboard / Main menu: possibility to logout
Logout
Dashboard Page
ANALYZE
There are no rows in this table

User stories done :
35/35
Acceptance Criteria done:
62
Ratio Acceptance Criteria for number of unique user stories for the
Edit Profile
Use case (
@Edit Profile Page
Feature)
3/1
@As a user, I want to be able to change my username, email, password and profile picture so I can personalise my account
Acceptance Criteria
1
Feature
Use Cases
User Stories
Acceptance Criteria
Scenario
Given
When
Then
And
[FR] Scenario
[FR] Given
[FR] When
[FR] Then
[FR] And
1
Connexion Page
Log In
As a logged out user, I want to log in securely so I can access the application's features and my data in a protected way.
SCENARIO: Logged out user tries to log in with valid credentials
GIVEN: I am a logged out user and am on the login page,
WHEN: I fill in the "Email" and "Password" fields with my valid authentication information and click the Login button,
THEN: the system logs me in
AND: I go to the "dashboard" page
Logged out user tries to log in with valid credentials
I am a logged out user and am on the login page,
I fill in the "Email" and "Password" fields with my valid authentication information and click the Login button,
the system logs me in
I go to the "dashboard" page
Un utilisateur déconnecté tente de se connecter avec des informations d'identification valides.
I am a logged out user and am on the login page,
I fill in the "Email" and "Password" fields with my valid authentication information and click the Login button,
the system logs me in
I go to the "dashboard" page
2
Connexion Page
Log In
As a logged out user, I want to log in securely so I can access the application's features and my data in a protected way.
SCENARIO: Logged out user logs in with invalid email or password
GIVEN: That I am a logged out system user and am on the login page,
WHEN: I fill in the "Email" field with an invalid email and/or password
THEN: the system notifies me with an error message that this email or password is invalid
AND: I stay on the Login Page
Logged out user logs in with invalid email or password
That I am a logged out system user and am on the login page,
I fill in the "Email" field with an invalid email and/or password
the system notifies me with an error message that this email or password is invalid
I stay on the Login Page
L'utilisateur déconnecté se connecte avec une adresse e-mail ou un mot de passe invalide.
That I am a logged out system user and am on the login page,
I fill in the "Email" field with an invalid email and/or password
the system notifies me with an error message that this email or password is invalid
I stay on the Login Page
3
Connexion Page
Reset Password
As a logged-out user, I want to be able to log in if I have forgotten my password, in order to access the application
SCENARIO: Logged out user forgot their password
GIVEN: That I am a registered user who provided a valid email address when creating my account
WHEN: I click on “forgot password”
THEN: I’m prompted with a form asking for my email address.
AND:
Logged out user forgot their password
That I am a registered user who provided a valid email address when creating my account
I click on “forgot password”
I’m prompted with a form asking for my email address.
L'utilisateur déconnecté a oublié son mot de passe
That I am a registered user who provided a valid email address when creating my account
I click on “forgot password”
I’m prompted with a form asking for my email address.
4
Connexion Page
Reset Password
As a logged-out user, I want to be able to log in if I have forgotten my password, in order to access the application
SCENARIO: Logged out user forgot their password, accessed the “forgot password”
GIVEN: That I am a registered user who provided a valid email address when creating my account, on the Forgot Password Page
WHEN: I enter a valid email address and click the confirm button
THEN: the system notifies me with that a temporary password has been sent to the email address I entered
AND: I get an email to the email address I entered with a link to reset my password
Logged out user forgot their password, accessed the “forgot password”
That I am a registered user who provided a valid email address when creating my account, on the Forgot Password Page
I enter a valid email address and click the confirm button
the system notifies me with that a temporary password has been sent to the email address I entered
I get an email to the email address I entered with a link to reset my password
L'utilisateur déconnecté a oublié son mot de passe et a accédé à la page "Mot de passe oublié".
That I am a registered user who provided a valid email address when creating my account, on the Forgot Password Page
I enter a valid email address and click the confirm button
the system notifies me with that a temporary password has been sent to the email address I entered
I get an email to the email address I entered with a link to reset my password
5
Connexion Page
Sign Up
As a visitor, I want to signup to the app as a new student or tutor so I can access the features I need
SCENARIO: An unregistered visitor access the log-in page but doesn’t have an account
GIVEN: that I am an unregistered visitor on the "login” page
WHEN: I click on “sign-up” on the login page
THEN: I’m redirected to the “Sign-up” page
AND:
An unregistered visitor access the log-in page but doesn’t have an account
that I am an unregistered visitor on the "login” page
I click on “sign-up” on the login page
I’m redirected to the “Sign-up” page
Un visiteur non inscrit accède à la page de connexion mais n'a pas de compte.
that I am an unregistered visitor on the "login” page
I click on “sign-up” on the login page
I’m redirected to the “Sign-up” page
6
Connexion Page
Sign Up
As a visitor, I want to signup to the app as a new student or tutor so I can access the features I need
SCENARIO: An unregistered visitor wants to create a student account on the “student sign up” page
GIVEN: that I am an unregistered visitor on the "sign up” page
WHEN: I enter a valid email and 8 digit password then click on the button to create an account as a student
THEN: I access the dashboard page as a new student
AND: I get an email to the email address I used to create my account confirming the creation of my account
AND I get a tutor assigned automatically added to my contacts
An unregistered visitor wants to create a student account on the “student sign up” page
that I am an unregistered visitor on the "sign up” page
I enter a valid email and 8 digit password then click on the button to create an account as a student
I access the dashboard page as a new student
I get an email to the email address I used to create my account confirming the creation of my account
AND I get a tutor assigned automatically added to my contacts
Un visiteur non enregistré veut créer un compte sur la page "s'inscrire".
that I am an unregistered visitor on the "sign up” page
I enter a valid email and 8 digit password then click on the button to create an account
I access the dashboard page as a new user
I get an email to the email address I used to create my account confirming the creation of my account
AND I get a tutor / student assigned automatically added to my contacts
7
Connexion Page
Sign Up
As a visitor, I want to signup to the app as a new student or tutor so I can access the features I need
SCENARIO: An unregistered visitor wants to create a tutor account on the “tutor sign up” page
GIVEN: that I am an unregistered visitor on the "sign up” page
WHEN: I enter a valid email and 8 digit password then click on the button to create an account as a tutor
THEN: I access the dashboard page as a new tutor
AND: I get an email to the email address I used to create my account confirming the creation of my account
AND I get a student assigned automatically added to my contacts
An unregistered visitor wants to create a tutor account on the “tutor sign up” page
that I am an unregistered visitor on the "sign up” page
I enter a valid email and 8 digit password then click on the button to create an account as a tutor
I access the dashboard page as a new tutor
I get an email to the email address I used to create my account confirming the creation of my account
AND I get a student assigned automatically added to my contacts
Un visiteur non enregistré veut créer un compte sur la page "s'inscrire".
that I am an unregistered visitor on the "sign up” page
I enter a valid email and 8 digit password then click on the button to create an account
I access the dashboard page as a new user
I get an email to the email address I used to create my account confirming the creation of my account
AND I get a tutor / student assigned automatically added to my contacts
8
Connexion Page
Sign Up
As a visitor, I want to signup to the app as a new student or tutor so I can access the features I need
SCENARIO: An unregistered visitor wants to create an account on the “sign up” page
GIVEN: that I am an unregistered visitor on the "sign up” page
WHEN: I enter a non-valid email and / or invalid 8 digit password and / or the 2 passwords don’t match then click on the button to create an account
THEN: I get a message reading that my email / password is not valid
AND:
An unregistered visitor wants to create an account on the “sign up” page
that I am an unregistered visitor on the "sign up” page
I enter a non-valid email and / or invalid 8 digit password and / or the 2 passwords don’t match then click on the button to create an account
I get a message reading that my email / password is not valid
Un visiteur non enregistré veut créer un compte sur la page "s'inscrire".
that I am an unregistered visitor on the "sign up” page
I enter a non-valid email and / or invalid 8 digit password and / or the 2 passwords don’t match then click on the button to create an account
I get a message reading that my email / password is not valid
9
Connexion Page
Sign Up
As a user, I want to know if I already have an account on the app when I try to sign-up, so I can use the login page instead
SCENARIO: Logged out user on the “sign up” page attempts to signup
GIVEN: that I enter an email address that is already associated with a user and valid password
WHEN: I click on “sign up as a tutor” OR “sign up as a student”
THEN: the system notifies me that my email address has already been taken
AND:
Logged out user on the “sign up” page attempts to signup
that I enter an email address that is already associated with a user and valid password
I click on “sign up as a tutor” OR “sign up as a student”
the system notifies me that my email address has already been taken
Un utilisateur déconnecté sur la page "s'inscrire" tente de s'inscrire.
that I enter an email address that is already associated with a user and valid password
I click on “sign up as a tutor” OR “sign up as a student”
the system notifies me that my email address has already been taken
10
Calendar Page
Add an event
As a user, I want to be able to add an event to my calendar, so I can organise my time
SCENARIO: User wants to add an event
GIVEN: That I’m on the Calendar Page
WHEN: I click on the button “add an event”
THEN: On a new page or in a popup, I’m prompted with:
a date-time picker
a field to name my event
a list selector to add one of my contacts to the event

A button to add my event
A cancel button
AND:
User wants to add an event
That I’m on the Calendar Page
I click on the button “add an event”
On a new page or in a popup, I’m prompted with:
a date-time picker
a field to name my event
a list selector to add one of my contacts to the event

A button to add my event
A cancel button
L'utilisateur veut ajouter un événement
That I’m on the Calendar Page
I click on the button “add an event”
On a new page or in a popup, I’m prompted with:
a date-time picker
a field to name my event
a list selector to add one of my contacts to the event

A button to add my event
A cancel button
11
Calendar Page
Add an event
As a user, I want to be able to add an event to my calendar, so I can organise my time
SCENARIO: User adds an event
GIVEN: That I’m on the Calendar Page, with the
“create an event” window opened
That I give valid information in all the fields
WHEN: I press the “add event” button
THEN: I get a message reading that the event has been successfully added to my calendar
AND: The windows “add an event” disappears
AND
I can now see the event in my calendar

User adds an event
That I’m on the Calendar Page, with the
“create an event” window opened
That I give valid information in all the fields
I press the “add event” button
I get a message reading that the event has been successfully added to my calendar
The windows “add an event” disappears
AND
I can now see the event in my calendar

L'utilisateur ajoute un événement
That I’m on the Calendar Page, with the
“create an event” window opened
That I give valid information in all the fields
I press the “add event” button
I get a message reading that the event has been successfully added to my calendar
The windows “add an event” disappears
AND
I can now see the event in my calendar

12
Calendar Page
Add an event
As a User, I want to be able to invite one of my contacts to an event I created, so I can coordinate our appointments
SCENARIO: User creates an event inviting a contact
GIVEN: That I have successfully created an event inviting one of my contacts
WHEN: The event is created
THEN: The other participants to the event are notified through the common chat tab that they are participants to this event
AND: The event is added to the participant’s calendar
User creates an event inviting a contact
That I have successfully created an event inviting one of my contacts
The event is created
The other participants to the event are notified through the common chat tab that they are participants to this event
The event is added to the participant’s calendar
L'utilisateur crée un événement en invitant un contact
That I have successfully created an event inviting one of my contacts
The event is created
The other participants to the event are notified through the common chat tab that they are participants to this event
The event is added to the participant’s calendar
13
Calendar Page
Delete an event
As a user, I want to be able to delete an event from my calendar, to keep my schedule up to date
SCENARIO: User deletes an event
GIVEN: That I have at least one event created by myself in my calendar
WHEN: I select the event and click on the “delete event” button
THEN: the event is deleted from my calendar
AND: I see a message confirming that the event has been deleted
User deletes an event
That I have at least one event created by myself in my calendar
I select the event and click on the “delete event” button
the event is deleted from my calendar
I see a message confirming that the event has been deleted
L'utilisateur supprime un événement
That I have at least one event created by myself in my calendar
I select the event and click on the “delete event” button
the event is deleted from my calendar
I see a message confirming that the event has been deleted
14
Calendar Page
Delete an event
As a user, I want to be able to delete an event from my calendar, to keep my schedule up to date
SCENARIO: User deletes an event where another contact is participating / invited
GIVEN: That I have at least one event created by myself and where another contact is invited in my calendar
WHEN: I select the event and click on the “delete event” button
THEN: the event is deleted from my calendar
The event is deleted from my contact’s calendar
AND: My contact receives an automatic message in our conversation chat saying that this event has been deleted
User deletes an event where another contact is participating / invited
That I have at least one event created by myself and where another contact is invited in my calendar
I select the event and click on the “delete event” button
the event is deleted from my calendar
The event is deleted from my contact’s calendar
My contact receives an automatic message in our conversation chat saying that this event has been deleted
L'utilisateur supprime un événement auquel un autre contact participe / est invité
That I have at least one event created by myself and where another contact is invited in my calendar
I select the event and click on the “delete event” button
the event is deleted from my calendar
The event is deleted from my contact’s calendar
My contact receives an automatic message in our conversation chat saying that this event has been deleted
15
Task Management Page
See tasks
As a user, I want to be able to see my complete task list to manage my tasks easily
SCENARIO: Student wants to see their tasks
GIVEN: That I’m a student and I have at least one task in my tasks
WHEN: I open my Tasks Management Page
THEN: I can see both my tasks “to do” and my tasks “done”
AND:
Student wants to see their tasks
That I’m a student and I have at least one task in my tasks
I open my Tasks Management Page
I can see both my tasks “to do” and my tasks “done”
L'étudiant veut voir ses tâches
That I’m a student and I have at least one task in my tasks
I open my Tasks Management Page
I can see both my tasks “to do” and my tasks “done”
16
Task Management Page
See tasks
As a student, I want to be able to see which of my tasks have been assigned by my tutor, so I can make sense of my tasks
SCENARIO: Student wants to see which tasks have been assigned by the tutor
GIVEN: That I’m a student and I have at least one task in my tasks
WHEN: I look at a specific task
THEN: I can see if there is the profile picture of my tutor in the “assigned by” column, on the task
AND: If the task doesn’t have any profile pic associated, I know that the task have been created by myself, the student
Student wants to see which tasks have been assigned by the tutor
That I’m a student and I have at least one task in my tasks
I look at a specific task
I can see if there is the profile picture of my tutor in the “assigned by” column, on the task
If the task doesn’t have any profile pic associated, I know that the task have been created by myself, the student
L'étudiant veut voir les tâches qui lui ont été assignées par le tuteur.
That I’m a student and I have at least one task in my tasks
I look at a specific task
I can see if there is the profile picture of my tutor in the “assigned by” column, on the task
If the task doesn’t have any profile pic associated, I know that the task have been created by myself, the student
17
Task Management Page
See tasks
As a tutor, I want to be able to see which tasks are mine and which tasks I have assigned to my student, to make sure I don't make mistakes in my task management
SCENARIO: Tutor wants to see its own tasks
GIVEN: That I’m a tutor and have at least one task in my tasks
WHEN: I open my Tasks Management Page, on the “my tasks” tab
THEN: I can see both my tasks to do and my tasks done
AND:
Tutor wants to see its own tasks
That I’m a tutor and have at least one task in my tasks
I open my Tasks Management Page, on the “my tasks” tab
I can see both my tasks to do and my tasks done
Le tuteur veut voir ses propres tâches
That I’m a tutor and have at least one task in my tasks
I open my Tasks Management Page, on the “my tasks” tab
I can see both my tasks to do and my tasks done
18
Task Management Page
See tasks
As a tutor, I want to be able to see which tasks are mine and which tasks I have assigned to my student, to make sure I don't make mistakes in my task management
SCENARIO: Tutor wants to see assigned tasks
GIVEN: That I’m a tutor and have assigned at least one task to my student
WHEN: I open my Tasks Management page, on the “assigned tasks” tab
THEN: I can see the tasks I have assigned to my student
AND: The student profile picture appears in the “assigned to” column of the assigned tasks
Tutor wants to see assigned tasks
That I’m a tutor and have assigned at least one task to my student
I open my Tasks Management page, on the “assigned tasks” tab
I can see the tasks I have assigned to my student
The student profile picture appears in the “assigned to” column of the assigned tasks
Le tuteur veut voir les tâches qui lui ont été assignées
That I’m a tutor and have assigned at least one task to my student
I open my Tasks Management page, on the “assigned tasks” tab
I can see the tasks I have assigned to my student
The student profile picture appears in the “assigned to” column of the assigned tasks
19
Task Management Page
Create a task
As a User, I want to be able to create a task in my task management page, so I can see them on that page
SCENARIO: User wants to add a task
GIVEN: That I’m on the Task Management Page
That I clicked on “add a task”
WHEN: I add a task description and click “add task”
THEN: the new task is added to my tasks. The task is in a “todo” state
AND:
User wants to add a task
That I’m on the Task Management Page
That I clicked on “add a task”
I add a task description and click “add task”
the new task is added to my tasks. The task is in a “todo” state
L'utilisateur veut ajouter une tâche
That I’m on the Task Management Page
That I clicked on “add a task”
I add a task description and click “add task”
the new task is added to my tasks. The task is in a “todo” state
20
Task Management Page
Create a task
As a User, I want to be able to create a task in my task management page, so I can see them on that page
SCENARIO: User cancels task creation
GIVEN: That I've clicked on the “add a task button” and wrote the description of my task
WHEN: I press the “cancel” button
THEN: No task is added
AND: I go back to the view showing all my tasks
User cancels task creation
That I've clicked on the “add a task button” and wrote the description of my task
I press the “cancel” button
No task is added
I go back to the view showing all my tasks
L'utilisateur annule la création d'une tâche
That I've clicked on the “add a task button” and wrote the description of my task
I press the “cancel” button
No task is added
I go back to the view showing all my tasks
21
Task Management Page
Create a task for their student
As a tutor, I want to be able to create tasks and assign them to my student, so they can complete them
SCENARIO: Tutor wants to add a task for themselves
GIVEN: That I’m on the Task Management Page, on the “my tasks” tab
That I clicked on “add a task”
WHEN: I add a task description and click “add task”
THEN: the new task is added to the “my tasks” tab. The task is in a “todo” state
AND:
Tutor wants to add a task for themselves
That I’m on the Task Management Page, on the “my tasks” tab
That I clicked on “add a task”
I add a task description and click “add task”
the new task is added to the “my tasks” tab. The task is in a “todo” state
Le tuteur veut ajouter une tâche pour lui-même
That I’m on the Task Management Page, on the “my tasks” tab
That I clicked on “add a task”
I add a task description and click “add task”
the new task is added to the “my tasks” tab. The task is in a “todo” state
22
Task Management Page
Create a task for their student
As a tutor, I want to be able to create tasks and assign them to my student, so they can complete them
SCENARIO: Tutor wants to add a task for a student, on the “assigned tasks” tab
GIVEN: That I’m a tutor on my task management page, on the “assigned tasks” tab
That I clicked on “add a task”
WHEN: I add a task description, assign the task to my student using the drop down menu and click “add task”
THEN: the new “todo” task is added to my “assigned tasks
AND: The task appears in the “my tasks” tab of my student’s app management page, with the tutor’s profile picture in the “assigned by” field
Tutor wants to add a task for a student, on the “assigned tasks” tab
That I’m a tutor on my task management page, on the “assigned tasks” tab
That I clicked on “add a task”
I add a task description, assign the task to my student using the drop down menu and click “add task”
the new “todo” task is added to my “assigned tasks
The task appears in the “my tasks” tab of my student’s app management page, with the tutor’s profile picture in the “assigned by” field
Le tuteur veut ajouter une tâche pour un étudiant, dans l'onglet "tâches assignées".
That I’m a tutor on my task management page, on the “assigned tasks” tab
That I clicked on “add a task”
I add a task description, assign the task to my student using the drop down menu and click “add task”
the new “todo” task is added to my “assigned tasks
The task appears in the “my tasks” tab of my student’s app management page, with the tutor’s profile picture in the “assigned by” field
23
Task Management Page
Create a task for their student
As a tutor, I want to be able to create tasks and assign them to my student, so they can complete them
SCENARIO: Tutor on “my tasks” adds a task assigned to a student
GIVEN: That I've clicked on the “add a task button”, wrote the description of my task and assigned the task to my student
WHEN: I press the “add a task” button
THEN: The task is added to the “assigned tasks” tab
AND: The task appears in the “my tasks” tab of my student’s app management page, with the tutor’s profile picture in the “assigned by” field
Tutor on “my tasks” adds a task assigned to a student
That I've clicked on the “add a task button”, wrote the description of my task and assigned the task to my student
I press the “add a task” button
The task is added to the “assigned tasks” tab
The task appears in the “my tasks” tab of my student’s app management page, with the tutor’s profile picture in the “assigned by” field
Le tuteur, dans "mes tâches", ajoute une tâche assignée à un étudiant.
That I've clicked on the “add a task button”, wrote the description of my task and assigned the task to my student
I press the “add a task” button
The task is added to the “assigned tasks” tab
The task appears in the “my tasks” tab of my student’s app management page, with the tutor’s profile picture in the “assigned by” field
24
Edit Profile Page
Edit Profile
As a user, I want to be able to change my username, email, password and profile picture so I can personalise my account
SCENARIO: User wants to change its username or email information on the “edit profile” page
GIVEN: That I’m on the “edit profile” page.
That I can see a form with the following fields:
username
email
upload profile picture
WHEN: I update my email and/or username with valid text and click on “save”.
THEN: My modifications are saved to the database
I see a notification reading that my modifications have been successfully saved
AND:
User wants to change its username or email information on the “edit profile” page
That I’m on the “edit profile” page.
That I can see a form with the following fields:
username
email
upload profile picture
I update my email and/or username with valid text and click on “save”.
My modifications are saved to the database
I see a notification reading that my modifications have been successfully saved
L'utilisateur veut modifier son nom d'utilisateur ou son adresse e-mail sur la page "modifier le profil".
That I’m on the “edit profile” page.
That I can see a form with the following fields:
username
email
upload profile picture
I update my email and/or username with valid text and click on “save”.
My modifications are saved to the database
I see a notification reading that my modifications have been successfully saved
25
Edit Profile Page
Edit Profile
As a user, I want to be able to change my username, email, password and profile picture so I can personalise my account
SCENARIO: User wants to upload its profile picture on the “edit profile” page
GIVEN: That I’m on the “edit profile” page.
That I can see a form with the following fields:
username
email
upload profile picture
WHEN: I click on “upload profile picture”
THEN: A navigation window from my operating system appears to let me select a valid .png or .jpg picture
I select a valid file
AND: My profile picture is updated when I press “save”
User wants to upload its profile picture on the “edit profile” page
That I’m on the “edit profile” page.
That I can see a form with the following fields:
username
email
upload profile picture
I click on “upload profile picture”
A navigation window from my operating system appears to let me select a valid .png or .jpg picture
I select a valid file
My profile picture is updated when I press “save”
L'utilisateur veut télécharger sa photo de profil sur la page "modifier le profil".
That I’m on the “edit profile” page.
That I can see a form with the following fields:
username
email
upload profile picture
I click on “upload profile picture”
A navigation window from my operating system appears to let me select a valid .png or .jpg picture
I select a valid file
My profile picture is updated when I press “save”
26
Dashboard Page
See most important information
As a user, I want to see a summary of my tasks on the dashboard, to make sure I don't forget them
SCENARIO: As a logged-in user on the dashboard page, I need to see if I have tasks to be done
GIVEN: That I have at least one task created and marked as “todo”
WHEN: I’m on the dashboard page
THEN: I can see a lits of my “todo” tasks with the description and state (”todo”)
AND:
As a logged-in user on the dashboard page, I need to see if I have tasks to be done
That I have at least one task created and marked as “todo”
I’m on the dashboard page
I can see a lits of my “todo” tasks with the description and state (”todo”)
En tant qu'utilisateur connecté à la page du tableau de bord, je dois voir si j'ai des tâches à accomplir.
That I have at least one task created and marked as “todo”
I’m on the dashboard page
I can see a lits of my “todo” tasks with the description and state (”todo”)
27
Dashboard Page
See most important information
As a user, I want to see the list of upcoming events on the dashboard, to make sure I don't miss an event
SCENARIO: As a logged-in user on the dashboard page, I need to see if I have any meetings today or coming soon
GIVEN: That I have at least one event in my calendar
WHEN: I’m on the dashboard page
THEN: I see my summary of events on my dashboard:
the events for today and the next incoming events with the specific date / time
AND:
As a logged-in user on the dashboard page, I need to see if I have any meetings today or coming soon
That I have at least one event in my calendar
I’m on the dashboard page
I see my summary of events on my dashboard:
the events for today and the next incoming events with the specific date / time
En tant qu'utilisateur connecté à la page du tableau de bord, j'ai besoin de savoir si j'ai des réunions aujourd'hui ou prochainement.
That I have at least one event in my calendar
I’m on the dashboard page
I see my summary of events on my dashboard:
the events for today and the next incoming events with the specific date / time
28
Dashboard Page
See most important information
As a user, I want to see on the dashboard if I have any unread chat messages, so I don't miss them
SCENARIO: As a logged-in user on the dashboard page, I want to see if I have unread messages
GIVEN: That I have at least one unread message in my chat
WHEN: I see my dashboard
THEN: I can see the number of unread messages I have, displayed as a notification badge on the “Chat” button/link in the menu
AND:
As a logged-in user on the dashboard page, I want to see if I have unread messages
That I have at least one unread message in my chat
I see my dashboard
I can see the number of unread messages I have, displayed as a notification badge on the “Chat” button/link in the menu
En tant qu'utilisateur connecté à la page du tableau de bord, je veux voir si j'ai des messages non lus.
That I have at least one unread message in my chat
I see my dashboard
I can see the number of unread messages I have, displayed as a notification badge on the “Chat” button/link in the menu
29
Dashboard Page
Access to other pages
As a user, I want to be able to access the chat, calendar and task management pages from the dashboard, to view them in more detail
SCENARIO: As a logged-in user on the dashboard page, I want to access my tasks or calendar pages to see more information
GIVEN: that I can see summaries of my tasks and events
WHEN: I click on the button to access my calendar under the summary of events
OR
I click on the button to access tasks under the summary of task
THEN: I’m redirected to the corresponding page of the app
AND:
As a logged-in user on the dashboard page, I want to access my tasks or calendar pages to see more information
that I can see summaries of my tasks and events
I click on the button to access my calendar under the summary of events
OR
I click on the button to access tasks under the summary of task
I’m redirected to the corresponding page of the app
En tant qu'utilisateur connecté à la page du tableau de bord, je veux accéder à mes tâches ou aux pages du calendrier pour obtenir plus d'informations.
that I can see summaries of my tasks and events
I click on the button to access my calendar under the summary of events
OR
I click on the button to access tasks under the summary of task
I’m redirected to the corresponding page of the app
30
Dashboard Page
Access to other pages
As a user, I want to be able to easily return to the dashboard page when I use the different features, so I can easily navigate the app
SCENARIO: As a logged-in user on any page of the app besides the dashboard
GIVEN: that I can see a “home” button
WHEN: I click on the “home” button
THEN: I’m redirected to the dashboard page of the app
AND:
As a logged-in user on any page of the app besides the dashboard
that I can see a “home” button
I click on the “home” button
I’m redirected to the dashboard page of the app
En tant qu'utilisateur connecté à n'importe quelle page de l'application autre que le tableau de bord.
that I can see a “home” button
I click on the “home” button
I’m redirected to the dashboard page of the app
31
Dashboard Page
Access to other pages
As a user, I want to be able to access the chat, calendar and task management pages from the dashboard, to view them in more detail
SCENARIO: User on the dashboard page wants to access different pages
GIVEN: That I am a logged-in user on the dashboard page seing a menu with the different main pages
WHEN: I click on the text of the different pages (Chat, Calendar, Tasks, Edit profile, logout)
THEN: I go to the corresponding page of the app
AND:
User on the dashboard page wants to access different pages
That I am a logged-in user on the dashboard page seing a menu with the different main pages
I click on the text of the different pages (Chat, Calendar, Tasks, Edit profile, logout)
I go to the corresponding page of the app
L'utilisateur connecté sur la page du tableau de bord veut accéder à différentes pages
That I am a logged-in user on the dashboard page seing a menu with the different main pages
I click on the text of the different pages (Chat, Calendar, Tasks, Edit profile, logout)
I go to the corresponding page of the app
32
Manage Contacts Page
Add a contact
As a user, I want to be able to search and add a contact, to be able to chat with them later
SCENARIO: Logged-in user on the chat page wants to add a contact
GIVEN: That I have a search bar to find contacts
WHEN: I enter a valid username of a contact in the find contact field then press the confirm / add a contact button
THEN: A contact invite is sent to the added contact
AND: I get a confirmation message reading that my contact request has been sent
Logged-in user on the chat page wants to add a contact
That I have a search bar to find contacts
I enter a valid username of a contact in the find contact field then press the confirm / add a contact button
A contact invite is sent to the added contact
I get a confirmation message reading that my contact request has been sent
L'utilisateur connecté à la page de chat veut ajouter un contact.
That I have a search bar to find contacts
I enter a valid username of a contact in the find contact field then press the confirm / add a contact button
A contact invite is sent to the added contact
I get a confirmation message reading that my contact request has been sent
33
Manage Contacts Page
Add a contact
As a user, I want to be able to search and add a contact, to be able to chat with them later
SCENARIO: Logged-in user on the chat page wants to add a contact, but the contact is not found
GIVEN: That I have a search bar to find contacts
WHEN: I enter a string of characters that doesn’t match any existing contact in the database then press enter
THEN: I get a message reading that this contact couldn’t be found
AND:
Logged-in user on the chat page wants to add a contact, but the contact is not found
That I have a search bar to find contacts
I enter a string of characters that doesn’t match any existing contact in the database then press enter
I get a message reading that this contact couldn’t be found
L'utilisateur connecté à la page de chat souhaite ajouter un contact, mais celui-ci est introuvable.
That I have a search bar to find contacts
I enter a string of characters that doesn’t match any existing contact in the database then press enter
I get a message reading that this contact couldn’t be found
34
Manage Contacts Page
Add a contact
As a user, I want to be able to accept or decline a contact request, so I don't receive messages by contacts I don't want to communicate with
SCENARIO: User declines a contact request
GIVEN: That I get a contact request and I can see the username of the contact
WHEN: I click on “decline the request” next to the username
THEN: the request disappears
AND:
User declines a contact request
That I get a contact request and I can see the username of the contact
I click on “decline the request” next to the username
the request disappears
L'utilisateur refuse une demande de contact
That I get a contact request and I can see the username of the contact
I click on “decline the request” next to the username
the request disappears
35
Manage Contacts Page
Add a contact
As a user, I want to be able to accept or decline a contact request, so I don't receive messages by contacts I don't want to communicate with
SCENARIO: User accepts contact request
GIVEN: That I get a contact request and I can see the username of the contact
WHEN: I click on “accept the request”
THEN: The contact is added to my contacts
AND: a new chat tab connecting me with the contact appears both on my chat page and on my contact’s page
User accepts contact request
That I get a contact request and I can see the username of the contact
I click on “accept the request”
The contact is added to my contacts
a new chat tab connecting me with the contact appears both on my chat page and on my contact’s page
L'utilisateur accepte la demande de contact
That I get a contact request and I can see the username of the contact
I click on “accept the request”
The contact is added to my contacts
a new chat tab connecting me with the contact appears both on my chat page and on my contact’s page
36
Manage Contacts Page
Delete a contact
As a user, I want to be able to delete a contact, so that I don't receive any more messages from that user
SCENARIO: User deletes a contact and the contact is removed from contacts list
GIVEN: That I can see my list of contacts and actions including “delete”
WHEN: I click on the button “delete” associated with a contact
THEN: the contact is removed from my list of contacts
AND: I’m removed from the list of contacts of the contact I’ve deleted

User deletes a contact and the contact is removed from contacts list
That I can see my list of contacts and actions including “delete”
I click on the button “delete” associated with a contact
the contact is removed from my list of contacts
I’m removed from the list of contacts of the contact I’ve deleted

L'utilisateur supprime un contact et le contact est retiré de la liste des contacts.
That I can see my list of contacts and actions including “delete”
I click on the button “delete” associated with a contact
the contact is removed from my list of contacts
I’m removed from the list of contacts of the contact I’ve deleted

37
Manage Contacts Page
Delete a contact
As a user, I want to be able to delete a contact, so that I don't receive any more messages from that user
SCENARIO: User deletes a contact and the chat tab for both contacts is removed
GIVEN: That I can see my list of contacts and actions including “delete”
WHEN: I click on the button “delete” associated with a contact
THEN: The chat window for the chat with this contact disappears on my chat page
AND: The chat window for the chat with this contact disappears on the chat page of the deleted contact
User deletes a contact and the chat tab for both contacts is removed
That I can see my list of contacts and actions including “delete”
I click on the button “delete” associated with a contact
The chat window for the chat with this contact disappears on my chat page
The chat window for the chat with this contact disappears on the chat page of the deleted contact
L'utilisateur supprime un contact et l'onglet "chat" des deux contacts est supprimé.
That I can see my list of contacts and actions including “delete”
I click on the button “delete” associated with a contact
The chat window for the chat with this contact disappears on my chat page
The chat window for the chat with this contact disappears on the chat page of the deleted contact
38
Chat Page
See conversation records
As a user, I want to be able to consult the history of my conversations with my contacts, to easily find information exchanged
SCENARIO: User can scroll a conversation to see previous messages
GIVEN: that I had at least one chat conversation before
WHEN: I click on a chat window and I scroll up
THEN: I can see all the interactions that have happened from the first sent message to the last
AND: I can scroll down to go back to the latest messages
User can scroll a conversation to see previous messages
that I had at least one chat conversation before
I click on a chat window and I scroll up
I can see all the interactions that have happened from the first sent message to the last
I can scroll down to go back to the latest messages
L'utilisateur peut faire défiler une conversation pour voir les messages précédents.
that I had at least one chat conversation before
I click on a chat window and I scroll up
I can see all the interactions that have happened from the first sent message to the last
I can scroll down to go back to the latest messages
39
Chat Page
See conversation records
As a user, I want to be able to see the sender's profile picture next to each message, to make it easier to read the conversation and make sure I'm talking to the right contact
SCENARIO: As a logged-in user on the chat page
GIVEN: That I am seing a conversation window with at least one message received from a contact
WHEN: I see the messages sent to me and that I’ve sent
THEN: I can see the profile picture of the senders OR their initials if they didn’t add a profile picture
AND:
As a logged-in user on the chat page
That I am seing a conversation window with at least one message received from a contact
I see the messages sent to me and that I’ve sent
I can see the profile picture of the senders OR their initials if they didn’t add a profile picture
En tant qu'utilisateur connecté à la page de chat
That I am seing a conversation window with at least one message received from a contact
I see the messages sent to me and that I’ve sent
I can see the profile picture of the senders OR their initials if they didn’t add a profile picture
40
Chat Page
Send a message
As a user, I want to be able to send messages to my contacts so that I can exchange information with them
SCENARIO: User wants to send messages to its contacts.
GIVEN: That I’m in the conversation window with an added contact
WHEN: I type at least one character in the “write message” field, then press the “send” button
THEN: my message appears in the conversation window on the bottom right, with my profile picture on the side
AND: my contact can see my message on the bottom left of their conversation window with me
User wants to send messages to its contacts.
That I’m in the conversation window with an added contact
I type at least one character in the “write message” field, then press the “send” button
my message appears in the conversation window on the bottom right, with my profile picture on the side
my contact can see my message on the bottom left of their conversation window with me
L'utilisateur veut envoyer des messages à ses contacts.
That I’m in the conversation window with an added contact
I type at least one character in the “write message” field, then press the “send” button
my message appears in the conversation window on the bottom right, with my profile picture on the side
my contact can see my message on the bottom left of their conversation window with me
41
Chat Page
See conversation records
As a user, I want to be able to see if a message I have sent has been read by the recipient
SCENARIO: User can see if a message has been read
GIVEN: that there has been at least one message sent
WHEN: a message is visible in the conversation chat window
THEN: I can see if my message has been read by the recipient
AND:
User can see if a message has been read
that there has been at least one message sent
a message is visible in the conversation chat window
I can see if my message has been read by the recipient
L'utilisateur peut voir si un message a été lu
that there has been at least one message sent
a message is visible in the conversation chat window
I can see if my message has been read by the recipient
42
Chat Page
See conversation records
As a user, I want to see when a message was sent, to better coordinate my exchanges
SCENARIO: User can see when a specific message was sent in the chat
GIVEN: that there has been at least one message sent
WHEN: I see one or more messages in the conversation chat window
THEN: I can see a line of text showing the time and date of when the message was sent under each message
AND:
User can see when a specific message was sent in the chat
that there has been at least one message sent
I see one or more messages in the conversation chat window
I can see a line of text showing the time and date of when the message was sent under each message
L'utilisateur peut voir quand un message spécifique a été envoyé dans le chat.
that there has been at least one message sent
I see one or more messages in the conversation chat window
I can see a line of text showing the time and date of when the message was sent under each message
43
Chat Page
See conversation records
As a user, I want to see if I have any unread message so I can make sure I read them
SCENARIO: As a logged-in user on chat page, I want to see from which chat I have unread messages
GIVEN: That I have received and not read at least one message
WHEN: I see my chat window
THEN: I can see a notification badge with the corresponding number of messages unread on the different tabs corresponding to conversations with different contacts.
AND: The notification badge disappears once I clicked in the chat window where a message was unread
As a logged-in user on chat page, I want to see from which chat I have unread messages
That I have received and not read at least one message
I see my chat window
I can see a notification badge with the corresponding number of messages unread on the different tabs corresponding to conversations with different contacts.
The notification badge disappears once I clicked in the chat window where a message was unread
En tant qu'utilisateur connecté à la page de chat, je veux voir de quel chat je dispose de messages non lus.
That I have received and not read at least one message
I see my chat window
I can see a notification badge with the corresponding number of messages unread on the different tabs corresponding to conversations with different contacts.
The notification badge disappears once I clicked in the chat window where a message was unread
44
Chat Page
Send a message
As a user, I want to be able to send messages to my contacts so that I can exchange information with them
SCENARIO: User doesn’t want to accidentally send an empty message
GIVEN: That I’m in the conversation window with an added contact
WHEN: I press the “send” button without typing any text
THEN: no message is sent, nothing happens
AND:
User doesn’t want to accidentally send an empty message
That I’m in the conversation window with an added contact
I press the “send” button without typing any text
no message is sent, nothing happens
L'utilisateur ne veut pas envoyer accidentellement un message vide.
That I’m in the conversation window with an added contact
I press the “send” button without typing any text
no message is sent, nothing happens
45
Chat Page
Send a message
As a user, I want to be able to send messages to my contacts so that I can exchange information with them
SCENARIO: User gets a message
GIVEN: That I’m a user who received a message from any of my contacts
WHEN: I’m on the chat page and receive a message from any of my contacts
THEN: a notification badge appears next to the tab corresponding the the chat where I got a message
AND: a notification badge appears on the “chat” button on the dashboard page
User gets a message
That I’m a user who received a message from any of my contacts
I’m on the chat page and receive a message from any of my contacts
a notification badge appears next to the tab corresponding the the chat where I got a message
a notification badge appears on the “chat” button on the dashboard page
L'utilisateur reçoit un message
That I’m a user who received a message from any of my contacts
I’m on the chat page and receive a message from any of my contacts
a notification badge appears next to the tab corresponding the the chat where I got a message
a notification badge appears on the “chat” button on the dashboard page
46
Chat Page
See conversation records
As a user, I want to be able to see if a message I have sent has been read by the recipient
SCENARIO: User reads a message
GIVEN: That there has been at least one message sent to me that is unread
WHEN: I click anywhere on the chat tab where I got the message
THEN: the message is marked as “read” in the chat
AND: The notification badge disappears
User reads a message
That there has been at least one message sent to me that is unread
I click anywhere on the chat tab where I got the message
the message is marked as “read” in the chat
The notification badge disappears
L'utilisateur lit un message
That there has been at least one message sent to me that is unread
I click anywhere on the chat tab where I got the message
the message is marked as “read” in the chat
The notification badge disappears
47
Calendar Page
See the calendar
As a user, I want to be able to navigate to any day of my calendar, to see events that do not appear in the current view
SCENARIO: User can see the events for any page of the calendar
GIVEN: that I can see the calendar view of the current month
WHEN: I click on a button in order to see the view of the previous or next month
THEN: My calendar view is changed by the view of the previous or next month
AND:
User can see the events for any page of the calendar
that I can see the calendar view of the current month
I click on a button in order to see the view of the previous or next month
My calendar view is changed by the view of the previous or next month
L'utilisateur peut voir les événements de n'importe quelle page du calendrier.
that I can see the calendar view of the current month
I click on a button in order to see the view of the previous or next month
My calendar view is changed by the view of the previous or next month
48
Calendar Page
See the calendar
As a user, I want to be able to navigate to any day of my calendar, to see events that do not appear in the current view
SCENARIO: User can see the events for any specific date of the calendar
GIVEN: that I can see the calendar view of the current month
WHEN: I click on a specific day/date
THEN: I can see the events of that day appearing on the page with the name and time
AND: I can edit or delete these events
User can see the events for any specific date of the calendar
that I can see the calendar view of the current month
I click on a specific day/date
I can see the events of that day appearing on the page with the name and time
I can edit or delete these events
L'utilisateur peut voir les événements pour n'importe quelle date spécifique du calendrier.
that I can see the calendar view of the current month
I click on a specific day/date
I can see the events of that day appearing on the page with the name and time
I can edit or delete these events
49
Calendar Page
See the calendar
As a user, I want to be able to navigate to any day of my calendar, to see events that do not appear in the current view
SCENARIO: User wants to know if there are events for a specific date of the calendar without clicking on each day
GIVEN: that I am on the calendar page
WHEN: I look at my calendar monthly view
THEN: I can see that some days are marked with a coloured dot around, marking that there are events for these specific dates
AND:
User wants to know if there are events for a specific date of the calendar without clicking on each day
that I am on the calendar page
I look at my calendar monthly view
I can see that some days are marked with a coloured dot around, marking that there are events for these specific dates
L'utilisateur veut savoir s'il y a des événements pour une date spécifique du calendrier sans cliquer sur chaque jour.
that I am on the calendar page
I look at my calendar monthly view
I can see that some days are marked with a coloured dot around, marking that there are events for these specific dates
50
Calendar Page
Edit an event
As a user, I want to be able to edit an event I’ve created from my calendar so I can correct mistakes or update the event without creating a new one
SCENARIO: User wants to edit the title or date of an event that doesn’t include other participants
GIVEN: That I have at least one event created in my calendar where there are no other participants than me
That I have the “edit event” window open for the event I want to edit
WHEN: I edit the title and/or the date of the event and press confirm
THEN: the title and/or the date of the event is modified
AND: the event is moved to the corresponding date
User wants to edit the title or date of an event that doesn’t include other participants
That I have at least one event created in my calendar where there are no other participants than me
That I have the “edit event” window open for the event I want to edit
I edit the title and/or the date of the event and press confirm
the title and/or the date of the event is modified
the event is moved to the corresponding date
L'utilisateur veut modifier le titre ou la date d'un événement qui n'inclut pas d'autres participants.
That I have at least one event created in my calendar where there are no other participants than me
That I have the “edit event” window open for the event I want to edit
I edit the title and/or the date of the event and press confirm
the title and/or the date of the event is modified
the event is moved to the corresponding date
51
Calendar Page
Edit an event
As a user, I want to be able to edit an event I’ve created from my calendar so I can correct mistakes or update the event without creating a new one
SCENARIO: User wants to edit the title or date of an event that includes at least one other participant
GIVEN: That I have at least one event created in my calendar where there is at least one other participant
That I have the “edit event” window open for the event I want to edit
WHEN: I edit the title and/or the date of the event and press confirm
THEN: the title and/or the date of the event is modified on all the participant’s calendars
AND: other participants get a message through the chat reading that the event name / date created by myself has been modified to the new value
User wants to edit the title or date of an event that includes at least one other participant
That I have at least one event created in my calendar where there is at least one other participant
That I have the “edit event” window open for the event I want to edit
I edit the title and/or the date of the event and press confirm
the title and/or the date of the event is modified on all the participant’s calendars
other participants get a message through the chat reading that the event name / date created by myself has been modified to the new value
L'utilisateur veut modifier le titre ou la date d'un événement qui inclut au moins un autre participant.
That I have at least one event created in my calendar where there is at least one other participant
That I have the “edit event” window open for the event I want to edit
I edit the title and/or the date of the event and press confirm
the title and/or the date of the event is modified on all the participant’s calendars
other participants get a message through the chat reading that the event name / date created by myself has been modified to the new value
52
Calendar Page
Edit an event
As a user, I want to be able to edit an event I’ve created from my calendar so I can correct mistakes or update the event without creating a new one
SCENARIO: User wants to edit an event by adding a new participant
GIVEN: That I have at least one event created in my calendar
That I have the “edit event” window open for the event I want to edit
WHEN: I select at least one new participant to add to the event and press confirm
THEN: The other participants to the event are notified through the common chat tab that they are participants to this event
AND: The event is added to the participant’s calendar
User wants to edit an event by adding a new participant
That I have at least one event created in my calendar
That I have the “edit event” window open for the event I want to edit
I select at least one new participant to add to the event and press confirm
The other participants to the event are notified through the common chat tab that they are participants to this event
The event is added to the participant’s calendar
L'utilisateur veut modifier un événement en ajoutant un nouveau participant.
That I have at least one event created in my calendar
That I have the “edit event” window open for the event I want to edit
I select at least one new participant to add to the event and press confirm
The other participants to the event are notified through the common chat tab that they are participants to this event
The event is added to the participant’s calendar
53
Calendar Page
Edit an event
As a user, I want to be able to edit an event I’ve created from my calendar so I can correct mistakes or update the event without creating a new one
SCENARIO: User wants to edit an event by removing a participant
GIVEN: That I have at least one event created in my calendar where there is at least one other participant
That I have the “edit event” window open for the event I want to edit
WHEN: I unselect at least one participant to remove to the event and press confirm
THEN: The participants who have been unselected are notified through the common chat tab that they are not participants to this event anymore
AND: The event is removed from the deleted participant’s calendar
User wants to edit an event by removing a participant
That I have at least one event created in my calendar where there is at least one other participant
That I have the “edit event” window open for the event I want to edit
I unselect at least one participant to remove to the event and press confirm
The participants who have been unselected are notified through the common chat tab that they are not participants to this event anymore
The event is removed from the deleted participant’s calendar
L'utilisateur veut modifier un événement en supprimant un participant.
That I have at least one event created in my calendar where there is at least one other participant
That I have the “edit event” window open for the event I want to edit
I unselect at least one participant to remove to the event and press confirm
The participants who have been unselected are notified through the common chat tab that they are not participants to this event anymore
The event is removed from the deleted participant’s calendar
54
Task Management Page
Edit a task
As a user, I want to be able to mark a task as done / todo easily, so I can visualise which tasks are done
SCENARIO: User wants to toggle task as todo / done
GIVEN: That I’m a user on the Tasks Management Page
WHEN: I click on the checkbox of the task
THEN: if the task status was “done”, the task is marked as “todo” and the checkbox appears empty
If the task status was “todo”, the task is marked as “done” and the checkbox is marked with a check in it
AND: The “done” task is move to the row bottom of the last “todo” tasks
The “todo” task is moved to the top row of the “todo” tasks
User wants to toggle task as todo / done
That I’m a user on the Tasks Management Page
I click on the checkbox of the task
if the task status was “done”, the task is marked as “todo” and the checkbox appears empty
If the task status was “todo”, the task is marked as “done” and the checkbox is marked with a check in it
The “done” task is move to the row bottom of the last “todo” tasks
The “todo” task is moved to the top row of the “todo” tasks
L'utilisateur veut basculer une tâche en tant que tâche à faire / tâche terminée
That I’m a user on the Tasks Management Page
I click on the checkbox of the task
if the task status was “done”, the task is marked as “todo” and the checkbox appears empty
If the task status was “todo”, the task is marked as “done” and the checkbox is marked with a check in it
The “done” task is move to the row bottom of the last “todo” tasks
The “todo” task is moved to the top row of the “todo” tasks
55
Task Management Page
Edit a task
As a tutor I want to be able to edit a task’s description and assign the task or not to my student
SCENARIO: Tutor wants to edit a task and assign it to a student
GIVEN: That I’m a tutor and have at least one task in my tasks
WHEN: I edit the task and select a student to assign it to and press save
THEN: The task is added to the “assigned tasks” tab
AND: The task appears in the “my tasks” tab of the student’s app management page, with the tutor’s profile picture in the “assigned by” field
Tutor wants to edit a task and assign it to a student
That I’m a tutor and have at least one task in my tasks
I edit the task and select a student to assign it to and press save
The task is added to the “assigned tasks” tab
The task appears in the “my tasks” tab of the student’s app management page, with the tutor’s profile picture in the “assigned by” field
Le tuteur veut modifier une tâche et l'assigner à un étudiant.
That I’m a tutor and have at least one task in my tasks
I edit the task and select a student to assign it to and press save
The task is added to the “assigned tasks” tab
The task appears in the “my tasks” tab of the student’s app management page, with the tutor’s profile picture in the “assigned by” field
56
Task Management Page
Edit a task
As a user, I want to be able to edit a task description
SCENARIO: User wants to change the description of a task
GIVEN: That I have at least one task on my task management page
WHEN: I press the edit button of a specific task and change the text in the description field and press save
THEN: the task is updated with the new description
AND:
User wants to change the description of a task
That I have at least one task on my task management page
I press the edit button of a specific task and change the text in the description field and press save
the task is updated with the new description
L'utilisateur veut modifier la description d'une tâche
That I have at least one task on my task management page
I press the edit button of a specific task and change the text in the description field and press save
the task is updated with the new description
57
Task Management Page
Edit a task
As a tutor I want to be able to edit a task’s description and assign the task or not to my student
SCENARIO: Tutor wants to edit an assigned task and un-assign it to a student
GIVEN: That I’m a tutor and have at least one assigned task in my tasks
WHEN: I edit the task and unselect the student I assigned the task to and press save
THEN: The task is moved from the “assigned tasks” tab to the “my tasks” tab of the tutor
AND: The task disappears in the “my tasks” tab of the student’s app management page.
Tutor wants to edit an assigned task and un-assign it to a student
That I’m a tutor and have at least one assigned task in my tasks
I edit the task and unselect the student I assigned the task to and press save
The task is moved from the “assigned tasks” tab to the “my tasks” tab of the tutor
The task disappears in the “my tasks” tab of the student’s app management page.
Le tuteur veut modifier une tâche assignée et la désassigner à un étudiant.
That I’m a tutor and have at least one assigned task in my tasks
I edit the task and unselect the student I assigned the task to and press save
The task is moved from the “assigned tasks” tab to the “my tasks” tab of the tutor
The task disappears in the “my tasks” tab of the student’s app management page.
58
Task Management Page
Edit a task
As a tutor I want to be able to edit a task’s description and assign the task or not to my student
SCENARIO: Tutor wants to edit the description of an assigned task
GIVEN: That I’m a tutor and have at least one assigned task in my “assigned tasks” tab
WHEN: I edit the task and change the description of the task and press save
THEN: The task’s description is changed both on the tutor and the student’s side
AND:
Tutor wants to edit the description of an assigned task
That I’m a tutor and have at least one assigned task in my “assigned tasks” tab
I edit the task and change the description of the task and press save
The task’s description is changed both on the tutor and the student’s side
Le tuteur veut modifier la description d'une tâche assignée.
That I’m a tutor and have at least one assigned task in my “assigned tasks” tab
I edit the task and change the description of the task and press save
The task’s description is changed both on the tutor and the student’s side
59
Task Management Page
Delete a task
As a user, I want to be able to delete any of my tasks (tasks I can see on “my tasks” tab) so I can keep my page clean
SCENARIO: User wants to delete one of their tasks
GIVEN: That I’m a user and have at least one assigned task in my tasks
WHEN: I click on the delete button of a task
THEN: I can see an alert message that asks me to confirm or cancel.
I press confirm
AND: The task is deleted, I cannot see it on my tasks page anymore
User wants to delete one of their tasks
That I’m a user and have at least one assigned task in my tasks
I click on the delete button of a task

I can see an alert message that asks me to confirm or cancel.
I press confirm
The task is deleted, I cannot see it on my tasks page anymore
L'utilisateur veut supprimer une de ses tâches
That I’m a user and have at least one assigned task in my tasks
I click on the delete button of a task

I can see an alert message that asks me to confirm or cancel.
I press confirm
The task is deleted, I cannot see it on my tasks page anymore
60
Task Management Page
Delete a task
As a tutor, I want to be able to delete any of the tasks I have assigned to my student, so I can keep my page clean
SCENARIO: Tutor wants to delete one of the assigned tasks to a student
GIVEN: That I’m a tutor and have at least one assigned task in my “assigned tasks” tab
WHEN: I click on the delete button of an assigned task
THEN: I can see an alert message that asks me to confirm or cancel.
I press confirm
AND: The task is deleted, I cannot see it on my tasks page anymore.
The task disappears from the student’s tasks page
Tutor wants to delete one of the assigned tasks to a student
That I’m a tutor and have at least one assigned task in my “assigned tasks” tab
I click on the delete button of an assigned task

I can see an alert message that asks me to confirm or cancel.
I press confirm
The task is deleted, I cannot see it on my tasks page anymore.
The task disappears from the student’s tasks page
Le Tuteur veut supprimer une des tâches assignées à un étudiant
That I’m a tutor and have at least one assigned task in my “assigned tasks” tab
I click on the delete button of an assigned task

I can see an alert message that asks me to confirm or cancel.
I press confirm
The task is deleted, I cannot see it on my tasks page anymore.
The task disappears from the student’s tasks page
61
Edit Profile Page
Edit Profile
As a user, I want to be able to change my username, email, password and profile picture so I can personalise my account
SCENARIO: User wants to change its password on the “edit profile” page
GIVEN: That I’m on the “edit profile” page.
That I can see a form with the following fields:
your current password
your new password
repeat password
WHEN: I enter my current password,
I enter the same valid 8 characters password in:
your new password
repeat password

and press “save”
THEN: My password is updated with the new password I have entered
AND:
User wants to change its password on the “edit profile” page
That I’m on the “edit profile” page.
That I can see a form with the following fields:
your current password
your new password
repeat password
I enter my current password,
I enter the same valid 8 characters password in:
your new password
repeat password

and press “save”
My password is updated with the new password I have entered
L'utilisateur veut changer son mot de passe sur la page "modifier le profil".
That I’m on the “edit profile” page.
That I can see a form with the following fields:
your current password
your new password
repeat password
I enter my current password,
I enter the same valid 8 characters password in:
your new password
repeat password

and press “save”
My password is updated with the new password I have entered
62
Dashboard Page
Logout
As a logged-in user, I want to be able to log out easily, so I can avoid somebody else accessing my information
SCENARIO: User wants to log out
GIVEN: That I’m on the dashboard page
WHEN: I click on the logout button in the menu
THEN: I’m logged out from the app
AND: I’m redirected to the “login” page
User wants to log out
That I’m on the dashboard page
I click on the logout button in the menu
I’m logged out from the app
I’m redirected to the “login” page
L'utilisateur veut se déconnecter
That I’m on the dashboard page
I click on the logout button in the menu
I’m logged out from the app
I’m redirected to the “login” page
There are no rows in this table
35
Count Unique
62
Count

Want to print your doc?
This is not the way.
Try clicking the ⋯ next to your doc name or using a keyboard shortcut (
CtrlP
) instead.