Agile empowers teams continuously plan their release to optimize its value throughout development life-cycle, so teams are competitive as possible in the marketplace. Development using an agile methodology preserves a product’s critical market relevance and ensures a team’s work doesn’t wind up on a shelf, never released.
A small group of people got together in 2001 to discuss their thoughts about the failure of traditional approach of software development life-cycle and is there a better way to do this? They came up with the agile manifesto, which describes 4 important values that are still relevant today, The use of the word agile in this context derives from the agile manifesto. It says, “we 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.” Ever since then, the use of methods that support these values has become increasingly popular.
The twelve Agile principles derived from four key values in agile manifesto.
These twelve Agile principles are as follows:
1. To meet the Customer Product expectations through iterative high quality, customer friendly software
2. To accept changes as the come from customer to increase customer’s competitive advantage in the market.
3. Deliver incremental working software to the customer in agreed time-boxes or period.
4. Team is mix of cross functional professionals i.e. both technical and business domain experts.
5. Team works in a highly motivated helpful environment, team enjoys all support & trust during project life-cycle.
6. Most effective communication among team members to convey information between them regularly i.e. daily face to face meeting.
7. Working Product is the only measure of progress.
8. Agile believes in constant iterative development, all the team members & sponsors need to keep up this constant development speed.
9. Continuous focus on Quality & Design Enhancements improves effectiveness & usability of the product being developed.
10. Simplifying the art of identifying the incomplete work is the important factor for continuing the product development.
11. Only the most motivated & highly disciplined self-organizing teams can innovate best designs and specifications for the product.
12. The team effectively adapts itself to ever-changing needs of the project & product requirements.
The real goal of any business is the Quality working software and the way to get there is all these things that Agile principles asks us to do, through a continual process of learning.
In the next article of Agile Framework and Methodologies series I will be discussing about finer details about SCRUM Methodologies.