论文标题

软件供应链图:重复使用网络如何扩展

Software Supply Chain Map: How Reuse Networks Expand

论文作者

Hata, Hideaki, Ishio, Takashi

论文摘要

Clone and town是一种典型的代码重用方法,因为其简单性和效率。克隆软件组件由新所有者独立维护。这些克隆和独立的操作可以顺序进行,也就是说,克隆的组件可以再次克隆并由供应链上的其他新所有者拥有。通常,代码重复使用并未得到很好的记录,因此,不可能将适当的更改(例如安全补丁)传播到后代软件项目。但是,开场项目定义了识别和跟踪源代码重复用作牙线软件人员的职责。因此,支持源代码重用意识是真正的需求。本文研究了牙线生态系统中的软件再利用关系。从技术上讲,可以通过文件级克隆设置检测来识别源代码的克隆和自动重复使用。由于更改历史与文件相关联,我们可以通过考虑时间来确定多个软件重复使用的起源和目的地。通过构建软件供应链图,我们发现克隆和拥有在牙线开发中很普遍,并且一组文件被广泛重复。这些观察结果打开了维护和跟踪全球软件家谱的未来挑战。

Clone-and-own is a typical code reuse approach because of its simplicity and efficiency. Cloned software components are maintained independently by a new owner. These clone-and-own operations can be occurred sequentially, that is, cloned components can be cloned again and owned by other new owners on the supply chain. In general, code reuse is not documented well, consequently, appropriate changes like security patches cannot be propagated to descendant software projects. However, the OpenChain Project defined identifying and tracking source code reuses as responsibilities of FLOSS software staffs. Hence supporting source code reuse awareness is in a real need. This paper studies software reuse relations in FLOSS ecosystem. Technically, clone-and-own reuses of source code can be identified by file-level clone set detection. Since change histories are associated with files, we can determine origins and destinations in reusing across multiple software by considering times. By building software supply chain maps, we find that clone-and-own is prevalent in FLOSS development, and set of files are reused widely and repeatedly. These observations open up future challenges of maintaining and tracking global software genealogies.

扫码加入交流群

加入微信交流群

微信交流群二维码

扫码加入学术交流群,获取更多资源