What is scrum?
Scrum is an Agile framework for completing complex projects. Formalized initially for software development projects, but it works well for any complex, innovative scope of work. This framework is deceptively simple.
The history of scrum.
Scrum is not only used for software development.
The scrum framework has success in software development, it works in nearly every domain, and it works with a few rules focusing on teams rather than individuals.
The scrum process will start with an idea of a product, which will allow us to create a product backlog, delivering a potentially shippable product. This product will be developed through iterative product development approach, which is also called “sprint.”
One sprint spans between 2 weeks and a month and each sprint progress will be checked o the daily standups.
The Daily standups usually take 15 minutes of the team every day to discuss the following questions:
1. What did you do yesterday?
2. What will you do today?
3. Are there any impediments in your way?
Who’s involved in the process?
– Product Owners
– Scrum Masters
– Development Team
A scrum team has a Scrum Master, Product Owner, and Developers. How do you know when to use Scrum?
Usually, we have a chat with the client and analyse Requirements and Technology.
– Simple is when we know the requirements and technology, and the implementation of both is easy.
– Complicated is when there are uncertain criteria (whether in technology or requirements), but the items are known.
– The complex scenario is when requirements and technology changes frequently, that’s when Scrum is used mostly.
• The Product Owner is responsible for the product backlog and maximizes the product ROI
• The sole person responsible for managing the product backlog
• He must clearly express backlog items to the team
• He is responsible for order the product backlog items by value.
The product backlog items are not based on the size or priority which stakeholders demands – the product owner must think what items adds value to the product.
• He must ensure the visibility and transparency of the backlog.
• The development team is responsible for delivering a potentially shippable increment of working software
• They are self-organized (or it should be)
• They should be cross-functional, which means they must have all the skills that are required to produce a working product.
• The dev team has developers, testers, software architects, business analysts, infrastructures. It will involve everyone that is needed to deliver working software.
• The dev team can have a minimum of 3 and a maximum of 9 people. A number below or over this is not recommended.
• They must not have a title, and everybody is equal in the team in terms of responsibility.
• The Scrum Master is responsible for the Process
• He works with the development team, product owner, and the organization. He must listen to their problems to lead them in the process.
• He leads the organization in its adoption. He must follow and explain the values of Scrum for the team and people involved in the process, ensuring that the framework is being applied correctly.
• He is responsible for facilitating scrum events
• If there are any issues with the Product Owner or stakeholders, he must remove the impediments. He is always responsible for solving the problems to guarantee the process and good working software at the end of each sprint.