Scrum Summary and Notes
Introduction
Scrum is a team structure that is organized around a central group of people with certain meeting rhythms. A lot of times a kanban board is used, but it is mostly there for visualizing the work and little restrictions are typically placed on the board itself.
Board
Scrum typically uses a "push" system, where a ticket is moved to the next column when it is time for that person to work on it (i.e when a developer is finished coding, he/she would move the ticket to the QA column so testing could be started).
Sprint
A scrum teams works in a sprint cycle which it typically 1 - 3 weeks long. At the end of this process all of the work that was in the sprint should have been completed and a product feature can be delivered to production. Any unfinished work would be moved back to the product backlog and re-prioritized for the next sprint.
Process
A scrum starts with a Sprint Planning meeting where the agreed upon items are moved from the Product Backlog to the Sprint Backlog. This is the work that will be performed during this sprint. The teams uses the story points on each story to determine how much work they can pull in for the sprint. Overtime, the number of story points completed during a sprint determines the team's velocity.
GIT
Typically a scrum team works around a gitflow structure that encourages delivers to production at the end of each sprint, although a trunk-based work flow is also feasible.
Team Structure
A scrum team is usually made up of a 'Product Owner', 'Scrum Master' and 'Developers'. A "developer" would include programmers, designers, testers, etc. The team is "cross-functional", and it can make decisions that are self-directed. All of the needed disciplines for the team are present (developers, designers, testers, etc).
Meetings
- Daily Scrum (15 minutes)
- Sprint Planning
- Sprint Review
- Sprint Retrospective