Agile Principles

Release frequently
Our highest priority is to satisfy the customer through early and continuous delivery of valuable software.
Embrace change
 Welcome changing requirements, even late in development. Agile processes harness change for the customer's competitive advantage.
Ship after short increments
Deliver working software frequently, every couple of weeks, with a preference to the shorter timescale.
Involve users
Business people and developers must work together daily throughout the project.
Aggressively remove impediments
Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done.
Encourage high bandwidth communication
The most efficient and effective method of conveying information to and within a development team is face-to-face conversation.

Measure done by released features

Working software is the primary measure of progress.

Work at a sustainable pace

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

Focus on quality

Continuous attention to technical excellence and good design enhances agility.

Keep it simple

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

Encourage self organisation

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

Focus on continual process improvement

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