Agile analysis was born out of a need in the late 1990s to
overcome the burden of the available “heavy” software
development tools, methods and ways of thinking. The current
development methods were characterized as being heavily
regulated, regimented and micromanaged project styles by
some of the forward thinking developers of the time. “Agile
methodologies attempt to capture and use the dynamics of
change inherent in software development in the development
process itself rather than resisting the ever-present and
quickly changing environment.” (Erickson, 2005) “Agile
methods that seek to address the challenges in such dynamic
contexts have gained much interest among practitioners and
researchers. Many agile methods advocate the development of
code without waiting for formal requirements analysis and
design phases.” (Cao 2009)
The winter of 2001 would forever change the landscape of the
software development world. Nestled in Little Cottonwood
Canyon located in the Wasatch-Cache National Forest of Utah
is the ski resort of Snowbird. This resort was the
destination for the following 17 software developers: Kent
Beck, Mike Beedle, Arie van Bennekum, Alistair Cockburn,
Ward Cunningham, Martin Fowler, James Grenning, Jim
Highsmith, Andrew Hunt, Ron Jeffries, Jon Kern, Brian Marick,
Robert C. Martin, Stephen J. Mellor, Ken Schwaber, Jeff
Sutherland and Dave Thomas.
This group of independent thinkers came together to discuss
the current state of lightweight development methods.
“Representatives from Extreme Programming, SCRUM, DSDM,
Adaptive Software Development, Crystal, Feature-Driven
Development, Pragmatic Programming, and others sympathetic
to the need for an alternative to documentation driven,
heavyweight software development processes convened.” (Highsmith,
2001)
This group published the “Manifesto for Agile Software
Development” at the culmination of the meeting in Snowbird,
Utah. The four founding values are (1) individuals and human
interactions over processes and tools, (2) working software
over comprehensive documentation, (3) customer collaboration
over contract negotiation, and (4) responding to change over
following a plan. (Unknown, 2001) In order to foster the
growth of this new way of looking at analysis, several of
the members formed the Agile Alliance, a non-profit
organization organized to promote the development of
software based on the Manifesto’s 12 guiding principles, as
defined below.