Skip to content

Use Cases

Gilles Arnout edited this page Mar 8, 2024 · 16 revisions

Use Cases

All the use cases are listed here.

All Use Cases

User Management

  • remove teacher/student (admin)
  • change information about teacher/student (admin)
  • remove privileges (admin)
  • give privileges (admin)
  • request privileges (student)

Course

  • create course (teacher)
  • remove course (teacher)
  • change course (teacher)
  • accept student to course (teacher)
  • remove students from course (teacher)
  • join course (student)
  • leave course (student)

Project

  • create project (teacher)
  • remove project (teacher)
  • change project (teacher)
  • change visibility of project (teacher)
  • list and download submissions (teacher)
  • archive project (teacher)

Milestone 3:

  • add/upload test file (teacher)
  • select/edit test file (teacher)
  • list test files (teacher)
  • remove test file (teacher)
  • create group for project (teacher/student)
  • submit project (student)
  • join group (student)

General

  • change the language of the website (user)

Details Use Cases

User Management Details

Title remove teacher/student (admin)
Description An existing teacher/student must be removed from the system.
Pre-conditions The admin is logged in and the teacher/student exists in the system.
Post-conditions The teacher/student is removed from the system.
Actors Admin
Normal flow
  1. Admin chooses to remove a specific teacher/student
  2. Admin clicks on the remove button
  3. Admin confirms the removal of the teacher/student
  4. The system removes the teacher/student
  5. The system sends a message to the teacher/student that his account has been removed
Alternative flow Admin does not confirm user removal:
  1. The removal of the teacher/student will be aborted and returned to the previous screen.
Title change information about teacher/student (admin)
Description Information about a teacher/student is modified.
Pre-conditions The admin is logged in and the teacher/student exists in the system.
Post-conditions The teacher/student's information is updated.
Actors Admin
Normal flow
  1. Admin chooses to change the information about a specific teacher/student
  2. Admin clicks on the change information button
  3. Admin fills in the new information about the teacher/student
  4. Admin confirms the information change of the teacher/student
  5. The system changes the information about the teacher/student
  6. The system sends a message to the teacher/student that there information has changed
Alternative flow Admin does not confirm information change:
  1. The new information changes will be discarded and returned to the previous screen.
Title remove privileges (admin)
Description The privileges of the selected teacher need to be removed.
Pre-conditions The admin is logged in and the teacher exists in the system.
Post-conditions The teacher has become a student and has no privileges.
Actors Admin
Normal flow
  1. Admin chooses to change the privileges of a specific student
  2. Admin clicks on the remove teacher button
  3. Admin confirms the changes
  4. The system removes the teachers privileges and the teacher becomes a student
  5. The system sends a message to the teacher that there privileges have been removed
Alternative flow Admin does not confirm changes:
  1. The privilege changes will be discarded and returned to the previous screen.
Title give privileges (admin)
Description The selected student gets teacher privileges.
Pre-conditions The admin is logged in and the student exists in the system.
Post-conditions The student has become a teacher with privileges.
Actors Admin
Normal flow
  1. Admin chooses to change the privileges of a specific student
  2. Admin clicks on the make teacher button
  3. Admin confirms the changes
  4. The system gives the student privileges and the student becomes a teacher
  5. The system sends a message to the student that there privileges have been given
Alternative flow Admin does not confirm changes:
  1. The privilege changes will be discarded and returned to the previous screen.
Title request privileges (student)
Description A student can request privileges to become a teacher.
Pre-conditions The student is logged in.
Post-conditions The student has requested privileges from the admin to become a teacher.
Actors Student
Normal flow
  1. Student chooses to change the information about his profile
  2. Student clicks on the request teacher privileges button
  3. Student confirms the changes
  4. The system requests the privileges for that student (waiting to be accepted by the admin)
Alternative flow Student does not confirm changes:
  1. The privilege changes will be discarded and returned to the previous screen.

Course Details

