00 CAMPUS ARISTÓTELES CALAZANS SIMÕES (CAMPUS A. C. SIMÕES) IC - INSTITUTO DE COMPUTAÇÃO Dissertações e Teses defendidas na UFAL - IC
Use este identificador para citar ou linkar para este item: http://www.repositorio.ufal.br/jspui/handle/riufal/1724
Registro completo de metadados
Campo DCValorIdioma
dc.contributor.advisor1Ribeiro, Márcio de Medeiros-
dc.contributor.advisor1Latteshttp://lattes.cnpq.br/9300936571715992pt_BR
dc.contributor.advisor-co1Santos Neto, Baldoino Fonseca dos-
dc.contributor.advisor-co1Latteshttp://lattes.cnpq.br/0306751604362704pt_BR
dc.contributor.referee1Brito, Patrick Henrique da Silva-
dc.contributor.referee1Latteshttp://lattes.cnpq.br/4155051332618408pt_BR
dc.contributor.referee2Borba, Paulo Henrique Monteiro-
dc.contributor.referee2Latteshttp://lattes.cnpq.br/9395715443254344pt_BR
dc.creatorGonzaga Júnior, Iran Rodrigues-
dc.creator.Latteshttp://lattes.cnpq.br/1451037081678153pt_BR
dc.date.accessioned2017-06-14T18:50:53Z-
dc.date.available2017-05-30-
dc.date.available2017-06-14T18:50:53Z-
dc.date.issued2015-08-10-
dc.identifier.citationGONZAGA JÚNIOR, Iran Rodrigues. Empirical studies on fine-grained feature dependencies. 2015. 59 f. Dissertação (Mestrado em Informática) – Instituto de Computação, Programa de Pós Graduação em Informática, Universidade Federal de Alagoas, Maceió, 2015.pt_BR
dc.identifier.urihttp://www.repositorio.ufal.br/handle/riufal/1724-
dc.description.abstractMaintaining program families is not a trivial task. Developers commonly introduce bugs when they do not consider existing dependencies among features. When such implementations share program elements, such as variables and functions, inadvertently using these elements may result in bugs. In this context, previous work focuses only on the occurrence of intraprocedural dependencies, that is, when features share program elements within a function. But at the same time, we still lack studies investigating dependencies that transcend the boundaries of a function, since these cases might cause bugs as well. Indeed, in this work we bring evidence that variability bugs can also occur due to interprocedural dependencies and global variables. To assess to what extent these different types of feature dependencies exist in practice, we perform an empirical study covering 40 program families of different domains and sizes. Our results show that the intraprocedural and interprocedural feature dependencies are common in practice: 51:44% 17:77% of functions with preprocessor directives have intraprocedural dependencies, while 25:98% 19:99% of all functions have interprocedural dependencies. After studying the feature dependencies occurrence in practice, we perform another empirical study now focusing on finding actual bugs related to feature dependencies. Here we focus on undeclared variables, undeclared functions, unused variables, and unused functions. This study uses 15 systems to answer research questions related to how developers introduce these bugs and their frequency. We detect and confirm 32 variability bugs. The corpus of bugs we gather is a valuable source to ground research on this topic and to help tool developers, so they can provide means in their tools to avoid these problems.pt_BR
dc.languageengpt_BR
dc.publisherUniversidade Federal de Alagoaspt_BR
dc.publisher.countryBrasilpt_BR
dc.publisher.programPrograma de Pós-Graduação em Informáticapt_BR
dc.publisher.initialsUFALpt_BR
dc.rightsAcesso Abertopt_BR
dc.subjectEngenharia de softwarept_BR
dc.subjectComputadores e famíliapt_BR
dc.subjectSoftware engineeringpt_BR
dc.subjectComputers and familypt_BR
dc.subject.cnpqCNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAOpt_BR
dc.titleEmpirical studies on fine-grained feature dependenciespt_BR
dc.title.alternativeEstudos empíricos sobre dependência entre features de granularidade finapt_BR
dc.typeDissertaçãopt_BR
dc.description.resumoManter famílias de programas não é uma tarefa trivial. Desenvolvedores comumente introduzem erros quando não consideram dependências existentes entre features. Quando tais features compartilham elementos de programa, como variáveis e funções, utilizar estes elementos inadvertidamente pode resultar em erros de variabilidade. Neste contexto, trabalhos anteriores focaram apenas na ocorrência de dependências intraprocedurais, ou seja, quando features compartilham elementos de programa dentro de uma mesma função. Mas ao mesmo tempo, ainda não temos estudos investigando dependências que extrapolam os limites de uma função, já que esses casos também podem causar erros. De fato, neste trabalho nós trazemos evidências de que erros de variabilidade também podem ocorrer devido a dependências interprocedurais ou a variáveis globais. Para avaliar até que ponto esses diferentes tipos de dependências entre features existem na prática, nós realizamos um estudo empírico abrangendo 40 famílias de programas de diferentes domínios e tamanhos. Nossos resultados mostram que dependências intraprocedurais e interprocedurais são comuns na prática: 51; 44% 17; 77% das funções com diretivas de pré-processamento têm dependências intraprocedurais, enquanto 25; 98% 19; 99% de todas as funções possuem dependências interprocedurais. Após estudar a ocorrência de dependências entre features na prática, nós conduzimos outro estudo empírico, desta vez direcionado a encontrar erros de variabilidade relacionados a dependências entre features. Aqui nos concentramos em variáveis não declaradas, funções não declaradas, variáveis sem uso e funções sem uso. Este estudo utiliza 15 sistemas para responder a questões de pesquisa relacionadas a como os desenvolvedores introduzem esses erros e sua frequência. Nós detectamos e confirmamos a existência de 32 erros de variabilidade. O conjunto de erros que coletamos é uma fonte valiosa para fundamentar a pesquisa sobre esse tema e para auxiliar desenvolvedores de ferramentas, de forma que eles forneçam meios em suas ferramentas de evitar tais problemas.pt_BR
Aparece nas coleções:Dissertações e Teses defendidas na UFAL - IC

Arquivos associados a este item:
Arquivo Descrição TamanhoFormato 
Empirical studies on fine-grained feature dependencies.pdf1.75 MBAdobe PDFVisualizar/Abrir


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