People often cite TomDeMarco
's book PeopleWare
when saying that XP's prescription of a team workspace is just wrong.
But if you read PeopleWare
closely, the authors are not railing against a shared space, just total open plan offices -- that is, offices with hundreds of people, each performing an unrelated task.
On p.79 of the second edition, they say:
But enclosed offices need not be one-person offices. The two- or three- or four-person office makes a lot more sense, particularly if office groupings can be made to align with work groups.
Even in open-plan offices, co-workers should be encouraged to modify the grid to put their areas together into small suites. When this is allowed, people become positively ingenious in laying out the area to serve all their needs: work space, meeting space, and social space. Since they tend to be in interaction mode together or simultaneously in flow mode, they have less noise clash with each other than they would with randomly selected neighbors.
On p.86, their first office design pattern Tailored Workspace from a Kit
Individual modules give poor-quality space to the person working alone and no space at all to the team. The alternative to this is to fashion a space explicitly around the working groups. Each individual needs protected private space.
and Lister don't have a problem with team members sharing a moderate size workspace, just with huge numbers of unrelated workers sharing a large workspace.
Yes, exactly. And furthermore, the authors work from the assumption that the MentalStateCalledFlow
is highly desirable and should be cultivated as a matter of course. XP argues that, as good (and fun) as flow is, even better team results can be achieved through PairProgramming
supported by the other XP practices. So there are some shifting assumptions here. Reduce the priority of flow in the equation and then reread the quotes above, and the emphasis shifts even more toward shared space (for a team, that is). -- GlennVanderburg
Hmmm... The MentalStateCalledFlow
page includes a claim that PairProgramming
actually enhances flow. So maybe it's not an either/or situation. -- JohnBrewer
Two observations from my own life:
I hate open-plan offices if the people around me are working on a different project, but I love them when everybody nearby is working on the same thing. The difference is in the relevance of the interruptions and distractions to my goals. On my current project, much wasted effort has been averted by information gained or assistance offered in response to an overheard conversation.
And I don't buy the notion that XP and flow are opposed. I have certainly experienced flow while pair programming. This makes sense to me in the same way that team sports do; when a good basketball team is hot, it's as if they are five fingers of one hand. Distractions and interruptions can certainly wreck flow, but given that a war room is strongly focused on a particular effort, the nearby activity need not be distracting.