People love meetings. For some reason that I can’t get my head around, whenever any form of coordination needs to take place the first and often only tool in the toolbox of most people is to call for a meeting. And preferably invite as many people as possible so that we all can sit around the (large) table and spend an hour or more trying to sort something out.
Although I am not so naive as to claim that there is no need to coordinate within companies, I would like to make the point that there are at least three other mechanisms to coordinate work within an organization and each of these mechanisms have significantly lower cost of coordination than the default mechanism of meetings. These mechanisms are:
- Architecture based coordination
- Automated testing based coordination
- Feature teams or task forces
Architecture-based coordination is concerned with defining interfaces between different parts of a system, be it a software system or an organization consisting of humans, and agreeing on the responsibilities on each side of each interface. The teams on each side of the interface have full autonomy and can focus their energy on the highest priority tasks without any need of coordination as long as the interface continues to be respected. Only when a team needs to evolve the interface to other teams is it necessary to coordinate with other teams.
Whenever the description of interfaces between system components, again both software and human-based components, is not sufficiently expressive to capture all necessary aspects, the second mechanism is automated testing. In this case, the results of any team are evaluated using automated means in order to ensure that these are in line with expectations of others that are depending on these results. The important aspect here is automated validation, meaning that the suitability of results is established without any human involvement. If the result proves to be such that it is not suitable, the result is rejected and the team gets to correct any issues that were identified.
The third mechanism for coordination is the use of feature teams or task forces. In this case, a complex task requiring skills from several different functions and disciplines is addressed by a team consisting of members that have the skills to address the task at hand. In this case, the complex coordination required to conduct the task takes place within the team, rather than through numerous meetings between different functions and departments in the company supervised by a full-time project manager. As intra-team coordination, such as daily stand-ups in agile teams, is orders of magnitude more efficient than inter-team coordination, this approach is often preferable in cases where architecture- or automated testing-based coordination is not feasible.
Finally, although I have vilified meetings throughout this article, of course there are times when the only reasonable coordination mechanism is to pull people into a meeting to discuss. However, I would recommend to first ensure that the other, lower cost, coordination mechanisms are not feasible. Second, to limit the number of people on the invitation to the absolutely minimal set. Third, to be extremely clear about the purpose of the meeting, to communicate this to all participants and to be ensure that the result of the meeting is one or more decisions that actually constitute the business value of the meeting. Fourth, if at all possible, conduct the meeting while standing up as, thanks to agile, we have learned that this tends to focus teams and shorten the length of meetings.
Concluding, coordination is required both within companies and within business ecosystems. Many have only one mechanism in their toolbox to achieve coordination and this is the infamous meeting. In this article, I have discussed three other coordination mechanisms that have significantly lower associated cost. So, coordinate to your heart’s content, but focus on using the lowest-cost mechanisms where feasible and avoid unnecessary, long meetings with lots of people that don’t need to be there.