Presentation is loading. Please wait.

Presentation is loading. Please wait.

收集Github中开源项目的数据,用于实验分析 如:评估领导者特征,研究其对项目成功的影响 Github中可以获得的信息 项目的选择

Similar presentations


Presentation on theme: "收集Github中开源项目的数据,用于实验分析 如:评估领导者特征,研究其对项目成功的影响 Github中可以获得的信息 项目的选择"— Presentation transcript:

1 收集Github中开源项目的数据,用于实验分析 如:评估领导者特征,研究其对项目成功的影响 Github中可以获得的信息 项目的选择

2 Github中的数据 项目 个人 组织 发起者,贡献者,参与者 受关注程度 代码及变更 问题报告及评论 基本信息 在项目中的活动记录
绩效:下载量,同类软件比较 团队成员社交关系:Cdlins, Clark 2003 (经常交流,独立高) 信任和沟通(组织氛围) 领导:业务能力 / 管理能力 (团队领导) 声誉 工作经验 组织的学习能力(资源齐备),老手带新手(培训) 社区的活动(Github,Facebook,Twitter)外部资本 年龄,受教育程度(Linked In) 知识产权保护,倒U型

3 Github项目 属主 项目名 关注者数 点赞数 克隆数

4 Github项目中的代码 提交数 每次提交: 开发者 提交时间 修改内容 附加消息 源代码 分支数 发布版本 贡献者 切换分支

5 Github项目中的Issues Issues:报告的问题 报告者,报告时间,报告内容 状态(open/closed) 分配的开发者
解决方式(fixed/invalid/won’t fix/..) 评论 评论者,评论时间,评论内容

6 Github项目中的Pull requests
包含的提交 修改的文件及内容 状态(是否接受) 分配的开发者 评论

7 人的信息 用户名,全名,加入时间,所属组织 粉丝,点赞的人,关注的人 创建项目,克隆项目,关注项目 活动: 组织:所属项目,成员
代码贡献:对某个项目进行某次提交 Issues/Pull Requests: 报告,处理,更改状态,评论 组织:所属项目,成员

8 数据获取 编写程序调用Github API 获得项目列表 逐个项目抽取所需数据保存 项目选择 过滤项目:活动少,参与者少

9 谢谢

10 Human Factor in Software Engineering
软件工程中人的因素对软件开发的影响 开源软件组织中的人 开发者网络 论文

11 开源软件 vs. 维基百科 修改及提交代码(修改提交百科词条) 管理人员审核,选择是否接受修改

12 开源软件项目 组织特性:扁平化,松散化,全球化, 人员流动大,依托于互联网进行合作
软件开发者:根据个人兴趣参与,选择 适合的任务和模块,自由安排时间,分 散于各个地理位置 项目管理者:吸取参与者的广泛意见, 需要评估参与者的水平和工作产品,选 择是否接受

13 开源软件项目开发过程 需求变更快,迭代周期短
每个开发周期会预先定义好任务目标, 管理人员安排一些开发者完成,这些开 发者大多为项目的长期贡献者 其他贡献者通常以问题报告的形式参与, 即便参与编写代码,也贡献不大

14 开源软件项目参与者的活动 修改提交代码 修改提交文档 报告问题 修复问题 参与讨论

15 数据收集 代码库:修改代码或文档 问题库: 跨项目 时间,文件,修改内容,相应问题编号 静态信息(报告者,类型,严重程度…)
动态信息(各属性变更情况) 跨项目 一个人在多个项目中的参与:Github

16 数据:基本关系 人 修改 文件 人 报告 问题 人 评论 问题 人 修复 问题 by 修改 文件

17 对开发者的衡量 贡献度大小 参与项目时间,关注点范围,参与频率, 效率,出错率 代码提交次数 代码修改行数 文件修改数 报告问题数
修复问题数 参与评论数 参与项目时间,关注点范围,参与频率, 效率,出错率

18 开发者网络 寻找软件开发中人与人之间的关系 典型方式 参与过同一个项目 修改过同一个文件 有过直接交流( ) 评论过同一个问题

19 开发者网络的特性及应用 小世界:“六度分隔” 模块性:是否存在清晰的社区结构 团队结构:是否有核心人物 根据应用场景选择合适的构建方式
缺陷预测:基于共同修改关系构建开发者 网络,度量开发者的中心性,加入到缺陷 预测模型

20 协作模式挖掘

21 文献:软件工程中的组织行为学 Cocreating understanding and value in distributed work: how members of onsite and offshore vendor teams give, make, demand, and break sense Cognitive divergence and shared mental models in software development project teams Effective Work Practices for Software Engineering: Free/Libre Open Source Software Development The Influence of Organizational Structure on Software Quality: An Empirical Case Study 基于组织行为学的SW-KPA中人员行为模型 基于组织行为学的极限编程中的沟通准则

22 谢谢


Download ppt "收集Github中开源项目的数据,用于实验分析 如:评估领导者特征,研究其对项目成功的影响 Github中可以获得的信息 项目的选择"

Similar presentations


Ads by Google