发明名称 一种基于文件关联网络的软件项目核心开发者评判方法
摘要 一种基于文件关联网络的软件项目核心开发者评判方法,主要针对于面向对象编程语言开发的软件项目。首先在项目中筛选出项目的核心文件组;然后构建项目中每个核心文件的关联网络;采用贡献度分配算法来计算出项目成员在每个核心文件中的贡献度大小;最后对所有核心文件取平均,得出项目开发者在项目中的总贡献度大小,从而评判项目的核心开发者,并对其角色和晋升机会进行预测。本发明提供了一种基于文件关联网络的软件项目核心开发者评判方法,能够改善当前的仅以代码量和编译次数来评价项目开发者的贡献度和角色的不足,提升评判结果的真实性和可靠性。
申请公布号 CN106408190A 申请公布日期 2017.02.15
申请号 CN201610832985.3 申请日期 2016.09.20
申请人 浙江工业大学 发明人 宣琦;郑永立;朱天潼;周鸣鸣;陈风雷;吴哲夫;傅晨波;翔云;俞立
分类号 G06Q10/06(2012.01)I 主分类号 G06Q10/06(2012.01)I
代理机构 杭州斯可睿专利事务所有限公司 33241 代理人 王利强
主权项 一种基于文件关联网络的软件项目核心开发者评判方法,其特征在于:所述软件项目核心开发者评判方法包括以下步骤:步骤1:核心文件组的选取:在项目的数据模型和功能控制文件中选取核心文件,对项目里被调用的文件按它们被调用的次数排序,取前N个文件组成核心文件组,满足这些文件被调用次数占总调用次数达预设阈值;步骤2:核心文件关联网络的构建:选取核心文件组的某个文件,记为p,作为关联网络的第一层,关联网络的第二层为项目中调用文件p的所有文件,其集合记为D={d<sub>1</sub>,...,d<sub>k</sub>},k为关联网络中第二层的文件个数,k≥1,关联网络的第三层是这些被第二层文件调用的非核心文件,其集合记为Q={q<sub>1</sub>,...,q<sub>h</sub>},h≥1为关联网络中第三层的文件个数,以此构建核心文件关联网络;步骤3:核心文件中开发者的贡献度计算:设一个核心文件p由m个开发者共同完成,其集合记为A={a<sub>1</sub>,…,a<sub>m</sub>},令P={p,q<sub>1</sub>,...,q<sub>h</sub>}为核心文件p关联网络中被集合D中文件调用的文件集合,其中的元素P<sub>1</sub>=p,P<sub>i</sub>=q<sub>i‑1</sub>,i≥2,根据以上定义,提出贡献度分配矩阵B,矩阵元素B<sub>ij</sub>的值代表项目开发者a<sub>i</sub>在被调用文件P<sub>j</sub>中的贡献度;引入向量集合s=(s<sub>1</sub>,...,s<sub>h+1</sub>)<sup>T</sup>,其元素s<sub>i</sub>代表文件P<sub>i</sub>被调用的总次数,开发者a<sub>i</sub>在文件p中最终贡献度c<sub>i</sub>由其在各关联文件中的贡献度进行权值累加而得,记为:<maths num="0001"><math><![CDATA[<mrow><msub><mi>c</mi><mi>i</mi></msub><mo>=</mo><munder><mo>&Sigma;</mo><mi>j</mi></munder><msub><mi>B</mi><mrow><mi>i</mi><mi>j</mi></mrow></msub><msub><mi>s</mi><mi>j</mi></msub><mo>,</mo></mrow>]]></math><img file="FDA0001117010690000011.GIF" wi="286" he="111" /></maths>其对应的矩阵形式为:C=Bs,其中,向量C表示文件p中所有开发者的贡献度集合;步骤4:核心开发者的筛选:求出项目开发者在所有核心文件中的贡献度,取其平均值,得出的结果近似于各个项目开发者对整个项目的贡献度大小,并进行排序,以此筛选出项目中的核心开发者。
地址 310014 浙江省杭州市下城区潮王路18号浙江工业大学