利用过程挖掘与 N-Gram 语言模型刻画软件开发者画像
软件工程
2021-01-19 v1
摘要
背景:开发者画像具有挑战性,因为诸多因素(如技能、经验、开发环境与行为)可能影响细致分析并给出连贯解释。目标:我们旨在通过挖掘软件开发过程来刻画软件开发者画像。为此,我们开展了一项受控实验:在一场 Python 编程竞赛中,一组开发者拥有相同的明确定义的需求规约与明确定义的冲刺计划。事件收集自 PyCharm IDE 以及受试者签入代码的 Mooshak 自动评测系统。方法:我们使用 n-gram 语言模型与文本挖掘来刻画开发者画像,并使用过程挖掘算法来发现其整体工作流并提取相应度量以进一步评估。结果:研究发现,我们能够以连贯的依据清晰刻画大多数开发者,并将表现最优者行为与更具挑战性行为的开发者区分开来。该方法最终可能催生软件开发过程坏味的目录。结论:开发者画像为软件项目经理提供其应被分配适当任务的线索。随着低代码与无代码平台的日益使用(代码由上层抽象层自动生成),在开发平台中挖掘开发者动作是一种有前景的方法,可早期检测行为并评估项目复杂度与建模工作量。
引用
@article{arxiv.2101.06733,
title = {Profiling Software Developers with Process Mining and N-Gram Language Models},
author = {João Caldeira and Fernando Brito e Abreu and Jorge Cardoso and Ricardo Ribeiro and Claudia Werner},
journal= {arXiv preprint arXiv:2101.06733},
year = {2021}
}