Please use this identifier to cite or link to this item: https://hdl.handle.net/10321/3778
DC FieldValueLanguage
dc.contributor.advisorSingh, Alveen-
dc.contributor.authorHoosen, Sumayaen_US
dc.date.accessioned2022-01-18T04:49:34Z-
dc.date.available2022-01-18T04:49:34Z-
dc.date.issued2021-04-30-
dc.identifier.urihttps://hdl.handle.net/10321/3778-
dc.descriptionSubmitted in fulfilment of the requirements for the Masters Degree of Information and Communications Technology, Durban University of Technology, Durban, South Africa, 2021.en_US
dc.description.abstractSoftware reliability is an important aspect for evaluating the quality of a software product. In a growing global software industry of increasingly complex systems, reliability becomes crucial urging software engineers to strive toward the development of failure free software and to ensure high reliability before delivery. This positions software reliability as one of the key attributes required to achieve high quality software products. In response to this stature, software companies invest considerable resources boosting apps development into a multi-billion Rand global industry. In recent times smart devices are established as one of the most used electronic device with apps being the more popular medium for bringing a multitude of functionalities to a wide user base. However, current literature portrays a far from ideal reliability rate for apps. Despite the availability of a wide range of approaches focused on improved reliability these mostly remain cumbersome and costly to implement from a software management perspective. Hence, there is a need to investigate approaches beyond current dominant thinking that underpins reliability measurements in the mobile app development space. At the same time, Machine Learning (ML) is a recent recipient of much attention from researchers and practitioners that offers a bouquet of tools and techniques that when applied correctly could potentially improve reliability prediction. In line with the above, the overall aim of this study is to provide a ML modelling approach to assist with the reliability prediction of mobile apps. It is hoped that the findings of this study may provide a useful ML modelling approach to help developers increase the reliability rates of apps. For this study ML techniques were applied to 3 feature sets of data extracted from the Eclipse JDT core dataset. These feature sets based on software systems and their histories, include the source code metrics set, process metric sets, and a combination of both metric sets. All metric sets went through stages of data cleaning and pre-processing before they were modelled using five machine learning algorithms, namely, Random Forest, Support Vector Machine, Naïve Bayes, Decision Trees and Neural Networks. During the modelling process, all the results were evaluated using ML evaluation scores to determine which ML modelling approach is most useful for reliability prediction. The results indicate that Random Forest generated better results in all cases and can be used for predicting app reliability since it predicted reliability more accurately and precisely compared to the other ML algorithms. Random Forest also achieved the highest evaluation score when it was applied to the combined metric set of data. This means that the modelling approach of applying Random Forest to a combination of source code and process metrics generated the highest prediction performance. This further implies that developers should consider these selected features within the combined metric set, as they could serve as useful indicators for predicting reliability of apps.en_US
dc.format.extent149 pen_US
dc.language.isoenen_US
dc.subjectSoftware reliabilityen_US
dc.subjectMobile appsen_US
dc.subjectMachine learningen_US
dc.subjectReliability predictionen_US
dc.subjectMachine learning algorithmsen_US
dc.subjectFeature Selectionen_US
dc.subject.lcshComputer software--Developmenten_US
dc.subject.lcshComputer software--Reliabilityen_US
dc.subject.lcshTelecommunication systemsen_US
dc.subject.lcshMachine learningen_US
dc.titleSoftware reliability prediction of mobile applications using machine learning techniquesen_US
dc.typeThesisen_US
dc.description.levelMen_US
dc.identifier.doihttps://doi.org/10.51415/10321/3778-
local.sdgSDG14-
local.sdgSDG17-
item.grantfulltextopen-
item.cerifentitytypePublications-
item.fulltextWith Fulltext-
item.languageiso639-1en-
item.openairecristypehttp://purl.org/coar/resource_type/c_18cf-
item.openairetypeThesis-
Appears in Collections:Theses and dissertations (Accounting and Informatics)
Files in This Item:
File Description SizeFormat
HoosenS2021_redacted.pdf4.25 MBAdobe PDFView/Open
Show simple item record

Page view(s)

473
checked on Dec 13, 2024

Download(s)

215
checked on Dec 13, 2024

Google ScholarTM

Check

Altmetric

Altmetric


Items in DSpace are protected by copyright, with all rights reserved, unless otherwise indicated.