Utilizando Algoritmos de Machine Learning Caixa Branca para Avaliar a Manutenibilidade dos Modelos de Features
Autor(a) principal: | |
---|---|
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 |