April 29, 2021
Scrum In Software Development: What It Is and Why It Works
Scrum is a framework utilizing an agile mindset for project development. It is based on a teamwork mentality that includes iterative and incremental processes. In software development, the scrum process is exceptionally beneficial because it increases product effectiveness, communication and can be incredibly responsive to changes in a developing project.
The History of Scrum
Scrum in software development was introduced to the American market in the ’90s by Ken Schwaber and Jeff Sutherland. At the time, the two men were equally frustrated about the lack of unexpected problems that constantly occurred during their project’s lifecycle. During their search for a new way to approach product development, the men discovered a Harvard Business Review article titled, “The New New Product Development Game.”
This article, written by Hirotaka Takeuchi and Ikujiro Nonaka, described an innovative and holistic approach to product development. It described how large, well-known companies like Honda and Fuji-Xerox generated excellent results using a team-based, scalable product development technique. It also stressed the importance of self-organized teams and how important management is in the development process.
The New New Product Development Game was the primary influencer that helped develop the concept known as “scrum.” Scrum is originally a rugby term, which refers to the group of players trying to control the ball during the game. The scrum moves down the field as a single cohesive unit, and they work together to score and navigate any impediments.
Using scrum as an inspiration, Ken Schwaber and Jeff Sutherland wrote and later published a piece that would challenge their current thinking. They tied the scrum concept into project management, creating a cutting-edge methodology that outlines specific roles, meeting requirements and expectations, so each member within the scrum knows their function.
How Scrum Works
Scrum team members are self-organizing and cross-functional, and the whole team decides who works on what projects or any issues. Collaboration across the team is key, as everyone in the group must be responsible for their part from idea to implementation. Scrum encourages these cross-functional teams to learn through experiences, address wins and losses while consistently tweaking methods and improving.
The scrum model is best suited for projects when the team works on a product development series of sprints. These sprints are broken up into two or even four-week periods. At the beginning of each sprint, the entire team plans and discusses how many project items they can commit to during the time. After the planning process, each team member maintains their sprint backlog. This is their master list of any fixes or implementations accomplished during the current sprint cycle.
At the end of each sprint, the team sits down and performs a scrum retrospective. This is a meeting that involves all the members, and its goal is to discuss the previous scrum. They analyze what worked for the group, for individuals and discuss the results and if there are any next steps.
Hierarchy Of Scrum
Scrum isn’t just one person but a team of committed people within their unique roles. Scrum aims to get the product developed with open communication, a limited number of complications, consistent adaptation, and leadership philosophy that encourages teamwork. The scrum hierarchy is broken down in a way that offers both support and leadership. The hierarchy is as follows:
Product Owner: The product owner, or (PO) represents the customer key stakeholder or customers using the product. The PO may also assist with the backlog and any other scrum efforts. The PO can sit in on the scrum meetings to see how the process is advancing and what mile markers have been reached.
Scrum Master: The scrum master is the designated leader for the team and is responsible for ensuring that each team member follows their roles and is as productive as possible. The scrum master moderates regular scrum check-in calls, removes any barriers within the process, and picks up any additional tasks if necessary.
Scrum Team: The scrum team is built out of individuals who work together in specific sprints to meet the project goal. A typical scrum team usually has five and ten people. The distinction within these scrum teams is that there is a feeling of “we’re all in this together.” The traditional hierarchy within job titles such as programmer, designer, or marketer – doesn’t exist. These titles transcend scrum teams, and everyone works together to complete the sprint.
The Benefits of Scrum and Why it Works
There are many benefits of scrum, but the many organizations that have adopted this methodology have experienced the following benefits:
- Collaboration among the scrum team leads to interpersonal relationships and trust among them.
- Daily scrum meetings allow teams to improve their efficiency and stay on track within the scrum roles.
- Involving the PO within the meetings will improve client/stakeholder understanding and enhances the team output.
- Higher productivity occurs as scrum team members work within their comfort zones.
- Product quality increases.
- Time to market decreases.
- Allows for faster development.
- Reduces technical debt.
- Potential product cost savings to PO for increased project speed and efficiency.
The scrum methodology works for many reasons but mainly because it is done simultaneously rather than sequentially. Instead of waiting for questions to be asked and answered, the team works through the sprint to accomplish their goals. Everything during the project’s life within a scrum is flexible and changeable, so there is always room to adjust.
While there is a scrum master, this person isn’t the “boss” of the project. The scrum master guides the project and mentors the team from the outside – but does not add any additional pressure. This helps the team with a morale boost as they can identify more with the project and skills of their role within the scrum.
The Scrum Methodology and Flint Hills Group
At Flint Hills Group, we use the scrum process for our project development. We have found that this process is a way for us to produce our products quicker, more efficiently, and with increased communication between our scrum team and our clients. Unlike most development agencies, we prefer our clients be on our scrum calls as the Product Owner to increase transparency. This also allows us to clear any roadblocks or receive feedback on each piece of an application as its completed. In some cases, developers have implemented small changes during the scrum meeting at the request of the customer.
Scrum has allowed us to work with our clients and the freedom to give our employees the ability to work within their scrum teams, utilizing their best skills and efforts. At FHG, the scrum methodology is a big part of our project development, and through countless happy client’s and scrum teams – we can prove it!
Julie Simpson
Technology Enthusiast
Julie Simpson is a freelance writer, SEO consultant and technology enthusiast from Lucedale, Mississippi. When not writing articles and updating websites, she can be found working on her 7-acre farm with her husband, daughters, and assortment of plants, chickens, dogs, cats, and sheep.
Julie Simpson
Technology Enthusiast
Julie Simpson is a freelance writer. SEO consultant and technology enthusiast from Lucedale, Mississippi. When not writing articles and updating websites, she can be found working on her 7-acre farm with her husband, daughters, and assortment of plants, chickens, dogs, cats, and sheep.