What Is Scrum and What You Need to Know 1


What Is Scrum?

 

Scrum is an agile methodology for software development projects with the goal of delivering new capabilities every sprint (1 to 4 weeks). It is an approach that is popular among software development teams.

 

 

Scrum Team (Roles)

 

There are three main roles in Scrum. The first is the product owner who acts as the voice of the customer and determines what the priority of the work should be. In addition, the product owner communicates with the rest of the business, other stakeholders, and customers.

 

The second is the scrum master who acts as the coach for the team. The scrum master removes any obstacles that would slow down the team, communicates with the product owner, and facilitates the Scrum process.

 

The third is the development team. The team is responsible for writing the code, performing the analysis, design, testing, and all the other tasks that are necessary with delivering the software.

 

The Scrum Process

 

The idea behind Scrum is that software development is broken up into smaller iterations know as sprints. A sprint has a set amount of work that is locked down and done in a timeframe (usually 1 to 4 weeks). The results are then incrementally delivered to the customer at the end of every sprint.

 

Product Backlog

 

All the features that need to be developed are put into a product backlog — think of it as the requirements of the system. The product backlog is prioritized and during each sprint, a sprint backlog is created where a certain set of product backlog items are pulled to be worked on in the sprint.

 

Planning Meeting

 

At the start of each sprint, a planning meeting is held to determine what items to pull from the product backlog and the current team estimates how much work is required to complete these backlog items.

 

Scrum

 

Every day there is a quick stand-up meeting called a Scrum where everyone gives a really quick report. The idea is to keep everyone informed and remove any roadblocks that might be slowing down the progress.

 

A Scrum meeting happens at the same time and same location each day. Usually, each team member will answer three questions:

  1. “What did you do yesterday which helped the team reach the sprint goal?”
  2. “What will you do today that will help the team reach the sprint goal?”
  3. “Are there any impediments that prevent you or the team from reaching the sprint goal?”

 

Sprint

 

During the sprint, the team works together to complete the sprint backlog. A burndown chart is usually used to track the progress and the pace of the team in completing the backlog items. The burndown chart tracks the remaining time, difficulty points, story points, and other characterization method being used to track the work left in the sprint.

 

Review/ Demonstration

 

When the sprint is over, a review is conducted. The functionality completed during the sprint is demonstrated to the stakeholders.

 

Retrospective Meeting

 

A retrospective meeting is held as the last step. During the meeting, the team reflects on the past sprint and comes up with ideas for improvement. Those ideas are put into practice in the next sprint.

 

The Positives of Scrum

 

Here are some positives with scrum:

 

  • Higher productivity

 

  • Lower risk

 

  • Better-quality product

 

  • Reduced time to market

 

The Negatives of Scrum

 

Here are some negatives with scrum:

 

  • The duration of the sprint is decided from an estimate of how much work it takes to do the backlog items. Usually, estimates in software development tend to go off the further in the future you try to estimate.

 

  • Tasking is difficult to do without actually working on the backlog items. This means assigned tasks are generic and not specific to the backlog items. If the tasks are not specific, they don’t serve many purposes.

 

  • Scrum meetings do not allow enough time to be meaningful all the time. Think about it for a moment, if your team is working together doing pair programming and getting as much done in the backlog as possible, all of them probably have a good idea of what is going on. Spending 15 minutes repeating what is already known is not useful. On the other hand, if everyone works in isolation, you need at least 1 hour for everyone to talk about the technical details of the issues they are facing.

 

  • Requires a lot of commitment. It is easy to pull items from the product backlog into a sprint and agree to get them done if all goes well and according to plan. The problem is it will usually not go according to plan, there will be something that will throw it off course. Without commitment, the standards of accountability decline and the sprint loses meaning because the work pulled into the sprint will not be done.

 

What Can Scrum Mean for You, the Developer

 

Scrum is nothing like waterfall. If you came from a background of using the waterfall methodology then Scrum might feel too fast and different. The level of communication is much higher in Scrum than waterfall. So, you should anticipate this the moment you hear that your team uses Scrum.

 

The Agile nature of Scrum means it is adaptive to change in requirements or features. You don’t start with a feature until your team pulls it from the product backlog. Between that time, changes made to the product backlog will not affect the project by much. This means your productivity will be higher because Scrum minimalizes the time you might waste.


 

What are your experiences with Scrum? Do you think Scrum works well? What mishaps have you encountered when using Scrum?

 

To stay in touch, follow me on Twitter, leave a comment, or send me an email at steven@brightdevelopers.com.

 

Additional Resources


About Steven To

Steven To is a software developer that specializes in mobile development with a background in computer engineering. Beyond his passion for software development, he also has an interest in Virtual Reality, Augmented Reality, Artificial Intelligence, Personal Development, and Personal Finance. If he is not writing software, then he is out learning something new.

One thought on “What Is Scrum and What You Need to Know

Comments are closed.