Manifesto for Agile Software Development

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.