Utilizando Algoritmos de Machine Learning Caixa Branca para Avaliar a Manutenibilidade dos Modelos de Features

Detalhes bibliográficos
Autor(a) principal: Silva, Publio Blenilio Tavares
Data de Publicação: 2020
Tipo de documento: Trabalho de conclusão de curso
Idioma: por
Título da fonte: Repositório Institucional da Universidade Federal do Ceará (UFC)
dARK ID: ark:/83112/00130000109q7
Texto Completo: http://www.repositorio.ufc.br/handle/riufc/58831
Resumo: Software Product Lines (SPL) are generally specified using a Feature Model (FM), an artifact designed in the early stages of the SPL life cycle. This artifact can easily become too complex, which makes it difficult to maintain SPL. Therefore, it is essential to continuously assess the maintainability of this artifact, which can be done through measurements. Some approaches that assess the maintainability of the FM through the aggregation of maintenance measures are described in the literature. Machine Learning (ML) models can be used to create these approaches, as they can aggregate the values of a set of independent variables into a single target data, also called a dependent variable. Besides, if white box ML models are used, it is possible to interpret and explain the results obtained with this type of ML model. In this context, this work proposes to create ML white-box models to classify the maintainability of the FM, based on 15 maintenance measures. To build the models, we performed the following steps: (i) we compared two approaches to assess the maintainability of FMs through an oracle of FM maintainability classifications made manually by 15 SPL specialists; (ii) we use the best of the two approaches to pre-classify the ML dataset training dataset; (iii) we generated 3 ML models and compared them with the metrics of classification accuracy, precision, recall, F1 and AUC-ROC; and, (iv) we use the best of the 3 models to create a mechanism capable of providing improvement indicators to domain engineers. The best of the 3 models used the decision tree algorithm that obtained accuracy, precision, and recall of 0.81, F1 of 0.79, and AUC-ROC of 0.91. Using this model, we were able to reduce the number of measures needed to assess the maintainability of the FM from 15 to 9 measures. The decision tree generated by the algorithm was used to create a mechanism capable of providing suggestions for changing maintenance measures so that the maintainability of the artifact improves.
id UFC-7_2f7b5676e19624c5a088c5b987481360
oai_identifier_str oai:repositorio.ufc.br:riufc/58831
network_acronym_str UFC-7
network_name_str Repositório Institucional da Universidade Federal do Ceará (UFC)
repository_id_str
spelling Utilizando Algoritmos de Machine Learning Caixa Branca para Avaliar a Manutenibilidade dos Modelos de FeaturesAprendizado do ComputadorEngenharia de Linha de Produto de SoftwareManutenibilidadeModelo de CaracterísticasSoftware Product Lines (SPL) are generally specified using a Feature Model (FM), an artifact designed in the early stages of the SPL life cycle. This artifact can easily become too complex, which makes it difficult to maintain SPL. Therefore, it is essential to continuously assess the maintainability of this artifact, which can be done through measurements. Some approaches that assess the maintainability of the FM through the aggregation of maintenance measures are described in the literature. Machine Learning (ML) models can be used to create these approaches, as they can aggregate the values of a set of independent variables into a single target data, also called a dependent variable. Besides, if white box ML models are used, it is possible to interpret and explain the results obtained with this type of ML model. In this context, this work proposes to create ML white-box models to classify the maintainability of the FM, based on 15 maintenance measures. To build the models, we performed the following steps: (i) we compared two approaches to assess the maintainability of FMs through an oracle of FM maintainability classifications made manually by 15 SPL specialists; (ii) we use the best of the two approaches to pre-classify the ML dataset training dataset; (iii) we generated 3 ML models and compared them with the metrics of classification accuracy, precision, recall, F1 and AUC-ROC; and, (iv) we use the best of the 3 models to create a mechanism capable of providing improvement indicators to domain engineers. The best of the 3 models used the decision tree algorithm that obtained accuracy, precision, and recall of 0.81, F1 of 0.79, and AUC-ROC of 0.91. Using this model, we were able to reduce the number of measures needed to assess the maintainability of the FM from 15 to 9 measures. The decision tree generated by the algorithm was used to create a mechanism capable of providing suggestions for changing maintenance measures so that the maintainability of the artifact improves.Linhas de Produtos de Software (LPS) são geralmente especificadas por meio de um modelo de features (MF), artefato concebido nas primeiras fases do ciclo de vida da LPS. Este artefato pode facilmente vir a se tornar demasiadamente complexo, o que dificulta a manutenção da LPS. Por isso, é essencial avaliar continuamente a manutenibilidade deste artefato, o que pode ser feito através de medidas. São descritas na literatura algumas abordagens que avaliam a manutenibilidade do MF por meio da agregação de medidas de manutenibilidade. Modelos de machine learning (ML) podem ser utilizados para criar estas abordagens, pois são capazes de agregar os valores de um conjunto de variáveis independentes em um único dado alvo, também chamado de variável dependente. Além disso, se forem utilizados modelos de ML caixa branca é possível interpretar e explicar os resultados obtidos com esse tipo de modelo de ML. Neste contexto, este trabalho se propõe a criar modelos de ML caixa branca para classificar a manutenibilidade do MF, com base em 15 medidas de manutenibilidade. Para construção dos modelos realizamos os seguintes passos: (i) comparamos duas abordagens de avaliação da manutenibilidade dos MFs por meio de um oráculo de classificações da manutenibilidade do MF feitas de forma manual por 15 especialistas em LPS; (ii) utilizamos a melhor das duas abordagens para pré-classificar o dataset de treinamento dos algoritmos de ML; (iii) geramos 3 modelos de ML e os comparamos com as métricas de classificação acurácia, precisão, recall, F1 e AUC-ROC; e, (iv) utilizamos o melhor dentre os 3 modelos para criar um mecanismo capaz de fornecer indicativos de melhoria aos engenheiros de domínio. O melhor dos 3 modelos utilizou o algoritmo de árvore de decisão que obteve acurácia, precisão e recall de 0.81, F1 de 0.79 e AUC-ROC de 0.91. Utilizando este modelo, conseguimos reduzir a quantidade de medidas necessárias para avaliar a manutenibilidade do MF de 15 para 9 medidas. A árvore de decisão gerada pelo algoritmo foi utilizada para criar um mecanismo capaz de fornecer sugestões de mudança nas medidas de manutenibilidade para que a manutenibilidade do artefato melhore.Bezerra, Carla Ilane MoreiraMachado, Ivan do CarmoSilva, Publio Blenilio Tavares2021-06-07T14:01:44Z2021-06-07T14:01:44Z2020info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/bachelorThesisapplication/pdfSILVA, Publio Blenilio Tavares. Utilizando Algoritmos de Machine Learning Caixa Branca para Avaliar a Manutenibilidade dos Modelos de Features. 2020. 86 f. Trabalho de Conclusão de Curso (Graduação em Engenharia de Software)-Universidade Federal do Ceará, Campus de Quixadá, Quixadá, 2020.http://www.repositorio.ufc.br/handle/riufc/58831ark:/83112/00130000109q7porreponame:Repositório Institucional da Universidade Federal do Ceará (UFC)instname:Universidade Federal do Ceará (UFC)instacron:UFCinfo:eu-repo/semantics/openAccess2021-06-07T14:01:44Zoai:repositorio.ufc.br:riufc/58831Repositório InstitucionalPUBhttp://www.repositorio.ufc.br/ri-oai/requestbu@ufc.br || repositorio@ufc.bropendoar:2024-09-11T18:21:18.026860Repositório Institucional da Universidade Federal do Ceará (UFC) - Universidade Federal do Ceará (UFC)false
dc.title.none.fl_str_mv Utilizando Algoritmos de Machine Learning Caixa Branca para Avaliar a Manutenibilidade dos Modelos de Features
title Utilizando Algoritmos de Machine Learning Caixa Branca para Avaliar a Manutenibilidade dos Modelos de Features
spellingShingle Utilizando Algoritmos de Machine Learning Caixa Branca para Avaliar a Manutenibilidade dos Modelos de Features
Silva, Publio Blenilio Tavares
Aprendizado do Computador
Engenharia de Linha de Produto de Software
Manutenibilidade
Modelo de Características
title_short Utilizando Algoritmos de Machine Learning Caixa Branca para Avaliar a Manutenibilidade dos Modelos de Features
title_full Utilizando Algoritmos de Machine Learning Caixa Branca para Avaliar a Manutenibilidade dos Modelos de Features
title_fullStr Utilizando Algoritmos de Machine Learning Caixa Branca para Avaliar a Manutenibilidade dos Modelos de Features
title_full_unstemmed Utilizando Algoritmos de Machine Learning Caixa Branca para Avaliar a Manutenibilidade dos Modelos de Features
title_sort Utilizando Algoritmos de Machine Learning Caixa Branca para Avaliar a Manutenibilidade dos Modelos de Features
author Silva, Publio Blenilio Tavares
author_facet Silva, Publio Blenilio Tavares
author_role author
dc.contributor.none.fl_str_mv Bezerra, Carla Ilane Moreira
Machado, Ivan do Carmo
dc.contributor.author.fl_str_mv Silva, Publio Blenilio Tavares
dc.subject.por.fl_str_mv Aprendizado do Computador
Engenharia de Linha de Produto de Software
Manutenibilidade
Modelo de Características
topic Aprendizado do Computador
Engenharia de Linha de Produto de Software
Manutenibilidade
Modelo de Características
description Software Product Lines (SPL) are generally specified using a Feature Model (FM), an artifact designed in the early stages of the SPL life cycle. This artifact can easily become too complex, which makes it difficult to maintain SPL. Therefore, it is essential to continuously assess the maintainability of this artifact, which can be done through measurements. Some approaches that assess the maintainability of the FM through the aggregation of maintenance measures are described in the literature. Machine Learning (ML) models can be used to create these approaches, as they can aggregate the values of a set of independent variables into a single target data, also called a dependent variable. Besides, if white box ML models are used, it is possible to interpret and explain the results obtained with this type of ML model. In this context, this work proposes to create ML white-box models to classify the maintainability of the FM, based on 15 maintenance measures. To build the models, we performed the following steps: (i) we compared two approaches to assess the maintainability of FMs through an oracle of FM maintainability classifications made manually by 15 SPL specialists; (ii) we use the best of the two approaches to pre-classify the ML dataset training dataset; (iii) we generated 3 ML models and compared them with the metrics of classification accuracy, precision, recall, F1 and AUC-ROC; and, (iv) we use the best of the 3 models to create a mechanism capable of providing improvement indicators to domain engineers. The best of the 3 models used the decision tree algorithm that obtained accuracy, precision, and recall of 0.81, F1 of 0.79, and AUC-ROC of 0.91. Using this model, we were able to reduce the number of measures needed to assess the maintainability of the FM from 15 to 9 measures. The decision tree generated by the algorithm was used to create a mechanism capable of providing suggestions for changing maintenance measures so that the maintainability of the artifact improves.
publishDate 2020
dc.date.none.fl_str_mv 2020
2021-06-07T14:01:44Z
2021-06-07T14:01:44Z
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/bachelorThesis
format bachelorThesis
status_str publishedVersion
dc.identifier.uri.fl_str_mv SILVA, Publio Blenilio Tavares. Utilizando Algoritmos de Machine Learning Caixa Branca para Avaliar a Manutenibilidade dos Modelos de Features. 2020. 86 f. Trabalho de Conclusão de Curso (Graduação em Engenharia de Software)-Universidade Federal do Ceará, Campus de Quixadá, Quixadá, 2020.
http://www.repositorio.ufc.br/handle/riufc/58831
dc.identifier.dark.fl_str_mv ark:/83112/00130000109q7
identifier_str_mv SILVA, Publio Blenilio Tavares. Utilizando Algoritmos de Machine Learning Caixa Branca para Avaliar a Manutenibilidade dos Modelos de Features. 2020. 86 f. Trabalho de Conclusão de Curso (Graduação em Engenharia de Software)-Universidade Federal do Ceará, Campus de Quixadá, Quixadá, 2020.
ark:/83112/00130000109q7
url http://www.repositorio.ufc.br/handle/riufc/58831
dc.language.iso.fl_str_mv por
language por
dc.rights.driver.fl_str_mv info:eu-repo/semantics/openAccess
eu_rights_str_mv openAccess
dc.format.none.fl_str_mv application/pdf
dc.source.none.fl_str_mv reponame:Repositório Institucional da Universidade Federal do Ceará (UFC)
instname:Universidade Federal do Ceará (UFC)
instacron:UFC
instname_str Universidade Federal do Ceará (UFC)
instacron_str UFC
institution UFC
reponame_str Repositório Institucional da Universidade Federal do Ceará (UFC)
collection Repositório Institucional da Universidade Federal do Ceará (UFC)
repository.name.fl_str_mv Repositório Institucional da Universidade Federal do Ceará (UFC) - Universidade Federal do Ceará (UFC)
repository.mail.fl_str_mv bu@ufc.br || repositorio@ufc.br
_version_ 1818373870238826496