Agile purists argue that either you’re agile—often written with a capital A—or you’re not. Either your development organization is rigorously adhering to one of the named methodologies (like Scrum or Extreme Programming), say the agilists, or you’re no better than a legacy waterfall shop.
Perhaps we’re overstating the point, but in reality, many agile enthusiasts believe that to be agile is to be pure. What’s more, it’s been said that the goal of every organization should be to become more agile—that is, there should be a conscious effort to adhere ever more closely to a chosen agile methodology.
Pragmatists, by contrast believe that software development isn’t a binary choice between waterfall and agile, and there’s no implicit notion that “more agile” is inherently better than “less agile.” Instead, every development organization should find its own way, picking and choosing the aspects of every available methodology, agile or not, that improves productivity and quality.
Both sides have their arguments. Much thought and experience has gone into today’s leading agile methodologies. For unstructured development teams, adherence to a methodology will have tremendous benefits. Not only that, but the named methodologies have a wealth of training material, best practices documentation, consulting expertise, preconfigured tool chains, and more. If you’re getting started with agility, or if you’re trying to make major improvements in your development processes, you should adopt a major methodology and adhere to it as best you can.
However, for experienced, mature development teams that are already operating efficiently with their own best practices, we don’t believe purity is the answer. In such organizations, study the methodologies and experiment with the parts that will add value. It may be that your own processes can benefit from some new thinking, but don’t reinvent your processes. A hybrid approach combining the best of many ways of thinking may be best for you.
We believe that, in most cases, agile is better. But we also believe that a pragmatic approach is the best approach.