2016Unpublished venueRequires access

The role of open source software in program analysis for reverse engineering

Taher A. Ghaleb

Open publisher page 4 citations

Abstract

Program analysis is the process of statically or dynamically retrieving the structure and behavior of software systems. Static analysis solely relies on the availability of source code of computer programs, while dynamic analysis captures program information using execution traces during program runtime. The entire process is called software reverse engineering, where the extracted information could eventually be visualized to facilitate program comprehension for the sake of learning, maintenance, etc. Open source software, in this context, plays a vital role in developing, enriching, and validating program analysis techniques. In this paper, we show and discuss how open source software projects significantly contribute to the development, evolution, and validation of program analysis techniques as well as enriching reverse-engineered diagrams with useful and meaningful information, even for those techniques that rely on dynamic analysis.

About this research paper

What this paper is about

Program analysis is the process of statically or dynamically retrieving the structure and behavior of software systems. Static analysis solely relies on the availability of source code of computer programs, while dynamic analysis captures program information using execution traces during program runtime. The entire process is called software reverse engineering, where the extracted information could eventually be visualized to facilitate program comprehension for the sake of learning, maintenance, etc. Open source software, in this context, plays a vital role in developing, enriching, and validating program analysis techniques. In this paper, we show and discuss how open source software projects significantly contribute to the development, evolution, and validation of program analysis techniques as well as enriching reverse-engineered diagrams with useful and meaningful information, even for those techniques that rely on dynamic analysis.

Why it matters

OpenAlex reports 4 citations for this work. Citation counts describe recorded attention and do not establish research quality.

Key contribution

A contribution statement is not available in the OpenAlex record.

Method / approach

Method details are not available in the OpenAlex metadata.

Main findings

Findings are not separately available in the OpenAlex metadata.

Limitations

Limitations are not available in the OpenAlex metadata.

Applications

Application details are not available in the OpenAlex metadata.

Available abstract

Program analysis is the process of statically or dynamically retrieving the structure and behavior of software systems. Static analysis solely relies on the availability of source code of computer programs, while dynamic analysis captures program information using execution traces during program runtime. The entire process is called software reverse engineering, where the extracted information could eventually be visualized to facilitate program comprehension for the sake of learning, maintenance, etc. Open source software, in this context, plays a vital role in developing, enriching, and validating program analysis techniques. In this paper, we show and discuss how open source software projects significantly contribute to the development, evolution, and validation of program analysis techniques as well as enriching reverse-engineered diagrams with useful and meaningful information, even for those techniques that rely on dynamic analysis.

Key concepts: Reverse engineering, Program comprehension, Computer science, Static program analysis, Software engineering, Source code, Program analysis, Dynamic program analysis

Related papers

Back to paper searchBrowse research topicsOriginal source
The role of open source software in program analysis for reverse engineering — Research Paper | ScholarLens