Requirements

User Stories

ID Requirement Priority
1.1 As a User, I am able to create/register an account so that I may access the site.

Acceptance Test:
1. Create an account with a valid email and appropriate password. [PASS]
2. Inputting invalid email/password and make sure it doesn't allow the user to create an account. [FAIL]
Low
1.2 As a User, I am able to log in so that I may access the site.

Acceptance Test:
1. Login as user with correct credentials. [PASS]
2. Input incorrect information and make sure it does not allow the user to continue. [PASS]
Low
1.3 As a User, I should be able to log out of my account so that others may not use my account on my device.

Acceptance Test:
1. Clicking the logout button logs the user out. [PASS]
Low
1.4 As a User, I should be able to access my account information so that I can see my own information.

Acceptance Test:
1. When the profile button is clicked, it will take me to my profile. [PASS]
2. User input is their specific user data. [PASS]
Low
1.5 As a User, I should be able to change my account information so that I can change any wrong information.

Acceptance Test:
1. When option button in profile section is clicked, it will take me to edit interface for my profile. [PASS]
2. User should be able to change their specific user information (e.g. name and password). [PASS]
3. When "save" button is clicked, it will save new user information and display it. [PASS]
4. Input incorrect information and make sure it does not allow the user to save. [FAIL]
Low
1.6 As a User, I should be able to see a list of available topics so that I can do a quiz, contribute or find learning outcomes.

Acceptance Test:
1. User should be able to see all of the topics created. [PASS]
Low
1.7 As a User, I should be able to see a list of learning outcomes for a topic

Acceptance Test:
1. User should be able to see all of the learning outcomes of a topic. [PASS]
Medium
2.1 As a Professor, I can create a topic so that I can state the general topic of my learning outcomes.

Acceptance Test:
1. User should be able to create a unique topic. [PASS]
2. Inputting a duplicate topic and make sure it does not allow the user to continue. [FAIL]
High
2.2 As a Professor, I can create learning outcomes for a topic so that students can learn from the outcomes and contributors can contribute questions towards the learning outcomes.

Acceptance Test:
1. User should be able to create a unique learning outcome for a topic. [PASS]
2. Inputting a duplicate learning outcome and make sure it does not allow the user to continue. [FAIL]
3. Inputting a duplicate learning outcome without a topic and make sure it does not allow the user to continue. [FAIL]
High
2.3 As a Professor, I can view contributed questions so that I can see questions for each learning outcome.

Acceptance Test:
1. User should be able to select a topic. [PASS]
2. User should be able to view a list of learning outcomes of that topic. [PASS]
3. User should be able to see questions for specific learning outcomes of that topic. [PASS]
High
2.4 As a Professor, I can organize questions by learning outcomes within a topic so that I can see questions in each learning outcome.

Acceptance Test:
1. User should be able to click the drop-down menu beside a question and select a different learning outcome. [PASS]
High
2.5 As a Professor, I can see the performance of students for each question so that I can know how well the students are doing in each question.

Acceptance Test:
1. User should be able to see the pass and fail rate of a specific question. [PASS]
Medium
3.1 As a Contributor, I am able edit my past contributed questions so that I may change them to better suite the learning outcome.

Acceptance Test:
1. When edit button in past contributed questions section is clicked, it will take me to edit interface for my profile. [PASS]
2. User should be able to change the title and answers for the question. [PASS]
3. Changing a question with no answers and make sure it does not allow the user to continue. [FAIL]
Low
3.2 As a Contributor, I am able to delete contributed questions so that I may remove them to better suite the learning outcome.

Acceptance Test:
1. When delete button in past contributed questions section is clicked, it will show the user a confirmation box. [PASS]
2. User should be able to delete the question if confirm is clicked. [PASS]
3. User should be able to cancel deletion if cancel is clicked. [PASS]
4. If question is deleted, the user should not be able to see his deleted question again. [FAIL]
5. If deletion is cancelled, the user should still be able to see his question. [FAIL]
Medium
3.3 As a Contributor, I am able to see all my contributed questions so that I can see all the questions I have made.

