Page 218 - 《软件学报》2021年第7期
P. 218
2136 Journal of Software 软件学报 Vol.32, No.7, July 2021
作中,一方面需要继续搜集更多高质量的训练语料库,另一方面需要引入代码补全(code completion)领域的最新
研究成果,以进一步提高代码注释的自动补全能力.
(6) 自动化的评估方法.通过分析已有工作,我们发现大部分工作在注释质量评估时,都考虑了手工评估的
方法.但这种评估方法较为主观,与参与评估人员的编程经验和对项目所在领域知识的了解密切相关.在基于深
度学习的生成方法中,大部分研究人员直接使用机器翻译领域中的评价指标.但代码注释生成问题与机器翻译
问题仍存在一定的区别.首先,代码注释与代码本身并不完全对应,代码注释含有的单词通常要显著少于代码含
有的单词.其次,目前语料库中代码对应的注释质量并不乐观,因此基于语料库中注释计算出的评测指标值,并
不一定能够真实地反映出代码注释的质量,会对不同方法间的性能比较结论的有效性产生影响,因此如何寻找
更加客观评估代码注释质量的评测指标仍是一个开放问题,也是现有研究成果应用到实际开发过程中的一个
重要阻碍.
我们希望针对上述挑战提出有效的解决方案,可以使得开发人员在代码注释的编写上节约大量的时间,同
时自动生成的高质量的注释也可以为项目的后续维护提供重要的保障.
致 谢 感谢各位审稿专家提出的宝贵意见.
References:
[1] Xia X, Bao L, Lo D, Xing Z, Hassan AE, Li S. Measuring program comprehension: A large-scale field study with professionals.
IEEE Trans. on Software Engineering, 2018,44(10):951–976.
[2] He H. Understanding source code comments at large-scale. In: Proc. of the 27th ACM Joint Meeting on European Software
Engineering Conf. and Symp. on the Foundations of Software Engineering. 2019. 1217–1219.
[3] Kramer D. API documentation from source code comments: A case study of Javadoc. In: Proc. of the 17th Annual Int’l Conf. on
Computer Documentation. 1999. 147–153.
[4] Fluri B, Wursch M, Gall HC. Do code and comments co-evolve? On the relation between source code and comment changes. In:
Proc. of the 14th Working Conf. on Reverse Engineering. 2007. 70–79.
[5] Jin Z, Liu F, Li G. Program comprehension: Present and future. Ruan Jian Xue Bao/Journal of Software, 2019,30(1):110–126 (in
Chinese with English abstract). http://www.jos.org.cn/1000-9825/5643.htm [doi: 10.13328/ ki.jos.005643]
[6] Stapleton S, Gambhir Y, LeClair A, Eberhart Z, Weimer W, Leach K, Huang Y. A human study of comprehension and code
summarization. In: Proc. of the Int’l Conf. on Program Comprehension. 2020. 2–13.
[7] Haiduc S, Aponte J, Moreno L, Marcus A. On the use of automated text summarization techniques for summarizing source code. In:
Proc. of the 17th Working Conf. on Reverse Engineering. 2010. 35–44.
[8] Haiduc S, Aponte J, Marcus A. Supporting program comprehension with source code summarization. In: Proc. of the 32nd ACM/
IEEE Int’l Conf. on Software Engineering. 2010. 223–226.
[9] Liu F, Li G, Hu X, Jin Z. Program comprehension based on deep learning. Journal of Computer Research and Development,
2019,56(8):1605–1620 (in Chinese with English abstract).
[10] Iyer S, Konstas I, Cheung A, Zettlemoyer L. Summarizing source code using a neural attention model. In: Proc. of the 54th Annual
Meeting of the Association for Computational Linguistics. 2016. 2073–2083.
[11] Rodeghero P, McMillan C, McBurney PW, Bosch N, D’Mello S. Improving automated source code summarization via an eye-
tracking study of programmers. In: Proc. of the 36th Int’l Conf. on Software Engineering. 2014. 390401.
[12] McBurney PW, McMillan C. Automatic documentation generation via source code summarization of method context. In: Proc. of
the 22nd Int’l Conf. on Program Comprehension. 2014. 279–290.
[13] Hu X, Li G, Xia X, Lo D, Jin Z. Deep code comment generation. In: Proc. of the 26th IEEE/ACM Int’l Conf. on Program
Comprehension. 2018. 200–210.