代码标识符归一化方法及其应用研究
项目介绍
AI项目解读
基本信息
- 批准号:61902181
- 项目类别:青年科学基金项目
- 资助金额:26.0万
- 负责人:
- 依托单位:
- 学科分类:F0203.软件理论、软件工程与服务
- 结题年份:2022
- 批准年份:2019
- 项目状态:已结题
- 起止时间:2020-01-01 至2022-12-31
- 项目参与者:--
- 关键词:
项目摘要
As an important research content of source code analysis and comprehension, identifier normalization is the leading field of the current research of software engineering. Identifier normalization aims to parse identifiers into natural language terms so as to improve the understandability and maintainability of source code. The performance of existing identifier normalization algorithms needs to be improved. In addition, existing studies do not systematically analyze the evolution patterns of identifiers with their normalization, which seriously affects the results of some software development tasks by leveraging identifier normalization. Targeted towards tackling the shortcomings of existing studies, this project issues a series of research contents to resolve, analyze, and apply identifier normalization. These research contents can be divided into three levels, namely 1) the level of algorithm design – how to boost the performance of identifier normalization algorithms by leveraging the generality and uniqueness of identifiers, 2) the level of data analysis – how to analyze the evolution patterns of identifiers with their normalization along with different versions and granularities of source code repositories, 3) the level of application – how to improve the results of typical software development tasks by leveraging identifiers with their normalization. To resolve these challenging research contents, this project develops a feasible research program based on existing work. The project can effectively enhance the current work on identifier normalization, summarize the evaluation patterns of identifier normalization, and extend the research area of identifier normalization.
作为代码分析和理解的重要内容,代码标识符及其归一化是国际学术界的前沿热点研究领域。标识符归一化旨在将标识符解析成自然语言词汇,以提高代码的可理解性和可维护性。现有的标识符归一化算法的性能有待提升,标识符及其归一化的演化规律尚未经过系统性归纳,严重影响了标识符归一化提升相关软件开发任务的效果。本项目针对现有工作的不足,围绕标识符归一化的算法设计、数据分析、应用,凝练出三个层面的研究内容:1)在算法设计层面,利用标识符的通用性和独特性提升标识符归一化的算法效果;2)在数据分析层面,归纳标识符及其归一化在软件代码库的不同版本和不同粒度的演化规律;3)在应用方面,利用标识符归一化提升典型的软件开发任务的效果。针对这些挑战性的研究内容,本项目结合现有的研究基础,制定了切实可行的研究方案。本项目有望显著提升标识符归一化的算法性能,归纳标识符归一化的演化规律,拓展标识符归一化的研究范畴。
结项摘要
代码标识符归一化的目标是将标识符解析成一系列自然语言词汇,一方面方便开发人员阅读和理解标识符所代表的语义功能,另一方面可以匹配其他软件制品以提高软件自动化工具的效果。针对标识符归一化算法设计尚未充分考虑编程上下文语义及开发人员的编程风格、标识符及其归一化的演化分布规律尚未经过系统性总结和归纳、标识符及其归一化对典型软件开发任务的提升效果尚不明晰等问题,本项目开展了一系列的研究工作,主要研究内容包括:1)创新地提出了基于深度预训练模型的标识符组合词拆分算法和基于问答系统的标识符缩写词扩展算法,经过在公开数据集上进行验证,该标识符归一化方法超过现有最好方法10%左右。2)首次系统性归纳了标识符及其归一化的各个维度的性质和标识符及其归一化的风格的演化规律,为开发人员定义和修改标识符提供了指导和借鉴。3)应用标识符及其归一化结果提升典型的软件开发任务的效果,包括API指令检测、标识符重命名机会识别及推荐等,在真实数据集上的结果显示标识符及其归一化可以不同程度地提高这些典型软件开发任务的效果。在本项目的支持下,共发表学术论文11篇,申请国家发明专利4项,并构建了对应软件原型工具。通过本项目的实施,可以辅助开发人员准确定义、分析、理解、修改标识符及其代码,提高代码质量,实现软件系统的良性开发与演化。
项目成果
期刊论文数量(8)
专著数量(0)
科研奖励数量(0)
会议论文数量(3)
专利数量(4)
缺陷报告质量研究综述
- DOI:--
- 发表时间:2023
- 期刊:软件学报
- 影响因子:--
- 作者:邹卫琴;张静宣;张霄炜;陈林;玄跻峰
- 通讯作者:玄跻峰
BEQAIN: An Effective and Efficient Identifier Normalization Approach with BERT and the Question Answering System
BEQAIN:使用 BERT 和问答系统的有效且高效的标识符标准化方法
- DOI:10.1109/tse.2022.3227559
- 发表时间:2022
- 期刊:IEEE Transactions on Software Engineering
- 影响因子:7.4
- 作者:Jingxuan Zhang;Siyuan Liu;Lina Gong;Haoxiang Zhang;Zhiqiu Huang;He Jiang
- 通讯作者:He Jiang
Exploring the Characteristics of Identifiers: A Large-Scale Empirical Study on 5,000 Open Source Projects
探索标识符的特征:对 5000 个开源项目的大规模实证研究
- DOI:10.1109/access.2020.3013694
- 发表时间:2020
- 期刊:IEEE Access
- 影响因子:3.9
- 作者:Jingxuan Zhang;Siyuan Liu;Junpeng Luo;Jiahui Liang;Zhiqiu Huang
- 通讯作者:Zhiqiu Huang
Discovering API Directives from API Specifications with Text Classification
使用文本分类从 API 规范中发现 API 指令
- DOI:10.1007/s11390-021-0235-1
- 发表时间:2021-07
- 期刊:Journal of Computer Science and Technology
- 影响因子:0.7
- 作者:Jingxuan Zhang;Chuanqi Tao;Zhiqiu Huang;Xin Chen
- 通讯作者:Xin Chen
CTOS: Compiler Testing for Optimization Sequences of LLVM
CTOS:LLVM 优化序列的编译器测试
- DOI:10.1109/tse.2021.3058671
- 发表时间:2021-02
- 期刊:IEEE Transactions on Software Engineering,Online, DOI: 10.1109/TSE.2021.3058671
- 影响因子:--
- 作者:He Jiang;Zhide Zhou;Zhilei Ren;Jingxuan Zhang;Xiaochen Li
- 通讯作者:Xiaochen Li
数据更新时间:{{ journalArticles.updateTime }}
{{
item.title }}
{{ item.translation_title }}
- DOI:{{ item.doi || "--"}}
- 发表时间:{{ item.publish_year || "--" }}
- 期刊:{{ item.journal_name }}
- 影响因子:{{ item.factor || "--"}}
- 作者:{{ item.authors }}
- 通讯作者:{{ item.author }}
数据更新时间:{{ journalArticles.updateTime }}
{{ item.title }}
- 作者:{{ item.authors }}
数据更新时间:{{ monograph.updateTime }}
{{ item.title }}
- 作者:{{ item.authors }}
数据更新时间:{{ sciAawards.updateTime }}
{{ item.title }}
- 作者:{{ item.authors }}
数据更新时间:{{ conferencePapers.updateTime }}
{{ item.title }}
- 作者:{{ item.authors }}
数据更新时间:{{ patent.updateTime }}
其他文献
复杂软件系统的不确定性
- DOI:10.13328/j.cnki.jos.006267
- 发表时间:2021
- 期刊:软件学报
- 影响因子:--
- 作者:檀超;张静宣;王铁鑫;岳涛
- 通讯作者:岳涛
其他文献
{{
item.title }}
{{ item.translation_title }}
- DOI:{{ item.doi || "--" }}
- 发表时间:{{ item.publish_year || "--"}}
- 期刊:{{ item.journal_name }}
- 影响因子:{{ item.factor || "--" }}
- 作者:{{ item.authors }}
- 通讯作者:{{ item.author }}
内容获取失败,请点击重试
查看分析示例
此项目为已结题,我已根据课题信息分析并撰写以下内容,帮您拓宽课题思路:
AI项目摘要
AI项目思路
AI技术路线图
请为本次AI项目解读的内容对您的实用性打分
非常不实用
非常实用
1
2
3
4
5
6
7
8
9
10
您认为此功能如何分析更能满足您的需求,请填写您的反馈:
张静宣的其他基金
面向代码优化的API替换研究
- 批准号:
- 批准年份:2022
- 资助金额:53 万元
- 项目类别:面上项目
相似国自然基金
{{ item.name }}
- 批准号:{{ item.ratify_no }}
- 批准年份:{{ item.approval_year }}
- 资助金额:{{ item.support_num }}
- 项目类别:{{ item.project_type }}
相似海外基金
{{
item.name }}
{{ item.translate_name }}
- 批准号:{{ item.ratify_no }}
- 财政年份:{{ item.approval_year }}
- 资助金额:{{ item.support_num }}
- 项目类别:{{ item.project_type }}