From what I have seen, the following four attributes are key to highly productive Agile software development teams:
- A desire for continuous learning
- Highly evolved engineering practices
- Clearly understood practices
- Working well together
However, no matter how good your methods, if you do not have the “horses” — i.e. bright and dedicated team members — you will not have a top notch team. Good teams need good people.
With the understanding that good teams need good people, good practices become the focus. There are more than a few good Agile practices a team can explore. These practices include but are not limited to test driven development (TDD), continuous integration, automated acceptance tests, and collaborative team rooms. Because good teams are usually highly collaborative, it makes sense to focus on team rooms and how they can help teams become highly productive.
Highly productive or hyper productive teams have been described in Scrum as “… teams that have achieved a state of ownership, commitment and collaboration that allows them to be far more productive in creating ‘product value’ on a regular basis.”
For our purposes, hyper productive teams are performing at a significantly higher level than they were previously. I would categorize this improvement as 2 to 3 times greater productivity than previously measured productivity. A team that is completing an average of seven stories per iteration or release cycle would achieve 14 – 21 stories per iteration or release cycle — without any impact to quality. The releases should remain high-quality.
Agile Team Rooms Defined
The team room as defined in this article is an open area where the entire team does their work. It is a space for open collaboration without a lot of impediments. The team should have a large amount of input into how the room is configured as well.
Many folks believe that having half walls between team members in a cube farm meets the team room definition of collaboration. In most cases, however, this does not give a team the widest communication bandwidth available. When a team has walls between them, they are less likely to seek face-to-face meetings with team members — especially in high tech teams, where the tendency is to use electronic communication. On the scale of communication levels, email is least desirable and face-to-face is most. Team rooms provide the highest level of communication available.
For instance, a team of eight may have a cube area where the developers are next to each other, and the QA folks are one wall behind them. There have been cases where the only face-to-face meetings that occurred were scheduled meetings. Having an open collaborative area encourages spontaneous face-to-face meetings, which are the hallmark of great teams.
Configuring the Agile Team Room
The goal of a team room is to allow a co-located team to enjoy high-bandwidth communication. All members of the team are located in this room. While members may or may not have their desks in more conventional locations, the bulk of their working day must be spent in this room.
The room can be a large open area with other teams located in different areas of the room. Make sure there are boundaries and rules to govern how teams communicate between themselves. The open area should contain desks for each member, ideally configured with input from the team. Also, there should be places that the team can view the charts and other displays that show their progress in a visible way.
One Room, One Team
The One Room, One Team configuration means the area is occupied by one team. This room can be a conventional room or it can be enclosed by cube walls that are open above — whatever works for the organization and team.
The team room must have tables that allow team members to pair up. Assuming your team uses double monitors for each workstation, the tables need to be large enough for at least two monitors per side. Most likely, you would want four monitors per side. Four monitors allow two pairs to be on each side. Then assuming two tables, you can fit eight people comfortably in those tables.
The walls of the room should allow the team to put up burndown charts, Kanban boards, and all manner of big visible charts. When someone walks into the team room, those walls tell them the team’s status. The ideal would be a wall painted with whiteboard paint. Team members could write on the wall and erase with impunity!
If your budget does not allow for that, and the walls are not the kind that you can have big boards on, then purchase a movable big board. These allow the team to put up and take down charts, etc. easily. This is a highly mobile option, which is nice if teams move between rooms a lot.
Figure 1. Example of Open Team Room for One Team
One Room, Many Teams
When many teams use one room, make sure that members of each team can communicate well among themselves. Envision clusters of tables and movable boards where the team can gather around to do daily standups, and work. Use the movable boards to create a buffer between the different teams.
The biggest complaint from team members preparing for a team room is that the noise can be a distraction. Make sure that the team comes up with rules that are observed for interrupting someone working. For instance, use a Pomodoro Technique so that everyone knows not to disturb. When the team member has their Pomodoro timer working, that means they cannot be disturbed. A team member who has a question will need to wait until that time is over before asking the question.
Some team members may not like the highly collaborative nature of team rooms at all. These rooms make your work transparent, and there is a lot or engagement with others. In some cases this may mean that team members should be removed from the team. However, the good news is that the benefits of the room usually win over skeptics. And mature teams utilize this to increase productivity.
The example shown in Figure 2 below gives an idea of how multiple teams could work together in one large space. Other configurations would not have the movable boards separating the teams, but just a large open room. It really depends on the team. In my experience, more mature teams would prefer the larger open room.
Other Agile Team Room Considerations
When designing any room, make sure to have lots of power strips and outlets available. The team will most likely need to have more lighting on than some team members are used to. In the end, the benefits of the team room usually outweigh the various environmental preferences some members have.
Keep in mind that some team members may resist the open concept for a while after implementation. In this case, it may be best to look for a different position in the organization (if possible) for that team member. The good news is that after this change potential recruits who are not fond of this arrangement will be discouraged from accepting offers after they see the team room.
Team Rooms for Collaborative Agile Teams
A team room is one tool in an organization’s tool belt to help teams become highly productive. No one tool is a silver bullet for building a hyper productive team. In the end, not all techniques are equally valid for all teams. Try the different room configurations, evaluate effectiveness, and use what works for your team. Keep coding and creating value!