Skip to content

What Is Agile?

In 2001, seventeen software developers met at a ski resort in Utah and wrote the Agile Manifesto — four values and twelve principles that said, roughly: the old way of planning everything up front isn't working; here's what we've seen work instead.

The four values

Individuals and interactions over processes and tools

Working software over comprehensive documentation

Customer collaboration over contract negotiation

Responding to change over following a plan

Read them carefully: the items on the right aren't worthless — the manifesto says "while there is value in the items on the right, we value the items on the left more." Agile done badly treats the right side as the enemy. It isn't. Nobody wants broken software with no documentation built by people who never talk.

The core idea in one paragraph

Build a small piece. Show it to someone who cares. Learn what's wrong. Build the next small piece better. Repeat. Everything in agile — sprints, standups, backlogs, boards — is scaffolding around that loop. If a practice doesn't shorten the loop between building and learning, it's not pulling its weight.

What agile is not

  • Not "no planning." Agile plans constantly — in small increments, with fresh information. "No planning" is just chaos with a trendy name.
  • Not "no documentation." It's enough documentation, written when it's useful instead of up front when it's speculative.
  • Not a specific process. Scrum and Kanban are frameworks people use with agile thinking. Doing the ceremonies without the thinking is the most common way agile fails (see How Agile Goes Wrong).
  • Not faster in the way managers hope. Agile doesn't make work take less time. It makes wrong work visible sooner, so you waste less of it.

Where it came from

Before agile, the dominant model was waterfall: gather all requirements, design everything, build everything, test everything — in sequence, over months or years. It works when requirements genuinely don't change (building a bridge; launching a rocket). Software requirements always change, because building the thing teaches you what the thing should be. Agile is the admission that learning is part of the work, not a failure of planning.