Evaluate Weigh the pros and cons of technologies, products and projects you are considering.

Agile vs. Scrum: How to choose between them

In modern development, it's common to conflate Agile and Scrum. After all, both development approaches emphasize iteration, collaboration and flexibility to deliver increased value to the user.

However, there are significant differences between the two approaches that current and aspiring practitioners should be aware of, especially when deciding between one approach or the other.

What is Agile?

Agile is a philosophy that anticipates the need for flexibility in software development and delivery. Its defining document -- the Agile Manifesto -- outlines four core values:

  1. Individuals and interactions over processes and tools.
  2. Working software over comprehensive documentation.
  3. Customer collaboration over contract negotiation.
  4. Responding to change over following a plan.

The Agile Manifesto supplements these four core values with 12 key principles that Agile teams should abide by. Agile does not prescribe one specific process or framework; rather, it is a general guideline for software development teams.

What is Scrum?

Scrum prescribes specific roles and steps to development teams. Scrum aims to facilitate collaboration and efficiency in product development.

Its defining document -- the Scrum Guide -- outlines the criteria organizations must follow to implement Scrum, including the following:

  • The roles of developers, product owners and Scrum masters on development teams.
  • The steps of development sprints, which teams use for planning, structuring and managing work.
  • The measures by which teams should measure product progress -- called Scrum artifacts.

Scrum is a framework that teams can use to put the general Agile principles and values into practice.

Agile vs. Scrum

Scrum and Agile both point teams toward similar goals but do so in different ways:

  • Concreteness. Scrum is a concrete set of steps that guides a team through development, aiming for continuous improvement. Agile is an abstract set of principles that guides development teams through continuous software delivery.
  • Inception. Scrum was conceived approximately 10 years before Agile. Agile was created in 2001, whereas Scrum dates back to the early 1990s.
  • Type of approach. Agile is a development philosophy, whereas Scrum is a framework that embraces the Agile philosophy.
  • Alternatives. The Waterfall approach to development is considered the antithesis of Agile. Scrum has several alternatives, such as Kanban and Lean development. Many of Scrum's alternatives also embrace Agile philosophy, albeit in different ways.
  • Implementation framework. Scrum provides an implementation framework; Agile does not.
  • Team organization. Scrum teams consist of three roles -- or "accountabilities" as the Scrum Guide calls them. The three accountabilities are the product owner, developer and Scrum master. Agile teams do not have specific roles and are self-organizing.

    How to choose between Agile and Scrum

    While there are differences between these two approaches, teams don't have to choose between them. Agile and Scrum are complimentary.

    Scrum embraces Agile values and is one way to be an Agile development team. There is a collection of Agile frameworks; Scrum is just one of them. Scrum is always Agile, but Agile is not always Scrum. Teams have the option to implement Agile values in ways other than Scrum. Scrum is suited to teams that need to produce results quickly.

    Ben Lutkevich is site editor for TechTarget Software Quality. Previously, he wrote definitions and features for Whatis.com.

    View All Videos
    Cloud Computing
    App Architecture
    ITOperations
    TheServerSide.com
    SearchAWS
    Close