-
Notifications
You must be signed in to change notification settings - Fork 6
User Stories
When a feature is proposed there needs to be a concrete idea of what is involved to deliver the feature: the high level steps to implement, the time allocated, risk, priority and most importantly the purpose to the user of the feature.
1 point is ~ 10-15 minutes, 5 points is ~ 1 hour
id = 1
Title | Story Description | Points | Risk | Priority |
---|---|---|---|---|
Home Page Questions | As any user , I want to be able to view, sort and visit questions that other's have asked so that I can view answers to questions. |
20 | Low | High |
Tasks
- Question Model must be created - Jon, Nico, Megan, Michael
- API Routing for Questions and Answers must be available (sort on backend) - Jon, Nico
- Front-end component for Question must be coded - Kerry, Sharon
- Front-end component for listing Questions (sorting the list) must be coded - Kerry
- Have Question and Answer page made - Jon
Acceptance Test
Go to front-page of site. Questions should be listed. Click on a question and get linked to the question page. If you reach the question page the test passes unless there are no questions (this also passes). Any errors fail the test.
id = 2
Title | Story Description | Points | Risk | Priority |
---|---|---|---|---|
Login | As a logged out user with an account , I want to be able to login so that I can ask and answer questions. |
20 | High | High |
Tasks
- User Model must be created - Jon, Nico, Michael
- API Routing for users must be available - Jon
- Password must be correctly hashed - Jon
- Front-End Component must be coded for logging in - Kerry
- Ability to register must be integrated into system
Acceptance Test
Go to home page. Click on the input box for logging in, type valid username and valid password. Click login button. If no errors occur then the test passes. If no valid credentials exist, click register and fill in information. Attempt to login again.
id = 3
Title | Story Description | Points | Risk | Priority |
---|---|---|---|---|
User Registration | As a logged out user without an account , I want to be able to register so that I can begin to ask and answer questions. |
20 | High | High |
Tasks
- User Model must be created - Jon, Nico
- API Routing for users must be available - Jon
- Password must be correctly hashed - Jon
- Front-End registration component must be coded for registration - Kerry, Ramez
Acceptance Test
Go to register on home page. Fill in valid names, email, password and software engineering discipline. Click next filling in information until the modal closes. Check the email account you entered for an email from AskEng. Attempt to login. If you cannot log in, do not receive an email or get an error at any point then the test fails.
id = 4
Title | Story Description | Points | Risk | Priority |
---|---|---|---|---|
Ask Question | As a logged in user , I want to be able to ask questions by a type of engineering so that I can get answers to my questions. |
15 | Medium | High |
Tasks
- Question Model must be created - Jon, Nico, Megan, Michael
- API Routing for accepting new Questions must be available - Jon, Nico
- Front-end component for asking question (title, text, engineer) - Kerry, Sharon
- Visual Confirmation for user must be coded
Acceptance Test
On the home page log in. An input box with a title, text and engineering option should display. Enter in the information required (title, text, option) and click the Ask button. If the form denies you being able to ask a question, gives you any errors or the question does not appear below after asking then the test fails.
id = 5
Title | Story Description | Points | Risk | Priority |
---|---|---|---|---|
Answer Question | As a logged in user , I want to be able to answer questions so that I can get ups and downs to increase my score . |
30 | Medium | High |
Tasks
- Question and Answer Model must be created - Jon, Nico, Megan, Michael
- API Routing for accepting new Answers must be available - Jon, Nico
- Front-end component for question (title, text, engineer, ups, downs) - Jon, Sharon
- Front-end component for answering question (text) - Jon, Sharon
- Front-end component for answer (text, ups, downs) - Jon, Sharon
Acceptance Test
Log in using valid credentials. Once logged in then click on a question from the home page. You will be brought to the question page. On this page enter text into an answer input and click on Answer Question. If the answer does not appear below, you cannot reach a question page (unless database is empty), or any errors occur then the test fails.
id = 6
Title | Story Description | Points | Risk | Priority |
---|---|---|---|---|
Profile | As a logged in user , I want to be able to view and edit my profile so that I can update my email, change my password, change my engineering type and change my display image. |
35 | Medium | Low |
Tasks
- User model must be created - Jon
- API routing for Users must be available for accepting and sending user data - Jon
- Front-End routing must be created for Profile page - Jamal
- Profile Page component - Ramez, Sharon
- Ability to change email - Jamal
- Ability to change password - Jamal
- Ability to change engineering type - Jamal
- Ability to change profile picture - Jon
- Changes must be saved in the database - Nico
Acceptance Test
Log in using valid credentials. Go to the profile page using the top menu bar. On the profile page click edit profile to begin editing the various fields. Change all information. Click Save. Refresh. If the information does not save upon refresh, saves incorrectly, displays any errors or one cannot reach the profile page then the test fails.
id = 7
Title | Story Description | Points | Risk | Priority |
---|---|---|---|---|
User information dropdown | As a logged in user , I want to be able to have a dropdown with actions so that I can get to my profile, update settings and logout. |
15 | Medium | Low |
Tasks
- User model must be created - Jon
- API routing for Users must be available for accepting and sending user data - Jon
- Dropdown component must be created - Ramez
- Profile page must be available - Sharon
- Logout function must be coded - Kerry
Acceptance Test
Log in using valid credentials. Go to top bar. If the profile page link or log out button is not present the test fails. Click the log out button. If the page returns to a logged out state then the test passes, else the test fails.
id = 8
Title | Story Description | Points | Risk | Priority |
---|---|---|---|---|
Email Registration | As an administrator , I want to be able to have verification emails sent so that users can verify that they attempted to create an account . |
15 | High | Low |
Tasks
- User model must be created - Jon
- API routing for Users must be available for accepting and sending user data - Jon
- Registration component must be coded - Ramez, Kerry
- Backend must mail user attempting to register - Nico
Acceptance Test
Refer to registration user story. If the email is not received then this acceptance test fails.
id = 9
Title | Story Description | Points | Risk | Priority |
---|---|---|---|---|
Search | As a user , I want to be able to search questions from the home page. |
25 | High | High |
Tasks
- Front end searches from available questions - Kerry, Sharon
Acceptance Test
Go to the home page. If the user types into the search bar, exact string matches of the questions below should be the only questions left. If no matches occur even though the string is a direct match the test fails.
id = 10
Title | Story Description | Points | Risk | Priority |
---|---|---|---|---|
Testing | As an admin , I want to be able to test all components on front-end and assert that all backend-models work properly. |
30 | Low | High |
Tasks
- Front-end tests need to be configured - Kerry
- Front-end tests need to be developed - Kerry
- Back-end tests need to be configured - Nico
- Back-end tests need to be developed - Nico, Jon
Acceptance Test
Check Travis CI, does everything pass? If yes, this acceptance test passes, else this test fails.
id = 11
Title | Story Description | Points | Risk | Priority |
---|---|---|---|---|
Tags | As a logged-in user , I want to be able to add tags to questions after I ask them. |
10 | Low | Medium |
Tasks
- Backend-end schema changes to question must be added - Jon
- Ability to add new tags must be added to the question component - Kerry
Acceptance Test
Go to front-page of site. Login using valid credentials. Ask question. On question page enter in tags. If tags are displayed then the test passes, else the test fails.