Publicação: O impacto do uso de
rastros de execução em atividades de localização de características de software:
um experimento controlado
Carregando...
Arquivos
Tipo do documento
Data
Direito de acesso
Área do conhecimento
CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO
Título da Revista
ISSN da Revista
Título de Volume
Orientador
Coorientador
Resumo
Um dos problemas mais frequentes enfrentados em manutenção de software é a localização
do código para características específicas, as quais são importantes para a compreensão
de requisitos de software. Descobrir onde uma característica está localizada é
uma tarefa custosa porque, em geral, estas tendem a estar espalhadas ou entrelaçadas
pelo código. Considerando este problema, foi desenvolvida uma abordagem para localização
de características utilizando análise dinâmica, que apresenta visões geradas a partir
dos rastros de execução. O objetivo desta abordagem é auxiliar na compreensão das características,
ao tornar mais rápida a sua localização, com informações que direcionam
a compreensão e propiciam maior taxa de acerto nas atividades de manutenção. Para
avaliação desta abordagem e verificar se o objetivo é alcançado, foi realizado um estudo
controlado com sujeitos humanos, executando atividades reais de manutenção em sistemas
de diferentes portes. O estudo pretende contribuir com a avaliação do impacto do uso
de informações de rastros de execução em atividades de manutenção de software. Este
estudo mostrou os benefícios do uso sistemático de informação de rastros de execução
na diminuição do tempo de execução e no aumento da taxa de acerto em atividades de
manutenção de software para o problema apresentado. As visões da abordagem proposta
foram úteis através da localização das características de interesse e redução do espaço
de busca inicial, levando ao direcionamento na busca pelas informações, acarretando em
um menor nível de dificuldade percebida pelos participantes que utilizaram a abordagem
nas manutenções realizadas nos experimentos. Além do mais, constatou-se que os experimentos
onde ocorreram as mais expressivas reduções no espaço de busca inicial e melhor
qualidade neste, foram os que apresentaram os melhores desempenhos, em tempo e taxa
de acerto. Entretanto, este estudo também revela alguns desafios para aplicação desta
abordagem em larga escala, uma vez que as visões podem apresentar elementos falsos
positivos e falsos negativos que podem impactar na compreensão de sistemas a partir
das informações fornecidas. Para um uso em larga escala seria necessária a introdução
de outras visões, mais robustas, para viabilizar análises mais aprofundadas. Finalmente,
outra conclusão foi que a abordagem não se faz útil em atividades de compreensão onde
o problema do espalhamento e entrelaçamento não ocorre.
Abstract
One of the most frequent problems faced by software maintainers is to find the location
of the code related with specific features, which are important for understanding the
software requirements. To find where a certain feature is located is a costly task because,
in general, it tends to be scattered or tangled into the code. Considering this problem, an
approach for locating features using dynamic analysis has been developed, which presents
views generated from execution traces. The objective of this work is to help understanding
the features, enabling faster location of features and providing higher accuracy rate in
maintenance activities, achieved the information that leads directly to the understanding.
To evaluate this approach and check whether the goal was achieved, a controlled study
was performed with the participation of human beings, when they were performing actual
maintenance activities on systems of different sizes. This study contributes with an
appraisal about the impact of using information from execution traces on software maintenance.
This study shows the benefits related with a systematic use of information from
execution traces by reducing the execution time and increasing the rate of correction in
searches for information during software maintenance. The views were useful for locating
the features of interest and reducing the initial search space, providing better precision in
the search for information. This feature resulted in a lower level of difficulty perceived by
study participants during the proposed maintenance activities. Besides that, this study
has indicated that the size and quality of the search spaces (presented in the views) can
affect the rate of correction and execution time on maintenance activities using the presented
approach. However, this study also reveals that there are some challenges when
it comes to implement this approach on a large scale, system since the views may reveal
many false positives and false negatives. This situations can impact the understanding of
the systems based on the provided information. On the large-scale use, of the approach,
it would be interesting to introduce more robust views, enabling more robust analysis.
Finally, another conclusion is that this approach is not useful in comprehension activities
where the problem of scattering and entanglement does not occur.
Palavras-chave
Localização de características, Análise dinâmica, Rastros de execução, Compreensão de sistemas, Feature location, Dynamic analysis, Execution traces, Understanding
systems, Software - Manutenção
Citação
LAFETÁ, Raquel Fialho de Queiroz. O impacto do uso de
rastros de execução em atividades de localização de características de software:
um experimento controlado. 2011. 190 f. Dissertação (Mestrado em Ciências Exatas e da Terra) - Universidade Federal de Uberlândia, Uberlândia, 2011. DOI https://doi.org/10.14393/ufu.di.2011.04