Collaboration, Information Seeking and Communication: An Observational Study of Software Developers' Work Practices
Different aspects defining the nature of software engineering work have been analyzed by empirical studies conducted in the last 30 years. However, in recent years, many changes have occurred in the context of software development that impact the way people collaborate, communicate with each other, manage the development process and search for information to create solutions and solve problems. For instance, the generalized adoption of asynchronous and synchronous communication technologies as well as the adoption of quality models to evaluate the work being conducted are some aspects that define modern software development scenarios. Despite this new context, much of the research in the collaborative aspects of software design is based on research that does not reflect these new work environments. Thus, a more up-to-date understanding of the nature of software engineering work with regards to collaboration, information seeking and communication is necessary. The goal of this paper is to present findings of an observational study to understand those aspects. We found that our informants spend 45% of their time collaborating with their colleagues; information seeking consumes 31,90% of developers' time; and low usage of software process tools is observed (9,35%). Our results also indicate a low usage of e-mail as a communication tool (similar to 1% of the total time spent on collaborative activities), and software developers, of their total time on communication efforts, spending 15% of it looking for information, that helps them to be aware of their colleagues' work, share knowledge, and manage dependencies between their activities. Our results can be used to inform the design of collaborative software development tools as well as to improve team management practices.
collaboration observational study software engineers awareness cscw multi-tasking