TU Darmstadt / ULB / TUbiblio

Inspecting Java Program States with Semantic Web Technologies

Haubner, Anton W. (2022)
Inspecting Java Program States with Semantic Web Technologies.
Technische Universität Darmstadt
doi: 10.26083/tuprints-00022143
Masterarbeit, Erstveröffentlichung, Verlagsversion

Kurzbeschreibung (Abstract)

Semantic debugging, as introduced by Kamburjan et al., refers to the practice of applying technologies of the semantic web to query the run-time state of a program and combine it with external domain knowledge. This master thesis aims to take the first step toward making the benefits of semantic debugging available for real-world application development. For this purpose, we implement a semantic debugging tool for the Java programming language, called the Semantic Java Debugger or sjdb.

The sjdb tool provides an interactive, command line-based user interface through which users can (1) run Java programs and suspend their execution at user-defined breakpoints, (2) automatically extract RDF knowledge bases with description logic semantics that describe the current state of the program, (3) optionally supplement the knowledge base with external domain knowledge formalized in OWL, (4) run (semantic) queries on this extended knowledge base, and resolve the query results back to Java objects.

As part of this debugging tool, the development of an extraction mechanism for knowledge bases from the states of suspended Java programs is one of the main contributions of this thesis. For this purpose, we also devise an OWL formalization of Java runtime states to structure this extraction process and give meaning to the resulting knowledge base. Moreover, case studies are conducted to demonstrate the capabilities of sjdb, but also to identify its limitations, as well as its response times and memory requirements.

Typ des Eintrags: Masterarbeit
Erschienen: 2022
Autor(en): Haubner, Anton W.
Art des Eintrags: Erstveröffentlichung
Titel: Inspecting Java Program States with Semantic Web Technologies
Sprache: Englisch
Referenten: Hähnle, Prof. Dr. Reiner ; Kamburjan, Dr. Eduard ; Bubel, Dr. Richard
Publikationsjahr: 2022
Ort: Darmstadt
Kollation: 174 Seiten
Datum der mündlichen Prüfung: 19 Mai 2022
DOI: 10.26083/tuprints-00022143
URL / URN: https://tuprints.ulb.tu-darmstadt.de/22143
Kurzbeschreibung (Abstract):

Semantic debugging, as introduced by Kamburjan et al., refers to the practice of applying technologies of the semantic web to query the run-time state of a program and combine it with external domain knowledge. This master thesis aims to take the first step toward making the benefits of semantic debugging available for real-world application development. For this purpose, we implement a semantic debugging tool for the Java programming language, called the Semantic Java Debugger or sjdb.

The sjdb tool provides an interactive, command line-based user interface through which users can (1) run Java programs and suspend their execution at user-defined breakpoints, (2) automatically extract RDF knowledge bases with description logic semantics that describe the current state of the program, (3) optionally supplement the knowledge base with external domain knowledge formalized in OWL, (4) run (semantic) queries on this extended knowledge base, and resolve the query results back to Java objects.

As part of this debugging tool, the development of an extraction mechanism for knowledge bases from the states of suspended Java programs is one of the main contributions of this thesis. For this purpose, we also devise an OWL formalization of Java runtime states to structure this extraction process and give meaning to the resulting knowledge base. Moreover, case studies are conducted to demonstrate the capabilities of sjdb, but also to identify its limitations, as well as its response times and memory requirements.

Status: Verlagsversion
URN: urn:nbn:de:tuda-tuprints-221433
Zusätzliche Informationen:

The software developed as part of this thesis is available on GitHub. The Semantic Java Debugger: https://github.com/ahbnr/SemanticJavaDebugger The jdi2owl library: https://github.com/ahbnr/jdi2owl

Sachgruppe der Dewey Dezimalklassifikatin (DDC): 000 Allgemeines, Informatik, Informationswissenschaft > 004 Informatik
Fachbereich(e)/-gebiet(e): 20 Fachbereich Informatik
20 Fachbereich Informatik > Software Engineering
Hinterlegungsdatum: 14 Sep 2022 12:26
Letzte Änderung: 15 Sep 2022 07:45
PPN:
Referenten: Hähnle, Prof. Dr. Reiner ; Kamburjan, Dr. Eduard ; Bubel, Dr. Richard
Datum der mündlichen Prüfung / Verteidigung / mdl. Prüfung: 19 Mai 2022
Export:
Suche nach Titel in: TUfind oder in Google
Frage zum Eintrag Frage zum Eintrag

Optionen (nur für Redakteure)
Redaktionelle Details anzeigen Redaktionelle Details anzeigen