|The User-Developer Convergence: Innovation and Software Systems Development in the Apache Project|
Before progressing to the case study, I will clarify my methodological approach. This chapter consists of three parts. The first part is a general discussion about the two major research traditions within computer sciences. I draw up a dichotomy between the positivist and interpretivist approaches. By highlighting the strengths and weaknesses of each approach, I use that as a basis for my choice of methodological approach. The second part is a description of the practicalities of the research work undertaken for this thesis. The final part is a discussion about the implications of my methodological approach on the case study and end-results derived through an analysis.
Computer science has its foundations in the empiric sciences. This positivist approach to science is characterized by repeatability, reductionism and refutability [GALLIERS1992](Galliers 1992). It excludes from research everything but the natural phenomena or properties of knowable things, together with their invariable relations of coexistence and succession, as occurring in time and space. It assumes the observations of the phenomenon under investigation can be made objectively and rigorously. Using Hirscheim and Klein's [HIRSCHHEIM1989](1989) taxonomy, this scientific approach lands squarely within the objectivist dimension. The researcher is considered a neutral party whose role is observation and recording. Scientific knowledge in this paradigm, is proven knowledge. Scientific theories are derived in some rigorous way from the facts of experience as recorded by the scientist. Science is based on what the researcher can see, hear and touch, etc. Personal opinion or preferences and speculative imaginings have no place in science. Science is objective, and scientific knowledge is reliable because it is objectively proven knowledge. In positivist science, "[s]cience is a structure built upon facts" [DAVIES1968](Davies 1968, p. 8).
The advantage of positivist research is that it can identify the precise relationships between chosen variables. Using analytical techniques the aim is to make generalizable statements applicable to real-life situations [CHALMERS1978](Chalmers 1978). Through controlling the number of variables, complexity is reduced. Reduced complexity generates less noise, allowing for a closer study of the variables [GALLIERS1992](Galliers 1992).
The approach of limiting variables has proven unfruitful within several strands of computer sciences. For traditional artificial intelligence it has lead to a dead end. By limiting the variables, the field has been able to find solutions to toy problems, but fails in generalizing the research to make it scale to real-life problems [DREYFUS1999](Dreyfus 1999). There is also a problem applying the positivist approach to social situations:
As repeatability of a phenomenon is a prerequisite for positivist research, it is practically impossible to apply this approach to studying phenomena lacking repeatability, like social situations for instance. Alternative approaches must be sought.
The empiric-analytical model [read: the positivist approach] is the only valid approach to improve human knowledge. What can't be investigated using this approach, can't be investigated scientifically. [GALLIERS1992](Galliers 1992, p. 148)
Interpretative research assumes our knowledge of reality can be achieved through social constructions such as language, consciousness, shared meanings, documents, tools, and other artifacts. This kind of research tries not to predefined dependent and independent variables, but focuses on the complexity of human sense making as the situation emerges. It is an effort to understand the context of the phenomenon under study, and the process in which the phenomenon influences the context and the context influences the phenomenon [MEYERS1999](Klein and Meyers 1999).
Interpretivist researchers argue that the positivist approach is inappropriate in social scientific research because "interpretivist researchers do not subscribe to the idea that pre-determined set of criteria can be applied in a mechanistic way" [MEYERS1999](Meyers 1999, p. 68). This is because there is a possibility of many different interpretations of social phenomena. It is also argued that the social scientist himself has an impact on the social system being studied. The prime concern however, is that positivist researchers believe in forecasting future events concerned with human activity based on the assumption that patterns observed in the past will repeat themselves [GALLIERS1992](Galliers 1992). In contrast, interpretive researchers insists that no such a priori fixed relationships within phenomena exist, but rather that observational organizational patterns are constantly changing [MEYERS1999](Klein and Meyers 1999).
The strength of interpretative research lies in presenting reality as an in-depth, self-validating process in which presuppositions are continually questioned. Through this process our understanding of the phenomenon is refined. The weakness is that its interpretative nature relies on the researcher's ability to identify his biases and assumptions. The danger is that even though identified, the researcher's biases still clouds the interpretation of the subject. This, however, is not simply a danger of interpretative research. Positivist research has even shown not to be free of preconceptions that cloud the results [MEYERS1999](Klein and Meyers 1999).
I am choosing the interpretative approach. I do this because I want to uncover the implicit arguments and assumptions that form the basis of the Apache group's approach to software systems development. The nature of studying a case through reading its mailing list archives preclude an empiric-analytical approach. The situations I am observing can't be repeated.