Uma banca de QUALIFICAÇÃO de DOUTORADO foi cadastrada pelo programa.
DATA : 31/07/2017
HORA: 14:30
LOCAL: IMD/CIVT, Auditorio B321

Enhancing the SZZ Algorithm to Deal with Semantically Equivalent Changes


SZZ algorithm. Fix-inducing changes. Issue-fix changes. Refactoring changes. Semantically equivalent changes.


SZZ was proposed by Sliwerski, Zimmermann, and Zeller (hence the SZZ abbreviation) to identify fix-inducing changes. Despite the wide adoption of this algorithm, SZZ still faces limitations, which have been reported by recent researcher work over the last years. There is no existing research work that widely surveys how SZZ has been used, extended and evaluated by the software engineering community. Moreover, some research work has proposed improvements to SZZ. In this context, this thesis has as goal to explore the existing limitations documented in the literature about SZZ algorithm to enhance the state-of-the- art of the SZZ proposing solutions to some of these limitations. First, we perform a systematic mapping study to answer what is the state-of-the-art of the SZZ algorithm and to explore how it has been used, its limitations, proposed improvements, and evaluations. We follow existing guidelines for conducting a snowballing approach to perform systematic literature studies. Thus, from a start set of 2 renowned papers, 589 citations and references were read, resulting in 190 papers that were analyzed. Our results in this study show that the vast majority of the analyzed papers use SZZ as a foundation for their empirical studies (83%), while only a few propose direct improvements to SZZ (3%) or evaluate it (7%). We also observe that SZZ has many unaddressed fixes everywhere limitations, such as the bias related to semantically equivalent changes, e.g., refactoring changes, that have not been addressed by any previous SZZ implementation. Second, we conduct an empirical study to investigate the relationship between refactoring changes and SZZ results. We use RefDiff, a refactoring-detection tool that has the highest precision reported in the literature to detect code refactorings. We analyze an extensive dataset that included 31,518 issues of ten systems, with 64,855 issue-fix changes and 20,298 fix-inducing changes. We run RefDiff both in issue-fix changes and fix-inducing changes when analyzing the SZZ implementation. The results of this study indicate a refactoring ratio of 6.5% fix-inducing changes and 20% in issue-fix changes. In addition, we identified that 39% of the fix-inducing changes are derived from the issue-fix changes with refactoring changes, so these changes should not even have been analyzed by SZZ. These results suggest that refactoring changes really can impact on SZZ results. Finally, we intend to evolve this second study expanding the number of detected refactoring types, including other tools in our algorithm implementation. Moreover, we plan to perform a third study to evaluate our SZZ improved implementation to deal with semantically equivalent changes using an evaluated framework in replicated datasets. Our thesis results contribute to SZZ maturation and, consequently, it can provide a greater acceptance of the SZZ for usage in practice.

Presidente - 1644456 - UIRA KULESZA
Interno - 1709820 - ROBERTA DE SOUZA COELHO
Externo à Instituição - MARCELO DE ALMEIDA MAIA - UFU
Notícia cadastrada em: 20/07/2017 16:31
SIGAA | Superintendência de Informática - (84) 3215-3148 | Copyright © 2006-2017 - UFRN -