| Processo: | 13/25356-2 |
| Modalidade de apoio: | Auxílio à Pesquisa - Regular |
| Data de Início da vigência: | 01 de abril de 2014 |
| Data de Término da vigência: | 29 de fevereiro de 2016 |
| Á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 |
| Município da Instituição Sede: | São José dos Campos |
| Pesquisadores associados: | Fabiano Cutigi Ferrari |
| Assunto(s): | Engenharia de software Reúso de software Teste e avaliação de software Programação orientada a aspectos Código fonte |
| Palavra(s)-Chave do Pesquisador: | Engenharia de Software Experimental | Reuso de Software | Teste de Software | Engenharia de Software |
Resumo
As técnicas contemporâneas de desenvolvimento como a Programação Orientada a Objetos (POO) e a Programação Orientada a Aspectos (POA) trazem diversos benefícios ao desenvolvimento de software, como código mais coeso, menos acoplado e mais legível. Entretanto, essas mesmas técnicas podem apresentar obstáculos, como novos tipos de defeitos que não ocorriam com o uso das técnicas anteriores. Além disso, mesmo que as técnicas apresentem benefícios ao desenvolvimento de software, ainda existem maneiras de fazer com que se obtenha maior confiança no código implementado, ou que o mesmo seja produzido com menor custo. No que diz respeito ao aumento da qualidade, recentemente foi introduzida uma nova família de critérios de teste estrutural - chamada de cobertura de arestas multi-ponto -, que generaliza a cobertura de arestas tradicional para a cobertura de tuplas de arestas obtidas na sequência de execução de um programa. Estudos iniciais indicam que os critérios são efetivos e inclusive comparáveis aos critérios de fluxo de dados, tidos anteriormente como entre os mais efetivos (apesar de bastante custosos). Essa família de critérios ainda não foi explorada no contexto de POA, o que abre um novo caminho de pesquisa importante, já que os programas OA também contêm condicionais. No que diz respeito à diminuição de custos de desenvolvimento, recentemente o grupo de pesquisa do proponente desenvolveu um protótipo que implementa a correção automática de programas utilizando busca de código em repositórios de código aberto. A ideia básica é procurar código similar a trechos defeituosos do programa - detectados via casos de teste -, e substituí-los por implementações corretas encontradas nesses repositórios. Apesar da ferramenta apresentar evidências de ser efetiva, ainda existem diversas maneiras de estendê-la e avaliá-la. Outra técnica proposta pelo grupo e que ainda não foi avaliada adequadamente é a expansão de query automática utilizando tesauros. O objetivo deste projeto de pesquisa é evoluir e avaliar as técnicas de teste e de busca de código-fonte nesses e em outros pontos relacionados para a melhoria do desenvolvimento de software contemporâneo. (AU)
| Matéria(s) publicada(s) na Agência FAPESP sobre o auxílio: |
| Mais itensMenos itens |
| TITULO |
| Matéria(s) publicada(s) em Outras Mídias ( ): |
| Mais itensMenos itens |
| VEICULO: TITULO (DATA) |
| VEICULO: TITULO (DATA) |