Applying Machine Learning to Identify Maintenance Level for Software Releases - STUART, CHRISTOFFER (My University, 2020)
Maintenance is the single largest cost in software development. Therefore it is important to understand what causes maintenance, and if it can be predicted. Many studies have shown that certain ways of measuring the complexity of developed programs can create decent prediction models to determine the likelihood of maintenance due to failures in the software. Most have been prior to release and often requires specific, object-oriented, metrics of the software to set up the models. These metrics are not always available in the software development companies. This study determines that cumulative software failure levels after release can be determined using available data at a software development company and machine learning algorithms.
Keywords: Machine learning; supervised learning; unsupervised learning; defect prediction; cumulative failure prediction