Here is what, for example, some of the agile preachers believe:
- SCRUM-But is evil. Not implementing an aspect of SCRUM points to an impediment that must be fixed.
- You must have teams co-located.
- Autotmated testing (TDD), continuous integration, etc. is a must.
- The Product Owner is always available to answer the team's questions.
- Team resources are fully dedicated to the sprint.
- Deadlines can and should be stretched to acommodate quality.
- SCRUM-But is a reality for organizations dealing with legacy products.
- Co-location is a luxury in today's era. Often, even in the same geographic location, some team members work from home.
- Automated testing, continuous integration is often not possible for legacy applications.
- The Product Owner (Product Manager in the real world) is often managing multiple projects. It is an illusion to assume the Product Owner is dedicated and available.
- Team resources - especially QA, DBA, Architects often work on multiple projects or agile teams concurrently.
- Deadlines are real. They are often final and products must meet them and make compromises in the process.
The truth, as usual, is in between. Agile Preachers must temper their language to factor reality. Agile Practitioners must try to change reality. And in this tension between the two groups is where we'll see real value being added to the Agile Process.