This repository contains the final project for the Agile Development course. The project involves creating a backend product catalog for an e-commerce website. The team will be using ZenHub and GitHub to create a product backlog, refine it, create a sprint plan, and execute a mock sprint.
The team will play the roles of a product owner, scrum master, and developer. The product owner will create stories and organize them into a product backlog. The scrum master will create a sprint milestone and ensure that a subset of the stories is ready to be placed in a sprint plan. The developer will create the sprint backlog and execute some of the stories by moving them across the kanban board in a simulated sprint.
The stakeholders require the following functionality:
- Create a product in the catalog.
- Retrieve a product from the catalog.
- Update a product in the catalog.
- Delete a product from the catalog.
- Like a product in the catalog.
- Dislike a product in the catalog.
- List all products in the catalog.
- Query a subset of products in the catalog.
- Must be hosted in the cloud.
- Must have automation to deploy new changes to the cloud.
The following are the instructional tasks to complete the project:
- Create a new GitHub repository called "agile-final-project" and ensure that it is public.
- Create a workspace in ZenHub called "Final Project" linked to the repository.
- Create an issue template for the new repository.
- Create issues for the stakeholder requirements listed above (10 in total). Fill in the "As a... I need... So that..." section of the template.
- Move the issues that represent requirements 7 and 8 into the Icebox.
- Move the remaining issues into the Product Backlog.
- Conduct a Backlog Refinement meeting and rank the Product Backlog so that the stories match the requirements above in the order: 1, 2, 3, 4, 9, 10, 5, & 6.
- Update the top 5 stories in the Product Backlog with acceptance criteria following the Gherkin "Given... When... Then..." syntax.
- Create a "technical debt" label.
- Add labels to all the stories in the Product Backlog of either "enhancement" or "technical debt".
- Create a sprint milestone with a duration of 2 weeks, with the name "Sprint 1" in the title, and a sprint goal in the description.
- Conduct a Sprint Planning meeting. Add the top 4 stories to the sprint by assigning them to the sprint milestone. Assign story points estimates. Move these 4 stories to the Sprint Backlog.
- Simulate a sprint by assigning the top story to yourself. Then move this story to the In Progress pipeline.
- Move the story that you just assigned to yourself to Review/QA. Take the next story from the Sprint Backlog and assign it to yourself. Move it to the In Progress pipeline.
- Move the story in Review/QA to Done. Move the story from In Progress to Review/QA. Take the next story off the Sprint Backlog, assign it to yourself, and move it to the In Progress pipeline.
- Move the story that is left in Review/QA to Done. Leave the story that is in the In Progress pipeline where it is. This is the end of the sprint.
- Ensure that the burndown chart displays correctly.
- Share the URL of the kanban board for peer review.
- GitHub
- ZenHub
- Burndown chart
Project Live link
- Evans Kupour