Title
Predviđanje defekata u softveru primenom modela mašinskog učenja optimizovanih metaheuristikama
Creator
Živković, Tamara, 1982-
CONOR:
106271241
Copyright date
2024
Object Links
Select license
Autorstvo-Nekomercijalno-Deliti pod istim uslovima 3.0 Srbija (CC BY-NC-SA 3.0)
License description
Dozvoljavate umnožavanje, distribuciju i javno saopštavanje dela, i prerade, ako se navede ime autora na način odredjen od strane autora ili davaoca licence i ako se prerada distribuira pod istom ili sličnom licencom. Ova licenca ne dozvoljava komercijalnu upotrebu dela i prerada. Osnovni opis Licence: http://creativecommons.org/licenses/by-nc-sa/3.0/rs/deed.sr_LATN Sadržaj ugovora u celini: http://creativecommons.org/licenses/by-nc-sa/3.0/rs/legalcode.sr-Latn
Language
Serbian
Cobiss-ID
Theses Type
Doktorska disertacija
description
Datum odbrane: 30.09.2024.
Other responsibilities
Academic Expertise
Tehničko-tehnološke nauke
University
Univerzitet u Beogradu
Faculty
Elektrotehnički fakultet
Alternative title
Software defects prediction by machine learning models optimized by metaheuristics
Publisher
[T. Živković ]
Format
146 str.
description
Elektrotehnika i racunarstvo - Racunarska tehnika i informatika / Electrical and Computer Engineering - Computer Science and Informatics
Abstract (sr)
Testiranje softvera predstavlja kljucnu komponentu razvoja softvera i cesto je ono
što pravi razliku izmeu uspešnih i neuspešnih projekata. Iako je izuzetno važno, zbog
brzog tempa i kratkih rokova savremenih projekata, cesto se zanemaruje ili nije dovoljno
detaljno zbog nedostatka vremena, što može dovesti do potencijalnog gubitka reputacije,
podataka privatnih korisnika, novca, pa cak i ljudskih života u nekim situacijama. U
takvim situacijama bilo bi od vitalnog znacaja imati mogucnost predvianja koji softverski
moduli su skloni defektima na osnovu skupa metrika softvera i fokusirati testiranje na njih,
što je tipican zadatak klasifikacije.
Modeli mašinskog ucenja cesto su uspešno korišceni za razlicite probleme klasifikacije,
a u ovom radu se predlaže korišcenje Extreme Gradient Boosting (XGBoost) modela za
izvršenje zadatka predvianja softverskih defekata. Predložena je modifikovana varijanta
dobro poznatog algoritma za optimizaciju, nazvanog algoritam pretrage reptila (engl.
reptile search algorithm, skr. RSA), kako bi se izvršilo fino podešavanje hiperparametara
XGBoost modela. Unapreeni algoritam nazvan je HARSA i evaluiran na kolekciji izazovnih
funkcija CEC2019 za uporednu analizu (engl. benchmark), gde je pokazao izuzetne
performanse. Kasnije je predstavljen XGBoost model koji koristi predloženi algoritam, i
evaluiran je na dva skupa podataka za uporednu analizu za testiranje softvera. Rezultati
simulacije su uporeeni sa drugim mocnim metaheuristickim algoritmima koji su korišceni
u istom eksperimentalnom okruženju, pri cemu je predloženi pristup postigao superiornu
tacnost klasifikacije na oba skupa podataka. Nakon toga je izvedena SHAP (engl. Shapley
Additive Explanations) analiza kako bi se otkrili uticaji razlicitih metrika softvera na rezultate
klasifikacije. Na kraju, razmotrena je i primena ovog rešenja u nastavi, uz osvrt
na druga edukaciona okruženja koja se koriste u nastavi iz oblasti testiranja softvera, i uz
konkretan primer laboratorijske vežbe koja studentima ilustruje proces razvoja modela
za predvianje softverskih defekata.
Abstract (en)
Software testing is a pivotal aspect of software development, often determining the
success or failure of projects. However, amidst contemporary projects’ rapid pace and
stringent deadlines, testing is frequently overlooked or insufficiently detailed due to time
constraints. This negligence can result in potential repercussions such as damage to
reputation, compromise of user data, financial loss, and in extreme cases, even human
casualties. In such scenarios, the ability to anticipate software modules prone to defects
based on software metrics becomes crucial, constituting a typical classification task.
Machine learning models, renowned for their efficacy in addressing classification problems,
offer a promising avenue for predicting software defects. In this dissertation, the
utilization of the Extreme Gradient Boosting (XGBoost) model is advocated for this
purpose. A modified iteration of the Reptile Search Algorithm (RSA), termed HARSA,
is proposed for optimizing the hyperparameters of the XGBoost model. The efficacy of
this enhanced algorithm is demonstrated through its exceptional performance on a suite
of challenging benchmark functions from CEC2019. Subsequently, an XGBoost model
employing HARSA is assessed on two software testing benchmark datasets, showcasing
superior classification accuracy compared to other metaheuristic algorithms within the
same experimental framework.
Furthermore, Shapley Additive Explanations (SHAP) analysis is conducted to elucidate
the impact of various software metrics on classification outcomes. Lastly, the educational
implications of this solution are explored, contemplating its integration into software
testing courses. A practical example of a laboratory exercise illustrates the process of
developing a predictive model for software defects to students, fostering a deeper understanding
of the subject matter.
Authors Key words
testiranje softvera, predvianje softverskih defekata, XGBoost, reptile algoritam
za pretragu, optimizacija metaheuristikama
Authors Key words
software testing, software defect prediction, XGBoost, Reptile search algorithm,
metaheuristics optimization
Classification
004.421:004.85(043.3)
Type
Tekst
Abstract (sr)
Testiranje softvera predstavlja kljucnu komponentu razvoja softvera i cesto je ono
što pravi razliku izmeu uspešnih i neuspešnih projekata. Iako je izuzetno važno, zbog
brzog tempa i kratkih rokova savremenih projekata, cesto se zanemaruje ili nije dovoljno
detaljno zbog nedostatka vremena, što može dovesti do potencijalnog gubitka reputacije,
podataka privatnih korisnika, novca, pa cak i ljudskih života u nekim situacijama. U
takvim situacijama bilo bi od vitalnog znacaja imati mogucnost predvianja koji softverski
moduli su skloni defektima na osnovu skupa metrika softvera i fokusirati testiranje na njih,
što je tipican zadatak klasifikacije.
Modeli mašinskog ucenja cesto su uspešno korišceni za razlicite probleme klasifikacije,
a u ovom radu se predlaže korišcenje Extreme Gradient Boosting (XGBoost) modela za
izvršenje zadatka predvianja softverskih defekata. Predložena je modifikovana varijanta
dobro poznatog algoritma za optimizaciju, nazvanog algoritam pretrage reptila (engl.
reptile search algorithm, skr. RSA), kako bi se izvršilo fino podešavanje hiperparametara
XGBoost modela. Unapreeni algoritam nazvan je HARSA i evaluiran na kolekciji izazovnih
funkcija CEC2019 za uporednu analizu (engl. benchmark), gde je pokazao izuzetne
performanse. Kasnije je predstavljen XGBoost model koji koristi predloženi algoritam, i
evaluiran je na dva skupa podataka za uporednu analizu za testiranje softvera. Rezultati
simulacije su uporeeni sa drugim mocnim metaheuristickim algoritmima koji su korišceni
u istom eksperimentalnom okruženju, pri cemu je predloženi pristup postigao superiornu
tacnost klasifikacije na oba skupa podataka. Nakon toga je izvedena SHAP (engl. Shapley
Additive Explanations) analiza kako bi se otkrili uticaji razlicitih metrika softvera na rezultate
klasifikacije. Na kraju, razmotrena je i primena ovog rešenja u nastavi, uz osvrt
na druga edukaciona okruženja koja se koriste u nastavi iz oblasti testiranja softvera, i uz
konkretan primer laboratorijske vežbe koja studentima ilustruje proces razvoja modela
za predvianje softverskih defekata.
“Data exchange” service offers individual users metadata transfer in several different formats. Citation formats are offered for transfers in texts as for the transfer into internet pages. Citation formats include permanent links that guarantee access to cited sources. For use are commonly structured metadata schemes : Dublin Core xml and ETUB-MS xml, local adaptation of international ETD-MS scheme intended for use in academic documents.
