Manifesto for Agile Software Development

A Definition

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.

  1. ​​Deliver early and continuously​​
  2. ​​Welcome changing requirements​​
  3. ​​Self-organizing teams​​
  4. ​​Technical excellence and good design​​
  5. ​​Agility and sustainability​​
  1. Self-organizing teams

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

  2. Agility and sustainability

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

  3. Reflect, tune, adjust

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