Welcome!

Open Web Authors: Esmeralda Swartz, CloudCommons 2012, Matthew Lobas, Elizabeth White, Liz McMillan

Related Topics: SOA & WOA, Java, XML, AJAX & REA, Open Web

SOA & WOA: Article

What Is the Definition of Agile Methodology?

There isn't any standard

I was looking for a nice definition of Agile Methodology and I was very confident that it would be easy to find. To my utter surprise, the task proved very difficult. Here is a collection of definitions from different sources - they are very different from each other.

Wikipedia
"Agile software development
is a group of software development methodologies based on iterative and incremental development, where requirements and solutions evolve through collaboration between self-organizing, cross-functional teams."
Google best guess shows this answer directly!] [Link]

SearchSoftwareQuality.com
"In software application development, agile software development (ASD) is a methodology for the creative process that anticipates the need for flexibility and applies a level of pragmatism into the delivery of the finished product." [Link]

TheFreeDictionary
14Apr09): "(They are) Methodologies for designing software that have proven to be more effective in dealing with business realities such as changing requirements during development. It promotes industry best practices that emphasize teamwork, customer involvement and the frequent creation of small, working pieces of the total system." [Update: (23Mar12): "An umbrella term for a variety of best practices in software development. These methods have proven to be more effective in dealing with changing requirements during the development phase, which always seem to occur. The agile methods emphasize teamwork, customer involvement and the frequent creation of small, working pieces of the total system."] [Link]

AgileMethodology.org
"Agile methodology is an approach to project management, typically used in software development."

[Link]

KnowledgeRush.com
"In software engineering, agile processes are low-overhead processes that accept that software is difficult to control. They minimize risk by ensuring that software engineers focus on smaller units of work."

[Link]

Disciplined Agile Software Development: Definition - Scott Ambler
"(It is) an iterative and incremental (evolutionary) approach to software development which is performed in a highly collaborative manner by self-organizing teams within an effective governance framework with "just enough" ceremony that produces high quality software in a cost effective and timely manner which meets the changing needs of its stakeholders." [Link] I still do not like it.

  • Is iterative, incremental & evolutionary the same? Or, has these three words been put together to be on the safe side? [Update: Here is a nice post by Alistair Cockburn explaining the difference between iterative and incremental]
  • Why highly collaborative manner?
  • Is self-organizing teams a must?
  • Any methodology requires an effective governance framework.
  • What does "just enough" ceremony convey?
  • Which software development methodology does not claim that it produces high quality software in a cost effective and timely manner which meets the changing needs of its stakeholders?

Notes on the writing of the agile manifesto - Alistair Cockburn

"A system of methods designed to allow the development team to match and track the business needs, especially in a context where business needs change frequently, important facts change, or where we are obliged to adapt to important uncontrolled factors." [Link] This definition also does not help in determine when a methodology qualifies as an agile methodology.

Have you found anything better?

Next>> What Makes Agile agile?

More Stories By Udayan Banerjee

Udayan Banerjee is CTO at NIIT Technologies Ltd, an IT industry veteran with more than 30 years' experience. He blogs at http://setandbma.wordpress.com.
The blog focuses on emerging technologies like cloud computing, mobile computing, social media aka web 2.0 etc. It also contains stuff about agile methodology and trends in architecture. It is a world view seen through the lens of a software service provider based out of Bangalore and serving clients across the world. The focus is mostly on...

  • Keep the hype out and project a realistic picture
  • Uncover trends not very apparent
  • Draw conclusion from real life experience
  • Point out fallacy & discrepancy when I see them
  • Talk about trends which I find interesting
Google