Wellen

Menu:

Neuigkeiten:

5. Januar 2007:
Version 1.1 zum Download verfügbar.

12. September 2006:
Final-Version zum Download freigegeben.

Abonnieren (Englisch) abonnieren (Englisch)

J. Bixbe

Infos:

jBixbe wird seit 2003 entwickelt und enthält eine ganze Reihe neuer Konzepte, um das Debugging von komplexen Java-Programmen zu vereinfachen.

Links:

- Java
- UML
- ds-emedia

Ereignis-orientierte Ablaufsteuerung

Bei Verwendung eines Debuggers wird der Programmablauf durch Anweisungen wie step in, step over und step out gesteuert. Zusätzlich werden Haltepunkte auf Quellcodezeilen gesetzt. Bis diese erreicht sind, können jedoch eine Reihe interessanter Ereignisse auftreten: Threads werden gestartet oder beendet, Ausnahmen (exceptions) werden geworfen oder gefangen, Methoden werden aufgerufen oder beendet u.a.

Möchte man das Programm beim Auftreten dieser Ereignisse stoppen, so muss man überlegen, an welcher Stelle im Quellcode das jeweilige Ereignis auftritt und dort einen Haltepunkt setzen - das ist unbequem. In vielen Debuggern gibt es deshalb verschiedene Arten von Haltepunkten. Damit lässt sich das Programm auch beim Auftreten spezieller Ereignisse stoppen.

jBixbe geht noch einen Schritt weiter, er ändert die Betrachtungsweise: Es wird nicht fortgesetzt, bis eine bestimmte Quellcodezeile erreicht ist, sondern bis ein interessantes Ereignis auftritt. Das Quellcode-Debugging wird so zu einem Spezialfall, bei dem interessante Ereignisse für Quellcodezeilen auftreten. Dadurch ist auch die Programm-Ablaufsteuerung aus Sicht des Benutzers extrem einfach - es gibt nur eine einzige Anweisung: "Fortsetzen bis zum nächsten interessanten Ereignis".

Das Ereignis bestimmt jBixbe aus den aktuellen Sichten (z.B. aus geöffneten Sequenzdiagrammen und Quellcode-Sichten) sowie aus den Einstellungen dieser Sichten. In einem Sequenzdiagramm werden zum Beispiel nur diejenigen Methoden-Aufrufe und -Rücksprünge verfolgt, die zum Kommunikationssystem gehören. Die Kommunikation zwischen außerhalb liegenden Objekten bleibt solange ausgeblendet, bis diese in das System aufgenommen werden.

Der Benutzer legt durch die Sichten und deren Einstellungen fest, was er sehen möchte und jBixbe steuert den Ablauf des Programms so, dass kein wichtiges Ereignis verloren geht. Es existiert also eine direkte Kopplung zwischen der Programm-Darstellung und der Programm-Ablaufsteuerung.

zurück zur Übersicht