The workplace has important effects on people’s performance and their job satisfaction. Psychological experiments have shown that behaviour is affected by room size, furniture, equipment, temperature, humidity, brightness and quality of light, noise and the degree of privacy available. Group behaviour is affected by architectural organisation and telecommunication facilities. Communications within a group are affected by the building architecture and the organisation of the workspace.

There is a real and significant cost in failing to provide good working conditions. When people are unhappy about their working conditions, staff turnover increases. More costs must therefore be expended on recruitment and training. Software projects may be delayed because of lack of qualified staff (DeMarco and Lister, 1999).

Software development staff often work in large open-plan office areas, sometimes with cubicles, and only senior management have individual offices. McCue (McCue, 1978) carried out a study that showed that the open-plan architecture favoured by many organisations was neither popular nor productive. The most important environmental factors identified in that design study were:

  • Privacy Programmers require an area where they can concentrate and work without interruption.
  • Outside awareness People prefer to work in natural light and with a view of the outside environment.
  • Personalisation Individuals adopt different working practices and have different opinions on decor. The ability to rearrange the workplace to suit working practices and to personalise that environment is important.

In short, people like individual offices that they can organise as they like. There is less disruption and fewer interruptions than in open-plan workspaces. In open-plan offices, people are denied privacy and a quiet working environment. They are limited in the ways that they can personalise their own workspace. Concentration can be difficult and performance is degraded.

The benefits of individual offices

Providing individual offices for software engineering staff can make a significant difference to productivity. DeMarco and Lister (DeMarco and Lister, 1985) compared the productivity of programmers in different types of workplace. They found that factors such as a private workspace and the ability to cut off interruptions had a significant effect. Programmers who had good working conditions were more than twice as productive than equally skilled programmers who had to work in poorer conditions.

Development groups need areas where all members of the group can get together as a group and discuss their project, both formally and informally. Meeting rooms must be able to accommodate the whole group in privacy. Individual privacy requirements and group communication requirements seem to be exclusive objectives. McCue suggested grouping individual offices round larger group meeting rooms, as shown in Figure 1, was the best way to reconcile these conflicting requirements.

Office organisation
Figure 1. Office and meeting room grouping

A similar model is suggested by Beck in his description of an environment for ‘extreme programming’. However, he suggests retaining an open-plan area with all programming activities taking place in the communal area and individual cubicles for the group members when they wish to work alone. Clearly, the key requirement is to provide both individual and group space so that people can work alone or as a group when necessary.

This type of communication helps people solve their problems and exchange information in an informal but effective way. Weinberg (Weinberg, 1971) cites an anecdotal example of how an organisation wanted to stop programmers ‘wasting time’ talking to each other around a coffee machine. They removed the machine then immediately had a dramatic increase in requests for formal programming assistance. As well as gossiping around the machine, people were solving each other’s problems. This illustrates that companies need informal meeting places as well as formal conference rooms.

Case study – office organization

This short case study illustrates that you often have to work within the constraints of existing buildings. You can’t necessarily adapt these or have as much space as you would like. In this example, Alice has used a single office as a space for concentrated work and has confined development work, where people will be discussing what to do, to a single room. Shared desks are increasingly common for team members who are not always working in the office. As each member of the team have a laptop, they can work anywhere—at their desk, in the quiet room or in the shared social spaces in the building.

Alice understands the importance of working environments but her company is based in a 1970s building that can’t be adapted to an ideal structure. She is assigned three offices for her team—a small, separate individual office and two adjacent larger offices that can each hold four desks.

Two team members (Carol and Brian) often work from home and Fred, the alarm expert, only works with the team two days per week. The team has access to a meeting room shared by other groups, and each floor in the building has a coffee space for informal interaction. Rather than use the small office as her personal office, as intended by management, Alice decides that this should be a quiet ‘thinking’ space that can be used by any team member who needs to work without distraction.

She sets up one of the offices as a development office with tables for hardware and paper prototypes of user interfaces. This room also has a desk that is mostly used by Fred when he is working with the team but is also shared by Carol and Brian when they are working in the office. Alice shares the other office with Bob, Dorothy and Ed. All team members use laptops and connect to the wireless network. However, desks also have larger screens and keyboards that can be plugged into any machine.



DeMarco, T. and Lister, T. (1999). Peopleware: Productive Projects and Teams. New York: Dorset House.

McCue, G. M. (1978). IBM’s Santa Teresa laboratory: architectural design for program development. IBM Systems J., 17(1), 4–25.