Share on Facebook Tweet on Twitter Share on LinkedIn Share by email
Does distributed development affect software quality? An empirical case study of Windows Vista

Christian Bird, Nachiappan Nagappan, Premkumar Devanbu, Harald Gall, and Brendan Murphy

Abstract

It is widely believed that distributed software development is riskier and more challenging than collocated development. Prior literature on distributed development in software engineering and other fields discuss various challenges, including cultural barriers, expertise transfer difficulties, and communication and coordination overhead. We evaluate this conventional belief by examining the overall development of Windows Vista and comparing the post-release failures of components that were developed in a distributed fashion with those that were developed by collocated teams. We found a negligible difference in failures. This difference becomes even less significant when controlling for the number of developers working on a binary. We also examine component characteristics such as code churn, complexity, dependency information, and test code coverage and find very little difference between distributed and collocated components to investigate if less complex components are more distributed. Further, we examine the software process and phenomena that occurred during the Vista development cycle and present ways in which the development process utilized may be insensitive to geography by mitigating the difficulties introduced in prior work in this area.

Details

Publication typeInproceedings
Published inProceedings of the 2009 IEEE 31st International Conference on Software Engineering (ICSE)
URLhttp://dx.doi.org/10.1109/ICSE.2009.5070550
Pages518–528
ISBN978-1-4244-3453-4
AddressWashington, DC, USA
PublisherIEEE Computer Society
> Publications > Does distributed development affect software quality? An empirical case study of Windows Vista