Towards an expertise-related metric to preprocessor-based configurable software systems

Detalhes bibliográficos
Autor(a) principal: Karolina Martins Milano Neves
Data de Publicação: 2022
Tipo de documento: Dissertação
Idioma: por
Título da fonte: Repositório Institucional da UFMS
Texto Completo: https://repositorio.ufms.br/handle/123456789/5064
Resumo: Context: Expertise-related metrics allow us to find the best developers for a target task in a file. Configurable systems use variability as a unit of abstraction to generate different members of a program family. This misalignment between files used by expertise-related metrics and variabilities used by configurable systems may make it impossible to use them together. Objective: The objective is twofold. The first is to explore how the work on mandatory and variable code is divided among developers and whether expertise-related metrics can indicate a developer with expertise for a task involving variable code. The second is to propose a variability-aware expertise related metric to indicate developers with expertise in variable code. Method: We investigate 49 preprocessor-based configurable systems. We analyzed how variabilities changes are divided between developers and whether these developers would be key developers indicated by expertise-related metrics. We use feature selection and multiple linear regression techniques to propose a variability-aware expertise-related metric. We validate our metric by comparing it with two well-known metrics. Results: Few developers are specialists in variable code. We also identified that only a few developers concentrate the majority of changes in variable code. The results also suggested that expertise-related metrics are not a good fit to indicate experts regarding variable code. We proposed a variability-aware expertise-related metric and showed that our proposed metric outperformed well-known expertise-related metrics. Conclusion: Even though the results show that a considerable number of developers touched variable code during the development history, such changes are only occasional. There is a concentration of work among a few developers when it comes to variable code. This uneven division may cause an unnecessary maintenance effort. We also conclude that variability-aware expertise related metrics may better support the identification of experts in configurable systems when compared to existing metrics.
id UFMS_7c69dcd368ddeab05143e98f39e78077
oai_identifier_str oai:repositorio.ufms.br:123456789/5064
network_acronym_str UFMS
network_name_str Repositório Institucional da UFMS
repository_id_str 2124
spelling 2022-09-02T13:07:02Z2022-09-02T13:07:02Z2022https://repositorio.ufms.br/handle/123456789/5064Context: Expertise-related metrics allow us to find the best developers for a target task in a file. Configurable systems use variability as a unit of abstraction to generate different members of a program family. This misalignment between files used by expertise-related metrics and variabilities used by configurable systems may make it impossible to use them together. Objective: The objective is twofold. The first is to explore how the work on mandatory and variable code is divided among developers and whether expertise-related metrics can indicate a developer with expertise for a task involving variable code. The second is to propose a variability-aware expertise related metric to indicate developers with expertise in variable code. Method: We investigate 49 preprocessor-based configurable systems. We analyzed how variabilities changes are divided between developers and whether these developers would be key developers indicated by expertise-related metrics. We use feature selection and multiple linear regression techniques to propose a variability-aware expertise-related metric. We validate our metric by comparing it with two well-known metrics. Results: Few developers are specialists in variable code. We also identified that only a few developers concentrate the majority of changes in variable code. The results also suggested that expertise-related metrics are not a good fit to indicate experts regarding variable code. We proposed a variability-aware expertise-related metric and showed that our proposed metric outperformed well-known expertise-related metrics. Conclusion: Even though the results show that a considerable number of developers touched variable code during the development history, such changes are only occasional. There is a concentration of work among a few developers when it comes to variable code. This uneven division may cause an unnecessary maintenance effort. We also conclude that variability-aware expertise related metrics may better support the identification of experts in configurable systems when compared to existing metrics.Contexto: Métricas relacionadas à experiência dos desenvolvedores nos permitem encontrar os melhores desenvolvedores para uma tarefa específica em um arquivo. Sistemas configuráveis usam a variabilidade de código como unidade de abstração para gerar diferentes membros de uma família de programas. Esse desalinhamento entre os arquivos usados pelas métricas relacionadas à experiência e as variabilidades usadas pelos sistemas configuráveis pode impossibilitar o uso conjunto delas. Objetivo: O objetivo é duplo. O primeiro é explorar como o trabalho em código mandatório e variável é dividido entre os desenvolvedores e se as métricas relacionadas à expertise podem indicar um desenvolvedor com expertise para uma tarefa envolvendo código variável. O segundo é propor uma métrica relacionada à experiência com conhecimento em variabilidades para indicar desenvolvedores com experiência em código variável. Método: Foram investigados 49 sistemas configuráveis baseados em pré-processadores, sendo analisadas como as mudanças nas variabilidades são dstribuídas entre os desenvolvedores, e se esses desenvolvedores seriam os principais desenvolvedores indicados por métricas relacionadas a experiência do desenvolvedor em arquivos de código. Foram utilizadas técnicas de feature selection e regressão linear múltipla para propor uma métrica relacionada a experiência do desenvolvedor em relação ao conhecimento de variabilidades de código. A métrica proposta foi validada comparando-a com duas métricas já conhecidas. Resultados: Poucos desenvolvedores são especialistas em código variável. Foi identificado que poucos desenvolvedores concentram a maioria das alterações em código variável. Os resultados também sugerem que que a expertise relacionada a métricas já conhecidas não são um bom ajuste para indicar experts em relação ao código variável. Foi proposta uma métrica relacionada a experiência dos desenvolvedores em relação às variabilidades e foi mostrado que a métrica proposta superou métricas relacionadas a experiência em relação a arquivos de código, já conhecidas. Conclusão: Embora os resultados mostrem que um número considerável de desenvolvedores realizou alterações no código variável durante o histórico de desenvolvimento, tais alterações são apenas ocasionais. Há uma concentração de trabalho entre alguns desenvolvedores quando se trata de código variável. Esta divisão desigual pode causar um esforço de manutenção desnecessário. Também concluímos que as métricas relacionadas à experiência em relação ao conhecimento das variabilidades podem apoiar melhor a identificação de especialistas em sistemas configuráveis quando comparadas às métricas existentesFundação Universidade Federal de Mato Grosso do SulUFMSBrasilCode Authorship, Ownership, Expertise-related metrics, Configurable Software Systems, PreprocessorTowards an expertise-related metric to preprocessor-based configurable software systemsinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisBruno Barbieri de Pontes CafeoKarolina Martins Milano Nevesinfo:eu-repo/semantics/openAccessporreponame:Repositório Institucional da UFMSinstname:Universidade Federal de Mato Grosso do Sul (UFMS)instacron:UFMSORIGINALDisserta__o___KarolinaFinal.pdfDisserta__o___KarolinaFinal.pdfapplication/pdf1505744https://repositorio.ufms.br/bitstream/123456789/5064/-1/Disserta__o___KarolinaFinal.pdfe1bb69a6431bbe7a4e3fdd90338de312MD5-1123456789/50642022-09-02 09:07:02.934oai:repositorio.ufms.br:123456789/5064Repositório InstitucionalPUBhttps://repositorio.ufms.br/oai/requestri.prograd@ufms.bropendoar:21242022-09-02T13:07:02Repositório Institucional da UFMS - Universidade Federal de Mato Grosso do Sul (UFMS)false
dc.title.pt_BR.fl_str_mv Towards an expertise-related metric to preprocessor-based configurable software systems
title Towards an expertise-related metric to preprocessor-based configurable software systems
spellingShingle Towards an expertise-related metric to preprocessor-based configurable software systems
Karolina Martins Milano Neves
Code Authorship, Ownership, Expertise-related metrics, Configurable Software Systems, Preprocessor
title_short Towards an expertise-related metric to preprocessor-based configurable software systems
title_full Towards an expertise-related metric to preprocessor-based configurable software systems
title_fullStr Towards an expertise-related metric to preprocessor-based configurable software systems
title_full_unstemmed Towards an expertise-related metric to preprocessor-based configurable software systems
title_sort Towards an expertise-related metric to preprocessor-based configurable software systems
author Karolina Martins Milano Neves
author_facet Karolina Martins Milano Neves
author_role author
dc.contributor.advisor1.fl_str_mv Bruno Barbieri de Pontes Cafeo
dc.contributor.author.fl_str_mv Karolina Martins Milano Neves
contributor_str_mv Bruno Barbieri de Pontes Cafeo
dc.subject.por.fl_str_mv Code Authorship, Ownership, Expertise-related metrics, Configurable Software Systems, Preprocessor
topic Code Authorship, Ownership, Expertise-related metrics, Configurable Software Systems, Preprocessor
description Context: Expertise-related metrics allow us to find the best developers for a target task in a file. Configurable systems use variability as a unit of abstraction to generate different members of a program family. This misalignment between files used by expertise-related metrics and variabilities used by configurable systems may make it impossible to use them together. Objective: The objective is twofold. The first is to explore how the work on mandatory and variable code is divided among developers and whether expertise-related metrics can indicate a developer with expertise for a task involving variable code. The second is to propose a variability-aware expertise related metric to indicate developers with expertise in variable code. Method: We investigate 49 preprocessor-based configurable systems. We analyzed how variabilities changes are divided between developers and whether these developers would be key developers indicated by expertise-related metrics. We use feature selection and multiple linear regression techniques to propose a variability-aware expertise-related metric. We validate our metric by comparing it with two well-known metrics. Results: Few developers are specialists in variable code. We also identified that only a few developers concentrate the majority of changes in variable code. The results also suggested that expertise-related metrics are not a good fit to indicate experts regarding variable code. We proposed a variability-aware expertise-related metric and showed that our proposed metric outperformed well-known expertise-related metrics. Conclusion: Even though the results show that a considerable number of developers touched variable code during the development history, such changes are only occasional. There is a concentration of work among a few developers when it comes to variable code. This uneven division may cause an unnecessary maintenance effort. We also conclude that variability-aware expertise related metrics may better support the identification of experts in configurable systems when compared to existing metrics.
publishDate 2022
dc.date.accessioned.fl_str_mv 2022-09-02T13:07:02Z
dc.date.available.fl_str_mv 2022-09-02T13:07:02Z
dc.date.issued.fl_str_mv 2022
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/masterThesis
format masterThesis
status_str publishedVersion
dc.identifier.uri.fl_str_mv https://repositorio.ufms.br/handle/123456789/5064
url https://repositorio.ufms.br/handle/123456789/5064
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.publisher.none.fl_str_mv Fundação Universidade Federal de Mato Grosso do Sul
dc.publisher.initials.fl_str_mv UFMS
dc.publisher.country.fl_str_mv Brasil
publisher.none.fl_str_mv Fundação Universidade Federal de Mato Grosso do Sul
dc.source.none.fl_str_mv reponame:Repositório Institucional da UFMS
instname:Universidade Federal de Mato Grosso do Sul (UFMS)
instacron:UFMS
instname_str Universidade Federal de Mato Grosso do Sul (UFMS)
instacron_str UFMS
institution UFMS
reponame_str Repositório Institucional da UFMS
collection Repositório Institucional da UFMS
bitstream.url.fl_str_mv https://repositorio.ufms.br/bitstream/123456789/5064/-1/Disserta__o___KarolinaFinal.pdf
bitstream.checksum.fl_str_mv e1bb69a6431bbe7a4e3fdd90338de312
bitstream.checksumAlgorithm.fl_str_mv MD5
repository.name.fl_str_mv Repositório Institucional da UFMS - Universidade Federal de Mato Grosso do Sul (UFMS)
repository.mail.fl_str_mv ri.prograd@ufms.br
_version_ 1801678565381505024