Let’s go Agile: Basics of the Scrum Methodology
What is Agile?
Agile is a structured and iterative approach to project management and product development. It is best referred to as a project Management/Product Development Methodology. Agile software development prioritizes features, continually gathers customer feedback and adjusts and remains “agile” and flexible throughout the process, knowing that during the process new insights may occur that may lead to valuable changes.
Kanban and scrum are frameworks that help teams adhere to agile principles and get stuff done. The nature of the project/Product forms the basis of the framework that one uses between Scrum and Kanban. Thus, one can practice both at the same time, it is not a debate between Scrum and Kanban.
What is scrum?
You may have come across the term “scrum” in Rugby. Just as in the game, self-managing teams work together to get stuff done. Scrum is, therefore, an agile framework for developing and sustaining complex products. Scrum as a framework is lightweight, simple to understand and difficult to master. If you are not practicing scrum framework in its entirety, you lose the value that the scrum framework provides.
Scrum is best defined in The Scrum Guide®
There are three fundamental rules of scrum;
1. Time-boxed events
2. Roles - Product Owner, Dev Team, Scrum Master
Pillars of scrum are;
Transparency refers to visibility by all interested parties. The team adopts a common definition of done, which enables them to develop a shippable increment of a product. Inspection refers to the continuous checking that the team is working towards the sprint goal. Adaptation is the adjustment done as soon as possible to avoid further deviation. It is not too frequent that it gets in the way of work.
There are four formal Ceremonies/elements of Scrum:
1. Sprint Planning
2. Daily standup
3. Sprint Review
4. Sprint Retrospective
The scrum artifacts are;
1. Product backlog – Managed by the Product owner
2. Release backlog – Monitored with the release burndown
3. Sprint backlog – Monitored with the sprint burndown
4. Shippable product increment – Based on the definition of DONE
Scrum has timeboxed events.
The scrum master is responsible for beginning and ending meetings on time.
Sprint- From1 week to a maximum of a month. Optimum time to deliver business value.
Sprint planning – Maximum of 4 hours. (2 weeks) 8 hours for 1 month sprint .
Daily standup – Maximum 30 minutes. Issues raised on the standup, organize a separate meeting to address. Thus, it doesn’t disrupt the spirit of scrum.
Sprint review – at the end of the sprint. (4 hours).
Sprint -Retrospective – What worked? What can be improved?
Release planning – Product owner presents a list of items/Features that should be part of the release
Every event has a maximum duration. There should be a limit to doing things. Thus, maximum amount of time before you become unproductive.
Not doing events – Reduces Transparency
Sprint planning: This seeks to answer the below questions
What can be delivered? – What and How
How will it be delivered? – Subtasks and Estimates
What did you do yesterday?
What do you aim to do today?
Do you have any challenges?
There are defined attributes for each of the scrum roles. Ideal development team size should be 7± 2