AKA the most important part of the whole thing, whatever that thing maybe!
give a detailed description of what the project is, why the client/user needs it, and what solution this aims to provide.
Client:
Last revision date:
Stakeholders
- name email@example.com
- name email@example.com
Add links to designs and UX Specifications
It is advisable to extend these to all touch points. even if they are not based on the application. Such as clients going into an office to have an appointment.
For more information on how to write the user stories see Don't Code Tired | Gherkin Cheat Sheet
these user stories have to be written in English as they will become the basis of the UI tests inside of the application.
Label the priority of the user stories with an @tag
using the Moscow Method
M ust have (MLP stage - minimum learnable product) o S hould have (MVP stage - minimum viable product) C ould have (MSP stage - minimal saleable product) o W ould have (VP stage - validated product)
@must-have
Feature: Y
Background:
Given i navigate to "/path/example"
Scenario: As a user i want to Y
Scenario: As an admin i want to Y
Scenario: As an x i want to Y
if you want to prioritise the scenarios and not the whole feature. Just add the
@tags
above the scenarios and not the feature
Feature: Z
Background:
Given i navigate to "/path/example"
@could-have
Scenario: As a user i want to Z
@would-have
Scenario: As an admin i want to Z
@must-have
Scenario: As an x i want to Z
Are we building a Data are we integrating with a third party API?
- Core Database Design SQL Server Database Modeler, Entity Relationship Diagram
- API Intergration Spec and checklist
What browser Support will we have, What devices will we support? Be as specific as possible.
Desktop
- IE9
- IE10
- Safari => #?
- FireFox => #?
- Chrome => #?
iOS
- Safari => #?
- FireFox => #?
- Chrome => #?
Android
- Safari => #?
- FireFox => #?
- Chrome => #?
Do we already have design guidelines and copy style guides to follow for the project
How many hours do we have to do the project?
When are we expected to provide deliverables and release new versions
How we will handle ongoing issues. Will we be responsible for maintaining the application. How will the client communicate with the team on issues that arise?
!What is our agreed SLA (service level agreement)
How will we validate features and development?
- CI Build
- CI Test
- SonarCube
- Linter
- Unit Tests
- UI Tests
- CI Deploy
- Staging
- Production
- Development
- Merge Request Previews
This is the section where we need to gather the details of QA requirements. As well as how issues will be communicated back to the team.
Every type of input on the site and the validation necessary
- How will we log errors from the application and make them available to the dev team
- How will we measure the usage of the application
- is there any more core measurable success criteria we need to keep track of