the results of that work with the conclusions reached in
this study. Organizational culture is fairly consistent across
geography because the same process has been used in all
locations of the company for some time.
6. ThReATs To VALIDITY
construct Validity: The data collection on a system the size of
Windows Vista is automated. Metrics and other data were collected using production level quality tools and we have no reason to believe that there were large errors in measurement.
internal Validity: In Section 5 we listed observations about
the distributed development process used at Microsoft.
While we have reason to believe that these alleviate the
problems associated with distributed development, a causal
relationship has not been empirically shown. Further study
is required to determine to what extent each of these practices actually helps. In addition, although we attempted an
exhaustive search of differences in characteristics between
distributed a collocated binaries, it is possible that they differ in some way not measured by our analysis in Section 4. 3.
external Validity: It is unclear how well our results generalize
to other situations. We examine one large project and there
is a dearth of literature that examines the effect of distributed development on post-release failures. We have identified similarities in Microsoft’s development process with
other successful distributed projects, which may indicate
important principles and strategies to use. There are many
ways in which distributed software projects may vary and the
particular characteristics must be taken into account. For
instance, we have no reason to expect that a study of an outsourced project would yield the same results as ours.
7. concLusIon
In our study we divide binaries based on the level of geographic dispersion of their commits. We studied the post-release failures for the Windows Vista code base and
concluded that distributed development has little to no
effect. We posit that this negative result is a significant
finding as it refutes, at least in the context of Vista development, conventional wisdom and widely held beliefs about
distributed development. When coupled with prior work,
1, 11
our results support the conclusion that there are scenarios
in which distributed development can work for large software projects. Based on earlier work,
18 our study shows that
organizational differences are much stronger indicators of
quality than geography. An organizationally compact but
geographically distributed project would be better than a
geographically local, organizationally distributed project.
We have presented a number of observations about the
development practices at Microsoft which may mitigate some
of the hurdles associated with distributed development, but
no causal link has been established. There is a strong similarity between these practices and those that have worked for
other teams in the past1 as well as solutions proposed in other
work.
10 Directly examining the effects of these practices is an
important direction for continued research in globally distributed software development. Devanbu and Bird acknowledge
that their work is in part supported by the National Science
Foundation, under Grant NSF-SOD 0613949.
References
1. battin, r. D., Crocker, r., kreidler,
J., subramanian, k. leveraging
resources in global software
development. IEEE Softw. 18, 2 (Mar./
apr. 2001), 70–77.
2. bhat, J. M., Gupta, M., Murthy, s.n.
overcoming requirements engineering
challenges: lessons from offshore
outsourcing. IEEE Softw. 23, 6 (sept.
/oct. 2006), 38–44.
3. Carmel, e. Global Software Teams:
Collaborating across Borders and
Time Zones. Prentice hall, 1999.
4. Carmel, e., agarwal, r. tactical
approaches for alleviating distance in
global software development. IEEE
Softw. 2, 18 (Mar./apr. 2001), 22–29.
5. Cusick, J., Prasad, a. a practical
management and engineering approach
to offshore collaboration. IEEE Soft w.
23, 5 (sept./oct. 2006), 20–29.
6. Desouza, k.C., awaza, y., baloh,
P. Managing knowledge in global
software development efforts: Issues
and practices. IEEE Softw. 23, 5
(sept./oct. 2006), 30–37.
7. ebert, C., neve, P. D. surviving global
software development. IEEE Softw.
18, 2 (2001), 62–69.
8. Gumm, D. C. Distribution dimensions
in software development projects:
a taxonomy. IEEE Softw. 23 (2006),
545–551.
9. herbsleb, J. Global software
engineering: the future of socio-technical coordination. International
Conference on Software Engineering,
2007, 188–198.
10. herbsleb, J., Grinter, r. architectures,
coordination, and distance: Conway’s
law and beyond. IEEE Softw. (1999).
11. herbsleb, J., Mockus, a. an empirical
study of speed and communication
in globally distributed software
development. IEEE Trans. Softw. Eng.
(2003).
12. herbsleb, J. D., Mockus, a.
formulation and preliminary test of
an empirical theory of coordination in
software engineering. In Proceedings
of 11th International Symposium on
Foundations of Software Engineering
(2003).
13. herbsleb, J.D., Paulish, D.J., bass,
M. Global software development
at siemens: experience from nine
projects. In Proceedings of the 27th
International Conference on Software
Engineering (2005), aCM, 524–533.
14. holmstrom, h., Conchuir, e., agerfalk,
P., fitzgerald, b. Global software
development challenges: a case
study on temporal, geographical and
Christian Bird ( cabird@ucdavis.edu),
university of California, Davis, Davis, Ca.
Nachiappan Nagappan
( nachin@microsoft.com), Microsoft
research, redmond, Wa.
Premkumar Devanbu
( ptdevanbu@ucdavis.edu), university of
California, Davis, Davis, Ca.
socio-cultural distance. Proceedings
of the IEEE International Conference
on Global Software Engineering
(2006), 3–11.
15. kommeren, r., Parviainen, P. Philips
experiences in global distributed
software development. Empirical
Softw. Eng. 12, 6 (2007), 647–660.
16. Mann, h.b., Whitney, D.r. on a test of
whether one of two random variables
is stochastically larger than the other.
Ann. Math. Stat. 18, 1 (1947), 50–60.
17. nagappan, n., ball, t., zeller, a. Mining
metrics to predict component failures.
In Proceedings of the International
Conference on Software Engineering
(2006).
18. nagappan, n., Murphy, b., basili,
V. the influence of organizational
structure on software quality: an
empirical case study. In Proceedings
of the 30th International Conference
on Software Engineering (2008).
19. nguyen, t., Wolf, t., Damian, D.
Global software development and
delay: Does distance still matter?
In Proceedings of the International
Conference on Global Software
Engineering (2008).
20. olson, G.M., olson, J.s. Distance
matters. Hum. Comp. Interact. 15,
2/3 (2000), 139–178.
21. rammasubbu, n., balan, r. Globally
distributed software development
project performance: an empirical
analysis. In Proceedings of the
6th Joint Meeting of the European
Software Engineering Conference and
the ACM SIGSOF T Symposium on the
Foundations of Software Engineering
(2007), aCM, new york, ny, usa,
125–134.
22. sosa, M., eppinger, s., Pich, M.,
Mckendrick, D., stout, s., Manage,
t., Insead, f. factors that influence
technical communication in distributed
product development: an empirical
study in the telecommunications industry. IEEE Trans. Eng. Manage. 49, 1
(2002), 45–58.
23. spinellis, D. Global software
development in the freebsd project.
In GSD ‘06: Proceedings of the 2006
International Workshop on Global
Software Development for the
Practitioner (shanghai, China, 2006),
73–79.
24. zimmermann, t., nagappan, n.
Predicting defects using network
analysis on dependency graphs. In
Proceedings of the International
Conference on Software Engineering
(2008).
Harald Gall ( gall@ifi.uzh.ch), university of
zurich, zurich, switzerland.
Brendan Murphy (bmurphy@microsoft.
com), Microsoft research, Cambridge,
england.
© 2009 aCM 0001-0782/09/0800 $10.00