{"title":"A dynamic perspective on software modularity in open source software (OSS) development: A configurational approach","authors":"Eunyoung Moon , James Howison","doi":"10.1016/j.infoandorg.2023.100499","DOIUrl":null,"url":null,"abstract":"<div><p>To reduce technical and task interdependencies, modularization has been considered important in OSS development. However, the existing literature implicitly takes a static view that software structure and organizational structure are established early on and change slowly over time, if at all. Such a view does not fully reflect the complex and dynamic nature of software development and tends to overlook the role played by human agents as they ramp involvement up and down over time. This study considers that coordination practice plays an important role in altering technical interdependencies in OSS development. This study investigates coordination practices that result in changes in software coupling—in particular, increases in software coupling. This study automatically analyzes the code in 72 software releases and 1033 task episodes of three successful OSS projects—GNU grep, IPython, and Scikit-image. This study takes a fine-grained practice-oriented perspective that views the way that the work is done as constituting the organization. In our conceptualization, OSS contributors use a configuration of multiple organizational elements, enacted and varying across specific episodes of practice. In line with this perspective, this study takes a configurational approach, uses fuzzy-set qualitative comparative analysis (fsQCA) to analyze episodes that led to decreases, no changes, and increases in software coupling during the inter-release periods in which the level of software coupling increased significantly, which we call focal period. We find that co-work involving multiple individuals tends to result in code that adds technical dependencies (increases in software coupling) during the focal period. To illustrate this beyond our fuzzy-set analysis, we present and discuss three episodes in narrative detail. The fine-grained, configurational analysis in this study supports the idea that the organizing process is ongoing enactment. In this study, OSS systems are an amalgam of code that builds up in different episodes each possibly different organizational configurations, rather than thinking of the OSS systems or projects as static or singular.</p></div>","PeriodicalId":47253,"journal":{"name":"Information and Organization","volume":"34 1","pages":"Article 100499"},"PeriodicalIF":5.7000,"publicationDate":"2024-01-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"https://www.sciencedirect.com/science/article/pii/S1471772723000532/pdfft?md5=506fdd274e6c4163afb771b90908984b&pid=1-s2.0-S1471772723000532-main.pdf","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Information and Organization","FirstCategoryId":"91","ListUrlMain":"https://www.sciencedirect.com/science/article/pii/S1471772723000532","RegionNum":2,"RegionCategory":"管理学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"Q1","JCRName":"INFORMATION SCIENCE & LIBRARY SCIENCE","Score":null,"Total":0}
引用次数: 0
Abstract
To reduce technical and task interdependencies, modularization has been considered important in OSS development. However, the existing literature implicitly takes a static view that software structure and organizational structure are established early on and change slowly over time, if at all. Such a view does not fully reflect the complex and dynamic nature of software development and tends to overlook the role played by human agents as they ramp involvement up and down over time. This study considers that coordination practice plays an important role in altering technical interdependencies in OSS development. This study investigates coordination practices that result in changes in software coupling—in particular, increases in software coupling. This study automatically analyzes the code in 72 software releases and 1033 task episodes of three successful OSS projects—GNU grep, IPython, and Scikit-image. This study takes a fine-grained practice-oriented perspective that views the way that the work is done as constituting the organization. In our conceptualization, OSS contributors use a configuration of multiple organizational elements, enacted and varying across specific episodes of practice. In line with this perspective, this study takes a configurational approach, uses fuzzy-set qualitative comparative analysis (fsQCA) to analyze episodes that led to decreases, no changes, and increases in software coupling during the inter-release periods in which the level of software coupling increased significantly, which we call focal period. We find that co-work involving multiple individuals tends to result in code that adds technical dependencies (increases in software coupling) during the focal period. To illustrate this beyond our fuzzy-set analysis, we present and discuss three episodes in narrative detail. The fine-grained, configurational analysis in this study supports the idea that the organizing process is ongoing enactment. In this study, OSS systems are an amalgam of code that builds up in different episodes each possibly different organizational configurations, rather than thinking of the OSS systems or projects as static or singular.
期刊介绍:
Advances in information and communication technologies are associated with a wide and increasing range of social consequences, which are experienced by individuals, work groups, organizations, interorganizational networks, and societies at large. Information technologies are implicated in all industries and in public as well as private enterprises. Understanding the relationships between information technologies and social organization is an increasingly important and urgent social and scholarly concern in many disciplinary fields.Information and Organization seeks to publish original scholarly articles on the relationships between information technologies and social organization. It seeks a scholarly understanding that is based on empirical research and relevant theory.