引用本文:金芝,刘芳,李戈.程序理解:现状与未来.软件学报,2019,30(1):110-126
【打印本页】   【下载PDF全文】   查看/发表评论  【EndNote】   【RefMan】   【BibTex】
←前一篇|后一篇→ 过刊浏览    高级检索
本文已被:浏览 7031次   下载 10615 本文二维码信息
码上扫一扫!
分享到: 微信 更多
程序理解:现状与未来
金芝1,2, 刘芳1,2, 李戈1,2
1.北京大学 信息科学技术学院, 北京 100871;2.高可信软件技术教育部重点实验室(北京大学), 北京 100871
摘要:
程序理解是软件工程中的关键活动,在软件开发、维护、重用等任务中发挥着重要的作用.程序理解自软件工程出现以来,就一直是该领域的研究热点.随着软件应用的日益复杂和不断普及,程序理解研究的需求发生了新的变化,程序的自理解或自认知逐渐成为新的关注点,有必要对程序理解进行重新审视.从工程、学习和认知以及方法和技术这3个角度定位程序理解任务;随后,通过文献分析展示其研究布局,进而分别从认知过程、理解技术以及软件工程任务中的应用这3个方面,综合论述程序理解研究的发展脉络和研究进展.
关键词:  软件工程  程序理解  软件理解  程序静态分析  程序动态分析
DOI:10.13328/j.cnki.jos.005643
分类号:
基金项目:国家重点基础研究发展计划(973)(2015CB352201);国家自然科学基金(61620106007,61751210)
Program Comprehension: Present and Future
JIN Zhi1,2, LIU Fang1,2, LI Ge1,2
1.School of Electronics Engineering and Computer Science, Peking University, Beijing 100871, China;2.Key Laboratory of High Confidence Software Technologies, Ministry of Education(Peking University), Beijing 100871, China
Abstract:
Program comprehension is a key activity in software engineering and plays an important role in software development, software maintenance, and software reuse. Since the advent of software engineering, program comprehension has always been a hot research hotspot issue in this field. With the increasing complexity and popularity of software, the needs for program comprehension have been changed. The program self-understanding and self-awareness have gradually become new focuses. Therefore, it is highly desired to re-examine the purposes, the tasks and the techniques of program comprehension. Firstly, this paper dicsusses the program comprehension from the 3 perspectives, namely, the engineering, the learning cognition, as well as the techniques. Then, it shows the degree of research attentions through literature analysis. Furthermore, it discusses the research progress from three aspects, i.e., the cognitive process, the methods and techniques, and the software engineering tasks. Finally, it discusses the development trend and challengs.
Key words:  software engineering  program comprehension  software comprehension  static program analysis  dynamic program analysis

引用本文:
【打印本页】   【下载PDF全文】   查看/发表评论  【EndNote】   【RefMan】   【BibTex】
←前一篇|后一篇→ 过刊浏览    高级检索
本文已被:浏览次   下载  
分享到: 微信 更多
摘要:
关键词:  
DOI:
分类号:
基金项目:
Abstract:
Key words: