Learn Three Simple Steps to Scrum Agile Development
Join the DZone community and get the full member experience.Join For Free
I’m going to teach you Scrum Agile Development in three simple steps.
This is a special video I created just for Elementool’s clients and the people on our mailing list.
So if you’re watching this, you are one of the special lucky people who, within a few minutes, will have a system that will help you to improve your development performance immediately.
Why do we need Scrum in the first place?
In many cases when you develop a software project, you know how it starts but you cannot predict what will happen after a few weeks of development. As a result, it becomes difficult to keep track of the project progress. If you’ve ever felt that things get out of control, you know what I mean.
Delays cause the project to cost more, because you need to pay for additional development time. They also cause your clients to get upset and this is something we want to prevent.
Scrum enables you to keep everything visible. It allows the team to
know exactly what’s going on and make adjustments to the project to keep
it moving forward.
With Scrum you build pieces of the software. The client can experience each part and determine what to do next. This way you have control over the progress of the project and the power to prevent delays.
Let’s get started:
Step # 1 – Create a Backlog
The project backlog is a list of all the features that clients would like to have as part of the complete product. It includes the client’s dreams and wishes. But it doesn’t mean that everything will be developed, as we’ll see later. The Backlog is created by the Product Owner. The Product Owner represents the interest of the people who ordered the product – the clients.
Step #2 – Estimate and Prioritize
After completing the Backlog list the Product Owner estimates how long it would take to develop each item on the list. There are different ways to estimate and I’ll explain them in another clip. Next comes prioritization. The goal is to focus on what brings value to the business. The Product Owner sorts the backlog items by priority, from the most important at the top to the least important at the bottom, picks the features that should be included in the release and creates the Release Backlog.
Step # 3 – Sprint
Here is when most of the work is being done. Sprints are development units between 3 to 30 days. A project usually includes several sprints.
At the beginning of each sprint the team will have a Sprint Planning meeting. In this meeting the Product Owner and the team get together to decide what will be done in the new sprint. They select items of the highest priority from the Release Backlog. The Product Owner describes to the team what is desired and the team decides how much of what is desired they can complete in this sprint.
The Sprint Planning meeting has two parts:
The first part is spent with the Product Owner to decide which features to develop.
In the second part of the meeting the team plans out the sprint. The selected tasks are placed in the sprint backlog and assigned to the team members.
Everyday the team meets for a short 15 minute meeting called “Daily
Scrum”. In this meeting each team member answers three questions:
• What have you done on this project since the last daily scrum meeting?
• What do you plan on doing on this project between now and the next scrum meeting?
• What stands in your way to meet your commitments to this sprint and this project?
The purpose of Daily Scrum is to synchronize the work of all team members and address any issues that might delay the work progress.
In every sprint the team must complete the work that was defined for this sprint. Bugs that are related to the features on the Sprint Backlog should also be fixed as part of the sprint.
At the end of each sprint, a Sprint Review meeting is held. In this meeting the team presents what was developed during the sprint to the Product owner and other Stakeholders. This meeting helps to decide what the team should do next. The clients can see the project progress and submit feedback. It prevents the risk of developing features that the client didn’t ask for. Also, in case of a delay in the development process, the sprint will not be completed on time and that will indicate to everyone that there is a problem and something needs to be done.
Repeat step 3 until all features on the Release Backlog are developed and the product is ready to be released.
That’s it. So easy. As you can see, Scrum is a simple and effective way to have control over your development process and make sure things go according to plan.I created a flowchart for you of the three steps. You can download it using the link below.
Opinions expressed by DZone contributors are their own.