World Scientific
  • Search
  •   
Skip main navigation

Cookies Notification

We use cookies on this site to enhance your user experience. By continuing to browse the site, you consent to the use of our cookies. Learn More
×

System Upgrade on Tue, May 28th, 2024 at 2am (EDT)

Existing users will be able to log into the site and access content. However, E-commerce and registration of new users may not be available for up to 12 hours.
For online purchase, please visit us again. Contact us at [email protected] for any enquiries.

Automatically Generating Release Notes with Content Classification Models

    https://doi.org/10.1142/S0218194021400192Cited by:3 (Source: Crossref)
    This article is part of the issue:

    Release notes are admitted as an essential technical document in software maintenance. They summarize the main changes, e.g. bug fixes and new features, that have happened in the software since the previous release. Manually producing release notes is a time-consuming and challenging task. For that reason, sometimes developers neglect to write release notes. For example, we collect data from GitHub with over 1900 releases, and among them, 37% of the release notes are empty. To mitigate this problem, we propose an automatic release notes generation approach by applying the text summarization techniques, i.e. TextRank. To improve the keyword extraction method of traditional TextRank, we integrate the GloVe word embedding technique with TextRank. After generating release notes automatically, we apply machine learning algorithms to classify the release note contents (or sentences). We classify the contents into six categories, e.g. bug fixes and performance improvements, to represent the release notes better for users. We use the evaluation metric, e.g. ROUGE, to evaluate the automatically generated release notes. We also compare the performance of our technique with two popular extractive algorithms, e.g. Luhn’s and latent semantic analysis (LSA). Our evaluation results show that the improved TextRank method outperforms the two algorithms.

    References

    • 1. L. Moreno, G. Bavota, M. Di Penta, R. Oliveto, A. Marcus and G. Canfora , Automatic generation of release notes, in Proc. 22nd ACM SIGSOFT Int. Symp. Foundations of Software Engineering, 2014, pp. 484–495. CrossrefGoogle Scholar
    • 2. S. Klepper, S. Krusche and B. Brügge , Semi-automatic generation of audience-specific release notes, in Proc. Int. Workshop on Continuous Software Evolution and Delivery, 2016, pp. 7–8. CrossrefGoogle Scholar
    • 3. L. Moreno, G. Bavota, M. D. Penta, R. Oliveto, A. Marcus and G. Canfora , ARENA: An approach for the automated generation of release notes, IEEE Trans. Softw. Eng. 43 (2017) 106–127. Crossref, Web of ScienceGoogle Scholar
    • 4. M. Ali, A. Aftab and W. H. Buttt , Automatic release notes generation, in 2020 IEEE 11th Int. Conf. Software Engineering and Service Science, 2020, pp. 76–81. CrossrefGoogle Scholar
    • 5. E. Aghajani, C. Nagy, M. Linares-Vásquez, L. Moreno, G. Bavota, M. Lanza and D. C. Shepherd , Software documentation: The practitioners’ perspective, in Proc. ACM/IEEE 42nd Int. Conf. Software Engineering, 2020, pp. 590–601. CrossrefGoogle Scholar
    • 6. T. Bi, X. Xia, D. Lo, J. Grundy and T. Zimmermann , An empirical study of release note production and usage in practice, IEEE Trans. Softw. Eng. 5589 (2020) 1–1. Crossref, Web of ScienceGoogle Scholar
    • 7. J. Pennington, R. Socher and C. D. Manning , GloVe: Global vectors for word representation, in Empirical Methods in Natural Language Processing, 2014, pp. 1532–1543. CrossrefGoogle Scholar
    • 8. C.-Y. Lin , ROUGE: A package for automatic evaluation of summaries, in Association Computational Linguistics, 2004, pp. 74–81. Google Scholar
    • 9. S. Bird, E. Klein and E. Loper , Natural Language Processing with Python, 1st edn. (O’Reilly Media, 2009). Google Scholar
    • 10. R. Mihalcea and P. Tarau , TextRank: Bringing order into text, in Proc. 2004 Conf. Empirical Methods in Natural Language Processing, 2004, pp. 404–411. Google Scholar
    • 11. S. Pan, Z. Li and J. Dai , An improved TextRank keywords extraction algorithm, in Proc. ACM Turing Celebration Conf., 2019, pp. 1–7. CrossrefGoogle Scholar
    • 12. S. S. Nath and B. Roy , Towards automatically generating release notes using extractive summarization technique, in Proc. 33rd Int. Conf. Software Engineering & Knowledge Engineering, 2021, pp. 241–248. Google Scholar
    • 13. Rouge-score 0.0.4, https://pypi.org/project/rouge-score/. Google Scholar
    • 14. H. P. Luhn , The automatic creation of literature abstracts, IBM J. Res. Devel. 2(2) (1958) 159–165. Crossref, Web of ScienceGoogle Scholar
    • 15. M. Ozsoy, F. Alpaslan and I. Cicekli , Text summarization using latent semantic analysis, J. Inf. Sci. 37 (2011) 405–417. Crossref, Web of ScienceGoogle Scholar
    • 16. R. Řehůřek and P. Sojka , Software framework for topic modelling with large corpora, in Proc. LREC 2010 Workshop on New Challenges for NLP Frameworks, 2010, pp. 45–50. Google Scholar
    • 17. Sumy, https://pypi.org/project/sumy/. Google Scholar
    • 18. M. Grootendorst, KeyBERT: Minimal keyword extraction with BERT (2020). Google Scholar
    • 19. G. E. D. Santos and E. Figueiredo , Commit classification using natural language processing: Experiments over labeled datasets, in Conf. Iberoamericana de Software Engineering, 2020, pp. 110–123. Google Scholar
    • 20. S. L. Abebe, N. Ali and A. E. Hassan , An empirical study of software release notes, Empir. Softw. Engg. 21 (2016) 1107–1142. Crossref, Web of ScienceGoogle Scholar
    • 21. R. Kallis, A. Di Sorbo, G. Canfora and S. Panichella , Predicting issue types on GitHub, Sci. Comput. Program. 205 (2021) 102598. Crossref, Web of ScienceGoogle Scholar
    • 22. S. Levin and A. Yehudai , Boosting automatic commit classification into maintenance activities by utilizing source code changes, in Proc. 13th Int. Conf. Predictive Models and Data Analytics in Software Engineering, 2017, pp. 97–106. CrossrefGoogle Scholar
    Remember to check out the Most Cited Articles!

    Check out our titles in C++ Programming!