Concepts and usages of Scrum framework
Scrum is built on 3 major concepts
- Roles – 3 roles
- Events – 4 events
- Artifacts – 3 artifacts
1. Scrum Team and Roles
- Product Owner – The own who represents customer and clarify on requirements, prioritizing the features and defining a clear scope other project. Product owner job is to create the backlog along with their priority.
- Scrum Master – Responsible person for managing the process, who ensures the communication between Product owner and team members, who also ensures that each sprint is self contained and well achieved on time.
- Team members – Group of professional, self organizing and cross functional. Team has the full autonomy to decide on tools, technology, estimate, release date etc., so it is self organized, and it consist different skill set guys in the team which are required to deliver, they all collaborate and deliver faster and better. In case of software development, team will be a good mixture of Back-end, Front-end developers, QA and Design engineers. The team works on project via “Sprint”, a time period in which they will deliver the a piece of product along with testing and documentation. Scrum team consists of Product owner and Scrum master as well.
Scrum Team understanding
2. Scrum Events
Scrum events are 2nd most important thing in scrum framework, which makes scrum so unique and successful. Scrum events are following, which we’ll discuss further below as well.
- Sprint meeting
- Scrum meeting
- Sprint review meeting
- Sprint retrospective meeting
Sprint is the heartbeat of scrum framework. Sprint is a time box which can be decided by team, usually 2 week to 4 weeks. In that time box team can decide the list of features to pick-up which they think can be delivered. Product owner moves those features from product backlog to Sprint backlog. Once the sprint is kicked-off scope can not be changed, however product owner or team can renegotiate to either accommodate few changes or remove few. All the sprints should be of same time cycle. Sprint sets the momentum in the team. Through out sprint there will be daily scrum meeting.
Sprint planning is most important to meet the expectation, Product owner would want to achieve maximum in a sprint, where as Development team must breakdown every feature in a task and provide realistic estimate, so that backlog items of a sprint can be realistically achieved in time, meaning sprint meeting should cover two things one, what can be achieved and second how to achieve.
3. Scrum meeting and 3 Questions
To keep the track of development, adaptation and collaboration there is concept of scrum meeting, which is held daily, usually goes for 10-15 minutes and if possible should be done in stand-up position, so that it can not be extended for long time. In every scrum meeting, every team member has to answer 3 questions.
- What you did yesterday
- What are you going to do today
- Anything which is preventing you to complete your task
After the scrum meeting, there can be modified backlog based on changes or adaptation, which would ensure to meeting the sprint goal by the end of sprint time box.
4. Sprint review
Sprint review meeting is done after the completion of sprint to inspect and adapt the product development. This meeting is also time boxed, maximum of 4 hours for 1 month of sprint. This meeting will be attended by entire Scrum team; owner might bring other stake holders like customers or reviewer in the meeting. This meeting would have 3 objectives
- Product demonstration which was developed
- Adaptation of any feature or priority changes as per business context
- Modification of product backlog
5. Sprint retrospective
As the word suggest Retrospective, this meeting objective to look back in the sprint and learn any shortcoming and adapt to perform better. This meeting is also time boxed, maximum of 3 hours for 1 month of sprint. This meeting will be done by Scrum team. This is quite possible that every sprint will bring some learning, like what went wrong, we could have breakdown better, may be the estimation was wrong, may be dependency we didn’t consider, so reviewing all that improving in the next sprint is objective of retrospective meeting. Take away are
- Team, relationship improvements, communication gap, process, tool
- What we could have done better
- What we’ll do better in the next sprint
Retrospective meeting is very important, because this brings the continuous improvement and makes the Scrum framework successful.
There are 3 main artifacts in scrum which are standard, which are Product backlog,Sprint backlog and Increments. Product backlog is vision of product owner which he wants to achieve and how he is going to achieve it, he may choose to have top level feature as one item, or breakdown in multiple increments. In sprint meeting while moving to sprint backlog one item can be broken down into many items which can be a task for team of developers, whatever comes out of sprint meeting a task board for the team is called Sprint backlog. During the sprint cycle whatever product feature which can be marked as done can be called as Increment, which should also be demonstrated in sprint review meeting.
While doing sprint meeting, everything should be Timeboxed. Usually per week(8 hours, 5 days) of sprint, you should dedicate 2 hours of sprint meeting, or for 30 days sprints, you should dedicate 8 hours sprint meeting. This gives a sense of urgency and focus in the meeting. Entire discussion of achievable goal, breakdown of the task, estimation should be discussed in dedicated timebox in a sprint meeting. A good scrum master will ensure that every scrum events would get completed in dedicated time or even before that. Like sprint review meeting should be done in 4 hours for a month of sprint and sprint retrospective meeting should be done in 3 hours for a month of sprint.
8. Burndown Chart
A simple graphical way to see how much work is left and how much work is churning daily.
Anything which is preventing the team member to work as efficiently as possible. Team member can bring the impediments in the daily scrum meeting. It is scrum master’s responsibility resolve the impediments.
Velocity is estimation of how much a team can handle in a sprint. This can be estimated by looking at previous sprints. To measure the team velocity sprint cycle must not be changed. Velocity gives a forecasting the completion time of a project.
11. Sprint board and Sprint task
In the sprint meeting, every sprint backlog should be broken down further into multiple task such that every task can be completed in 4 hours to 16 hours. Every such unit of work, a task along with estimate is called Sprint task.
Developer can further break the Sprint task into sub-task and keep changing status as soon as it gets done. This all task breaking down and their status movement, can be done on a board which is called Sprint board. It can be a real board also with the help of sticky notes, or you can use any software to achieve it. As soon as the task status is changed, it will reflect on burndown chart.
An Epic is which can take longer time to finish and multiple tasks can be grouped into a bucket is epic.