Software Quality in the Trenches: Two Case Studies of Quality Assurance Practices in Free/Libre and Open Source Software (FLOSS)
Abstract
When proponents of open source software are asked to explain the success of their movement they typically point to the quality of the software produced, which is in turn attributed to the rather unconventional development model of releasing unfinished versions of the software and having users look over the code and report and fix bugs. This thesis investigates the open source quality assurance model from a knowledge management perspective based on the assumption that debugging involves a high degree of knowledge work. By doing interpretive case studies of two open source projects using direct observation, e-mail archives, and bug-trackers as data sources I present descriptive accounts of the day to day quality practices in open source development. The analysis shows that conceptualizing and classifying bugs is a complex process involving sense-making and subjective considerations; that the peer-review process in open source projects has a lot in common with traditional field-testing; and that communication tools and mediums are used interchangeably, but with certain preferences depending on subject matter. I conclude that perhaps the success of the open source development model is not due to its novelty compared to traditional software engineering, but because open source developers have recognized that debugging is a knowledge-intensive process. Keywords: Open Source, Software Quality, Knowledge Management