GitHub开源软件项目团队协作过程监控与评价
发布时间:2021-01-03 00:29
随着开源社区的发展,越来越多人参与到GitHub的社会化编程中,为了更好的实现团队合作,计算机相关专业教师也鼓励学生在GitHub上进行项目开发协作。针对学生在GitHub上协作完成的课程实践任务,教师如何对项目团队内成员的贡献进行度量成为一个问题。传统的评分策略主要依靠人为主观评价且没有充分利用项目团队开发过程的数据信息。本文充分利用软件开发活动积累的大量数据,从以下四个部分展开研究:(1)GitHub项目团队成员贡献度量分析,帮助教师了解团队个人的贡献情况。构建了项目团队成员贡献指标模型,提出了一套贡献指标的计算方法,根据贡献指标模型确定数据采集范围,通过数据处理计算完成对项目内成员的个体评价,并对其进行可视化。(2)GitHub项目团队协作关系分析,使教师掌握团队内部协作沟通的情况。构建了协作关系网络图模型,通过数据收集处理完成协作关系的可视化。定义了协作关系密集度和协作关系均衡度,用来表征项目团队内成员之间的协作密切均衡程度,度量计算完成了对项目团队协作情况的整体评价。(3)GitHub项目整体推进的特征分析,帮助教师从宏观角度获取项目开发过程的进展信息。定义了工作模式(Wor...
【文章来源】:哈尔滨工业大学黑龙江省 211工程院校 985工程院校
【文章页数】:84 页
【学位级别】:硕士
【部分图文】:
GitHub日志中成员ID选择GitHub项目团队成员贡献指标的度量主要使用了项目的提交信息(commits
图 2-2 每个文件 git blame 的具体内容由 commit ID 关联 author email 有多种处理方式,这里我们通过 git 命令:git show [commit ID] --pretty=format:"%ae" –shortstat 可以更加方便快捷的处理最后得到每行代码对应的作者邮箱,后续工作只需 HashMap 遍历计数即可得到项目中每个成员的净代码量,如表 2-6 所示:表 2-6 GitHub 项目成员净代码量GitHub 项目成员净代码量makeztc@gmail.com 759 行
图 2-2 每个文件 git blame 的具体内容由 commit ID 关联 author email 有多种处理方式,这里我们通过 git 命令:git show [commit ID] --pretty=format:"%ae" –shortstat 可以更加方便快捷的处理,最后得到每行代码对应的作者邮箱,后续工作只需 HashMap 遍历计数即可得到项目中每个成员的净代码量,如表 2-6 所示:表 2-6 GitHub 项目成员净代码量GitHub 项目成员净代码量makeztc@gmail.com 759 行dongsky@gmail.com 373 行DongSky@users.noreply.github.com 40 行lkgv@foxmail.com 2615 行(2)添加代码量 CADD 贡献指标这里我们获取项目内每个成员在软件生命周期内(包括提交的所有项目版本)所添加的代码量贡献指标。首先构造 git 命令参数 git log --stat --no-merges–pretty=format:”%ae”,利用 ProcessBuilder 执行,可得到图 2-3 格式的原始数据。
【参考文献】:
期刊论文
[1]软件仓库挖掘领域:贡献者和研究热点[J]. 江贺,陈信,张静宣,韩雪娇,徐秀娟. 计算机研究与发展. 2016(12)
[2]开源环境下开发人员行为特征挖掘与分析[J]. 袁霖,王怀民,尹刚,史殿习,李翔. 计算机学报. 2010(10)
硕士论文
[1]基于Github社交网络中用户影响力评估算法的研究[D]. 李变.西安电子科技大学 2015
本文编号:2953949
【文章来源】:哈尔滨工业大学黑龙江省 211工程院校 985工程院校
【文章页数】:84 页
【学位级别】:硕士
【部分图文】:
GitHub日志中成员ID选择GitHub项目团队成员贡献指标的度量主要使用了项目的提交信息(commits
图 2-2 每个文件 git blame 的具体内容由 commit ID 关联 author email 有多种处理方式,这里我们通过 git 命令:git show [commit ID] --pretty=format:"%ae" –shortstat 可以更加方便快捷的处理最后得到每行代码对应的作者邮箱,后续工作只需 HashMap 遍历计数即可得到项目中每个成员的净代码量,如表 2-6 所示:表 2-6 GitHub 项目成员净代码量GitHub 项目成员净代码量makeztc@gmail.com 759 行
图 2-2 每个文件 git blame 的具体内容由 commit ID 关联 author email 有多种处理方式,这里我们通过 git 命令:git show [commit ID] --pretty=format:"%ae" –shortstat 可以更加方便快捷的处理,最后得到每行代码对应的作者邮箱,后续工作只需 HashMap 遍历计数即可得到项目中每个成员的净代码量,如表 2-6 所示:表 2-6 GitHub 项目成员净代码量GitHub 项目成员净代码量makeztc@gmail.com 759 行dongsky@gmail.com 373 行DongSky@users.noreply.github.com 40 行lkgv@foxmail.com 2615 行(2)添加代码量 CADD 贡献指标这里我们获取项目内每个成员在软件生命周期内(包括提交的所有项目版本)所添加的代码量贡献指标。首先构造 git 命令参数 git log --stat --no-merges–pretty=format:”%ae”,利用 ProcessBuilder 执行,可得到图 2-3 格式的原始数据。
【参考文献】:
期刊论文
[1]软件仓库挖掘领域:贡献者和研究热点[J]. 江贺,陈信,张静宣,韩雪娇,徐秀娟. 计算机研究与发展. 2016(12)
[2]开源环境下开发人员行为特征挖掘与分析[J]. 袁霖,王怀民,尹刚,史殿习,李翔. 计算机学报. 2010(10)
硕士论文
[1]基于Github社交网络中用户影响力评估算法的研究[D]. 李变.西安电子科技大学 2015
本文编号:2953949
本文链接:https://www.wllwen.com/guanlilunwen/ydhl/2953949.html