Sunteți pe pagina 1din 2

Înțelegerea mirosurilor detectabile bazate pe metrice

în software-ul Python: Un studiu comparativ


Autori: Chen, Zhifei Chen, Lin Ma, Wanwangying Zhou, Xiaoyu Zhou, Yuming Xu, Baowen
State Key Laboratory for Novel Software Technology, Nanjing University, Nanjing 210093, China
School of Computer Science and Engineering, Southeast University, Nanjing 210096, China
https://doi.org/10.1016/j.infsof.2017.09.011

Abstract

Context

Codurile de miros ar trebui să provoace probleme de înțelegere și întreținere


potențiale în dezvoltarea de software. Deși mirosurile de cod sunt studiate în
multe limbi, de ex. Java și C #, există o lipsă de tehnică sau suport pentru unelte
de adresare a mirosurilor de coduri în Python.

Obiectiv

Datorită diferențelor mari dintre Python și limbile statice, scopul acestui studiu
este de a defini și detecta mirosurile de cod în programele Python și de a explora
efectele mirosurilor Python asupra mentenabilității software-ului.

Metodă

În această lucrare am introdus zece mirosuri de cod și am stabilit o metodă de


detectare bazată pe metrice, cu trei strategii diferite de filtrare, pentru a specifica
pragurile metrice (strategia bazată pe experiență, strategia bazată pe statistici și
strategia de tuning). Apoi, am efectuat un studiu comparativ pentru a investiga
modul în care trei strategii de detectare funcționează în detectarea mirosurilor
Python și modul în care aceste mirosuri afectează mentenabilitatea software-ului
cu diferite strategii de detectare. Acest studiu a folosit un corpus de 106 proiecte
Python cu cele mai multe stele de pe GitHub.
Rezultate

Rezultatele au arătat că:

(1) abordarea de detectare bazată pe metric are o performanță bună în detectarea


mirosurilor Python, iar Strategia de Tuning Machine atinge cea mai bună
acuratețe;

(2) cele trei strategii de detectare descoperă unele apariții diferite de miros, iar
lista lungă de parametri și metoda lungă sunt mai răspândite decât alte mirosuri;
(3) mai multe tipuri de mirosuri de cod se referă mai mult la modificări sau
defecțiuni în modulele Python.

Concluzie

Aceste descoperiri dezvăluie caracteristicile cheie ale mirosurilor Python și


oferă, de asemenea, o orientare pentru alegerea strategiei de detecție în
detectarea și analizarea mirosurilor Python.

S-ar putea să vă placă și