Coding style 通过编码风格识别开发人员的软件度量

Coding style 通过编码风格识别开发人员的软件度量,coding-style,code-metrics,Coding Style,Code Metrics,传统的处理软件质量的方法。我正在寻找可以用来通过代码识别开发者的指标,就像剽窃软件一样,也可以用来通过写作风格识别作者。我可以想象,某些现有指标也可以在这里使用,比如评论比率。我还可以想象,从质量的角度来看,指标是不相关的,例如(过度)使用某些方法或设计模式,变量名的平均长度,等等 我感兴趣的要么是指向此类指标或研究集合的指针,要么是单个指标。它们可能是语言不可知论者,也可能与语言或编程范式有关 我想用它来理解和分析不同的编码风格,而不是检测剽窃。如果你在寻找潜在的指标,你可以试着查看一些编码标

传统的处理软件质量的方法。我正在寻找可以用来通过代码识别开发者的指标,就像剽窃软件一样,也可以用来通过写作风格识别作者。我可以想象,某些现有指标也可以在这里使用,比如评论比率。我还可以想象,从质量的角度来看,指标是不相关的,例如(过度)使用某些方法或设计模式,变量名的平均长度,等等

我感兴趣的要么是指向此类指标或研究集合的指针,要么是单个指标。它们可能是语言不可知论者,也可能与语言或编程范式有关


我想用它来理解和分析不同的编码风格,而不是检测剽窃。

如果你在寻找潜在的指标,你可以试着查看一些编码标准。由于它们规定了特定的样式,因此它们所谈论的内容(间距、大括号的位置、标识符长度、强制注释等)可能用于从代码中识别开发人员


此外,如果您对.NET代码感兴趣,您可能会发现它是一个有用的工具。它使您能够针对代码库运行查询,并支持82个指标。

我看到已经有一些研究对此进行了研究。他们可能会有所帮助

  • Kothari,J.,Shevertalov,M.,Stehle,E.,Mancoridis,S.,“源代码作者身份识别的概率方法”,信息技术国际会议记录,第243-248页,IEEE,2007年

    在线提供

    引自摘要:

    我们首先计算一组指标,以使用经验证为真实的代码样本为已知作者群体构建文档。然后,我们计算未识别源代码的指标,以确定最接近的匹配文件。[…]在我们的案例研究中,我们能够 以70%以上的准确率选择单个最近匹配,90%以上的准确率选择前三个有序最近匹配来确定作者身份

  • Shevertalov,M.,Kothari,J.,Stehle,E.,Mancoridis,S.,“使用离散化源代码度量进行作者识别”,载于第一届基于搜索的软件工程国际研讨会论文集,第69-78页,IEEE,2009年

    在线提供,这是之前研究的后续

  • Lange,R.,Mancoridis,S.,“使用代码度量直方图和遗传算法进行软件取证的作者识别”,《第九届遗传和进化计算年会论文集》,第2082-2089页,ACM,2007年

    在线提供

    这也与第一篇参考文献(普通作者)有关,并更详细地讨论了指标。再次引用摘要:

    我们的方法涉及测量代码度量的直方图分布的差异。确定一个能够有效区分开发人员风格的度量组合是该技术实用性的关键。我们的案例研究涉及18个指标

  • 您还可以用于其他参考文献,以及基于上述内容查找其他论文(使用“引用人”选项)