With fast pace growing businesses around the world the need for agile development has become substantial. The most popular framework which best suits agile is nothing but Scrum. Though there are several approaches to implementing agile, but I will not go there. Guess, what? I have already decided that Scrum is what we are going to discuss today.
What is Agile development?
In Waterfall, the outcome used to come after the whole process is completed. In this approach often there used to be disagreements with the client for the final product is different than the expectations.
DEFINE ->DESIGN->DEVELOP->TEST->DEPLOY->FINAL OUTCOME
To solve the problem, agile development came into the picture where the process of design to deploy was executed for a given period of time and the customer was asked for the feedback after successful completion of each cycle.
The constant iteration of the process was done while accommodating the feedback received from the client. Which in return benefited software development companies by delivering high-value features in short delivery cycles, which were otherwise a challenge in the conventional waterfall approach.
DEFINE ->DESIGN->DEVELOP->TEST->DEPLOY-> Outcome 1
DEFINE ->DESIGN->DEVELOP->TEST->DEPLOY-> Cumulative Outcome 2
.
.
.
.
DEFINE ->DESIGN->DEVELOP->TEST->DEPLOY-> Cumulative Outcome 10
FINAL PRODUCT
Values in Agile Product Management –
- Individuals and Interactions – OVER – Processes and Tools
- Working Software – OVER – Comprehensive Documentation
- Customer Collaboration – OVER- Contract Negotiation
- Responding to Change – OVER- Following a Plan
What is Scrum?
Scrum is a framework within which people can address complex adaptive problems, while productively and creatively delivering products of the highest possible value.
How do you decide if you need scrum?
- If the requirements keep on changing
- If we have a self-organizing cross-functional team
- The USP of scrum is that it is adaptable to any kind of team setup.
- Want to address the complex adaptive problems where there is a high level of uncertainty in the requirement, and many a time it is difficult to visualize what we are looking for in the end product.
- A Scrum team can have a minimum of four to ten members: product owner(PO), scrum master(SM), and developers can vary from 2 – 8.
- Where the product increments are measures of progress, delivered within a limited time frame called sprint, and developed in consideration of constant customer feedback in the process.
- Design and implementation are driven by innovation.
- Empirical process control is applicable.
- Teams need no leader and everyone collaborates.
- High-value features are expected in the product in short delivery cycles.
Three essential elements in scrum are –
- Product Goal:
- Product Backlog:
- Scrum Team:
Four acceptable practices in scrum are –
- Product backlog refinement session:
- Definition of Done:
- Team Agreement:
- Sprint Duration:
Steps in the Scrum Flow –
- Product Backlog
- Sprint Planning
- Daily Scrum
- Sprint Review
- Sprint Retrospective
So, whenever you come across a team set up which is adaptable to change and innovative enough to solve a complex problem but needs to deliver the outcome in a short span of time SCRUM is the answer.
References