Agile has become a fundamental component of many successful software development companies. It focuses on collaboration of self-organizing, cross-functional teams to produce and deliver software in less time. A recent survey of 601 software developers and IT professionals revealed that more than half primarily use Agile methods. But how exactly did Agile become such a popular practice for software development?
Agile software development has roots dating back to the 1990s, during which a collection of lightweight methods were created in response to backlash against heavyweight methods that were being used at the time. Critics slammed the heavyweight software development practices, claiming they were overly regulated micro-managed. This trigger a new era in software development, with organizations shifting their focus towards lightweight methods such as unified process, dynamic systems development method (DSDM, crystal clear, extreme programming (XP), adaptive software development, and feature-driven development.
Granted, none of the aforementioned lightweight methods directly referenced “Agile,” they still played a pivotal role in the development of modern-day Agile principles. Professionals today even refer to them as “Agile methods.”
Of course, it wasn't until the Agile Manifesto was published when these principles really began to enter mainstream use among software developers. In February 2001, a consortium of professional software developers gathered at a ski resort in Utah to discuss various lightweight methods. This led to the creation of the Manifesto for Agile Software Development, which places an emphasis on individuals and interactions over processes and tools.
Several authors of the Agile Manifesto went on to form a nonprofit organization to promote the methods and practices listed in the Manifesto. “The Agile movement is not anti-methodology, in fact many of us want to restore credibility to the word methodology. We want to restore a balance. We embrace modeling, but not in order to file some diagram in a dusty corporate repository. We embrace documentation, but not hundreds of pages of never-maintained and rarely-used tomes,” explained Jim Highsmith of the Agile Alliance.
The Agile Alliance later created a general how-to guide on Agile development practices, rightfully known as the Guide to Agile Practices. But this wasn't done to generate commercial revenue. Instead, the Guide was an open-source compendium on Agile terms, practices, elements and guidelines, complete with expert material from numerous developers and organizations who use Agile.
Today, Agile remains one of the most popular and widely used methods for software development. A State of Agile survey found that 73% of respondents believe the methods help them deliver products in less time. This same survey found that 92% of respondents believe Agile improves their ability to adapt based on customer priorities; and 87% of respondents said Agile is beneficial in boosting their team's productivity.
Thanks for reading and feel free to let us know your thoughts in the comments below regarding Agile.