bhwangustc的个人博客分享 http://blog.sciencenet.cn/u/bhwangustc

博文

博士生颜登程毕业论文答辩会

已有 5662 次阅读 2017-3-11 14:00 |个人分类:网络科学论坛|系统分类:科研笔记| 复杂网络, 人类行为动力学, 博士论文答辩会, 开发者行为及兴趣研究

博士生颜登程毕业论文答辩会

时间:2017年3月11日(星期六)下午4:00-5:30

地点:中科大东区理化大楼17-009教室

答辩委员会:何大韧,刘宗华,王文旭,邓友金,王文阁,

闫沐霖,完绍龙 (前五位是论文评审专家)

 

 

 

基于人类动力学和复杂网络的

开发者行为及兴趣研究

 

摘要:

过去几十年信息技术快速发展并不断地渗透到了各行各业和我们生活的各个方面。软件是信息技术的重要组成部分,也是人们在日常生活中接触的最多的信息技术。当前,人们的日常生活和工作都广泛地依赖各种各样的软件,从手机APP到办公软件,从科学计算程序到可视化程序,从动画制作软件到电影剪辑软件,从公交调度程序到飞机控制系统等等。可以毫不夸张地说我们现在生活在软件的海洋中,软件之于我们现代人类就如同水、空气和阳光之于万千生物。软件和软件开发者已经成了社会创新的驱动力。软件开发者能为便利人们的工作和生活开发出各种各样的软件工具,同样也能为提高自身的开发效率和品质创造各种软件工具。各种以软件开发者为服务对象的软件和在线社区也在不断发展。比如著名的分布式版本控制系统Git革命性地改变了软件开发与部署工作流,创造了更加便于分布式协作的软件开发模式。再比如成立于2008年4月的GitHub就是基于一个基于Git的开源协同开发平台。GitHub为软件开发者提供了托管项目、开源项目、协同开发的平台。GitHub也创造性地改进了开源分布式协作开发的工作模式,提供了诸如watching,forking和pull request等功能以提高软件开发者的开发效率、协同工作效率以及软件质量。大量软件开发者聚集于GitHub,因此GitHub也积累了大量开发者的行为数据以及开发者与开发者、开发者与软件项目之间的交互关系数据。

形形色色的开发者社区提供了软件开发者线上活动的基地,软件开发者之间由于不同的交互形成了各种各样的关系网络,比如开发者之间相互关注、相互协作、提问回答、共同讨论等等。软件开发者与软件之间也存在各种各样的交互关系,如提交代码、评审代码、测试代码等,与此同时开发者社区平台也记录了软件开发者在线活动的点点滴滴。开发者之间以及开发者和软件项目之间丰富的网络关系启发我们使用复杂网络作为工具进行深入的研究。而在线平台记录下的丰富的开发者活动数据又启发我们利用人类动力学作为工具来研究软件开发者的行为,捕捉他们的行为规律,帮助在线平台提供更加便利的服务功能。因此研究软件开发者的行为及其与软件项目之间的关系十分必要。

在本文中我们从人类动力学的角度研究了软件开发者的博客发表行为,并借助复杂网络的理论和工具研究了软件开发者与软件项目之间的关系,揭示了软件开发者的兴趣特性。

对软件开发者在GitHub平台的博客发表行为的人类动力学实证分析表明软件开发者的博客提交数目和提交时间间隔具有明显的胖尾分布特性。与其他在线平台相比,GitHub上发表博文因为更正式内容长度更长,因此提交数目分布更加同质而提交时间间隔更加异质。通过对比普通开发者和精英开发者的行为,我们发现普通开发者具有低记忆性和高阵发性而精英开发者具有低记忆性和低阵发性,表明精英分子对于提交博文的兴趣是一个长期的兴趣,且他们将提交博文作为自己日常常规工作来对待。

