Friday, July 18, 2008

Does Agile/XP Work? Part II

Mindy brings up a good point about communication. Ah, communication, simple communication, where art thou?

Where I agree that communication is essential for success in any group or methodology, I've observed a deeper core issue that has negatively impacted the success of Agile projects that I've been involved in: a failure to account for group personalities.

If you are politically correct and don't agree with generalizations, the following is probably going to rub you wrong. That is fine, you can ignore reality all you want.

The simple fact is that there are generalizations that most definitely apply to a development team. Think about it for a moment: what kind of person chooses and becomes a developer? How about a tester? Writer? In general terms, there are specific personality characteristics for each of these types of classes of people.

Consider developers -- usually quiet, pensive, not combative, don't ask too many questions, and don't like to admit they are wrong.

Now consider testers -- opinionated, always right, looking for problems.

The other classes are equally different.

For traditional development methodologies, there are teams constituted from the same people, so why would Agile be any different? The reason is that Agile is dynamic -- things change by the moment because some customer requirement changes, something is hard to do, there is a better way for something else, etc. -- all of these changes are spawned by someone voicing something. For those groups of people that like to voice opinion -- no problem; for those that don't... See my point?

1 comment:

The Novasio Zoo said...

Yup... I do see your point... and also agree with your point. You are absolutely correct with the personality thing. So, is there truly a way to change that dynamic when there is a certain type of personality that seems to be associated with each type of job? I guess my comment back would be that your chain is only as strong as your weakest link. If there is one part of the Agile Methodology that makes it so it may/may not work... I guess it makes me question the methodology a bit. I guess the question I would pose would be... does it take more work to keep the XP on track than it is just to choose another proven methodology? Maybe... guess it just really depends on the team.