AGILE: “good stuff” or profanation?

May 8, 2007

I talked to my friend the other day who happens to be a technical project lead in a big company (think IBM, HP, Microsoft, …). He was very excited about agile methodologies a while back, initiated and accomplished a switch to Extreme Programming (XP) for his team, even standardized on using XPlanner. No more sales guys “shoulder tapping” R&D folks, no more direct one-on-one managerial status updates (the manager gets an automatic burn-down chart and iteration reports). The development team is comfortable, no interruptions during iterations, estimates are entered and even “actual time spent” is entered. Guess what? My friend is saying the approach does not work, the whole “agile” hype is profanation of traditional methods. His product is getting delivered slower now, very little progress has been made and engineers simply abuse some of the agile principles: longer estimates are entered on purpose, “actual time spent” is entered just to match the estimates. The velocity of the team is 0.6 and the less it is the better for the developers because it means less work.

My experiences have been all with start-up companies. Small or mid-size software companies with pretty energized teams. Communication was clear and working overtime was not an issue. Whatever the exact reason (survival mode, racing against your competition, or just being extremely excited about your new product) it made you want to be pro-active and contribute. You may not use one of those agile methodologies like SCRUM but you are agile, or you go out of business :).

So, here is a team doing XP and using proper XP tools and the result is a decrease in performance, and another team following some kind of home grown/hybrid process with just a Bugzilla or hardly having any process and moving fast. What is the problem?

Agile manifesto is right and my friend I think will support it too. It is really all about people. People on your team either make it work well or break it. A methodology on its own does not mean a thing.

I believe agile processes can work well for many companies but I understand my friend’s frustration too. I guess the specifics of some bigger companies are such that many developers feel safe there even if a project is not successful, they often prefer stability of the workplace to the excitement of the work itself, there is less incentive for them to work hard, they sometimes prefer to work against the system rather then for it, they are removed from direct customer feedback and do not always realize the impact of their work on business. Agile (SCRUM/XP/…) may not be the best methodology for such teams, the traditional planned waterfall approach may work better, with management directed resource allocation and constant monitoring and pressuring. May be it is better not to change things drastically, but rather gradually?

You need to know and understand specifics of your team before making any sudden changes to your current process. Before choosing your next agile methodology think of how you can create an environment in which your team itself will get energized and will want to work hard, collaborate pro-actively, and be agile. What will be the incentives for your team members to strive for that?

And even if your team is a good fit for such a change already find a way for a smooth and gradual transition (just in case, to control the risks). Enforcing certain methodologies could be pretty difficult and painful. (I have seen a case where SCRUM killed teams, a director of R&D fired all his developers just to hire new ones: with better skills and also capable and willing to be part of the SCRUM process. ) Find tools that are flexible enough to support your own variations of agile processes. Individuals and interactions over processes and tools!

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: