back to notes

Comprehensive Guide to the Agile Manifesto

Comprehensive Guide to the Agile Manifesto
by Kate Eby on Jul 29, 2016

It is hard to imagine just how much software and activity has been born from the “The Agile Manifesto.” Before the “Manifesto,” software development wasn’t a particularly fast process. This situation often led to many projects in the pipeline being cancelled due to changing business needs. As a result, the software development industry was prime for disruption. The Agile Manifesto and the Twelve Principles of Agile Software sought to change things, speed up development time, and a produce a quality.

The Agile Manifesto is at the core of the Agile Movement. Application for Agile outside of software development has even been found, with its emphasis on lean manufacturing and collaboration and communication, and quick development of smaller sets of features under the guidance of an overall plan. The key to its success is that, it is always Agile and able to adapt to change. We will discuss the four values and twelve principles that lead to higher-quality software delivered to satisfied customers on a continuous basis.

History of the Agile Manifesto

The Agile Manifesto and the Twelve Principles of Agile Software were the consequences of industry frustration in the 1990s. The enormous time lag between business requirements (the applications and features customers were requesting) and the delivery of technology that answered those needs, led to the cancelling of many projects. Business, requirements, and customer requisites changed during this lag time, and the final product did not meet the then current needs. The software development models of the day, led by the Waterfall model, were not meeting the demand for speed and did not take advantage of just how quickly software could be altered.

In 2000, a group of seventeen “thought leaders,” including Jon Kern, Kent Beck, Ward Cunningham, Arie van Bennekum, and Alistair Cockburn, met first at a resort in Oregon and later, in 2001, at The Lodge at Snowbird ski resort in Utah. It was at the second meeting where the Agile Manifesto and the Twelve Principles were formally written. The Manifesto reads:

“We are uncovering better ways of developing
software by doing it and helping others do it.
Through this work we have come to value:

“Individuals and interactions over processes and tools
Working software over comprehensive documentation
Customer collaboration over contract negotiation
Responding to change over following a plan

“That is, while there is value in the items on
the right, we value the items on the left more.”

The Four Values of The Agile Manifesto

The Agile Manifesto is comprised of four foundational values and 12 supporting principles which lead the Agile approach to software development. Each Agile methodology applies the four values in different ways, but all of them rely on them to guide the development and delivery of high-quality, working software.

1. Individuals and Interactions Over Processes and Tools

The first value in the Agile Manifesto is “Individuals and interactions over processes and tools.” Valuing people more highly than processes or tools is easy to understand because it is the people who respond to business needs and drive the development process. If the process or the tools drive development, the team is less responsive to change and less likely to meet customer needs. Communication is an example of the difference between valuing individuals versus process. In the case of individuals, communication is fluid and happens when a need arises. In the case of process, communication is scheduled and requires specific content.

2. Working Software Over Comprehensive Documentation

Historically, enormous amounts of time were spent on documenting the product for development and ultimate delivery. Technical specifications, technical requirements, technical prospectus, interface design documents, test plans, documentation plans, and approvals required for each. The list was extensive and was a cause for the long delays in development. Agile does not eliminate documentation, but it streamlines it in a form that gives the developer what is needed to do the work without getting bogged down in minutiae. Agile documents requirements as user stories, which are sufficient for a software developer to begin the task of building a new function. The Agile Manifesto values documentation, but it values working software more.

3. Customer Collaboration Over Contract Negotiation

Negotiation is the period when the customer and the product manager work out the details of a delivery, with points along the way where the details may be renegotiated. Collaboration is a different creature entirely. With development models such as Waterfall, customers negotiate the requirements for the product, often in great detail, prior to any work starting. This meant the customer was involved in the process of development before development began and after it was completed, but not during the process. The Agile Manifesto describes a customer who is engaged and collaborates throughout the development process, making. This makes it far easier for development to meet their needs of the customer. Agile methods may include the customer at intervals for periodic demos, but a project could just as easily have an end-user as a daily part of the team and attending all meetings, ensuring the product meets the business needs of the customer.

4. Responding to Change Over Following a Plan

Traditional software development regarded change as an expense, so it was to be avoided. The intention was to develop detailed, elaborate plans, with a defined set of features and with everything, generally, having as high a priority as everything else, and with a large number of many dependencies on delivering in a certain order so that the team can work on the next piece of the puzzle.


last updated september 2019