刘玉辉, 王忠杰
(哈尔滨工业大学 计算机科学与技术学院, 哈尔滨 150001)
随着开源技术的兴起,GitHub等开源软件取得了巨大的成功,目前,GitHub上已经拥有超过6 700万个repo(代码仓库),活跃用户达到2 400万人,超过150万家公司和机构进驻。在开源环境下,为了更好地实现团队合作,计算机相关专业教师也鼓励学生在GitHub上尝试项目开发协作,更好地锻炼提升自己。而针对学生在GitHub上协作完成的项目,教师如何进行项目团队内成员的贡献度量,进而为学生课程任务给出公平、公正的评分则成为一个问题。
传统的评分策略有:
(1)小组内TeamLeader根据小组成员平时的表现制定组内评级参考表,供教师或助教参考。
(2)教师或助教通过对组内成员提问考核,根据回答状况来核定评分等。
这些传统的方法在一定程度上可以解决项目团队成员评分问题,但同时也存在一些不足,如:没有充分利用项目团队开发过程的数据信息、主观因素会有部分影响、最终的问答形式考核趋于片面,作弊应付的可能性增大等。
为了解决上述问题,本文提出GitHub开源软件项目团队协作过程评价的研究,可以帮助教师解决TA问题。在GitHub API v3中共列举了37种事件,如当对一次提交进行评论时,就会触发CommitCommentEvent事件。这些事件中包括项目内部多人合作触发的事件和项目外部其它人员通过Fork→PullRequest→Merge途径做出贡献,本文主要研究项目内部多人合作时,各成员做出的贡献并进行度量。通过分析成员的贡献行为建立成员贡献行为指标模型,然后设计量化贡献计算方法,从而直观得出项目内成员的个人贡献。……