Scrum

Using High-impact Teamwork to Tackle Software Development Projects
Better Software Magazine
Volume-Issue: 
2009-04
Summary:

For organizations trying to do more with less in the current economy, knowing where to turn for help can be a big question mark. But as Laszlo Szalvay of Danube explains, Scrum is one possible solution. This agile method of project management is quickly transforming the way software is developed by bringing teams together through frequent communication and high-impact collaboration, resulting in increased productivity and an ability to build a better product faster.

Today, companies find themselves in the midst of a business world that is con­tinually shaped and reshaped by emerging technology. From Web 2.0 to cloud computing, these new technologies are leading companies to completely reeval­uate how they operate and interact with customers. And no one better understands the op­portunities and risks associated with a rapidly evolving technology landscape than com­panies from the tech sector—particularly the software development industry. In short, the ability to respond quickly and flexibly to new business conditions is integral to survival. With that in mind, software developers require a new approach to project management that is nimble enough to keep pace in such a chaotic business climate, but determining which management framework will yield the best results isn’t always easy.

One of the new methods currently being employed with success is Scrum, an agile method of project management that uses iterative, incremental work cycles known as sprints to provide fre­quent opportunities to assess and revise direction. While Scrum’s iterative nature ensures that teams are always mindful of the big picture, the framework also facilitates ongoing communication and collaboration to yield high-impact teamwork. When people are connected through frequent check-ins, it enables teams to improve their processes in the long term by becoming the sort of groups that can achieve the near impos­sible. When an organization develops several of these hyper-performing teams, it creates a path toward sustainably lean operations. In other words, teams like this can do more with less.

An Overview of the Scrum Framework
Before explaining how the Scrum framework achieves all this, it’s helpful to begin with what Scrum is and how it differs from other approaches to soft­ware development. To begin, Scrum can be defined as a simple management framework for incremental product de­velopment. Development is performed by one or more cross-functional, self-organizing teams of about seven people each. These teams use fixed-length itera­tions called sprints, which are typically fourteen to thirty days in length. Un­like waterfall, the historically dominant method of software development, Scrum does not assume that all of a project’s re­quirements can be known at the outset or that development can occur in a linear, “single-pass” fashion. Instead, Scrum as­sumes that more information about the desired product will be collected during development and, to accommodate that, proceeds in sprints, allowing the team to revisit areas of development throughout the lifecycle.

The Scrum method is deliberately designed as a framework—i.e., a light­weight management wrapper that can be applied to existing processes. However, every part of Scrum’s minimal frame­work is essential for realizing its core te­nets of facilitating productivity through communication, collaboration, and self-organization. Given its spare structure, it’s critical that all of Scrum’s roles and processes are observed. Here’s a quick overview of Scrum’s primary roles and meetings.

Scrum Roles

  • The product owner constantly re­prioritizes the product backlog to reflect those items with the highest business value. This individual is responsible for communicating product vision to team members and negotiating sprint goals with them each sprint. He also is re­sponsible for yielding a return on investment and therefore pos­sesses the authority to accept or reject each product increment.
  • The Scrum team is a cross-func­tional and self-organizing team of about seven members that is responsible for delivering a func­tional product increment each sprint.
  • The ScrumMaster facilitates team productivity and self-organization by removing impediments that ob­struct progress, enforcing Scrum’s rules, and ensuring that all Scrum artifacts are highly visible.

Scrum Meetings

  • During the sprint planning meeting , the product owner and the team negotiate the work that team members will attempt to complete in the next sprint. The product owner is responsible

About the author

Laszlo Szalvay's picture
Laszlo Szalvay

As cofounder and president of Danube Technologies, Inc., Laszlo Szalvay drives the company's vision, creating business initiatives that influence everything from sales and marketing to human resources, employee retention, and accounting. Laszlo lives in Portland, OR with his wife, Alison, and their daughter, Claire. In his free time, Laszlo enjoys barbecuing, collecting Oregon Pinot noir, playing speed chess, and spending time with old friends and family.

Upcoming Events