Free and open source software is widely used in the creation of software systems, whereas many organisations choose to provide their systems as open source. Open source software carries licenses that determine the conditions under which the original software can be used. Appropriate use of licenses requires relevant expertise by the practitioners, and has an important legal angle. Educators and employers need to ensure that developers have the necessary training to understand licensing risks and how they can be addressed. At the same time, it is important to understand which issues practitioners face when they are using a specific open source license, when they are developing new open source software products or when they are reusing open source software. In this work, we examine questions posed about open source software licensing using data from the following Stack Exchange sites: Stack Overflow, Software Engineering, Open Source and Law. We analyse the indication of specific licenses and topics in the questions, investigate the attention the posts receive and trends over time, whether appropriate answers are provided and which type of questions are asked. Our results indicate that practitioners need, among other, clarifications about licensing specific software when other licenses are used, and for understanding license content. The results of the study can be useful for educators and employers, organisations that are authoring open source software licenses and developers for understanding the issues faced when using licenses, whereas they are relevant to other software engineering research areas, such as software reusability.
翻译:自由开放源码软件被广泛用于创建软件系统,而许多组织则选择以开放源码提供其系统,开放源码软件带有确定原始软件使用条件的许可证。适当使用许可证需要从业人员的相关专门知识,并具有重要的法律角度。教育者和雇主需要确保开发商获得必要的培训,以了解许可证风险和如何处理这些风险。与此同时,重要的是要了解从业人员在使用具体的开放源码许可证时、在开发新的开放源码软件产品时或在重新使用开放源码软件时面临哪些问题。在这项工作中,我们利用来自下列斯塔克交易所网站的数据审查关于开放源码软件许可证的问题:堆积过量、软件工程、开放源码和法律。我们分析问题中具体许可证和专题的表示,调查所收到职位和趋势,是否提供适当的答案和问问问题的类型。我们的研究结果表明,除了其他事项外,当他们正在开发新的开放源码时,在使用其他许可证时,以及了解许可证内容时,从业人员需要澄清具体软件的许可证。研究的结果对于教育工作者和软件开发商来说很有帮助,他们了解软件的可操作性,而软件开发商则了解软件的许可证则了解,因为软件的开发商是其他源码。