Agile is currently the buzz word de-jour in IT departments across the world.  As the frenzy around Agile has built, the definition of the word has Agile has become . .  . fuzzier.  Precursors of Agile can be tracked into the dark recesses of the 1950’s and 1970’s, with a crescendo of light-weight methodology building in the 1990’s that led to the Agile Manifesto. The Agile Manifesto, developed and signed in 2001, consolidates a set of values and principles that defines what Agile is today and guides how Agile is implemented.  The simplest definition of Agile is a means of working that embraces the four values and ten principles published in the Agile Manifesto.

There are an unlimited number of frameworks and methodologies, branded and unbranded, that address the Agile values and principles to provide culturally sensitive implementations of Agile.   A quick list some of the popular are Agile frameworks and methodologies include:

  1. Scrum
  2. Extreme Programming (xP)
  3. Agile Unified Process
  4. Disciplined Agile Delivery
  5. Crystal
  6. Dynamic Systems Development Method

The list could easily go on for a number of pages.

As example of the different implementations of Agile values and principles, let’s focus on the principle of delivering working software frequently.  xP delivers software based on a release plan that is fed by short iterations.  Scrum demands that each sprint (iteration) deliver functional software that is potentially releasable.  These are merely examples.  All of these frameworks and methodologies are Agile because each framework or methodology is built to support the Agile values and principles.

The measuring stick for whether any framework or methodology is Agile (since 2001) is how they address the values and principles in the Agile Manifesto. When applying the Agile measuring stick to determine whether a project, framework or methodology is Agile, you need to measure up on all of the Agile values or principles.