核心概念
本文提出了一個基於 GitHub 上開源軟體 (OSS) 開發活動的新穎軟體創新衡量標準,發現主要版本發布與軟體包依賴性的顯著增長相關,並強調了語義版本控制和發布複雜性在預測 OSS 採用率方面的作用。
摘要
使用開源軟體開發數據衡量軟體創新
文獻資訊
Brown, E. M., Osborne, C., Cihon, P., Böhmecke-Schwafert, M., Xu, K., Boehm, M., & Blind, K. (2024). Measuring software innovation with open source software development data. arXiv preprint arXiv:2411.05087.
研究目標
本研究旨在開發一種基於 GitHub 數據的新方法來衡量開源軟體 (OSS) 的創新。
方法
研究人員分析了 GitHub 上 JavaScript、Python 和 Ruby 生態系統中約 200,000 個獨特版本(來自 28,000 個獨特軟體包)的數據集,檢查了發布後兩年內的軟體包依賴性和發布複雜性。他們使用 GPT-4 來評估發布說明的複雜性,並分析了主要版本、次要版本和修補程式版本對軟體包依賴性增長的影響。
主要發現
- 與次要版本或修補程式版本相比,主要版本發布後一年內軟體包依賴性顯著增加。
- 主要版本在兩年內持續產生更大的依賴性增長,但增長幅度在第二年略有下降。
- 發布複雜性與依賴性增長呈正相關,尤其是在 JavaScript 和 Python 生態系統中。
主要結論
- 主要版本的 OSS 軟體包可以作為衡量軟體創新的指標,補充科學出版物、專利和標準等傳統指標。
- 語義版本控制和發布複雜性是預測 OSS 採用率的重要因素。
研究意義
本研究為政策制定者、管理者和研究人員提供了一個新的視角來理解和促進 OSS 生態系統中的創新。
局限性和未來研究方向
- 未考慮軟體許可證對依賴關係的影響。
- 未分析不同地區的採用模式。
- 基於 LLM 的語義分析方法存在固有的可變性。
未來研究可以探討這些局限性,並調查其他因素(例如,開發者網絡和社區動態)對 OSS 創新的影響。
統計資料
該研究分析了來自 JavaScript、Python 和 Ruby 生態系統的 200,000 個獨特版本。
這些版本來自 28,000 個獨特的軟體包。
研究人員發現,與次要版本或修補程式版本相比,主要版本發布後一年內軟體包依賴性平均增加了 2.32(以對數差異衡量)。
JavaScript 和 Python 軟體包的發布複雜性和依賴性增長之間存在顯著的正相關關係,Spearman 相關係數分別為 0.13 和 0.08。
引述
"This paper introduces a novel measure of software innovation based on open source software (OSS) development activity on GitHub."
"We find that major versions show differential, strong prediction of one-year lagged log change in dependencies."
"Semantic versioning of OSS releases is correlated with their complexity and predict downstream adoption."