Fehlersuche gestaltet sich in größeren Programmen manchmal doch etwas schwierig. SiSy bietet verschiedene Werkzeug zur Unterstützung des Entwicklungsprozesses an. Für die gezielte Fehlersuche sollen hier zwei Werkzeuge vorgestellt werden, der Debugger und das Controlcenter.
Debugger sind spezielle Werkzeuge zur Fehlersuche. Voraussetzung für die Nutzung des Debuggers ist das Vorhandensein einer physischen Debugmöglichkeit (z.B. JTAG, SWD, …) und deren Anbindung an den GDB. Es ist zu beachten, dass die zu debuggenden Programme in der Regel mit speziellen Debuginformationen gebildet werden müssen. Die wichtigsten Funktionen eines Debuggers sind:
SiSy bietet eine Integration und grafische Benutzeroberfläche für GNU-Debugger. Der Debugger wird jeweils aus der aktuellen Perspektive (Programmansicht) des Entwicklers gestartet. Im Klassendiagramm erfolgt das Starten des Debuggers über das Aktionsmenü in der Objektbibliothek. Das Programm muss dazu erfolgreich erstellt worden sein.
Die einzelnen Funktionen und Ansichten des Debuggers sind über entsprechende Schaltflächen erreichbar.
Nachdem der Debugger gestartet ist können in der Anwendung Unterbrechungspunkte festgelegt werden. Die folgenden Darstellungen zeigen eine Debuggersitzung.
Wenn an den zu untersuchenden Programmabschnitten die gewünschten Unterbrechungspunkte gesetzt wurden. kann die Anwendung gestartet werden.
Der Debugger hält die Anwendung an bevor die Zeile mit dem Unterbrechungspunkt abgearbeitet werden soll. Jetzt können Variablen in die Beobachtungsansicht des Debuggers aufgenommen und die Anwendung im Schrittbetrieb untersucht werden. Der Quelltext und das Modell werden den Debuggerschritten nachgeführt.
Eine weitere Möglichkeit zur Fehlersuche besteht darin die Anwendung nicht anzuhalten um bestimmte Werte oder abgearbeitete Programmteile zu überwachen sondern entsprechende Informationen zur Laufzeit aus der Anwendung aufzuzeichnen (Log, von Logbuch, Aufzeichnung). Für diesen Zweck bietet sich das SiSy Controlcenter an.
<flashplayer width=„640“ height=„500“ position=„0“>file=http://youtu.be/???</flashplayer>