中国科学院机构知识库网格
Chinese Academy of Sciences Institutional Repositories Grid
基于复杂网络的开源软件系统拓扑结构特征研究

文献类型:学位论文

作者聂成
学位类别工学硕士
答辩日期2010-05-13
授予单位中国科学院研究生院
授予地点中国科学院自动化研究所
导师王飞跃 ; 曾大军
关键词复杂网络 开源软件 Gentoo Linux 软件bug 社会网络分析 Complex Networks Open Source Software (OSS) Gentoo Linux Software Bug Social Network Analysis
其他题名Analyzing Topological Characteristics of Open Source Software Systems
学位专业计算机应用技术
中文摘要过去十年来,开源软件的用户群变得越来越庞大。目前应用于各个领域的开源软件项目总数还在逐年攀升。与此同时,对开源软件的研究也受到了研究者们越来越多的关注。因为开源软件规模在变大的同时其结构也愈加复杂,这对软件系统的开发、测试以及日后的维护过程都带来了一些问题。 虽然对开源软件项目中开发者的组织结构有了一些研究,但是目前对开发者参与开发的行为以及软件包成功与否的因素了解得并不深入。在开源软件出现bug后开发者们的行为规律以及bug之间依赖关系的动态演化对于开源软件的成功有着极大的影响,而且了解这些规律将有利于我们借鉴开源软件的成功经验并将其运用于其他软件开发项目中。然而不幸的是,这些研究问题由于数据集的局限以及研究方法的局限目前还没有引起研究者们的足够重视。 由于软件系统中的元素及其相互关系可以被抽象为复杂网络中的节点与边,所以我们可以通过复杂网络理论对开源软件系统进行分析。针对前文所述的问题,本文选取开源软件中的Gentoo Linux操作系统为研究案例,对该开源操作系统中存在的网络结构进行深入分析。本论文的主要工作总结如下: 1)在对Gentoo Linux操作系统中软件包和开发者的关系进行研究时,把软件包和开发者抽象为两类不同的节点,并形成Gentoo软件包-开发者二部图。通过研究软件包和开发者的度分布,分析了开发者参与软件包以及软件包吸引开发者的宏观规律;并从微观层面分析了影响软件包中的开发者数目的因素以及影响开发者参与软件包数目的因素。最后还对网络的内聚性进行了分析。 2)在分析Gentoo Linux开源软件的bug时,根据bug之间的依赖关系构建了Gentoo Bug网络,并对Gentoo Bug网络的演化特征进行了实证分析。在对Gentoo Bug网络进行建模时,尝试了多种现有的复杂网络模型,但现有的模型无法很好地解释Gentoo Bug网络的高聚集系数与度分布这些结构特性。基于对Gentoo Bug网络的实证分析,在现有模型的基础上提出了一种新的网络演化模型DDDE。并通过仿真实验分析了传统模型与新模型的优劣。 3)在对Gentoo Bugzilla中开发者的社会网络进行分析时,依据开发者讨论的记录建立了Gentoo 开发者网络。依据网络中边出现的时间顺序,分析了该社会网络的动态演化过程并对开发者的活动规律进行了研究。进一步,通过给边加上寿命,分析了在社会关系会随时间消逝的情况下,社会网路结构的动态演化特性。 基于Gentoo Linux开源操作系统, 我们分析了Gentoo软件包-开发者二部图,Gentoo Bug网络,以及Gentoo 开发者演化网络。通过本文的研究,使得我们对开源软件的开发过程有了更加深入的了解,并且这些研究成果可以帮助人们认识复杂系统形成的原因及其内在的演化机制。
英文摘要Over the past decade, more and more people have become users of open source software. The number of open source software projects is still increasing, spanning a wide range of applications. At the same time, more and more researchers become interested in investigating open source software . With the expansion of their scale, open source software systems become more and more complex. The complexity of such software systems has brought great inconvenience to their development, testing, and maintaining of the software projects. Although some work has been done in understanding the organization of developers, the factors that influence the activities of developers and popularity of open source software have not been investigated. The activities of developers around the bug tracking system and the evolution of dependent relationships between bugs have great impact on the success of an open source software project, and we can learn the experience in successful software projects by understanding those patterns. However, these research questions have received little attention because of the limitation of datasets and research methodologies. By taking the elements of an open source software system as nodes and the interactions among them as edges, we can analyze the system using the framework of complex network analysis so as to understand more about the formation and evolution of these complex systems. By extensively collecting data from the Gentoo Linux bug repository and development community, we can construct and analyze the topological characteristics of this system. The main contributions of this thesis are summarized as follows: 1. We constructed a Gentoo Package-Developer bipartite network based on the membership of a developer to a Gentoo software package. The Gentoo packages and developers are treated as two kinds of nodes, and an edge exists between a package node and a developer node if the developer takes part in the development process of the individual package. By studying the degree distributions of the packages and developers, we analyze how developers join packages and how packages attract developers in a macro perspective. Morover, we analyze factors that influence the number of developers in a project and factors that influence the number of projects a developer joins at a micro dimension. Finally, we analyze the cohesion of the bipartitie network. 2. We analyze open source software bugs with a complex network, treating bugs as nodes and...
语种中文
公开日期2015-09-08
其他标识符200728017029222
源URL[http://ir.ia.ac.cn/handle/173211/7522]  
专题毕业生_硕士学位论文
推荐引用方式
GB/T 7714
聂成. 基于复杂网络的开源软件系统拓扑结构特征研究[D]. 中国科学院自动化研究所. 中国科学院研究生院. 2010.

入库方式: OAI收割

来源:自动化研究所

浏览0
下载0
收藏0
其他版本

除非特别说明,本系统中所有内容都受版权保护,并保留所有权利。