当前位置: X-MOL 学术Inf. Organ. › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
A dynamic perspective on software modularity in open source software (OSS) development: A configurational approach
Information and Organization ( IF 5.7 ) Pub Date : 2024-01-12 , DOI: 10.1016/j.infoandorg.2023.100499
Eunyoung Moon , James Howison

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.

中文翻译:

开源软件 (OSS) 开发中软件模块化的动态视角:配置方法

为了减少技术和任务的相互依赖性,模块化在 OSS 开发中被认为很重要。然而,现有文献隐含地采取静态观点,认为软件结构和组织结构是很早就建立的,并且随着时间的推移而缓慢变化(如果有的话)。这种观点并没有完全反映软件开发的复杂性和动态性,并且往往忽视了人类代理在随着时间的推移不断增加和减少参与度时所扮演的角色。本研究认为协调实践在改变 OSS 开发中的技术相互依赖性方面发挥着重要作用。这项研究调查了导致软件耦合变化的协调实践,特别是软件耦合的增加。这项研究自动分析了三个成功的 OSS 项目(GNU grep、IPython 和 Scikit-image)的 72 个软件版本和 1033 个任务片段中的代码。本研究采用细粒度的实践导向视角,将工作完成方式视为组织的构成方式。在我们的概念化中,OSS 贡献者使用多个组织元素的配置,这些元素在特定的实践阶段中制定和变化。根据这一观点,本研究采用配置方法,使用模糊集定性比较分析(fsQCA)来分析在发布期间软件耦合度降低、无变化和增加的事件。软件耦合显着增加,我们称之为焦期。我们发现,涉及多人的协作往往会导致代码在焦点期间增加技术依赖性(增加软件耦合)。为了在我们的模糊集分析之外说明这一点,我们以叙述细节呈现并讨论了三个情节。本研究中的细粒度配置分析支持组织过程是持续制定的观点。在本研究中,OSS 系统是代码的混合物,在不同的阶段构建每个可能不同的组织配置,而不是将 OSS 系统或项目视为静态或单一的。
更新日期:2024-01-12
down
wechat
bug