- You can problem solve - User stories won’t have technical details on how to do things. It is up to the team and the Tech Lead to interpret the requirements and develop solutions.
- You will commit to the whole goal of the sprint.
- You will do all in your power to meet your commitment.
- You will work together to meet the commitment.
- You will communicate if unforeseen circumstances alter what you’re able to deliver.
“Who”: The Participants
Scrum is based around a small group of cross-functional team members working to deliver results. They have specific, named roles in the scope of the project:- Product Owner (Key stakeholder)
- Project Manager
- Technical Lead
- Developers
- QA Analysts
Product Owner
The Product Owner (PO) is the key stakeholder on the project. They are responsible for gathering requirements with the client and putting together the user stories with those requirements and acceptance criteria. They are also responsible for prioritizing the backlog and ensuring the team works on the most important things first. In most cases, a main stakeholder on the client’s side can work closely with the Product Owner to align on requirements and expectations. This stakeholder will have a deep understanding of the product and its users and will be able to provide the team with the necessary information to build the product. The product owner is responsible for clearing blockers, gathering additional information, answering questions, and supporting the Tech Lead and developers.Project Manager
The Project Manager’s main responsibility is to ensure the project is moving at an adequate pace and that the timeline is protected. They provide reports to the client regarding timelines, budgets, and progress. The project managers are also responsible for scheduling meetings and sprint demos, presenting progress and statistics, ensuring the team is on track, and ensuring the client is happy with the progress.Technical Lead
The Technical Lead is responsible for the technical direction of the project. They are responsible for ensuring the team is working on the right things and in the right way, that it is sustainable and scalable, and that it is working in the right way. Tech leads work very closely with Product Owners when refining user stories. They must understand all of the requirements and acceptance criteria and are responsible for breaking those into sub-tasks for the developers to work on. Tech leads are the developers’ main point of contact when they have questions or are unsure how to proceed with a task.Developers
The developers are responsible for building the product. They are a group of dedicated individuals capable of working across disciplines who are team-focused and results-oriented participants in the process.QA Analysts
The QA Analysts are responsible for ensuring the product is of high quality, meets the acceptance criteria, and is of a high standard. They will test tickets against the acceptance criteria and provide feedback to the developers. They are our last line of defence before the product is delivered to the client.“What”: Scrum Project Lifecycle
When we start a new project, there is a lot of work to be done before we can start writing code. It usually involves a discovery phase, a strategy phase, a design phase, and a development phase. As a developer, you will be more involved in the development phase. Once development has started, the project revolves around Sprints and their associated events. These are typically two-week blocks of development time, and they repeat until the project backlog is complete.User Stories
The product owner will work with the client to gather requirements and create user stories that meet all the acceptance criteria. These user stories will then be presented to the client for confirmation and sign-off. Once we have the user stories, the product owner and the tech lead will work together to refine the user stories and break them down into smaller tasks. This is a crucial step as it will help the developers understand what needs to be done and how to do it.Backlog Refinement
The Backlog is an ordered list of all the features that need to be included in the project. It is also a dynamic list, responsive to the project’s evolving needs. The Tech Lead will book a meeting with the developers to discuss the user stories and acceptance criteria. This call is to discuss and present what we’ll be working on and get everyone’s input on how to approach the tasks. During this call, the Tech Lead will also guide the team on how to estimate the stories using Planning Poker.Estimating with Planning Poker
We use Story Points for our estimations. It is essential to understand that Story Points are not relative to time but rather the complexity of the task. We use the Fibonacci sequence to create points of comparison (typically 1, 2, 3, 5, 8, 13). After presenting a User Story, the tech lead will initiate a voting session where everyone will anonymously vote on how many points they believe the story is worth. The team will then discuss the differences in votes and re-vote until a consensus is reached. We have a Slack app integration for this purpose, which allows us to vote and discuss the story points without revealing our votes until everyone has voted.Sprint Planning
Well before a sprint begins, a Sprint Backlog is created. The Sprint Backlog is a smaller list of stories taken from the top of the Product Backlog that the development team has committed to and designated to be completed in the Sprint. Sprint planning usually happens at least two sprints ahead of time, which includes:- Capacity Update
- Issue Review
- Velocity Prediction
- Team Buy In
- Team Commitment/Agreement
Sprint
A sprint is the basic unit for development. It’s timeboxed, which means it has a restricted unit of time and can act as a subproject within the wider development project. The parts of a sprint are:- Get to Work
- Build
- Test
- Review
- Release
- Communicate Issues
- Risk Management
- Complete
Standup
The daily rhythm of a sprint includes a regular, short check-in meeting called a Standup. In this meeting, led by the Project Manager, the team reports on the following three questions.- What have you done since the last Standup?
- What will you be working on today?
- Are there any blockers you need help with?
Sprint Demo
The Sprint Demo happens at the end of a sprint and demonstrates to stakeholders what has been completed in the most recent Sprint.- Showcase completed Work
- Review/Report on Burn-down and Velocity
The Tech Lead usually presents the work to the client. It is important that they have a clear understanding of what was done and how it all works so they can properly present the work and answer any questions they may have. It is recommended that the team meet before the presentation to help prepare the Tech Lead for the demo.
Sprint Retrospective
The Sprint Retrospective happens once per sprint and is an opportunity for the entire team to come together and evaluate what went well and what needs improvement. The aim is to produce action items for the team to help them increase the efficiency of succeeding sprints.- Celebrate Success
- Review Failures
- Resolve to improve together