Uma abordagem para evolução e reconciliação de linhas de produtos de software clonadas

Detalhes bibliográficos
Ano de defesa: 2014
Autor(a) principal: Lima, Gleydson de Azevedo Ferreira
Orientador(a): Fialho, Sergio Vianna
Banca de defesa: Não Informado pela instituição
Tipo de documento: Tese
Tipo de acesso: Acesso aberto
Idioma: por
Instituição de defesa: Universidade Federal do Rio Grande do Norte
Programa de Pós-Graduação: PROGRAMA DE PÓS-GRADUAÇÃO EM ENGENHARIA ELÉTRICA E DE COMPUTAÇÃO
Departamento: Não Informado pela instituição
País: Brasil
Palavras-chave em Português:
Área do conhecimento CNPq:
Link de acesso: https://repositorio.ufrn.br/jspui/handle/123456789/19392
Resumo: Linhas de produtos de software promovem a reutilização em larga escala através do desenvolvimento de famílias de sistemas que: (i) compartilham um núcleo comum de características previamente implementadas; e (ii) permitem a seleção e customização das características variáveis, as quais determinam os comportamentos distintos de cada membro ou produto da família de sistema. Por razões de time-to-market e flexibilidade, a indústria de software tem adotado, com frequência, a técnica de clonagem como mecanismo de criação de produtos ou de novas linhas de produtos. Apesar das suas vantagens, a técnica de clonagem traz dificuldades para a evolução e reconciliação de características de linhas de produto de software devido aos possíveis conflitos de integração das mudanças realizadas no código da linha de produto de software original, denominada Source, e a da linha de produto clonada, denominada Target. Esta tese de doutorado propõe uma abordagem para evolução e reconciliação de produtos clonadas baseada na adoção de técnicas de mineração de repositórios de software. A abordagem promove a identificação de diferentes tipos de conflitos - léxicos, estruturais e semânticos - que podem ocorrer durante a integração de características ou tarefas de desenvolvimento da linha de produto original para a linha de produto clonada. O trabalho apresenta os resultados de um estudo empírico de caracterização dos tipos de conflitos de integração de código em diferentes evoluções de duas linhas de produto de software de sistemas de informação web. Os resultados do estudo demonstram o potencial da abordagem na resolução automática ou semi-automática de vários dos conflitos existentes, reduzindo assim os custos de evolução e reconciliação de linhas de produto de software clonadas.