A funcionalidade de pesquisa está em construção.
A funcionalidade de pesquisa está em construção.

The original paper is in English. Non-English content has been machine-translated and may contain typographical errors or mistranslations. ex. Some numerals are expressed as "XNUMX".
Copyrights notice

The original paper is in English. Non-English content has been machine-translated and may contain typographical errors or mistranslations. Copyrights notice

Identifying Core Objects for Trace Summarization by Analyzing Reference Relations and Dynamic Properties Identificando objetos principais para resumo de rastreamento analisando relações de referência e propriedades dinâmicas

Kunihiro NODA, Takashi KOBAYASHI, Noritoshi ATSUMI

  • Exibições de texto completo

    0

  • Cite isto

Resumo:

Os comportamentos de um sistema orientado a objetos podem ser visualizados como diagramas de sequência de engenharia reversa a partir de rastreamentos de execução. Esta abordagem é uma ferramenta valiosa para tarefas de compreensão de programas. No entanto, devido à quantidade de informações contidas em um rastreamento de execução, um diagrama de sequência de engenharia reversa costuma ser afetado por um problema de escalabilidade. Para resolver esse problema, muitas técnicas de resumo de rastreamento foram propostas. A maioria das técnicas anteriores concentrava-se na redução do tamanho vertical do diagrama. Para lidar com o problema de escalabilidade, diminuir o tamanho horizontal do diagrama também é muito importante. No entanto, poucos estudos abordaram este ponto; portanto, há muitas necessidades de desenvolvimento adicional de técnicas de resumo horizontal. Apresentamos neste artigo um método para identificar objetos centrais para resumo de traços, analisando relações de referência e propriedades dinâmicas. Visualizando apenas as interações relacionadas aos objetos centrais, podemos obter um diagrama de sequência de engenharia reversa compactado horizontalmente que contém os principais comportamentos do sistema. Para identificar os objetos principais, primeiro detectamos e eliminamos objetos temporários que são triviais para um sistema, analisando as relações de referência e o tempo de vida dos objetos. Então, estimando a importância de cada objeto não trivial com base em suas propriedades dinâmicas, identificamos aqueles altamente importantes (ou seja, objetos centrais). Implementamos nossa técnica em nossa ferramenta e a avaliamos usando rastros de vários sistemas de software de código aberto. Os resultados mostraram que nossa técnica foi muito mais eficaz em termos de redução horizontal de um diagrama de seqüência de engenharia reversa, em comparação com a técnica de sumarização de traços de última geração. A taxa de compressão horizontal da nossa técnica foi em média de 134.6, enquanto a da técnica mais moderna foi de 11.5. A sobrecarga de tempo de execução imposta pela nossa técnica foi de 167.6% em média. Essa sobrecarga é relativamente pequena em comparação com técnicas recentes de análise dinâmica escalável, o que mostra a praticidade de nossa técnica. No geral, nossa técnica pode alcançar uma redução significativa do tamanho horizontal de um diagrama de seqüência de engenharia reversa com uma pequena sobrecarga e espera-se que seja uma ferramenta valiosa para a compreensão do programa.

Publicação
IEICE TRANSACTIONS on Information Vol.E101-D No.7 pp.1751-1765
Data de publicação
2018/07/01
Publicitada
2018/04/20
ISSN online
1745-1361
DOI
10.1587/transinf.2017KBP0018
Tipo de Manuscrito
Special Section PAPER (Special Section on Knowledge-Based Software Engineering)
Categoria

autores

Kunihiro NODA
  Tokyo Institute of Technology
Takashi KOBAYASHI
  Tokyo Institute of Technology
Noritoshi ATSUMI
  Kyoto University

Palavra-chave