Title create course (teacher)
Description A new course must be created in the system.
Pre-conditions The teacher is logged in.
Post-conditions A new course has been added.
Actors Teacher
Normal flow
  1. Teacher chooses to create a new course
  2. Teacher fills in the specifications of the new course
  3. Teacher confirms the creation of the new course
  4. The system creates the new course
Alternative flow Teacher does not confirm course creation:
  1. The creation of the course will be aborted and returned to the previous screen.
Title remove course (teacher)
Description An existing course must be removed from the system.
Pre-conditions The teacher who created the course is logged in and the course exists in the system.
Post-conditions The course is removed from the system.
Actors Teacher
Normal flow
  1. Teacher chooses to remove a specific course
  2. Teacher clicks on the remove button
  3. Teacher confirms the removal of the course
  4. The system removes the course and removes all the students from the course
Alternative flow Teacher does not confirm course removal:
  1. The removal of the course will be aborted and returned to the previous screen.
Title change information about course (teacher)
Description Information about a course is modified.
Pre-conditions The Teacher who created the course is logged in and the course exists in the system.
Post-conditions The course's information is updated.
Actors Teacher
Normal flow
  1. Teacher chooses to change the information about a specific course
  2. Teacher clicks on the edit button
  3. Teacher fills in the new information about the course
  4. Teacher confirms the information change of the course by clicking the save changes button
  5. The system changes the information about the course
  6. The system sends a message to the students from that course that the information of the course has changed
Alternative flow Teacher does not confirm information change:
  1. The new information changes will be discarded and returned to the previous screen.
Title accept student to course (teacher)
Description The selected students must be accepted to a course.
Pre-conditions The Teacher who created the course is logged in.
Post-conditions The selected are accepted to the course.
Actors Teacher
Normal flow
  1. Teacher chooses a specific course
  2. Teacher clicks on the students button
  3. Teacher selects the students that he/she wants to accept into the course
  4. Teacher confirms the selection by clicking the accept selected students
  5. The system allows the students to join the course
  6. The system sends a confirmation to the students that they are accepted into the course
Alternative flow Teacher does not confirm the selection:
  1. The selection will be cancelled and returned to the previous screen.
Title remove students from course (teacher)
Description The selected students must be removed from a course.
Pre-conditions The Teacher who created the course is logged in and has students in the course.
Post-conditions The selected are removed from the course.
Actors Teacher
Normal flow
  1. Teacher chooses a specific course
  2. Teacher clicks on the students button
  3. Teacher selects the students that he/she wants to remove from the course
  4. Teacher confirms the selection by clicking the remove students from course button
  5. The system removes the students from the course
  6. The system sends a message to the students that they have been removed from the course
Alternative flow Teacher does not confirm the selection:
  1. The selection will be cancelled and returned to the previous screen.
Title join course (student)
Description Students can join a course.
Pre-conditions Student is logged in and optional given access to the course.
Post-conditions Student joined the course.
Actors Student
Normal flow
  1. Student chooses to join a specific course
  2. Student clicks on the join button
  3. Student confirms to join the course
  4. The system enters the student to the course
Optional:
  1. Student waits for access from teacher
Alternative flow Student does not confirm to join the course:
  1. The joining of the course is aborted and returned to the previous screen.
Title leave course (student)
Description Students can leave a course.
Pre-conditions Student is logged in and joined a course.
Post-conditions Student left the course.
Actors Student
Normal flow
  1. Student chooses to leave a specific course
  2. Student clicks on the leave button
  3. Student confirms to leave the course
  4. The system removes the student from the course
Alternative flow Student does not confirm to leave the course:
  1. The leaving of the course is aborted and returned to the previous screen.

Project Details

Title create project (teacher)
Description A new project must be created in the system.
Pre-conditions The teacher is logged in.
Post-conditions A new project has been added.
Actors Teacher
Normal flow
  1. Teacher chooses a specific course
  2. Teacher chooses to create a new project
  3. Teacher fills in the specifications of the new project
  4. Teacher confirms the creation of the new project
  5. The system creates the new project
  6. The system sends a message to the subscribed students that a new project has been added
