Case study of feature based awareness in a commercial software team and implications for the design of collaborative tools

Date

2010-02-01T22:15:33Z

Authors

Izquierdo Rojas, Luis Guillermo

Journal Title

Journal ISSN

Volume Title

Publisher

Abstract

Software development is a process in continuous evolution. This characteristic implies also continuous changes in the functionality of the system under development. Some of these changes may cause problems when they are not properly and timely propagated to the project members. The aim of our research is to obtain a good understanding of problems caused by the lack of awareness of changes to features during a distributed software development project, to identify information and artifact repositories used by contributors, and then to draw the requirements of an awareness mechanism to tackle the awareness problem. In order to accomplish our research goals. we conducted a four month long case study at IBM Ottawa Software Lab. which we observed the collaboration patterns of a multi-site development project team. Our findings helped us identify the most important communication media that support development. In particular, we observed that the 3-1% of communication was by phone and via face-to-face interactions. and email was mostly used to alert contributors about changes to features. We also found that changes were not properly and timely propagated due to different corporate cultures of the project teams. Finally, we found that a high volume of communication makes developers prone to overlook important information that can lead to the generation of errors during development., These findings led us to believe that miscommunication and non-timely communication of changes related to feature development caused the release of code that created failures in stable builds. To address this problem. we developed the concept of a relationship to link developers to features. Using this concept, we have designed a feature-based Awareness Mechanism System to collect information, create relationships and deliver awareness information to the contributors involved in the implementation of a feature.

Description

Keywords

computer software, development, case studies, IBM Ottawa Software Lab

Citation