Skip navigation.
Home

Integratives BOK Projekt - Sichere Systeme

Integratives BOK Projekt - Sichere Systeme

Verantwortlich

Projektziel

Entwicklung eines Frameworks für die Entwicklung von Programmanalyse Tools in Java

Teilnehmer

Gruppe 1: Arend von Reinersdorff, Justus Bisser

Gruppe 2: Robert Jakob, Nicola Sheldrik

Gruppe 3: Daniel Dietsch, Christian Ortolf

Springer: Peter Schmitt

Meilensteine

Einarbeitung

Gruppe 1: Konstruktion eines Treeparsers für Java 1.5 mit ANTLR

Gruppe 2: Einarbeitung in JPF

Gruppe 3: Einarbeitung in verschiedene Ansätze zur Visualisierung von Bäumen und Graphen

Prototyp

Gruppe 1: Konstruktion einer Visitor Klasse und eines Treewalkers

Gruppe 2: Konstruktion eines JPF Application Plugins mit Schnittstellen zu Parsern, Analysetools und Visualisierung, Implementierung des Commandpatterns zur Kommunikation zwischen Analysetools und Application Plugin

Gruppe 3: Erzeugen eines vereinfachten Call-Graphs aus dem AST, Implementierung einer Klasse für Debug-Ausgaben für Bäume und Graphen (z.B. Dotty)

Implementierung I

Gruppe 1: Erweiterung des Parsers um das Einlesen von .eclipse Dateien und anderen Projektdateien zu ermöglichen, Implementierung eines Interfaces für Graphen

Gruppe 2: Anbindung des Parsers an das Application Plugin, Definition des Interfaces für Debug-Ausgaben, Implementierung einer Kommandozeilensprache

Gruppe 3: Visualisierung des ASTs in einem Fenster, Ausgabe des ASTs in XML, Implementierung eines Interfaces für Graphen

Implementierung II

Gruppe 1: Implementierung einer effizienten Speicherstruktur für Bäume und Graphen

Gruppe 2: Implementierung verschiedener Commands, um strukturelle Änderungen am AST vorzunehmen

Gruppe 3: Ableiten von CG, CFG und DFG aus dem AST, Implementierung der Visualisierung von Graphen

Implementierung III

Gruppe 1: ...

Gruppe 2: Überarbeiten der Plugin Schnittstelle, ...

Gruppe 3: Updaten der Graphen bei Änderung des ASTs

Tests

Gruppe 1: Testen des Parser an großen Programmen, Messen des Speicherverbrauchs

Gruppe 2: Testen der einzelnen Commands

Gruppe 3: Testen ob Commands, die den AST verändern, auch korrekt in den einzelnen Graphen übernommen werden (evtl. alle Graphen neu berechnen)