Have you noticed how some organizations claim to be agile, but when you peel back the layers, they’re really a waterfall shop with aspirations of agility?
As a consultant, when given the choice, I usually chose agile over waterfall methods. However, we often end up using the methodology that is in place at the client site… and most development organizations are still waterfall shops.
So why do so many organizations aspire to become agile, yet are still only implementing a few aspects of it? Most likely, they’re not given enough time to plan the process of becoming agile. Or, it may be because agile processes are usually introduced by the development community in a bottom-up style that isn’t understood or appreciated by the top-down management. The result: Many teams end up implementing a hybrid methodology.
Hybrid approaches to solving problems are not all bad.
Let’s call waterfall shops that either aspire to be agile or are in the transition process “WetAgile.” Individuals can also be described as WetAgile, too. For example, perhaps you’re an aspiring agile guru doing so many waterfall projects that you find yourself implementing agile practices that you most believe your waterfall team can easily embrace.
When I look back at some of my own most productive teams, they all had one thing in common: Each project team was using one or more agile processes.
For example, we recently completed a large electronic content management implementation for a client. The team consisted of highly skilled Java developers who had just completed product training. Soon after their training class, the developers moved on to their programming tasks, but they had difficulties figuring out how to wire it all together. They quickly discovered that working together was faster than working independently.
Although I would like take credit for telling them to work together, it was something that they tried on their own. They started with one developer searching the product knowledge base while the other developer implemented code fragments. Within a few days, they were sitting side-by-side, coding and refactoring each other’s code.