Code inspection approaches for program visualization

Detalhes bibliográficos
Autor(a) principal: Cruz, Daniela
Data de Publicação: 2009
Outros Autores: Berón, Mario, Henriques, Pedro Rangel, Pereira, Maria João
Tipo de documento: Artigo
Idioma: eng
Título da fonte: Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
Texto Completo: http://hdl.handle.net/10198/1202
Resumo: The aim of this paper is to show the approaches involved in the implementation of two tools of PCVIA project that can be used for Program Comprehension. Both tools use known compiler techniques to inspect code in order to visualize and understand programs’ execution but one of them modifies the source code and the other not. In the non-invasive approach, we convert the source program into an internal decorated (or attributed) abstract syntax tree and then we visualize the structure traversing it, and applying visualization rules at each node according to a pre-defined rule-base. No changes are made in the source code, and the execution is simulated. In the invasive approach, we traverse the source program and instrument it with inspection functions. Those functions, also known as inspectors, provide information about the function-call flow and data usage at runtime (during the actual program execution). This information is collected and gathered in an information repository that is then displayed in a suitable form for navigation. These two different approaches are used respectively by Alma (generic program animation system) and CEAR (C Rooting Algorithm Visualization tool). For each tool several examples of visualization are shown in order to discuss the information that is included in the visualizations, visualization types and the use of Program Animation for Program Comprehension.
id RCAP_a23f3a18b8d71f84e7cb844cf36e7e90
oai_identifier_str oai:bibliotecadigital.ipb.pt:10198/1202
network_acronym_str RCAP
network_name_str Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
repository_id_str 7160
spelling Code inspection approaches for program visualizationCode inspectionCode analysisVisualizationProgram comprehensionThe aim of this paper is to show the approaches involved in the implementation of two tools of PCVIA project that can be used for Program Comprehension. Both tools use known compiler techniques to inspect code in order to visualize and understand programs’ execution but one of them modifies the source code and the other not. In the non-invasive approach, we convert the source program into an internal decorated (or attributed) abstract syntax tree and then we visualize the structure traversing it, and applying visualization rules at each node according to a pre-defined rule-base. No changes are made in the source code, and the execution is simulated. In the invasive approach, we traverse the source program and instrument it with inspection functions. Those functions, also known as inspectors, provide information about the function-call flow and data usage at runtime (during the actual program execution). This information is collected and gathered in an information repository that is then displayed in a suitable form for navigation. These two different approaches are used respectively by Alma (generic program animation system) and CEAR (C Rooting Algorithm Visualization tool). For each tool several examples of visualization are shown in order to discuss the information that is included in the visualizations, visualization types and the use of Program Animation for Program Comprehension.FCTFaculty of Electrical Engineering and Informatics, Technical University of KosiceBiblioteca Digital do IPBCruz, DanielaBerón, MarioHenriques, Pedro RangelPereira, Maria João2009-10-15T10:02:13Z20092009-01-01T00:00:00Zinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/articleapplication/pdfhttp://hdl.handle.net/10198/1202engCruz, Daniela; Berón, Mário; Henriques, Pedro; Pereira, Maria João (2009). Code inspection approaches for program visualization. Acta Electrotechnica et Informatica. ISSN 1335-8243. 9:2 p.32-421335-8243info:eu-repo/semantics/openAccessreponame:Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)instname:Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informaçãoinstacron:RCAAP2023-11-21T10:04:36Zoai:bibliotecadigital.ipb.pt:10198/1202Portal AgregadorONGhttps://www.rcaap.pt/oai/openaireopendoar:71602024-03-19T22:54:45.278400Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) - Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informaçãofalse
dc.title.none.fl_str_mv Code inspection approaches for program visualization
title Code inspection approaches for program visualization
spellingShingle Code inspection approaches for program visualization
Cruz, Daniela
Code inspection
Code analysis
Visualization
Program comprehension
title_short Code inspection approaches for program visualization
title_full Code inspection approaches for program visualization
title_fullStr Code inspection approaches for program visualization
title_full_unstemmed Code inspection approaches for program visualization
title_sort Code inspection approaches for program visualization
author Cruz, Daniela
author_facet Cruz, Daniela
Berón, Mario
Henriques, Pedro Rangel
Pereira, Maria João
author_role author
author2 Berón, Mario
Henriques, Pedro Rangel
Pereira, Maria João
author2_role author
author
author
dc.contributor.none.fl_str_mv Biblioteca Digital do IPB
dc.contributor.author.fl_str_mv Cruz, Daniela
Berón, Mario
Henriques, Pedro Rangel
Pereira, Maria João
dc.subject.por.fl_str_mv Code inspection
Code analysis
Visualization
Program comprehension
topic Code inspection
Code analysis
Visualization
Program comprehension
description The aim of this paper is to show the approaches involved in the implementation of two tools of PCVIA project that can be used for Program Comprehension. Both tools use known compiler techniques to inspect code in order to visualize and understand programs’ execution but one of them modifies the source code and the other not. In the non-invasive approach, we convert the source program into an internal decorated (or attributed) abstract syntax tree and then we visualize the structure traversing it, and applying visualization rules at each node according to a pre-defined rule-base. No changes are made in the source code, and the execution is simulated. In the invasive approach, we traverse the source program and instrument it with inspection functions. Those functions, also known as inspectors, provide information about the function-call flow and data usage at runtime (during the actual program execution). This information is collected and gathered in an information repository that is then displayed in a suitable form for navigation. These two different approaches are used respectively by Alma (generic program animation system) and CEAR (C Rooting Algorithm Visualization tool). For each tool several examples of visualization are shown in order to discuss the information that is included in the visualizations, visualization types and the use of Program Animation for Program Comprehension.
publishDate 2009
dc.date.none.fl_str_mv 2009-10-15T10:02:13Z
2009
2009-01-01T00:00:00Z
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/article
format article
status_str publishedVersion
dc.identifier.uri.fl_str_mv http://hdl.handle.net/10198/1202
url http://hdl.handle.net/10198/1202
dc.language.iso.fl_str_mv eng
language eng
dc.relation.none.fl_str_mv Cruz, Daniela; Berón, Mário; Henriques, Pedro; Pereira, Maria João (2009). Code inspection approaches for program visualization. Acta Electrotechnica et Informatica. ISSN 1335-8243. 9:2 p.32-42
1335-8243
dc.rights.driver.fl_str_mv info:eu-repo/semantics/openAccess
eu_rights_str_mv openAccess
dc.format.none.fl_str_mv application/pdf
dc.publisher.none.fl_str_mv Faculty of Electrical Engineering and Informatics, Technical University of Kosice
publisher.none.fl_str_mv Faculty of Electrical Engineering and Informatics, Technical University of Kosice
dc.source.none.fl_str_mv reponame:Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
instname:Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação
instacron:RCAAP
instname_str Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação
instacron_str RCAAP
institution RCAAP
reponame_str Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
collection Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
repository.name.fl_str_mv Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) - Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação
repository.mail.fl_str_mv
_version_ 1799135146725605376