The issue is not about the fact that there are multiple roles on ITprojects, but whether you need specialists for each role to beeffective, or if people can play many or all roles at different timesand be effective (or be even more effective than specialists).
I know generalists play a large part in Agile approaches; a team ofsuch individuals will bring all the expertise needed for each role, butno one individual has to depend as much on the work of others as input,since they can do a lot themselves. It is said of Agile that it doesdepend on having generalists for projects to be successful, but thatthose people are hard to find.
From which a few things that can inferred:
1) An average company probably does not have any such rare people in its IT department.
2) Agile is also for delivering new software rapidly, but up to 75%of an average company’s IT resources are spent on enhancements andfixes to existing systems. The remaining 25% that is actually spent onnew software will also include the purchase and implementation ofpackages.
So, over 75% of the work going on in your IT shop cannot be improvedby Agile software development, and virtually all your IT staff is notpositioned to be successful with Agile, so how do you get all the restof the work done?
Teams of specialists, of course.
Next time: Teams.