Nick Berente
Assistant Professor, Dept of Management Information Systems
University of Georgia
Friday, October 17, 2014
10:00am – 11:30am Speakman Hall 200
Seminar Title: Complex Coordination Routines and Open Source Software Development Processes
Abstract
Despite being geographically and temporally distributed, having high-turnover and consisting mainly of volunteer-developers, open source software (OSS) communities can often successfully assemble complex software products. Contemporary theorizing around OSS development suggests that isolated volunteers execute bounded and small development tasks on separate software modules while complex development problems are deferred until they become simple. Overall, according to this account, OSS development processes should be simple. However, the presence of complex OSS products suggests that OSS development processes somehow address complex development problems – problems do not turn from complex to simple out of thin air. This suggests that OSS development processes are likely to vary substantively in that they need to be concerned with both simple and complex tasks. In this paper we reconcile this paradox and empirically explore how OSS processes are carried out when facing relatively complex development problems. We conduct an exploratory mixed-method study of OSS processes and their compositions within a successful mid-size OSS project – Rubinius. We analyze how the project’s development tasks are coordinated based on varying types of tasks related to solving problems. We use computational sequence analysis techniques to describe the level of observed routine variety (i.e. variety of activities and their ordering) using digital trace data from Github. We detect four clusters of routines in Rubinius in terms of their degree of variety: 1) triaging problems, 2) transferring information, 3) technical inquiry, and 4) solving simple problems. Using qualitative inquiry, we observe that each routine cluster serves distinct information processing functions such as evaluating, shifting, understanding, and accommodating the complexity of development problems. From this exploratory analysis we theorize on the relationship between routine variety and efficiency of successful routines. We conclude with a process model of coordination routines capable of generating the requisite variety necessary to attack complex development problems.