Does using XP have a bearing on how an IT department is structured ? Can you take an existing chain of command and work in an XP manner or does a flattened organisational structure work better ? If someone is hired to be Head of IT, Project Manager,DBA the tendency is to look to them to make the decisions (and indeed not to go out of the way to help make decisions unless asked). If no one is askin' no one is dancin'. regards [ August 09, 2003: Message edited by: HS Thomas ]
I think this depends a bit on the size of the organization. XP is generally considered as better suited to small teams, so some large organisations might want to construct several XP "cells" within a hierarchy. Inside each "cell", the structure is effectively flat, but the business instructions which affect the operation of the XP cell are part of the external organisation. Any organisation needs someone to take the big decisions like "should we be in this market at all?" which aren't really related to the technical level at which XP operates. As an aside I was surprised to see DBA in your list of leadership jobs. Do you really mean DBA as in Database Administrator or do you use it to stand for some other role? In my experience database people have either been just part of the development team (where there is a significant amount of stored procedures or other "code" in the database), or more equivalent to a secretary or clerk, just doing regular DB tasks and any changes requested by the developers. This hardly seems like any sort of decision-making job!
As an aside I was surprised to see DBA in your list of leadership jobs.
That was rather unconscious as I've tended to work on projects where the DBA were more or less on par with the Project Manager and often helped with the decision making. I suppose it was not so much the DBA skills but their knowledge and experience of the organisation's information and data flows. They really should have had titles like Data Resource Manager but I think they didn't want to get too detached from data administrative tasks, a handy skill to keep. Any decision had to get their vote at high-level meetings with top-users . So, no I shouldn't have added DBAs to the list . They were more like Project Managers in a different skin. regards [ August 09, 2003: Message edited by: HS Thomas ]
Agile seems to call for homogenized teams. My group still has coders, testers, requirements specialists, configuration experts. An XP team should have no specialized job descriptions and nearly everybody doing nearly everything. Scott Ambler has some papers about being a generalist with a specialty, someone who can do any job on the team, but happens to be best at one or two of them. XP pairing tends to share the skills and help this develop.
A good question is never answered. It is not a bolt to be tightened into place but a seed to be planted and to bear more seed toward the hope of greening the landscape of the idea. John Ciardi
I concur with the above postings. An XP team may be 4-12 people. Within that group it will officially be flat. Of course, the reality is when big questions come up, the more senior members will probably have more de facto weight in discussions. However, as Frank pointed out, any and every team needs someone looking external to the project. In small, non-XP teams, it's not uncommon for there to be a project manager who is also the tech lead, architect, or some type of senior developer. I suppose the same could work for XP. The hard part of this, under any process is balancing between the two roles. I suppose it might be easier in XP, since you can just grab less use case cards. --Mark