Machine Learning-Based Detection of Open Source License Exceptions

Machine Learning-Based Detection of Open Source License Exceptions
复制标题

基于机器学习的开源许可异常检测

DOI:
10.1109/icse.2017.19
复制
发表时间:
2017
期刊:
2017 IEEE/ACM 39th International Conference on Software Engineering (ICSE)
影响因子:
--
通讯作者:
D. Poshyvanyk
D. Poshyvanyk
中科院分区:
--
文献类型:
--
作者:
Christopher Vendome;M. Vásquez;G. Bavota;M. D. Penta;D. Germán;D. Poshyvanyk

文献摘要

被引文献

相似文献

从法律的角度来看,软件许可证管理软件作为源代码和二进制代码的重新分发、重用和修改。自由和开放源码软件(FOSS)许可证在允许在不同于原始许可证的许可证下进行再分发或修改方面的许可或限制程度各不相同。在某些情况下,开发人员可以通过附加一个例外来修改许可证,以明确允许在特定条件下重用或修改。这些例外是许可证合规性分析中需要考虑的重要因素,因为它们修改了原始许可证的标准(和广泛理解的)条款。在这项工作中,我们首先进行了一个大规模的实证研究,超过51 K自由/开源软件系统的变化历史,旨在定量调查已知的许可证例外的流行程度,并确定新的。随后,我们进行了一项研究,依靠机器学习检测许可证异常。我们评估了许可证异常分类与四个不同的监督学习器和敏感性分析。最后,我们提出了一个许可例外的分类,并解释其含义。
From a legal perspective, software licenses govern the redistribution, reuse, and modification of software as both source and binary code. Free and Open Source Software (FOSS) licenses vary in the degree to which they are permissive or restrictive in allowing redistribution or modification under licenses different from the original one(s). In certain cases, developers may modify the license by appending to it an exception to specifically allow reuse or modification under a particular condition. These exceptions are an important factor to consider for license compliance analysis since they modify the standard (and widely understood) terms of the original license. In this work, we first perform a large-scale empirical study on the change history of over 51K FOSS systems aimed at quantitatively investigating the prevalence of known license exceptions and identifying new ones. Subsequently, we performed a study on the detection of license exceptions by relying on machine learning. We evaluated the license exception classification with four different supervised learners and sensitivity analysis. Finally, we present a categorization of license exceptions and explain their implications.