The Agile Principles

Use these principles as a guide during any software project when you need to make decisions about your team's project approach. If you're struggling to navigate an issue or problem, review these principles and ask yourself how the principles can inform your decision-making.

  1. Customer Satisfaction - Our highest priority is to satisfy the customer through early and continuous delivery of valuable software.
  2. Welcome Change - Welcome changing requirements, even late in development. Agile processes harness change for the customer’s competitive advantage.
  3. Deliver Frequently - Deliver working software frequently, from a couple of weeks to a couple of months, with a preference for the shorter timescale.
  4. Work Together Daily - Business people and developers must work together daily throughout the project.
  5. Motivated Team - Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done. 
  6. Face-to-Face - The most efficient and effective method of conveying information to and within a development team is face-to-face conversation.  
  7. Working Software - Working software is the primary measure of progress. 
  8. Constant Pace - Agile processes promote sustainable development. The sponsors, developers, and users should be able to maintain a constant pace indefinitely  
  9. Good Design - Continuous attention to technical excellence and good design enhances agility.
  10. Simplicity - the art of maximizing the amount of work not done–is essential.  Sidebar...remember the acronym K.I.S.S. which stands for "Keep it short and simple"
  11. Self Organization - The best architectures, requirements, and designs emerge from self-organizing teams.  
  12. Reflect & Adjust - At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly (aka Agile Retrospective).