The term just reeks of steady state management.

I find the idea of an “Agile shop” or an “Agile team” is a little misleading and misses the point. What we want is an “Agile organization.” The main feature of Agility, to me, is the ability to respond to change: to follow new business opportunities or address challenges. This feature has nothing to do with software development. It just so happens that software might be required to exploit business potential.

No doubt you can employ development practices such as TDD/BDD, DDD, continuous integration, etc. (after quite a steep learning curve and dues paying process) to create an Agile codebase, but we should not convince ourselves that this is what it means to work in an Agile shop. Good practices simply indicate we’re striving for quality and maintainability and collective code ownership and a good team.

There are more important limiting factors. Let’s look at our backlog (or in lean terms, investment): Is it prepared? Do stories have acceptance language? Is there an expression of business value? Is software being released or demonstrated regularly. Is there involvement? Are there clear and evolving priorities? Are your stories speculative things written by the development team or a lead or an architect? And have you been developing infrastructure code in an “Agile way” for the last two months? Do customers/users refuse to meet with you? Is work constantly being expedited? Are you in a cube farm? Do you work a ton of voluntary overtime and is there a turnover problem in your team?

In the realm of continuous improvement certifications and labels don’t count for a whole heck of a lot. Even the most deadly clan of XP ninja will create a local optima rule that is likely to damage the entire system (i.e. company). Businesses need to consider larger issues of throughput (sales) and constraints. Which shareholders care if the team’s rocking when there’s a mountain of work in progress piling up at deployment preventing new revenue? Which line manager’s responsibility is it to make sure the right things are being worked on? How are decisions being made in the larger context?

Not to get super preachy on you all, but sometimes I think we’re full bore on the wrong mission.