27 Mar
2006

Refactoring Physical Space

Intuitively, we all know that our physical workspace affects our productivity and
effectiveness. If you had square footage, permission, time, and a budget, what sort
of physical space would you build for your software development team? My team will
soon be given a unique opportunity to define our physical workspace to best suit our
Agile development methodologies.

Our company is expanding and we are in the process of building a new building next
door to our current facility. The bottom floor of the new building will be given over
to our Engineering Team and we are thrilled with the prospect of designing the layout
ourselves. We are starting from scratch with no current furniture or walls, so anything
is possible.

The Current Situation

Our company, Healthwise,
is an extremely unique employer in many ways including culture, positive core values,
and attention to respecting individuals. One thing that Healthwise has valued over
the years is a quiet and personal work space (read, your own office). Our building
has been Feng Shuied to perfect harmony over the years.

A core value that has evolved within the employees is that everyone deserves his or
her own office. This perk has been listed by employees as among the top 3 benefits
of working at Healthwise. As you might imagine, people love having their own offices.
Due to our expansion, however, offices are doubled up at the moment

In light of this core corporate benefit, it comes as something of a shock to people
outside of our team that we are requesting a different kind of workspace. We are interested
in a shared environment that promotes collaboration and communal discsussion.

Refactoring the Physical Work Space

There are several models for ideal physical work space, including everything from
personal and private offices to cubie towns of prairie doggin’ knowledge workers.
Our physical space will have the primary characteristic of being easily refactored.

Wheels and Casters

Almost all furniture will have wheels or casters. Chairs, tables, desks,
and partitians. This is useful because we can re-define the physical layout on a daily
basis if need be, to accommodate the changing face of the project team. The ability
line
of furniture from Teknion fits
this bill nicely and is of superb quality. If very team member gets their own 5′ work
table plus another 5′ table for every 2 team members to share, then we can assemble
communal work centers from the extra tables.

This provides a place for 2 developers to sit together or a developer to share space
with a tester, or any other combination that tends to occur over the course of a project.

Whiteboards deserve a special note here. All whiteboards will be on rollers and will
be used as walls to divide the work teams, similar to the ones you can see here.
What an awesome way to define space and keep the walls usable.

A Raised Floor and Minimal Wires

All of these moveable tables would be a real problem for running electrical
cords if it were not for one important item. A raised floor system will allow network
and electrical jacks to be located every few feet. Just lift a floor panel and viola!

Couple the pluggable floor with VOIP phones, an electrical bus mounted to each table,
and a wireless connectivity, and you have the perfect hookup solution. A grand total
of 2 wires will dangle from each person’s work table and they are pluggable in to
any location within the room.

Information Radiators

One of the most important aspects of this entire idea is the inclusion
of information
radiators
. Basically, we will include both manual and electronic information indicators
that will display the current state on many metrics than define our success.

Is the build broken? Check the ambient
orb
.

One too many defects just got entered? The defect
beacon
just turned red.

We also want to include a flat screen monitor mounted in a prominent location that
illustrates metrics on other things that we can see in real time. Which tests failed
on the last build? Which defects are most critical? Who broke the last build? The
beacons and orbs call our attention to the more detailed monitors.

Lockers

No storage? Negatory. What we don’t want is everyone’s abandoned peripherals
and crap littering the room. How about everyone having their own locker, which we
can further use to define space. This gives everyone a place for the gym bag, the
coat, the other crap that litters your life.

Giving an already Agile development team not only a say, but literal control of their
physical environment will be an experiment worth monitoring. I will be excited to
report how this changes our work life and affects our output. I predict that this
will matter, because there is gold in the white noise that spins around your head.