Busca avançada
Ano de início
Entree

Uma infraestrutura para a recomendação de melhorias de software utilizando repositórios de código-fonte de larga escala

Processo: 17/27098-1
Modalidade de apoio:Auxílio à Pesquisa - Regular
Vigência: 01 de abril de 2018 - 30 de abril de 2020
Área do conhecimento:Ciências Exatas e da Terra - Ciência da Computação - Metodologia e Técnicas da Computação
Pesquisador responsável:Otávio Augusto Lazzarini Lemos
Beneficiário:Otávio Augusto Lazzarini Lemos
Instituição Sede: Instituto de Ciência e Tecnologia (ICT). Universidade Federal de São Paulo (UNIFESP). Campus São José dos Campos. São José dos Campos , SP, Brasil
Assunto(s):Reúso de software  Engenharia de software 
Palavra(s)-Chave do Pesquisador:Busca de Código-Fonte | ferramentas de recomendação | Reparo Automático de Software | Reuso de Software | Engenharia de Software

Resumo

Atualmente encontra-se disponível uma vasta quantidade de código-fonte aberto em repositórios de hospedagem online. O GitHub sozinho hospeda milhões de projetos abertos. Desenvolvedores de software podem se aproveitar desse cenário como oportunidade de melhoria do código de seus próprios projetos. A ideia é primeiramente identificar nos repositórios funções semelhantes às contidas no projeto local. Depois, por meio da avaliação de diversos tipos de métricas, pode-se recomendar ao desenvolvedor possíveis melhorias, como aumento de desempenho e mesmo a correção automática de defeitos. Neste projeto de pesquisa pretende-se investigar e desenvolver uma infraestrutura para recomendar melhorias de código com base em material presente em repositórios de larga escala. A ideia é utilizar a extensa experiência do proponente com busca de código-fonte, tema que vem trabalhando em colaboração com a Profa. Cristina Lopes da UCI por mais de dez anos. Como base para o projeto será utilizado o Sourcerer, uma infraestrutura sofisticada para análise e indexação de código-fonte. Também será empregada uma abordagem recentemente proposta no grupo do proponente que indica automaticamente pares de métodos que possuem semântica semelhante. Durante o projeto serão investigados tipos de melhoria que poderiam ser implementados na infraestrutura e, para as melhorias propostas e implementadas, serão realizados experimentos para avaliar sua aplicabilidade. Para esses estudos pretende-se utilizar um repositório com aproximadamente 17.000 projetos Java de qualidade hospedados no GitHub - indicados por uma abordagem de aprendizado de máquina desenvolvida por outros pesquisadores - já indexados pelo Sourcerer. A expectativa é também implementar um protótipo que possa ser útil para a comunidade de desenvolvimento de software e realizar experimentos utilizando a infraestrutura e a ferramenta. (AU)

Matéria(s) publicada(s) na Agência FAPESP sobre o auxílio:
Matéria(s) publicada(s) em Outras Mídias (0 total):
Mais itensMenos itens
VEICULO: TITULO (DATA)
VEICULO: TITULO (DATA)