我们提出了多层二部网络的向量表示形式并将开发者与软件项目之间的多种关系建模为多层二部网络来分析其兴趣的广泛性。分析结果表明,watching层的开发者和软件项目的协同相似性都与度负相关,而在forking层开发者的协同相似性与度正相关,软件项目的协同相似性与度却没有明显的相关性。这表明软件开发者在使用GitHub提供的不同的社会化功能与软件项目建立联系的时候兴趣是有差异的。

更进一步,我们从软件开发者对于软件品质方面的兴趣来分析,提出了依赖中心性相似性指标,并基于该指标进行了实证分析。结果显示,开发者的近邻中心性与度负相关,而软件项目的近邻中心性在均值附近波动。表明开发者在GitHub上成长过程中由于可以主动选择项目所以变得越来越实用化,慢慢会更多的关注对自己实用的软件项目而不是一味的关注高流行度和高品质项目。而项目在发展的过程中因为只能被动选择,所以关注项目的高质量开发者和普通开发者会保持一个稳定的比例。对于watching层和forking层的开发者和项目,其依赖中心性相似性都与度负相关,表明度越大,在近邻品质方面的兴趣越广泛。

如今,先进的信息技术和开源协同软件开发理念催生了各种各样的软件开发者社区,软件开发者面临浩瀚的软件开发知识和软件项目该如何高效的进行选择是一个困扰软件开发者和各软件开发者社区的问题。对于软件开发者行为的研究和软件开发者兴趣的研究最终是要帮助解决软件开发者和软件开发者社区面临的信息过载的问题。今后的工作可以将人类行为时间特性统计规律应用到更多类型的推荐算法优化中去。

另外软件开发者与软件项目之间多种多样的联系方式让我们很自然的抽象出了软件开发者与软件项目之间的多层二部关系。关于多层网络的研究近年来开始兴起。二部网络已经有非常多的研究了,并且这些研究很好的应用到了解决各类产品的推荐中。但是关于多层二部网络的概念目前鲜有提及。我们知道如果能从越多的维度了解软件开发者与软件项目(更一般的用户与产品)之间的联系,必将为解决用户在面临巨量的产品时的信息过载问题提供更多的线索。本文虽然根据多层单部网络的概念提出了一些简单的向量化多层二部网络表示,但是如何张量表示多层二部网络,多层二部网络如何建模,多层二部网络上的动力学过程是怎么样的等等这些问题都是有待后面广大研究人员关注的问题。

本文在研究软件开发者对于软件项目品质兴趣的时候,给出了二部网络中两部分节点各自的依赖关系这一额外信息,在之前的研究中由于数据的缺乏很难同时找到像软件开发者与软件项目这样,不仅二者之间存在清晰地联系,二者各自内部还存在清晰依赖关系的数据集。如果将这些关系结合成一个融合依赖关系的二部网络,再应用传统经典的资源分配方法来进行推荐也许会更有效。这都是后续工作中值得挑战的课题。

 

论文列表

1. Deng-Cheng Yan, Zong-Wen Wei, Xiao-Pu Han, Bing-Hong Wang. Empiricalanalysis on the human dynamics of blogging behavior on GitHub[J]. Physica A: Statistical Mechanics and its Applications, 2017, 465: 775-781.

2. Deng-Cheng Yan, Ming Li, Bing-Hong Wang. Dependence centerality similarity: measuring the diversity of profession levels of interests[J]. Physica A: Statistical Mechanics and its Applications, Accepted, DOI: 10.1016/j.physa.2017.02.082.

3. Deng-Cheng Yan, Bing-Hong Wang. Collaborative similarity analysis of multilayer developer-project bipartite network. arXiv:1703.03093.

 

 

 

 

 



https://blog.sciencenet.cn/blog-4673-1038866.html

上一篇:重访香港浸会大学非线性研究中心
下一篇:广西大学国际会议日程-组委会最新发布(3月17日)
收藏 IP: 36.5.105.*| 热度|

0

该博文允许注册用户评论 请点击登录 评论 (0 个评论)

数据加载中...
扫一扫,分享此博文

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-4-24 15:42

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部