QA/Taskboard/Version1-Milestone1
User Stories
User Stories for the Mozilla Community Contributor
A Mozilla Community Contributor should be able to:
- Understand the One and Done initiative [aka QA Taskboard] and login to get started.
- Create and edit a personal profile to state display name.
- Go through a list of tasks available and filter them based on their area and estimated execution time.
- Pick up one task for execution.
- Read clear instructions on how to do the task.
- Get help from Mozilla QA Mentors assigned to the task.
- Pause work on the task and resume at a later time, perhaps from a different location.
- Login again and view the profile to see the total number of tasks completed so far and the current task under execution.
- Mark the task as abandoned or complete.
- Give feedback on the task.
- See the task completion reflected in profile statistics.
User Stories for the Mozilla QA team member
A Mozilla QA team member should be able to:
- Define areas of interest within Mozilla QA in which Mozilla Community Contributors may participate (e.g. WebQA, B2G, etc).
- Create tasks with clear instructions, estimated execution time, area of interest, and unique URL.
- Discuss a particular task over email by sharing the task's unique URL.
- Save the task in a draft state and publish it as needed for contributors to start work on.
- Make unlimited instances of a task available for contributors to pick up (for example, test case suites on a testday).
- See a list of all tasks completed / abandoned.
User Stories for the Mozilla Manager
A Mozilla Manager (Community, Project, QA, etc.) should be able to:
- Read feedback of contributors after task completion.
- Read metrics of community participation: Number of tasks completed daily (drill down by area of interest, estimated execution time, contributor display name, etc.)
Mockups
One and Done workflow with mockups:
Home Page
User Story
A Mozilla Community Contributor can understand the One and Done initiative [aka QA Taskboard] and login to get started.
UX
The One and Done initiative [aka QA Taskboard] has to be presented in a clear, simple and attractive manner. The different areas of Mozilla QA in which contributors can get engaged should also be showcased.
Screen Mockup
UI Controls
String | UI Control | Value / Range | Validation / Error Message(s) |
---|---|---|---|
One and Done
Contribute to Mozilla QA - one task at a time, one day at a time. |
Text | N/A | N/A |
Come and make a meaningful contribution to Mozilla QA daily based on your time availability and skill level. Work with us to improve the quality of what we produce and feel rewarded. | Text | N/A | N/A |
Image (QA Team logo) | N/A | N/A | |
Sign in with Persona | Button | Handled through Mozilla Persona (aka BrowserID) | Handled through Mozilla Persona (aka BrowserID) |
What is Persona? | URL | Link to https://support.mozilla.org/en-US/kb/what-is-persona-and-how-does-it-work | N/A |
Our Teams | Text | N/A | N/A |
Image (Logo of the QA Automation team) | N/A | N/A | |
Automation | URL | Link to https://quality.mozilla.org/teams/automation/ | N/A |
We build automated tests to run against Mozilla websites to make sure they are working as expected. | Text | N/A | N/A |
Image (Logo of the Desktop Firefox team) | N/A | N/A | |
Desktop Firefox | URL | Link to https://quality.mozilla.org/teams/desktop-firefox/ | N/A |
We test desktop Firefox for new features and resolved issues before release. | Text | N/A | N/A |
Image (Logo of the Web QA team) | N/A | N/A | |
Web QA | URL | Link to https://quality.mozilla.org/teams/web-qa/ | N/A |
We ensure that all Mozilla websites are high quality, secure, and user friendly. | Text | N/A | N/A |
Image (Logo of the Thunderbird team) | N/A | N/A | |
Thunderbird | URL | Link to https://quality.mozilla.org/teams/thunderbird/ | N/A |
We test the Thunderbird mail client for new features and resolved issues before release. | Text | N/A | N/A |
Image (Logo of the Services QA team) | N/A | N/A | |
Services QA | URL | Link to https://quality.mozilla.org/teams/services/ | N/A |
We test Mozilla's private and secure user-controlled services for Firefox, desktop and mobile. | Text | N/A | N/A |
Image (Logo of the Mobile QA team) | N/A | N/A | |
Mobile QA | URL | Link to https://quality.mozilla.org/teams/mobile/ | N/A |
We test Firefox for Android and Firefox OS, a new mobile operating system. | Text | N/A | N/A |
Get Involved | Text | N/A | N/A |
You can help us with tasks like looking for bugs in the software we produce, helping us triage them in Bugzilla, create new test cases, execute test cases on early releases, automate our tests, and participate in our test days. | Text | N/A | N/A |
Next Screen
Mozilla Community Contributor Profile Page
Security
- Authentication: Mozilla Persona (BrowserID) is used for login authentication.
- Authorization: This page is public by default.
Performance
- Home Page Load Time < 5 seconds
- Login Time < 5 seconds
Create Profile
User Story
A Mozilla Community Contributor can create a personal profile to state display name.
UX
Mozilla QA would like to know how to address the contributor when communicating with her. Over time, the contributor's profile would contain information like how much time she could contribute on a daily basis, what her area of interest is, and what difficulty level of tasks she would like to tackle in each area.
Screen Mockup
UI Controls
String | UI Control | Value / Range | Validation / Error Message(s) |
---|---|---|---|
Name | Label | N/A | N/A |
(Contributor's Display Name) | Textbox | All Unicode characters except some special characters (which ones?) http://www.regular-expressions.info/unicode.html#block | (same as mozillians.org display name validation error) |
Save | Button | Clicking on the button saves the Community Contributor's Display Name and Email Address in persistent storage. | Error saving Name and Email Address in application persistent storage. |
Sign out | Button | Clicking on the button causes the user to logout and ends the session. | (handled by Mozilla Persona) |
Next Screen
Mozilla Community Contributor View Profile Page
Security
- Authentication: Mozilla Persona (BrowserID)
- Authorization: This page is visible to the Community Contributor only.
- Privacy: Since data is being collected on the contributor, this has to be vetted to be in compliance with Mozilla's Privacy Policy.
Performance
Page Load Time < 5 seconds
View Profile
User Story
A Mozilla Community Contributor can view a list of tasks that are available to get started with.
UX
The Contributor can view her saved profile, which consists of her display name and a count of the tasks done so far. The View Profile page also serves as a launching pad to pick a task from a list of all tasks available in the system.
Screen Mockup
UI Controls
String | UI Control | Value / Range | Validation / Error Message(s) |
---|---|---|---|
(Contributor's Display Name) | Label | Display name of the contributor as set in the Edit Profile page | N/A |
Tasks completed | Label | N/A | N/A |
N tasks (where N is the number of tasks done by the contributor so far) | Label | N is the number of tasks done by the contributor so far. If no tasks have been done so far, the label and the value do not appear. | N/A |
Pick a task to do | Button | Clicking on the button opens a page showing all tasks listed by Mozilla QA. | N/A |
Welcome, (Contributor's Display Name) | Label + URL | Clicking on the (Contributor's Display Name) opens the Edit Profile page. | N/A |
Sign out | Button | Clicking on the button causes the user to logout and ends the session. | (handled by Mozilla Persona) |
Next Screen
- List of Tasks Page
- Edit Profile Page
- Sign out
Security
- Authentication: Mozilla Persona (BrowserID)
- Authorization: This page is visible to the Community Contributor only.
Performance
Page Load Time < 5 seconds
Tasks List
User Story
A Mozilla Community Contributor can see a list of all tasks available to contributors at the moment.
UX
A Mozilla Community Contributor can see a list of all tasks available to contributors at the moment and drill down by area of interest and estimated execution time in order to determine which task she would like to get started on.
Screen Mockup
UI Controls
String | UI Control | Value / Range | Validation / Error Message(s) |
---|---|---|---|
Filters | Label | N/A | N/A |
Area | Label | N/A | N/A |
Select | Dropdown list | List of all Areas in the system with the default value set to the string "Select" | The user can select one value from the dropdown list. |
Sub Area | Label | N/A | N/A |
Select | Dropdown list | List of all Sub Areas in the system with the default value set to the string "Select" | The user can select one value from the dropdown list. |
Estimated Execution Time | Label | N/A | N/A |
(Value of Estimated Execution Time) | Slider | The range is from 0 to 60 minutes. | Changing the value should display only those tasks that have an estimated execution time equal to or less than the value specified here in the filter. (For example, if the value of the filter is 48 mins, all displayed tasks should have an estimated execution time of 48 mins or less.) |
Tasks | Label | N/A | N/A |
(List of Tasks) | Vertical List | First 10 tasks in the system | List sorted by Estimated Execution Time (shortest first, longest last) |
(Task Area > Task Sub Area) | Label | The Area and Sub Area of the Task as specified by the task creator | N/A |
(Task Title) | URL | The Title of the Task as specified by the task creator. | Clicking on the Title should open the Task Execution page. |
(Task Summary) | Label | One-line description of the Task as specified by the task creator. | N/A |
X of Y | Pagination | The list of tasks is divided into Y pages such that each page displays up to 10 tasks | Navigation should be possible to next page, previous page, first page, last page. |
Welcome, (Contributor's Display Name) | Label + URL | Clicking on the (Contributor's Display Name) opens the Edit Profile page. | N/A |
Sign out | Button | Clicking on the button causes the user to logout and ends the session. | (handled by Mozilla Persona) |
Next Screen
- Task Execution Page for any task clicked on
- Edit Profile Page
- Sign out
Security
- Authentication: Mozilla Persona (BrowserID)
- Authorization: This page is visible to all Community Contributors.
Performance
Page Load Time < 5 seconds
View Task
User Story
A Mozilla Community Contributor can view a task in detail to see if she would like to get started with it.
UX
A Mozilla Community Contributor can view a task in detail to see if she would like to get started with it. The Contributor can also read clear instructions on how to do the task. The Contributor can get started with the task.
Screen Mockup
UI Controls
String | UI Control | Value / Range | Validation / Error Message(s) |
---|---|---|---|
(Task Title) | Label | The Title of the Task as specified by the task creator | N/A |
(Task Execution Instructions) | Text + URLs | The complete Task Execution Instructions as specified by the task creator | Clicking on any of the links should open in a new tab. |
Estimated time needed for completion | Label | N/A | N/A |
(Estimated Execution Time of Task) | Label | Estimated Execution Time of Task as specified by the task creator | N/A |
Get Started | Button | Clicking on the Get Started button opens the Task Execution Page. It also saves the task information in the system's persistent storage so that when the Contributor's View Profile page is opened, it shows the Task Resume feature with this task. | Error saving task information in the system's persistent storage. |
Welcome, (Contributor's Display Name) | Label + URL | Clicking on the (Contributor's Display Name) opens the Edit Profile page. | N/A |
Sign out | Button | Clicking on the button causes the user to logout and ends the session. | (handled by Mozilla Persona) |
Next Screen
- Task Execution Page
- Edit Profile Page
- Sign out
Security
- Authentication: Mozilla Persona (BrowserID)
- Authorization: This page is visible to all Community Contributors.
- Privacy: Since data is being collected on the contributor, this has to be vetted to be in compliance with Mozilla's Privacy Policy.
Performance
Page Load Time < 5 seconds
Task Execution
User Story
A Mozilla Community Contributor can start executing a chosen task.
UX
A Mozilla Community Contributor can start executing a chosen task. If the contributor needs help, Mozilla QA mentors assigned to that task will be available to help out via email. All details necessary to execute the task will also be available: attached files, screenshots, task execution workflow (like for bugs), and additional URLs. The contributor can indicate pause the task and sign out in order to resume execution at a later time and place.
Screen Mockup
UI Controls
String | UI Control | Value / Range | Validation / Error Message(s) |
---|---|---|---|
(Task Title) | Label | The Title of the Task as specified by the task creator | N/A |
(Task Execution Instructions) | Text + URLs | The complete Task Execution Instructions as specified by the task creator | Clicking on any of the links should open in a new tab. |
Pause | Button | Clicking on the Pause button opens the View Profile page with the Task Resume feature. | N/A |
Don't have time to finish this task right now? Come back later and finish it. | Help text | N/A | N/A |
I'm done | Button | Clicking on the Done button opens the Task Feedback page. The task is also saved in the system's persistent storage in order to generate the metrics report for community participation. The Contributor's task count is incremented by one. | Error saving task information in the system's persistent storage. |
Welcome, (Contributor's Display Name) | Label + URL | Clicking on the (Contributor's Display Name) opens the Edit Profile page. | N/A |
Sign out | Button | Clicking on the button causes the user to logout and ends the session. | (handled by Mozilla Persona) |
Next Screen
- Task Feedback Page
- View Profile Page with Task Resume
- Edit Profile Page
- Sign out
Security
- Authentication: Mozilla Persona (BrowserID)
- Authorization: This page is visible to all Community Contributors.
Performance
Page Load Time < 5 seconds
Task Resume
User Story
A Mozilla Community Contributor can resume execution of a task after starting task execution, signing out and then signing back in.
UX
A Mozilla Community Contributor can resume execution of a task after starting it and then signing out. After the Contributor signs back in, the View Profile page should open with the task linked to its execution page.
Screen Mockup
UI Controls
String | UI Control | Value / Range | Validation / Error Message(s) |
---|---|---|---|
(Contributor's Display Name) | Label | Display name of the contributor as set in the Edit Profile page | N/A |
Tasks completed | Label | N/A | N/A |
N tasks (where N is the number of tasks done by the contributor so far) | Label | N is the number of tasks done by the contributor so far. If no tasks have been done so far, the label and the value do not appear. | N/A |
Task in progress | Label | N/A | N/A |
(Title of Task) | URL | Clicking on the Title of the Task should open the Task Execution page. | N/A |
Edit Profile | Button | Clicking on the Edit Profile button should open the Edit Profile page. | N/A |
Welcome, (Contributor's Display Name) | Label + URL | Clicking on the (Contributor's Display Name) opens the Edit Profile page. | N/A |
Sign out | Button | Clicking on the button causes the user to logout and ends the session. | (handled by Mozilla Persona) |
Next Screen
- Task Execution Page
- Edit Profile Page
- Sign out
Security
- Authentication: Mozilla Persona (BrowserID)
- Authorization: This page is visible to the Community Contributor only.
Performance
Page Load Time < 5 seconds
Task Feedback
User Story
A Mozilla Community Contributor can give feedback after executing a task.
UX
A Mozilla Community Contributor can give feedback after executing a task. The contributor is also thanked for his contribution. The contributor can choose to skip giving feedback for the task.
Screen Mockup
UI Controls
String | UI Control | Value / Range | Validation / Error Message(s) |
---|---|---|---|
(Title of Task) | Text | Title of the Task as specified by the task creator. | N/A |
Thank you! Thank you for contributing to Mozilla QA! Your time and effort are highly appreciated. We'd love to hear from you. Tell us about your experience here. We'd love to know what we're doing right, what to keep doing, and what to start doing. | Text | N/A | N/A |
(Contributor's feedback) | Text Area | Large text area for the Contributor to give her feedback on the task. The text area can also accept links. (It may not accept certain special characters?) | |
Submit Feedback | Button | Clicking on the Submit Feedback button saves the Contributor's feedback in the system's persistent storage in order to generate the metrics report for community participation. The Contributor's View Profile page opens. | Error saving task feedback in the system's persistent storage. |
No, thanks. | URL | Clicking on this link opens the View Profile page. The Contributor's feedback is not saved. | N/A |
Welcome, (Contributor's Display Name) | Label + URL | Clicking on the (Contributor's Display Name) opens the Edit Profile page. | N/A |
Sign out | Button | Clicking on the button causes the user to logout and ends the session. | (handled by Mozilla Persona) |
Next Screen
- View Profile Page
- Edit Profile Page
- Sign out
Security
- Authentication: Mozilla Persona (BrowserID)
- Authorization: This page is visible to all Community Contributors.
Performance
Page Load Time < 5 seconds
Technology Stack
- Front-end: HTML5 / CSS3 / JavaScript
- Web application Framework: Playdoh, a web application template based on Django.
- Integration with Mozilla Persona (BrowserID) - To manage login / logout / session
- Backend: plain text files in JSON format
Community
Community members participating in this milestone are part of mozillians.org group One and Done.