There are lots of different Agile implementations and I quite often struggle with whom should I listen to. The simple method that I am trying to follow is to think about the Agile Manifesto’s twelve principle. If something is related to that 12 points, it’s Agile. If we prepare documentations, have lengthy meeting and don’t focus on working software, it’s not agile.
The Agile Manifesto is based on the following twelve principles (source: Wikipedia):
- Customer satisfaction by rapid delivery of useful software
- Welcome changing requirements, even late in development
- Working software is delivered frequently (weeks rather than months)
- Working software is the principal measure of progress
- Sustainable development, able to maintain a constant pace
- Close, daily cooperation between business people and developers
- Face-to-face conversation is the best form of communication (co-location)
- Projects are built around motivated individuals, who should be trusted
- Continuous attention to technical excellence and good design
- Simplicity—the art of maximizing the amount of work not done—is essential
- Self-organizing teams
- Regular adaptation to changing circumstances
While there are lots of Agile frameworks, I will try not to lose focus in the huge mass of acronyms and always focus on customer satisfaction, motivated individuals and working software.