By definition, this agile guide is a work in progress. We welcome community participation.

Prior to 2001, a majority of software development products failed to actually be useful to real people or were built over budget with missed deadlines. Early-stage technology coupled with an intuitive but ineffective development approach combined to make the actual delivery of successful, working software extremely difficult. During the 1980s in particular, the growing demands and expectations of the marketplace swamped the ability of the software development industry to build software as it was needed.

In addition, the widely-held belief that development teams could predict customer needs far in advance–sometimes many years in advance–turned out to be incorrect. So even when working software was delivered, it often did not meet the expectations of customers.

Analysis and experimentation conducted during the 1990’s suggested that the so-called waterfall development process was largely responsible for this climate of failure. After ten years of work, the Agile Manifesto was published in 2001. The Manifesto ushered in the age of Agile software development by outlining a framework for a different approach to the problem. The (then) new Agile approach featured outreach to potential users of software, decomposition of large software projects into much smaller projects that were much less difficult and risky, and empowerment of development teams to respond to evolving requirements.

Open Source and Contributing

This project is open source, and we welcome contributions from the public.


This project is in the public domain within the United States, and copyright and related rights in the work worldwide are waived through CC0 1.0 Universal public domain dedication.

All contributions to any repositories of this project will be released under the CC0 dedication. By submitting a pull request, you are agreeing to comply with this waiver of copyright interest.