Expansão automática de query baseada em vocabulário para busca de código

Expansão automática de query baseada em vocabulário para busca de código

Author Paula, Adriano Carvalho de Autor UNIFESP Google Scholar
Advisor Lemos, Otavio Augusto Lazzarini Lemos Autor UNIFESP Google Scholar
Institution Universidade Federal de São Paulo (UNIFESP)
Graduate program Ciência da Computação
Abstract Modern software engineers frequently resort to code search practices to support software maintenance and evolution tasks, in particular code reuse. An issue that affects the effectiveness of code search is the vocabulary mismatch problem: while searching for a particular function, the user has to guess the exact words chosen by original developers to name code entities. This monograph presents a master’s project that investigated an automatic query expansion (AQE) approach that uses technical information retrieval based on thesauri to increase the chances of finding relevant code. The basic idea is automatically add similar terms of each word to the query, to improve the query’s recall. The approach is applied based on Test-Driven Code Search (TDCS), a promising code retrieval technique that uses test cases as inputs to formulate the search query. Since TDCS also relies on keywords, the vocabulary mismatch problem is also relevant here. The approach was implemented as an extension to CodeGenie, an Eclipse plug-in that supports TDCS. To evaluate the AQE approach, we conducted experiments involving professionals and undergraduate students. Results indicate that the approach improves recall significantly when compared with the search without its use. Such promising results are an evidence of the possibility of integrating the approach to software development methodologies to decrease costs.

Engenheiros de software frequentemente utilizam práticas de busca de código para apoiar atividades de manutenção e evolução de software, em particular o reúso de código. Um fator que compromete a efetividade da busca de código é o problema da incompatibilidade de vocabulário: ao buscar por uma função específica, o usuário deve procurar adivinhar os termos exatos utilizados pelo autor do código a ser buscado. Neste projeto de mestrado foi investigada uma abordagem de Expansão Automática de Query (EAQ) que usa técnicas de Recuperação de Informação (RI) baseadas em vocabulários (tesauros) para aumentar as chances de encontrar código relevante. A ideia básica é adicionar automaticamente termos similares de cada palavra-chave à query, melhorando assim o alcance da busca. A abordagem é aplicada principalmente sobre a Busca de Código Guiada por Testes (BCGT), uma técnica promissora de recuperação de código que utiliza casos de teste como entrada para formular a query de busca. Como a BCGT também se utiliza de palavras-chave, a incompatibilidade de vocabulário impacta negativamente sua efetividade. A abordagem foi implementada especialmente como extensão da ferramenta CodeGenie, um plugin do Eclipse que apoia a BCGT. Para avaliação da abordagem de EAQ proposta, construiu-se um ambiente experimental que simulou a situação na qual o usuário pudesse buscar pela implementação de um método específico. Com a análise de distintas execuções do experimento observou-se claramente melhoras nas métricas utilizadas, quando alguma forma de EAQ foi aplicada. Os resultados observados indicam a possibilidade da integração da abordagem estudada a metodologias de desenvolvimento de software, permitindo a diminuição de custos.
Keywords busca de código-fonte
reuso de software
expansão automática de query
busca de código guiada por teste
busca de código guiada por interface
codegenie
Language Portuguese
Date 2014-04-15
Published in PAULA, Adriano Carvalho de. Expansão automática de query baseada em vocabulário para busca de código. 2014. 55 f. Dissertação (Mestrado) - Instituto de Ciência e Tecnologia, Universidade Federal de São Paulo (UNIFESP), São José dos Campos, 2014.
Research area Ciência da computação
Knowledge area Ciências exatas e da terra
Publisher Universidade Federal de São Paulo (UNIFESP)
Extent 55 p.
Origin https://sucupira.capes.gov.br/sucupira/public/consultas/coleta/trabalhoConclusao/viewTrabalhoConclusao.jsf?popup=true&id_trabalho=1324758
Access rights Closed access
Type Dissertation
URI http://repositorio.unifesp.br/handle/11600/48200

Show full item record




File

File Size Format View

There are no files associated with this item.

This item appears in the following Collection(s)

Search


Browse

Statistics

My Account