Use este identificador para citar ou linkar para este item: https://repositorio.ufms.br/handle/123456789/5064
Tipo: Dissertação
Título: Towards an expertise-related metric to preprocessor-based configurable software systems
Autor(es): Karolina Martins Milano Neves
Primeiro orientador: Bruno Barbieri de Pontes Cafeo
Resumo: 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 existentes
Abstract: 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.
Palavras-chave: Code Authorship, Ownership, Expertise-related metrics, Configurable Software Systems, Preprocessor
País: Brasil
Editor: Fundação Universidade Federal de Mato Grosso do Sul
Sigla da Instituição: UFMS
Tipo de acesso: Acesso Aberto
URI: https://repositorio.ufms.br/handle/123456789/5064
Data do documento: 2022
Aparece nas coleções:Programa de Pós-graduação em Ciência da Computação

Arquivos associados a este item:
Arquivo TamanhoFormato 
Disserta__o___KarolinaFinal.pdf1,47 MBAdobe PDFVisualizar/Abrir


Os itens no repositório estão protegidos por copyright, com todos os direitos reservados, salvo quando é indicado o contrário.