Alternative flow Teacher does not confirm project creation:
  1. The creation of the project will be aborted and returned to the previous screen.
Title remove project (teacher)
Description An existing project must be removed from the system.
Pre-conditions The teacher who created the course where the project is from is logged in and the project exists in the system.
Post-conditions The project is removed from the system.
Actors Teacher
Normal flow
  1. Teacher chooses a specific course
  2. Teacher chooses to remove a specific project
  3. Teacher clicks on the remove button
  4. Teacher confirms the removal of the project
  5. The system removes the project
Alternative flow Teacher does not confirm project removal:
  1. The removal of the project will be aborted and returned to the previous screen.
Title change information about project (teacher)
Description Information about the project is modified.
Pre-conditions The teacher who created the course where the project is from is logged in and the project exists in the system.
Post-conditions The project's information is updated.
Actors Teacher
Normal flow
  1. Teacher chooses a specific course
  2. Teacher chooses to change the information about a specific project
  3. Teacher clicks on the change information button
  4. Teacher fills in the new information about the project
  5. Teacher confirms the information change of the project
  6. The system changes the information about the project
  7. The system sends a message to the subscribed students that the information of the project has changed
Alternative flow Teacher does not confirm information change:
  1. The new information changes will be discarded and returned to the previous screen.
Title change visibility of project (teacher)
Description The visibility of a project is modified.
Pre-conditions The teacher who created the course where the project is from is logged in and the project exists in the system.
Post-conditions The project's visibility is updated.
Actors Teacher
Normal flow
  1. Teacher chooses a specific course
  2. Teacher chooses to change the visibility of a specific project
  3. Teacher clicks on the change visibility button
  4. Teacher confirms the visibility change of the project
  5. The system changes the visibility of the project
Alternative flow Teacher does not confirm visibility change:
  1. The new visibility changes will be discarded and returned to the previous screen.
Title list and download submissions (teacher)
Description All project submissions are listed and downloaded in a folder.
Pre-conditions The teacher who created the course where the project is from is logged in, the project exists in the system and has submissions.
Post-conditions All the submissions of the project are listed and downloaded.
Actors Teacher
Normal flow
  1. Teacher chooses a specific course
  2. Teacher chooses to download the submissions of a specific project
  3. Teacher clicks on the download submissions button
  4. Teacher confirms the download of the submissions
  5. The system lists all the submissions in a folder and downloads this folder on the computer of the teacher
  6. The system sends a message to the teacher confirming the download
Alternative flow Teacher does not confirm the download of the submissions:
  1. The download will be cancelled and returned to the previous screen.
Title archive project (teacher)
Description The whole project with submissions is archived and not visible to students.
Pre-conditions The teacher who created the course where the project is from is logged in and the project exists in the system
Post-conditions The whole project with submission is stored in the archive and is not visible to students.
Actors Teacher
Normal flow
  1. Teacher chooses a specific course
  2. Teacher chooses to archive a specific project
  3. Teacher clicks on the archive button
  4. Teacher confirms the archiving of the project
  5. The system stores the project in the archive and makes the project invisible for the students
Alternative flow Teacher does not confirm the archiving of the project:
  1. The archiving is cancelled and returned to the previous screen.
Title add/upload test file (teacher)
Description Add a test file to a project.
Pre-conditions The teacher who created the course where the project is from is logged in.
Post-conditions A new test file is added to the project.
Actors Teacher
Normal flow
  1. Teacher chooses a specific course
  2. Teacher chooses a specific project
  3. Teacher clicks on the test files button
  4. The system lists all the existing test files
  5. Teacher clicks on the add a test file button
  6. Teacher chooses to upload his test file or create a new empty one
  7. Teacher confirms his choose
  8. The system saves the uploaded test file or creates a new one (depended on the choose)
Alternative flow Teacher does not confirm the creation/upload of a new test file:
  1. The creation/upload is aborted and returned to the previous screen.
