Thursday, November 8, 2012

Group Awareness in Distributed Software Development


In OSS people hardly meet face to face and get into adhoc communication.This leads to lack of
coordination and communication.
Some of successful OSS are Linux, Apache, OpenOffice application suite.
Permission to make digital or hard copies of all or part of OSS for personal or classroom use is
granted without fee provided that copies are not made or distributed for profit or
commercial advantage and that copies bear this notice and the full citation on the first page.
It suffers from the problem of uncoordinated changes to the same file or module.

Paper address the issue that how distributed developers maintain group awareness.
A study was carried out of open source teams to determine whether-
*developers need to stay aware of one another,
*what awareness information developers keep track of
*how they gather and maintain their knowledge

Group awareness is useful for coordinating actions, managing coupling, discussing tasks,
anticipating others’ actions, and finding help.
Three mechanisms help people to maintain awareness in co-located situations are:
*Explicit communication.
*Consequential communication.
*Feed through.

lack of ad-hoc communication between software developers cause an increase in
coordination problems and a decrease in collaboration between remote sites.
Newsgroups, email, text chat, and instant messaging are ways of communication

The main benefits of group awareness would be in simplifying communication and
improving coordination of activity.
Software systems involve dependencies and linkages.
Two ways(menationed in paper) to reduce dependencies are:
By reducing the number of developers.
By strongly partitioning the code.

The paper investigates 3 OSS projects and interviews developers and so When asked them
whether they primarily work in a ‘home’ area in the code, most of them said that they had
worked in a variety of areas, and were able to “hop around” following their interests as
ownership can cause as many coordination problems as it solves.

Following is used for general awareness-
1.Mailing list
2.Text chat
3.Commit logs

Pros and Cons of mail lists and text chats:
1.people are not socially required to respond and so the top experts do not become flooded
with questions.
2.If the senior developers are too busy to answer all questions themselves, they watch who
does respond and check the answers.
3.There is social pressure to be correct.
4.Developers are committed to reading the list

DOES AWARENESS WORK?

From the perspectives of the developers it is essential because of the following:
Someone committing something which essentially duplicated what someone else was doing.
People have to always manage to work together on related things, sometimes in tightly
coupled teams.

Problems preventing group awareness:
1.A better project lists(of who works in what area) that could be automatically kept up to date.
2.People wanted a better way to decide (based on areas of work) which developer should
asked to handle particular bugs as they are reported.
3.Complaints about being able to stay aware, find people when needed, communicate
 effectively, and coordinate plans and actions.

No comments:

Post a Comment