user contribution and desirable software
DESCRIPTION
Presentation of theory construction using the soft systems methodology approach to examine why open source software development projects require user participation to produce desirable software.TRANSCRIPT
User Contribution to Software Desirability
Andrea Wiggins
18 April, 2008
IST 800 - Theory Construction
Outline• Adaptation of soft systems methodology
approach– The research question– Inputs : Outputs :: User participation :
(more) Desirable software– Iteratively developed models– A little bit of theorizing
Problem Statement• Many FLOSS projects rely on voluntary
user contributions
• There are several qualitatively different types of contributions
• Want to understand the relationship between user participation and desirability of software
Research Question• “Why is ongoing user participation required for open
source software development projects to create desirable software?”
• Key variables: user participation, desirability of the software.
• Relationship: User participation on an ongoing basis is a necessary condition to developing desirable FLOSS software
• Population of study is FLOSS projects: virtual teams in which users participate in software development and signal its desirability through their participation.
Clarifying RQ Concepts• User participation
– Ongoing means continued involvement of users, not necessarily of the same users
– Sustained participation by individuals can also be evaluated, and should be beneficial
• Desirability of software– Downloads: motivation is not important– Direct contributions to development
Finding Out - Rich Pictures
www.ics.uci.edu/~wscacchi/Presentations/Process/Process-Discovery-Scacchi-CMAG-Mar07.pdf
Finding Out - Process Model
www.ics.uci.edu/~wscacchi/Presentations/Process/Process-Discovery-Scacchi-CMAG-Mar07.pdf
Brainstorming: Initial Overview Models
Brainstorming: Activities by Actors
• Many interrelated types of user contributions
• Developers are users too
• Not all users participate in the same ways
• Multiple user “types”
Inputs - Outputs• Thought about ways
that users contribute to FLOSS projects
• Some interactions are indirect, all can be observed in some way
• The contributions vary in potential value to the project, but all types are needed
1. Download software - initially and repeatedly
2. Subscription to lists
3. Post to lists, forums
4. Make feature requests
5. Submit bug reports
6. Submit patches
7. Join project team
Abstracting Types of Participation
• Inheritance from “lower” categories
• Passive– downloading, subscribing
• Active – posting, requesting, bug reporting
• Engaged– patch submission, join project team
Passive Participation
Active Participation
Engaged Participation
Compare to Reality• Feedback from FLOSS experts:
– Model can be improved by indicating how process steps are observed
– Abstracted processes good, but YMMV– Consider role of time in processes
• SSM is made for optimizing very specific grounded processes, but theory construction requires abstraction…
Refined (Abstract) Model
Observations from Models• In many FLOSS projects, users
contribute critical functions to the support of software development– Users find the software desirable
• Evidence from downloading, user participation
– Users support ongoing development through participation
• Most participation is aimed at influencing the software development
Role of Infrastructure• Duality of project infrastructure: enables
dialog between users and project team, which becomes infrastructure– Infrastructure or technology?
theory from Models• In many FLOSS projects, infrastructural
duality both provides mechanisms for participation and dialog among users, and captures these resources as further infrastructure.
• Because of this infrastructure, users can contribute critical functions that support software development.
Future Work• Engage questions about why specific
mechanisms for user contributions to FLOSS are effective & widely adopted
• Compare models to case studies & archive data to identify other user contribution process variations– Numerous case studies available, as this is
the primary research method for FLOSS