Understanding the Requirements for Developing Open Source Software Systems

Walt Scacchi
Institute for Software Research
University of California, Irvine
Irvine, CA 92697-3425 USA

This study presents an initial set of findings from an empirical study of socio-technical processes, system configurations, organizational contexts, and interrelationships that give rise to open source software. In this presentation, the focus is directed at understanding the requirements for open software development efforts, and how the development of these requirements differs from those traditional to software engineering and requirements engineering. Four open software development communities are described, examined, and compared to help discover what these differences may be. Eight kinds of "software informalisms" are found to play a critical role in the elicitation, analysis, specification, validation, and management of requirements for developing open software systems. Subsequently, understanding the roles these software informalisms take in a new formulation of the requirements development process for open source software is the focus of this study. This focus enables considering a reformulation of the requirements engineering process and its associated artifacts or (in)formalisms to better account for the requirements for developing open source software systems.