On the topic of definitions of agile development, I saw an article from Scott Ambler that defined an agility quotient. I believe the most important agile factor is the focus on delivering value. Many of the other agile factors mentioned by Ambler are implied (but not necessarily required) by this one. For example, a team can’t deliver value if they don’t focus on creating working systems. However, they could deliver value without being “test infected”. The ability to respond to changing requirements would lead most teams to focus on regression testing but it wouldn’t require automated tests or TDD techniques. I’ve personally seen teams who were successful at delivering value early and often with frequently changing requirements and without many automated regression tests.