Method diffusion in large open-source projects

Voluntary adoption of improved development methods in Debian

Martin F. Krafft <phd@martin-krafft.net>

Ph.D. transfer, Lero @UL, Ireland 23 Nov 2007

Research question

What are the factors which lead Debian developers to adopt new methods and more efficient workflows?

Terminology

Innovation:"new processes, reorganisation of production leading to increased efficiency, …" [Kline and Rosenberg, 1986]
Method:a tool, technique, part of a process, a means to an end
Diffusion:"the process in which an innovation is communicated through certain channels over time among the members of a social system" [Rogers, 2003]
Adoption:"a decision to make full use of an innovation as the best course of action available" [Rogers, 2003]
Volunteer:"one who enters into, or offers for, any service of his own free will" [Merriam Webster (sorry)]
Network externalities:
 "the effects on a user of a product or service of others using the same or compatible products or services" [about.com]

Overview

The Debian Project

ui/debian/blue-swirl.png
"one of the largest software systems in the world, probably the largest" [Amor-Iglesias et al., 2005]

My role in Debian

I am in a position to study the community from the inside (cultural insider)

The Debian System — Concepts and Techniques

book-osp.png
book-nsp.png

http://debiansystem.info

The typical Debian developer

These are from experience/discussions/speculation:

Decisions often appear unreasonable from a management perspective

Problems with current workflows

Developers are doing what the computer could be doing more efficiently

Why we are still doing it the old way

What can be done?

Overview

What's (in) a framework?

Framework example: Rogers' elements of diffusion

innovation:relative advantage, compatibility, complexity, verifiability, visibility
communication:hard vs. soft information, mass vs. interpersonal medium, homophily
time:knowledge, persuasion, decision, implementation, (confirmation)
social system:structure, communication arrangement, social norms, opinion leaders, types of decisions, consequences

Select problems:

Problems with existing frameworks

I have tried [Rogers, 2003], [Wejnert, 2002], [Frambach and Schillewaert, 2002], [Gallivan, 2001], [Chau & Tam, 1997], [Saga & Zmud, 1994], [Fichman, 1992], [Davis, 1986], [Kwon & Zmud, 1987], [Tornatzky & Klein, 1982], and a few others…

Common issues:

Need for a new framework

It seems I need a specific framework for diffusion in

But:

One does not discard a framework by looking at it, one discards a model when a better one has taken its place [Kuhn, 1970]

Thus, a bottom-up approach.

Overview

Research approach

Four phases of research:

  1. Collection of factors (grounded theory)
  2. Community survey to sort and augment the factor set
  3. Design of an inital framework and Delphi approach to improve it
  4. Application and verification of the framework
"Waterfall model" — paramount to stay adaptive

Phase 1: collection of factors

Sources:

Strauss & Corbin [1998], because of:

Phase 2: community survey

Goals:

Survey strategy:

Phase 3: framework design

  1. Initial ordering of factors into framework
  2. Delphi study to improve framework and realign factors
    • ~30 experts from different fields, compensated
    • Anonymous or not?
    • Use simple, known tools: mailing lists, wiki, chat

Possible outcome: an existing framework fits

Phase 4: application and verification

I have collected a large number of other classes I could study.

Overview

Contribution

Overview

Progress to date

I have been considering the subject since 2003. The output so far has been mostly non-academic: in addition to numerous discussions and seven interviews, I

Thank you …

Licence

These slides, their design, and the content are © Martin F. Krafft and released under the terms of the CC by-nc-sa 2.5 licence.

reStructuredText sources: slides.rst and ui/base/*.

Slides based on the S5 presentation system.