Acceptance Test:
1. User should be able to see all his/her questions. [PASS]
Medium
3.4 As a Contributor, I am able to contribute questions for a specific learning outcome of a topic with feedback for answers so that I can let students practice my question.

Acceptance Test:
1. User should be able to create a question that has to be linked to a learning outcome of a topic. [PASS]
2. Inputting a question with no answers and make sure the user cannot continue. [FAIL]
3. Inputting a question with no title and make sure the user cannot continue. [FAIL]
4. Inputting a question with no feedback for answers and make sure the user cannot continue. [FAIL]
5. After question with answers and feedback is entered, the user should able to see his question in his contributed questions list. [PASS]
Medium
3.5 As a Contributor, I am able to rate other contributor’s questions so that good questions show up more often.

Acceptance Test:
1. User should be able to see a list of contributed questions for a learning outcome of a topic. [PASS]
2. User should be to click the thumbs up or thumbs down button and provide feedback. [PASS]
Medium
3.6 As a Contributor, I am able to see the performance of my question(s) so that I know how well students are performing on my question(s).

Acceptance Test:
1. User should be able to see the pass and fail rate of his/her question. [PASS]
Low
3.7 As a Contributor, I am able to create draft questions for a learning outcome of a topic so that I can test my question.

Acceptance Test:

1. User should be able to create a question that has to be linked to a learning outcome of a topic. [PASS]
2. Inputting a question with no answers and make sure the user cannot continue. [FAIL]
3. Inputting a question with no title and make sure the user cannot continue. [FAIL]
4. Inputting a question with no feedback for answers and make sure the user cannot continue. [FAIL]
5. After question with answers and feedback is entered, the user should able to see his question labelled as draft in his contributed questions list. [PASS]
Low
4.1 As a Student, I am able to generate a quiz of a set amount of questions for a topic so that I may improve my understanding of the topic.

Acceptance Test:
1. User should be able to click the generate quiz button on a topic. [PASS]
2. User should be able to select the amount of questions to be generated. [PASS]
3. User should be able to begin answering questions in the quiz. [PASS]
High
4.2 As a Student, I am able to select learning outcomes of a topic to generate a quiz of a set amount of question so that I may practice the learning outcomes.

Acceptance Test:

1. User should be able to click the generate quiz button on a topic. [PASS]
2. User should be able to select learning outcomes of that topic. [PASS]
3. User should be able to select the amount of questions to be generated. [PASS]
4. User should be able to begin answering questions in the quiz. [PASS]
Medium
4.3 As a Student, I am able to review my quiz so that I can see the questions I did.

Acceptance Test:
1. User should be click the review button beside a past quiz. [PASS]
2. User should be able to see a list of answered questions with feedback in that quiz. [PASS]
High
4.4 As a Student, I am able to answer the questions in the generated quiz so that I can practice.

Acceptance Test:
1. User should be able to select/write answers for a question. [PASS]
High
4.5 As a Student, I am able to submit my quiz after answering all the questions so that I can see how well I did in that quiz.

Acceptance Test:
1. User should be able to click the submit button after answering all the questions in the quiz. [PASS]
High
4.6 As a Student, I am able to see my performance for a quiz so that I can see how well I did in that quiz.

Acceptance Test:
1. User should be able to see a grade beside the past quiz. [PASS]
Medium
4.7 As a Student, I am able to see all my past quizzes so that I can see the quizzes that I have done.

Acceptance Test:
1. User should be able to see a list of quizzes that he/she have done. [PASS]
High

Note

Student can be a Contributor

For more in-depth information about the user stories go here: Story Map

Deadlines for each User Stories can be found here: [Weekly Deadlines](https://github.com/UAlberta-CMPUT401/SE-OER/projects/3