贡献者角色模型
开源项目的发起通常是由一个团队或者个人,以个人身份或者组织身份发起创立,在演进过程中不断吸纳新的个人或者组织参与贡献。 不论是初创者,还是后来加入者,通过与社区建立双赢的合作,以及突出、持续的贡献,获得了社区管理者的角色,这个角色通常可以通过行使一些在代码托管平台的管理行为,得以展现。我们也是通过这类事件行为来确认贡献者是否拥有管理者角色。 而没有被觉察到管理行为的贡献者,我们称之为参与者。 我们使用管理者这一术语来描述社区中拥有管理权限的贡献者。通常情况下,他们也是项目的技术领导者。然而,技术领导者并不能完全等同于管理行为,所以我们采用管理者这个更加具体的称谓。 判断贡献者是否为管理者的标准是其是否做出了 Issue 管理类贡献或 Code 管理类贡献。当然,一个贡献者可能在最初参与社区贡献时并不是管理者,因此我们引入了时间戳来标记这一身份的变化。在上述两类贡献中,如果贡献者声明了自己的组织身份,例如通过公开的组织邮箱直接强制提交代码,我们称其为组织管理者;反之称其为个人管理者。
- 管理者:
- 组织管理者
- 个人管理者
- 参与者
- 组织参与者
- 个人参与者
评估模型中的指标
组织贡献者数量
- 定义:在过去 90 天内有多少活跃的组织贡献者数量。
- 权重:20%
- 阈值:1500
组织贡献次数
- 定义:在过去 90 天内活跃组织贡献者的人均贡献次数。
- 权重:30%
- 阈值:10
个人贡献者数量
- 定义:在过去 90 天内有多少活跃的个人贡献者数量。
- 权重:20%
- 阈值:3500
个人贡献次数
- 定义:在过去 90 天内活跃个人贡献者的人均贡献次数。
- 权重:30%
- 阈值:5
评估模型算法
权重
我们使用 AHP 来计算每个指标的权重。
AHP 输入数据
指标名称 | 组织贡献者数量 | 组织贡献次数 | 个人贡献者数量 | 个人贡献次数 |
---|---|---|---|---|
组织贡献者数量 | 1.000 | 0.667 | 1.000 | 0.667 |
组织贡献次数 | 1.500 | 1.000 | 1.500 | 1.000 |
个人贡献者数量 | 1.000 | 0.667 | 1.000 | 0.667 |
个人贡献次数 | 1.500 | 1.000 | 1.500 | 1.000 |
AHP 分析结果
指标名称 | 特征向量 | 权重 |
---|---|---|
组织贡献者数量 | 0.800 | 20.000% |
组织贡献次数 | 1.200 | 30.000% |
个人贡献者数量 | 0.800 | 20.000% |
个人贡献次数 | 1.200 | 30.000% |
一致性检验结果
最大特征根 | CI 值 | RI 值 | CR 值 | 一致性检验结果 |
---|---|---|---|---|
4.000 | 0.000 | 0.890 | 0.000 | PASS |
阈值
我们选择的阈值是基于不同类型开源项目的大数据观测。
参考文献
贡献者
前端
- Shengxiang Zhang
- Feng Zhong
- Xingyou Lai
后端
- Yehui Wang
- Shengxiang Zhang
- Shengbao Li
- Huatian Qin
评估模型
- Yehui Wang
- Liang Wang
- Shengbao Li