Scrum Success in a Distributed Team Environment

[article]
Summary:

In today’s work environments, research proves that distributed Scrum teams can achieve the same quality results as co-located teams, but relationships, communication and culture play important roles in the latter.

About Scrum

Since its inception in 1993, Scrum has become a more and more popular software development framework among organizations. In fact, a Forrester research study, conducted in the fourth quarter of 2008 discovered that more than half of the 2,227 surveyed software organizations take advantage of some form of agile methodology. Additionally, of all the agile methods that are being utilized, Scrum is by far the most popular model.

Scrum is based on effective, small teams working in an interdependent manner to achieve specific yet flexible agendas. As decisions are based on real-time information, the teams must be self sufficient, have carefully defined responsibilities, and exhibit excellent communication skills.

Why Are More Organizations Embracing Scrum?

More companies are embracing Scrum as this framework can, quite simply, create excellent quality products in less time than other more traditional methodologies. In other words, Scrum can save companies both time and money.

Scrum also does not simply focus on developing “just any” type of end product. Instead, the Scrum method allows the teams to focus on creating a product that fulfils the customer's highest value priorities which are defined by product owners. Furthermore, the Scrum framework also encourages teams to communicate both problems and general progress to the customer. In turn, customers appreciate the updates - and also can react quickly to any potential problems. Increasingly, more organizations choose Scrum because delivering high value software features in a short time period keeps everyone on top of changing business conditions.

Above All Else, Teamwork is Essential to the Scrum Process

The teamwork that is required to implement Scrum successfully, reminds me of a volleyball game. Why? Well, like volleyball, everyone on the Scrum team must be a well-rounded contributor. The Scrum team members contribute to different tasks that can include coding, testing, etc – and put forward a best effort so that the team can succeed. Additionally, within any given volleyball game, the players must change and adapt to the current game circumstances. The players also must back each other up and try to compensate for any weaknesses within the team.

Given the quick plays in the game, however, when the ball is coming at you, there is no way that you can let it fall, just because you are not skilled in bumping the ball. Consequently, the entire team trains in digs and bumps in order to not let the ball fall. Also, when you are in a crunch, you pull out that ace-serve just to get one more point closer to your opponent.

This situation is similar to the Scrum team environment as these teams must self-organize and work together to ensure that their end goal is achieved in an optimal manner.

Since the Scrum team takes responsibility for its end results, the team members are more committed to achieving these goals.

Essentially, some of the same elements of a team-play translate into Scrum teams to help them become successful: take ownership and successfully deliver “done” code - while in the process “who’d done what?” should not matter. The team has to self-organize, take ownership and cross-train themselves to be self-sufficient.

Since this team is an empowered one, this type of team would require less team management overhead. In turn, the individuals can easily move forward without roadblocks although a ScrumMaster will work to ensure that the Scrum process runs as smoothly as possible.

How is Scrum Different in Distributed Teams?

Working with distributed teams gives companies access to talent that they may otherwise not have access to locally. Additionally, when a company works with distributed teams, an organization gains experience in working with different global markets; in turn, this type of experience can prove to be vital if the company wishes to expand its company internationally. Moreover, a project can be completed in a faster manner if people in different time zones are continuously working on a particular project. Lastly, but certainly not least, companies can obtain significant cost savings if they work within a distributed team environment.

Other reasons for working with a distributed team include:

  • The flexibility to decrease or increase team size without losing any essential information that is required to complete a project.
  • The ability to recreate a successful system for when the need arises for additional products.

The Communication Factor

One of the biggest challenges to overcome when implementing Scrum within a distributed team environment is that of communication. As you may be aware, within a formal Scrum environment, everyday person-to-person conversation is a valued part of the process. Consequently, it is important to have that face-to-face time during vital points in the project - such as the beginning, planning phase of the project. At this time, all of the team members can get acquainted with one another – especially if off-hours social events are planned as well. As a result of working directly with one another, a sense of cohesiveness can develop toward becoming peers as well.

This interaction is important as it does not allow the development of an "us versus them" situation. Instead, the team can truly bond, and work towards achieving the same shared goals.

Although communication may be the biggest concern, within SoftServe's distributed teams, teamwork comes first. As a direct consequence, the Scrum team shares the responsibility of what the team produces. In fact, the team takes pride in the fact that they like to be proud of what they produce. As a result, the team embraces tools and works together to achieve their particular end goals.

Moreover, the culture within the company ensures that individuals show a sense of ownership and a commitment to their respective teams. In fact, there is a peer pressure of sorts for team members to perform optimally.

Communication Technology Tools

Of course, all distributed team members should have access to the appropriate communication tools as technology is essential to breaking down the more tangible communication barriers. For instance, video conferencing, web cams, and hands-free headsets are especially helpful. Instant messaging software, desktop sharing software and email are also important communication tools.

Overall then, effective scrum implementation - and quality product results - can take place within a distributed team environment. To achieve a sense of ownership among all of the team members, it is vital to focus on relationship building and establishing shared goals first – and the appropriate communication practices and results will follow.


About the Author
Feyza O’Connell is the Vice President, Business Development, at SoftServe (www.softserveinc.com), a global company providing commercial software product design, development, testing and lifecycle services to Independent Software Vendors and building foundational strategic technologies for enterprise clients. She held several key roles in leading IT technology companies and her 20 years of experience in bringing the best solutions to clients encompasses hardware, software and services. Feyza holds a B.Sc. in Mechanical Engineering from Istanbul Technical University and an MBA from Simmons School of Management.

About the author

CMCrossroads is a TechWell community.

Through conferences, training, consulting, and online resources, TechWell helps you develop and deliver great software every day.