In our last post, we explained the history of Agile and its four key values. Behind the key values, sit twelve principles, which will be explored in more detail here.

The Principles

1. Our highest priority is to satisfy the customer through early and continuous delivery

The key purpose of any project is to deliver a solution to meet the customers need. Delivering this solution early and continuously satisfies the customer and makes the process more efficient as time spent on each phase is minimised and unnecessary activates are eliminated.

2. Welcome changing requirements even late in development. Agile processes harnesses change for customer competitive advantage

The greatest advantage of Agile is that it is flexible and allows changes throughout, no matter how advanced the development process is. Changes are made by reducing the time between conception and implementation of the change. Having the flexibility to make changes increases competitive advantage and results in higher customer satisfaction.

3. Deliver working software frequently (weekly or monthly) with focus on shorter timescale.

Agile focuses on reducing initial planning and documentation, emphasising development. This approach results in early completion for most Agile projects.

4. Business people and developers should work together daily

Success is achieved in Agile by having business people and the technical team working in close collaboration. Ideally, they should be working together in the same location; however, in the now global business environment this isn’t always possible. Modern communication technology and task management software works to connect staff in differing locations and time zones.

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

There is no micromanagement in Agile, Project Teams and self-directed and self-reliant, and should be trusted to deliver results. To achieve success, the correct people should be hired for the project and everything that they need to complete the project on time and within budget should be provided.

6. The most efficient way to convey information to your development team is face-to-face conversation.

Advanced technology and communication tools should not be used as a substitute for face-to-face conversation. Agile relies on getting answers to questions quickly, which is best achieved by communicating in person.

7. Working software is a primary measure of success.

The most important aspect for an Agile team is to have a working prototype. If the working product is absent, then the number of issues fixed or hours spent in development are irrelevant.

8. Agile process promotes sustainable development. Sponsors, Developers and Users should maintain a constant pace.

Delivering project work in short sprints results in a higher level of productivity and reduces the risk of the project team becoming bored of working on the same project for a long period of time.

It is important to set the right pace, having the project team working at the same pace to achieve project success.

9. Continuous attention to technical excellence and good design boosts agility

Technical expertise and good design are two of the most important aspects of success. As Agile works in iterations, your code will automatically get better with each iteration, reducing the need for advance refinement.

10. Simplicity – the art of maximising the amount of work not done but is essential

Managing Agile projects should be kept simple, and the time needed to go from comprehension to completion reduced to a minimum. Completing critical tasks in a timely manner can be aided by tracking the time that project team members spend working by using specialist project management software.

11. The best requirements, architecture and design emerge from self-organising teams

As touched on previously, Agile project teams are self-directed and do not require any instruction; instead working around and removing any obstacles.

If there is a risk of a task derailing the project then the Project Manager will intervene, however this is usually a rare occurrence.

12. At regular interval, team reflects on how to become more effective and tweak behaviour accordingly.

Continually searching or flaws and ways to improve is vital in the agile environment, as is being able to adapt to certain situations. Following an Agile methodology makes this a much simpler task as opposed to using more traditional methods which are unable to keep pace with today’s quickly evolving project environments.

Following the twelve Agile Principles will enable you to not only deliver your project on time but improve productivity, cost control and risk management. Once you have understood and implemented the basics of the agile methodology, you will be in a much greater position to deliver successful projects.

Additional Agile Resources

The 12 Agile Principles augment the values of the Agile Manifesto. To learn more visit, History of Agile Project Management (including the Agile Manifesto).