复旦大学计算机科学技术学院CodeWisdom团队(复旦大学软件工程实验室)的研究论文《Recommending Analogical APIs via Knowledge Graph Embedding》近日在美国旧金山举办的国际会议ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering (ESEC/FSE 2023)中获得杰出论文奖(ACM SIGSOFT Distinguished Paper Award)。论文作者包括博士后刘名威、硕士生杨延军、青年副研究员娄一翎、彭鑫教授、硕士生周重、博士生杜雪盈、硕士生杨天庸。ESEC/FSE是CCF推荐的A类国际会议,是软件工程领域的重要国际会议。今年是第31届。本次会议共吸引了470篇论文的投稿,最终共录用127篇论文。
第三方库迁移是软件演进中常见的操作,它涉及将当前库替换为另一个库,以保持相同的软件行为。其中一个关键部分是找到所需功能的类似API。然而,由于存在众多的库和API,手动查找这样的API既耗时又容易出错。研究人员创建了自动化的相似API推荐技术,尤其是基于文档的方法。尽管具有潜力,这些方法存在一些限制,例如文档中的语义理解不完整以及可扩展性问题。
本论文提出了一种名为KGE4AR的基于文档的方法,利用知识图谱(KG)嵌入在库迁移过程中推荐相似的API。具体而言,KGE4AR引入了一个统一的API知识图谱,以全面和结构化的方式表示文档中的三种知识类型,从而更好地捕捉高层次语义。此外,KGE4AR还提出将这一统一的API知识图谱嵌入向量中,以实现更有效和可扩展的相似性计算。论文在两种API推荐场景(已给定目标库和未给定目标库)中对KGE4AR进行了进一步评估,结果显示KGE4AR在所有指标上均明显优于当前最先进的基于文档的技术,并且具备良好的可伸缩性。
CodeWisdom团队的软件智能化开发组长期致力于软件智能化开发技术的研究,在软件开发知识图谱构建及应用以及基于大模型的智能编程辅助方面取得了原创性成果。面向国家战略和企业的实际软件开发需求积累了大量的经验。此次研究成果是长期技术积累与企业需求相结合的产物,更促进了团队坚持走“科研服务产业、产业促进科研”的发展道路。