Communication in distributed software development

The history of free and open-source software shows that as time progressed, the complexity of the projects and the number of involved people increased.

Initially the available methods were mostly asynchronous forms of communication such as the email and mailing lists or even relying on periodical written publications to spread information.

In this early stage there aren't many accounts of this kind of distributed development on an enterprise setting [citation needed].

However, the developments and tools of previous years pioneered the necessary means for companies to start investigating and adopting these practices when advantages could be obtained.

More tools such as Audio conferencing and Instant messaging appeared mostly for other purposes but were quickly adopted, and continued to push forward the idea of distributed development.

According to Allen's Curve, the frequency of communication between engineers drops at an exponential rate as the distance between them increases.

In fact, an empirical study was conducted that compared the frequency of communication between coworkers from local and remote sites.

Communication is an essential process in coordinating a software development project and sharing knowledge between the team members.

Previous studies[9][10] claim that sharing knowledge is important to building trust and even improving the performance of the whole team, which also applies in a distributed software development process.

It can also bring challenges, as referred in the section above, that when improperly dealt with can delay a team project or even cost money to the company.

[12][13] The interest of researchers in how a globally distributed development influences the success of the project is noted in publications such as[11] where the author mentions the need for more empirical studies on the subject.

Another study[14] tried to find more direct relations between time zones and language barriers without significant results, which as suggested by the author, might be due to low sample size.

[citation needed] Communication in a collaboration setting can be achieved either synchronously or asynchronously, differing in how agents interact with each other.

Even inside a company, the tasks and responsibilities of different members reflect in their usage in the tools used in the work environment.

It is useful in a distributed development process especially because most of the time the different teams working on a project don't do so simultaneously, and matters that are not urgent can be discussed asynchronously.

Unlike the most instant messaging tools, on email neither the users nor their computers are required to be online simultaneously.

Audio and video conference are the technologies for the reception and transmission of audio-video signals by users at different locations, for communication between people in real-time.

[13] Rich synchronous communication technology such as video-conferencing is appropriate for highly interactive discussions where body language and intonation can convey the degree of understanding or agreement among participants.

[18] Investigators found out that team members who are not confident with their English language skills prefer to use email or instant messaging over audio and video conferencing, as text-based media provide more time to comprehend and compose a response.

[19] This becomes a problem, since text-based media doesn't use neither auditory nor visual features, which can hinder the process of understanding important information and lead to misunderstandings.

Professor Thomas J. Allen in the late 1970s discovered that the increase of distance between engineers reduces exponentially the frequency of communication between them.

Furthermore, other studies[21] show that virtual offices make work coordination easier and improve the performance in a team.

The motivation for using virtual reality as a communication tool is based on the premise that one's perception of context is proportional to the sensorial information available.