Automatic generation of pull request descriptions

dc.contributor.authorLiu, Z.
dc.contributor.authorXia, X.
dc.contributor.authorTreude, C.
dc.contributor.authorLo, D.
dc.contributor.authorLi, S.
dc.contributor.conferenceAutomated Software Engineering Conference (ASE) (11 Nov 2019 - 15 Nov 2019 : San Diego, CA)
dc.date.issued2019
dc.description.abstractEnabled by the pull-based development model, developers can easily contribute to a project through pull requests (PRs). When creating a PR, developers can add a free-form description to describe what changes are made in this PR and/or why. Such a description is helpful for reviewers and other developers to gain a quick understanding of the PR without touching the details and may reduce the possibility of the PR being ignored or rejected. However, developers sometimes neglect to write descriptions for PRs. For example, in our collected dataset with over 333K PRs, more than 34% of the PR descriptions are empty. To alleviate this problem, we propose an approach to automatically generate PR descriptions based on the commit messages and the added source code comments in the PRs. We regard this problem as a text summarization problem and solve it using a novel sequence-to-sequence model. To cope with out-of-vocabulary words in software artifacts and bridge the gap between the training loss function of the sequence-to-sequence model and the evaluation metric ROUGE, which has been shown to correspond to human evaluation, we integrate the pointer generator and directly optimize for ROUGE using reinforcement learning and a special loss function. We build a dataset with over 41K PRs and evaluate our approach on this dataset through ROUGE and a human evaluation. Our evaluation results show that our approach outperforms two baselines by significant margins.
dc.description.statementofresponsibilityZhongxin Liu, Xin Xia, Christoph Treude, David Lo, Shanping Li
dc.identifier.citationProceedings: 2019 34th IEEE/ACM International Conference on Automated Software Engineering, 2019, pp.176-188
dc.identifier.doi10.1109/ASE.2019.00026
dc.identifier.isbn9781728125084
dc.identifier.issn1938-4300
dc.identifier.issn2643-1572
dc.identifier.orcidTreude, C. [0000-0002-6919-2149]
dc.identifier.urihttp://hdl.handle.net/2440/126366
dc.language.isoen
dc.publisherIEEE
dc.publisher.placeLos Alamitos, CA
dc.relation.granthttp://purl.org/au-research/grants/arc/DE180100153
dc.rights© 2019 IEEE
dc.source.urihttps://doi.org/10.1109/ase.2019.00026
dc.titleAutomatic generation of pull request descriptions
dc.typeConference paper
pubs.publication-statusPublished

Files