Sprint Deliverables - RyanGuzelian/Alpha_team_soen341project2023 GitHub Wiki
The purpose of this page is to ensure our team fulfills all the corresponding Sprint requirements.
Sprint 1
Requirements
Activities | Sprint Details | Reference | Status |
---|---|---|---|
GitHub Initiation | Create repo and add project contributors | Project GitHub | Completed |
README File | Add project description, team members and roles, project approach, and technology | README.md | Completed |
Task Breakdown | Provide 4 user stories with details, including team members' responsibilities (if known) | Initial User Stories | Completed |
Commits | Open issues or plan for the next Sprint | Open issues | Completed |
Sprint 2
Requirements
Activities | Sprint Details | Reference | Status |
---|---|---|---|
Label Creation | Create issues with the label 'User Story' | Link to: GitHub Labels | Completed |
User Stories | Define user stories in the proper format: As a __, I want to __ because __ | Link to: Issues | Completed |
Task Breakdown | Break down these user stories into tasks and create references appropriately | Link to: User Story & Task Breakdown Tracker | Completed |
Story Points | Allocate story points to the user stories with explanation | Link to: Story Point Allocation: Planning Poker | Completed |
Feature Development | Develop at least one feature and implement it, share it and contribute all to the work | Link to: Need to add brief description | Completed |
Acceptance Tests | Identify at least 2 acceptance test suites for the user stories, make them clear to find and link on GitHub | Link to: [Acceptance Tests] Link to: [Methodology] | Completed |
Risks | Identify some risks with importance and consequences and possible countermeasure | Link to: Risk Analysis, for more details: Discussion | Completed |
Sprint Planning | Summarize your plan for next sprint | Link to: Sprint Planning | Completed |
Meeting Minutes | Update the meetings minutes | Link to: Meeting Minutes | Completed |
Sprint 3
Requirements
Activities | Sprint Details | Reference | Status |
---|---|---|---|
User Stories | Define user stories in the proper format: As a __, I want to __ because __ | Link to: Issues | Completed |
Task Breakdown | Break down these user stories into tasks and create references appropriately | Link to: User Story & Task Breakdown Tracker | Completed |
Feature Development | Develop all 4 core features | Link to: Need to add brief description | In Progress |
Acceptance Tests | Identify at least 2 acceptance test suites for the user stories, make them clear to find and link on GitHub | Link to: [Acceptance Tests] Link to: [Methodology] | Completed |
Risks | Identify some risks with importance and consequences and possible countermeasure | Link to: Risk Analysis, for more details: Discussion | Completed |
Sprint Planning | Summarize your plan for next sprint | Link to: Sprint Planning | Completed |
Meeting Minutes | Update the meetings minutes | Link to: Meeting Minutes | Completed |
Continuous Integration Pipeline | Automatic tests execution while committing to the main branch | Link to: [Pipeline] | In Progress |
Label Creation
Custom labels were created to help us categorize issues, pull requests, and discussions. The labels were grouped by color, according to broad themes. Additionally, descriptions for each label were added to let contributors know which label they should use.
To view the full list of labels and their descriptions, visit: GitHub Labels.
User Stories
User stories were defined in the proper format: As a __, I want to __ because __ . Buzzwords, technical terminology, and acronyms were avoid to keep them simple and accurate. Moreover, as sprint planning took place and we worked on defining the upcoming work for future sprints, we developed user stories from the following perspectives:
- As a General User: to encompass the general features available to all of the users of the web app.
- As an Admin: to encompass the additional features available specifically to Administrators.
- As an Advisor: to encompass the additional features available specifically to Advisors.
- As an Employer: to encompass the additional features available specifically to Employers.
- As a Job Seeker: to encompass the additional features available specifically for Job Seekers.
To identify user stories, note that all of them have the corresponding User Story label applied to them.
Task Breakdown
In order to properly link tasks to their corresponding user stories, references were created.
Story Points
In an effort to obtain user story estimates, the team used an agile estimating and planning technique called Planning Poker.
Planning Poker
Planning poker is a consensus-based estimating technique used by development teams to estimate their product backlogs. The goal was to get estimates that would help determine how much work can be done during a sprint. We used a series of cards with the following numbers 0, 1, 2, 3, 5, 8, 13 (Fibonacci sequence). These cards were used to estimate the story points for each user story. As a reference, we considered that front-end tasks such as designing or creating forms would be worth 2 user story points (given that the majority of members are new to React components), at this stage, members are still familiarizing themselves with the chosen back-end technologies, and we determined it is requiring similar effort, at this point. Nonetheless, we hope to adjust story points as the team gains more experience. It is expected that by Sprint 3, front-end tasks will require less effort than back-end tasks. Once consensus was achieved, story points were allocated to each user story. The process did include looking at tasks as well in order to get a deeper understanding.
Feature Development
Sprint | core Feature | Description |
---|---|---|
Sprint 1 | * Setting up GitHub * Assigning Roles * Creating firsts User Stories * Defining project parameters and guidelines | In Sprint 1 the team familiarized with GitHub, we defined the language, frameworks and tools |
Sprint 2 | * Adding Sign in and Sign up features * Adding profile page * Adding more User stories | Team worked on creating more User stories as well as implementing 2 of the 4 core features |
Sprint 3 | * Adding Posts management feature * Adding notification System * Adding more User stories | Team worked on creating more User stories as well as implementing all core features |
Acceptance Tests
Acceptance tests were created considering both success and failure scenarios.
To view a list of acceptance tests, visit: [Acceptance Tests]
Risk Assessment
Risks were identified by carefully evaluating each user story. Once the risks were identified, possible consequences, and countermeasures were included. Finally, a risk matrix was used to properly classify the risk according to its probability and overall impact.
To view a full list of the risks identified so far, visit: Risk Analysis. The following risk matrix was used to determine risk levels:
Additionally, the team also discussed two risks associated with the overall project including:
Risk | Probability | Impact | Level | Countermeasure |
---|---|---|---|---|
Underestimating the time required to complete a Sprint | Low | High | Low | Estimate story points and revise periodically. |
A team member leaves the project | Medium | High | Medium | Maintain documentation in order. |
Sprint Planning
An agile project board on GitHub were implemented to organize and prioritize our work. Visit: Sprint 3 Board, and make sure to read our User Story & Task Breakdown Tracker, it contains a full description for Sprints 3 and 4.