The Ultimate Software Development Office Layout[email protected] / More Programmer's Stuff
IntroductionHow do you layout your office space to optimize software development? It's a question I don't think has been seriously considered at very many places I have worked. Mostly it's just cubes farms of one variety or another. Certainly there are hybrid layouts, but it comes down to cubes most of the time.
Recently I had the opportunity to seriously consider and create my ideal office layout for a software development team. I read lots of different papers and talked to lots of different people. Here's what I came up with. It's a subject without an objectively correct answer, so there is plenty of room for disagreement, but this paper may prove interesting in your own research. I have included my recommendations and links to reference material to help you form your own conclusions.
Office Layout RecommendationHere is a list of all the office layout recommendations:
An example layout, rendered in gorgeous ascii realism, might be be:
+---------------------------------------------+ | white boards & flip charts ..... | | . | | equip +------+ . | | ment | desk | projector | | +------+------+ ..... | | | desk | | | +------+ table | | | | conference rooms and offices | +---------------------------------------------+
DiscussionThere are several research papers under section Resources, comparing war rooms, offices, and cubicles. Please take the time to look at the papers as the recommendations are primarily based on these documents.
The decision on how to layout an office is a difficult one, largely because there are no obvious choices and there are a lot of strong personal preferences.
The basic office layout options are offices, cubes, or war room.
For the purposes of this document, the groups of interest in the software develop processes are: software, hardware, QA, equipment room, customer (in the Agile sense) representitives.
The decision really can't be one of personal preference. The decision has to be made on what will get you to your delivery goal. Certainly a nice work place must be provided no matter what choice is made.
Most people when asked will opt for offices.
Are offices affordable for your team? You'll have to talk with your architect to get a realistic estimate for an office build out. Offices can range from just a little bit more expensive than cubes to a lot more expensive.
More importantly, offices are are probably not the best layout for a startup. Software is a team sport. Rapid communication between team members is the key to quality and productivity.
This implies that the war room should be the organization for software.
Research shows that war rooms are up to twice as productive as other organizations. This is too big a factor to ignore, especially when scheadules will be very tight.
Cubes are the worst of all worlds. They provide little privacy and at the same time they make communication more difficult.
Addressing the Downside of the War RoomThe war room organization has a couple of important downsides:
For lack of privacy:
This is just an observation. A larger company moving to Scrum soon runs out of large meeting rooms as they all get permanently reserved with signs like "War Room for Group XXX Do Not Enter or Erase" pasted to the door. If you can create a real War Room for your group then this won't happen. But if you are trying to adapt to the traditional cube farm layout then the only place to put artifacts like burn down charts and story cards is a meeting room.
Example Team RoomsIf you need some inspiration, here are some example office layouts for you to consider:
ResourcesThis section contains the research on which the recommendation was made.
A Room of Your Own: What Do We Learn about Support of Teamwork from Assessing Teams in Dedicated Project Rooms?To inform the design of groupware technologies such as those for cooperative buildings, we investigated the work habits of teams that collaborate in dedicated project rooms. We conducted field work that included interviews of teams in 9 U.S. companies who had dedicated project rooms and a 6 week observation of one site. In our study, team members using dedicated project rooms reported clear advantages: increased learning, motivation, and coordination. Our findings suggest that cooperative buildings need to support important features of collocated teamwork such as flexible shared visual displays and awareness of team members� activities.
Another related JOS thread.
Rich highlights that, among the rules of the group, Kelly insisted on people taking accountability for decisions from design through testing, and on their sitting close together. The following quotation is from that book: "Kelly kept those of us working on his airplane jammed together in one corner of our building... My three-man thermodynamics and propulsion group now shared space with the performance and stability-control people. Through a connecting door was the eight-man structures group. ... Henry and I could have reached through the doorway and shaken hands. "... I was separated by a connecting doorway from the office of four structures guys, who configured the strength, loads, and weight of the airplane from preliminary design sketches. ... the aerodynamics group in my office began talking through the open door to the structures bunch about calculations on the center of pressures on the fuselage, when suddenly I got the idea of unhinging the door between us, laying the door between a couple of desks, tacking onto it a long sheet of paper, and having all of us join in designing the optimum final design. ... It took us a day and a half. ..." "All that mattered to him was our proximity to the production floor: A stone`s throw was too far away; he wanted us only steps away from the shop workers, to make quick structural or parts changes or answer any of their questions."
They don't seem to be comparing to radically colacted teams, so i am not sure how the comparison would work then.
And i don't think this conclusion is valid for software development itself in the same way that everyone on a soccer team couldn't play on different fields effecively, though parts of project can be done elsewhere under the right circumstances.
Some projects have such diverse requirements that they need a variety of specialists to work on them. But often the best-qualified specialists are scattered around the globe, perhaps at several companies. Remarkably, an extensive benchmarking study reveals, it isn't necessary to bring team members together to get their best work. In fact, they can be even more productive if they stay separated and do all their collaborating virtually. The scores of successful virtual teams the authors examined didn't have many of the psychological and practical obstacles that plagued their more traditional, face-to-face counterparts. Team members felt freer to contribute--especially outside their established areas of expertise. The fact that such groups could not assemble easily actually made their projects go faster, as people did not wait for meetings to make decisions, and individuals, in the comfort of their own offices, had full access to their files and the complementary knowledge of their local colleagues. Reaping those advantages, though, demanded shrewd management of a virtual team's work processes and social dynamics. Rather than depend on videoconferencing or e-mail, which could be unwieldy or exclusionary, successful virtual teams made extensive use of sophisticated online team rooms, where everyone could easily see the state of the work in progress, talk about the work in ongoing threaded discussions, and be reminded of decisions, rationales, and commitments. Differences were most effectively hashed out in teleconferences, which team leaders also used to foster group identity and solidarity.
This article is short on useable advice. The larger point is that your office does matter. How it matters is still an interesting question.
Changing AttitudesA recent study by Knoll of 850 white-collar workers found that 40 percent of Generation Y workers, ages 18 to 29, preferred open work spaces without panels.