Visualizing Dynamic Data-Flow Analysis of Object-Oriented Programs Based on the Language Server Protocol

Troost, Laura; Neugebauer, Jonathan; Kuchen, Herbert


Abstract

Although studies emphasized the effectiveness of analyzing data-flow coverage as opposed to branch coverage in the area of testing, there is still a lack of appropriate tools. We propose an approach to visualize data flows of programs within code editors based on the Language Server Protocol (LSP). For this purpose, we define extensions of the LSP to increase usability in the given application. Furthermore, we present a prototype with implementations of a language server as well as the two language clients IntelliJ IDEA and Visual Studio Code. Moreover, we outline how the different components can interact effectively based on the LSP to enable the analysis and visualization of data-flows. We evaluate our prototype based on various benchmarks.

Keywords
Data-Flow Analysis; Bytecode Analysis; Java Instrumentation; Software Testing; Integrated Development Environment; Language Server Protocol



Publication type
Research article in proceedings (conference)

Peer reviewed
Yes

Publication status
Published

Year
2023

Conference
18th International Conference on Evaluation of Novel Approaches to Software Engineering - ENASE

Venue
Prag

Book title
Proceedings of the 18th International Conference on Evaluation of Novel Approaches to Software Engineering - ENASE

Editor
SciTePress

Start page
77

End page
88

Title of series
Proceedings of the 18th International Conference on Evaluation of Novel Approaches to Software Engineering - ENASE

Publisher
SciTePress

Place
Prague, Czech Republic

Language
English

ISSN
2184-4895

ISBN
978-989-758-647-7

DOI