The Co-Evolution of Systems and Communities in Free and Open Source Software Development

Because a Free and Open Source Software (F/OSS) project is unlikely to sustain a long-term success unless there is an associated community that provides the platform for developers, users, and user-turned-developers to collaborate with each other, understanding the well-observed phenomenon that F/OSS systems experience “natural product evolution” cannot be complete without understanding the structure and evolution of their associated communities. This chapter examines the structure of F/OSS communities and the co-evolution of F/OSS systems and communities based on a case study. Although F/OSS systems and communities generally co-evolve, they co-evolve differently depending on the goal of the system and the structure of the community. A systematic analysis of the differences leads us to propose a classification of F/OSS projects into three types: Exploration-Oriented, 701 E. Chocolate Avenue, Suite 200, Hershey PA 17033-1240, USA Tel: 717/533-8845; Fax 717/533-8661; URL-http://www.idea-group.com ITB10128 IDEA GROUP PUBLISHING This chapter appears in the book, Free/Open Source Software Development, edited by Stefan Koch. Copyright © 2005, Idea Group Inc. Copying or distributing in print or electronic forms without written permission of Idea Group Inc. is prohibited. 60 Ye, Nakakoji, Yamamoto and Kishida Copyright © 2005, Idea Group Inc. Copying or distributing in print or electronic forms without written permission of Idea Group Inc. is prohibited. Utility-Oriented, and Services-Oriented. Practical implications of realizing the co-evolution and recognizing the different types of F/OSS projects are discussed to provide guidance for F/OSS practitioners. INTRODUCTION Many definitions exist regarding Free and Open Source Software (F/OSS) (DiBona, Ockman, & Stone, 1999). The major difference in those definitions comes from the difference in distribution and re-distribution rights. In this chapter, we use the term Free and Open Source Software inclusively to refer to those systems that give users free access to source code, as well as the right to modify it. F/OSS grants the right to run, read, and change its source code not only to the developers of a system but to all users—who, in fact, are potential developers. Developers, users, and users-turned-developers form a community of practice (Lave & Wenger, 1991). A community of practice is a group of people who are informally bonded by their common interest and shared practice in a specific domain. Community members regularly interact with each other for knowledge sharing and collaboration in pursuit of solutions to a common class of problems. A F/OSS project is unlikely to sustain long-term success unless there is an associated community that provides the platform for developers, users, and users-turned-developers to collaborate with each other. By allowing users to become co-developers, F/OSS encourages natural product evolution (O’Reilly, 1999). To understand how this natural product evolution happens, we conducted a case study of four F/OSS projects and systematically examined their similarities and differences. Our study examines not only the evolution of F/OSS systems, but also the evolution of the associated F/OSS communities and the relationship between these two types of evolution. The case study leads us to the proposition that a strong correlation exists between the evolution of a F/OSS system and that of its associated community. F/OSS systems evolve through the contributions made by its community members, and the contributions made by any member change the role that the member plays in the community, thus resulting in the evolution of the community by reshaping community structure and dynamics. Although F/OSS systems and communities generally co-evolve, they co-evolve differently depending on the goal of the system and the structure of the community. The difference results in different evolution patterns of F/OSS systems and communities. To treat such differences systematically, we propose to classify F/OSS projects into three types: Exploration-Oriented, UtilityOriented, and Service-Oriented. Such a classification provides the basis for finding better technological and managerial support for a particular F/OSS project. 23 more pages are available in the full version of this document, which may be purchased using the "Add to Cart" button on the product's webpage: www.igi-global.com/chapter/evolution-systems-communitiesfree-open/18720?camid=4v1 This title is available in InfoSci-Books, InfoSci-Software Technologies, Science, Engineering, and Information Technology, InfoSci-Select, InfoSci-Computer Science and Information Technology, InfoSci-Select, InfoSci-Select. Recommend this product to your librarian: www.igi-global.com/e-resources/libraryrecommendation/?id=1