Whenever I’ve heard people talk about the importance of a single point of contact for communication between the developer and the “customer”, I’ve thought this was primarily to protect team members from unnecessary emails and meetings. But what I’ve come to realize is how important this is to project health generally, for a couple of reasons:
Consistent message
If only one person is giving the programmer feedback, they are less likely to get conflicting messages about how things should work.
Less communication about the communication
As a programmer on the outside of an organization, I often can’t tell who will have the answers to my questions. This means that when I have a question I have a few options:
- Send an email to everyone on the project, and hope that the right someone responds.
- Send an email to who I think is the right someone, and hope that they respond if they are the right someone, and that they redirect me if I’m not.
Unfortunately, my hopes are not always realized.
I have found that what works best is for there to be a project manager or other person within the organization who coordinates communication with me. That way, I’m not sending email to 5 people, and hoping one of them will respond to my questions. It also works best if this person is a decision maker, because that can mean faster answers than if they have to run it by someone else.