  Open Source Software (OSS) development challenges traditional software
engineering practices. In particular, OSS projects are managed by a large
number of volunteers, working freely on the tasks they choose to undertake. OSS
projects also rarely rely on explicit system-level design, or on project plans
or schedules. Moreover, OSS developers work in arbitrary locations and
collaborate almost exclusively over the Internet, using simple tools such as
email and software code tracking databases (e.g. CVS). All the characteristics
above make OSS development akin to weaving a tapestry of heterogeneous
components. The OSS design process relies on various types of actors: people
with prescribed roles, but also elements coming from a variety of information
spaces (such as email and software code). The objective of our research is to
understand the specific hybrid weaving accomplished by the actors of this
distributed, collective design process. This, in turn, challenges traditional
methodologies used to understand distributed software engineering: OSS
development is simply too "fibrous" to lend itself well to analysis under a
single methodological lens. In this paper, we describe the methodological
framework we articulated to analyze collaborative design in the Open Source
world. Our framework focuses on the links between the heterogeneous components
of a project's hybrid network. We combine ethnography, text mining, and
socio-technical network analysis and visualization to understand OSS
development in its totality. This way, we are able to simultaneously consider
the social, technical, and cognitive aspects of OSS development. We describe
our methodology in detail, and discuss its implications for future research on
distributed collective practices.
