Agile Manifesto Principles
Apart from the values stated under Agile manifesto, there are 12 principles identified to be explained under the same agile manifesto concept. Those 12 Agile Manifesto Principles are as follows;
Our highest priority is to satisfy the customer through early and continuous delivery of valuable software
This principle explains that the project team’s primary focus should be to satisfy the customer as early as possible by producing a valuable product using continuous delivery. (Not documents or project plans)
Welcome changing requirements even late in development. Agile processes harness change for the customer’s competitive advantage
It’s understood that the customer’s market is dynamic, hence requirements change is always dynamic based on the competition. There cannot be any integrated change control system to be followed under agile methodologies.
Deliver working software frequently from a couple of weeks to a couple of months, with a preference to other shorter timescale
It’s recommended to receive an early feedback without continuously working on the project and ultimately producing a wrong product. The project team has to make changes where necessary.
Business people and developers must work together daily throughout the project
Both the customer and the team must share the same vision and goal. Both parties need to have face to face conversations more frequently. The product owner must work closely with the project team and advise them accordingly. Both parties can negotiate on requirements and produce frequent demos of the product.
Build projects around motivated individuals. Give them the environment and support they need and trust them to get the job done
It’s always advised not to tell the team how to build the product, but what to build. The team should be empowered, recognized and delegated. The team has to facilitate team work and collaboration. “Knowledge worker” cannot be micro managed.
The most efficient and effective method of conveying information to and within a development team is face-to-face conversation
The ‘face-to-face’ method has been identified as the best communication method so far. Written documents are slow and maybe producing wrong info: / details on the project.
Working software is the primary focus of progress
The team should add value to the customer. Therefore, it can be achieved only by producing a working product / software. The team has to switch from plan driven to value driven. Other activities such as planning and documentation can be considered supporting activities.
Agile processes promote sustainable development. The sponsors, developers and users should be able to maintain a constant pace indefinitely
The team is advised to follow a good work life balance, no long hours working. Short iterations can be repeated to produce the final product. Effort needs to be distributed more consistently.
Continuous attention to technical excellence and good design enhances agility
The team should focus and pay more attention towards balancing the high value and flexible design. Processes such as refactoring, automated testing, continuous integration can lead the project towards technical excellence.
Simplicity – The art of maximizing the amount of work not done is essential
It’s recommended to build what’s only necessary for today. Team should not build anything based on their own assumptions. Only the simplest thing that could possibly function according to the client’s requirement needs to be built.
The best architectures, requirement and designs emerge from self-organizing teams
Team must be cross functional, self organized and self managed. Team has to decide how to do and who should do what. Everyone has to have a sense of ownership of the product and should increase the commitment towards work.
At regular intervals, the team reflects on how to become more effective, then tunes and adjust its behavior accordingly
Team should continuously improve their processes in order to be more efficient and effective. They need to have retrospective sessions to see what needs to be stopped, what needs to be started and what should be continued.