How we refactor and how we document it? On the use of supervised machine learning algorithms to classify refactoring documentation

EA AlOmar, A Peruma, MW Mkaouer… - Expert Systems with …, 2021 - Elsevier
Refactoring is the art of improving the structural design of a software system without altering
its external behavior. Today, refactoring has become a well-established and disciplined …

Toward the automatic classification of self-affirmed refactoring

EA AlOmar, MW Mkaouer, A Ouni - Journal of Systems and Software, 2021 - Elsevier
Abstract The concept of Self-Affirmed Refactoring (SAR) was introduced to explore how
developers document their refactoring activities in commit messages, ie, developers explicit …

On the documentation of refactoring types

EA AlOmar, J Liu, K Addo, MW Mkaouer… - Automated Software …, 2022 - Springer
Commit messages are the atomic level of software documentation. They provide a natural
language description of the code change and its purpose. Messages are critical for software …

Commit classification into software maintenance activities: A systematic literature review

T Heričko, B Šumak - 2023 IEEE 47th Annual Computers …, 2023 - ieeexplore.ieee.org
Commits represent an essential part of software development practices, serving as the
means for collaboration and management of software changes made to a software project's …

Behind the scenes: On the relationship between developer experience and refactoring

EA AlOmar, A Peruma, MW Mkaouer… - Journal of Software …, 2024 - Wiley Online Library
Refactoring is widely recognized as one of the efficient techniques to manage technical debt
and maintain a healthy software project through enforcing best design practices, or coping …

Comparing commit messages and source code metrics for the prediction refactoring activities

PS Sagar, EA AlOmar, MW Mkaouer, A Ouni… - Algorithms, 2021 - mdpi.com
Understanding how developers refactor their code is critical to support the design
improvement process of software. This paper investigates to what extent code metrics are …

Onboarding vs. diversity, productivity and quality—empirical study of the openstack ecosystem

A Foundjem, E Eghan, B Adams - 2021 IEEE/ACM 43rd …, 2021 - ieeexplore.ieee.org
Despite the growing success of open-source software ecosystems (SECOs), their
sustainability depends on the recruitment and involvement of ever-larger contributors. As …

Automatic data-driven software change identification via code representation learning

T Heričko - Proceedings of the 27th International Conference on …, 2023 - dl.acm.org
Changes to a software project are inevitable as the software requires continuous
adaptations, improvements, and corrections throughout maintenance. Identifying the …

What really changes when developers intend to improve their source code: a commit-level study of static metric value and static analysis warning changes

A Trautsch, J Erbel, S Herbold, J Grabowski - Empirical Software …, 2023 - Springer
Many software metrics are designed to measure aspects that are believed to be related to
software quality. Static software metrics, eg, size, complexity and coupling are used in defect …

Boosting Commit Classification with Contrastive Learning

J Tong, Z Wang, X Rui - arXiv preprint arXiv:2308.08263, 2023 - arxiv.org
Commit Classification (CC) is an important task in software maintenance, which helps
software developers classify code changes into different types according to their nature and …