Link Search Menu Expand Document

Agile Manifesto, Values, and Guiding Principles

The Agile Manifesto was written by a group of software engineers that formed the Agile Alliance. The document defines the 4 values and 12 principles of Agile development. The authors include:

  • Kent Back, co-creator of eXtreme Programming (XP).
  • Mike Beedle, co-author of Agile Software Development with Scrum.
  • Arie van Bennekum, owner of Integrated Agile.
  • Alistair Cockburn, IT strategist and creator of the Crystal Agile Methodology.
  • Ward Cunningham, inventor of wiki and first to coin term technical debt.
  • Martin Fowler, software practitioner, and partner at Thoughtworks.
  • James Grenning, author of Test Driven Development.
  • Jim Highsmith, creator of Adaptive Software Development (ASD).
  • Andrew Hunt, co-author of The Pragmatic Programmer.
  • Ron Jeffries, co-creator of eXtreme Programming (XP).
  • Jon Kern who still helps organizations with agile today.
  • Brian Marick, computer scientist and author of several books on programming.
  • Robert C. Martin, also known as “Uncle Bob,” who consults via Clean Coding
  • Steve Mellor, a computer scientist also credited with inventing Object Oriented System Analysis (OOSA).
  • Ken Schwaber, co-creator of Scrum with Jeff Sutherland.
  • Jeff Sutherland, the inventor, and co-creator of Scrum.
  • Dave Thomas, programmer, and co-author of The Pragmatic Programmer

Agile Manifesto

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.

Agile Values

The value of individuals, working software, customer collaboration, and change distinguish Agile from traditional software development methodologies.

Principles of Agile

The Agile Manifesto also outlines 12 principles for Agile development process. These principles are not an exhaustive list of rules to follow but rather some guidelines that help to define the Agile mindset.

Our highest priority is to satisfy the customer through early and continuous delivery of valuable 
software.

Welcome changing requirements, even late in development. Agile processes harness change for the 
customer's competitive advantage.

Deliver working software frequently, from a couple of weeks to a couple of months, with a preference 
to the shorter timescale.

Business people and developers must work together daily throughout the project.

Build projects around motivated individuals. Give them the environment and support they need, and 
trust them to get the job done.

The most efficient and effective method of conveying information to and within a development team is 
face-to-face conversation.

Working software is the primary measure of progress.

Agile processes promote sustainable development. The sponsors, developers, and users should be able 
to maintain a constant pace indefinitely.

Continuous attention to technical excellence and good design enhances agility.

Simplicity--the art of maximizing the amount of work not done--is essential.

The best architectures, requirements, and designs emerge from self-organizing teams.

At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its 
behavior accordingly.