Title select/edit test file (teacher)
Description Select a test file for a project and give an option to edit this file.
Pre-conditions The teacher who created the course where the project is from is logged in and a test file exists.
Post-conditions The selected test file is edited.
Actors Teacher
Normal flow
  1. Teacher chooses a specific course
  2. Teacher chooses a specific project
  3. Teacher clicks on the test files button
  4. The system lists all the existing test files
  5. Teacher selects a test file and clicks on the edit button
  6. Teacher changes the test file and confirms the edit
  7. The system saves the newly edited test file
Alternative flow Teacher does not confirm the editing of the test file:
  1. The editing is aborted and returned to the previous screen.
Title list test files (teacher)
Description List all the test files of a project.
Pre-conditions The teacher who created the course where the project is from is logged in and test files exist.
Post-conditions A list of all the test files of the project is shown.
Actors Teacher
Normal flow
  1. Teacher chooses a specific course
  2. Teacher chooses a specific project
  3. Teacher clicks on the test files button
  4. The system lists all the existing test files
Alternative flow No test files are present for this project:
  1. The system returns an empty list.
Title remove test file (teacher)
Description Select a test file for a project and remove this file.
Pre-conditions The teacher who created the course where the project is from is logged in and a test file exists.
Post-conditions The selected test file is removed.
Actors Teacher
Normal flow
  1. Teacher chooses a specific course
  2. Teacher chooses a specific project
  3. Teacher clicks on the test files button
  4. The system lists all the existing test files
  5. Teacher selects a test file and clicks on the remove button
  6. Teacher confirms the removal of the test file
  7. The system removes the selected test file
Alternative flow Teacher does not confirm the removal of the test file:
  1. The removal will be aborted and returned to the previous screen.
Title create group for project (teacher/student)
Description A group is created for a project that students can join.
Pre-conditions The teacher/student is logged in and the project is a group project.
Post-conditions A group is created for the project.
Actors Teacher and Student
Normal flow
  1. Teacher/Student chooses a specific course
  2. Teacher/Student chooses a specific project
  3. Teacher/Student click on the create a group button
  4. Teacher/Student confirm the creation of the group
  5. The system creates a group for the specific project
Alternative flow Teacher/Student does not confirm group creation:
  1. The group creation will be aborted and returned to the previous screen.
Title submit project (student)
Description A student submitted his solution for the project.
Pre-conditions The student is logged in and the project exists in the system.
Post-conditions The solution of the student is submitted.
Actors Student
Normal flow
  1. Student chooses a specific course
  2. Student chooses a specific project
  3. Student clicks on the submit button
  4. Student confirms the submission for the project
  5. The system stores the submission
  6. The system sends a message to the student that the submission is succesfull
Alternative flow Student does not confirm submission:
  1. The submission will be aborted and returned to the previous screen.
Submission does not meet requirements:
  1. The system denies the submission and sends a message to the student.
  2. Return to the previous screen.
Title join group (student)
Description A student joins a group for a project.
Pre-conditions The student is logged in, the group exists in the system and the project exists in the system.
Post-conditions The student joins the group.
Actors Student
Normal flow
  1. Student chooses a specific course
  2. Student chooses a specific project
  3. Student chooses a specific group
  4. Student clicks the join button
  5. The student confirms joining the group
  6. The system puts the student in the group
  7. The system sends a message to all group members that a new student has joined
Alternative flow Student does not confirm joining the group:
  1. Joining the group will be aborted and returned to the previous screen.
The group is full:
  1. The system denies joining the group and sends a message to the student.
  2. Return to the previous screen.

General Details

Title change the language of the website (user)
Description must be able to change the language of the website.
Pre-conditions User must be logged in.
Post-conditions The language is changed of the website.
Actors User
Normal flow
  1. User chooses the language for the website
  2. User confirms the selection
  3. The system changes the language of the website
Alternative flow User does not confirm the selection:
  1. The selection will be cancelled and returned to the previous screen.