Debugging von UML Modellen auf realer Hardware ohne Echtzeitverletzung

Die Willert Software Tools GmbH stellt Target Debugger mit Animation auf UML-Ebene vor 

Trotz Modellierung in UML wird die entwickelte Software nicht immer frei von Fehlern sein. Debugging bleibt also als wichtige Tätigkeit im Alltagsleben eines Softwareentwicklers erhalten.

Wenn mit so genannten Embedded Systemen gearbeitet wird, dann ist in der Regel auch eigene Hardware im Spiel und einige der Fehler treten evtl. nur dann auf, wenn die Software auf dieser Hardware ausgeführt wird.

Ein weiteres Kennzeichen von Embedded Systemen ist sehr häufig, dass die Hardware Ressourcen (z.B. Speicher, Schnittstellen) begrenzt sind.

Herkömmliche CASE Tools bieten zum Debuggen die Möglichkeit den aus dem Modell generierten Code auszuführen und parallel das Modell zu animieren. Es kann also auf Modellebene verfolgt werden, wie sich das Programm verhält. Soll der Code dafür auf dem realen Zielsystem ausgeführt werden, dann müssen die Laufzeitinformationen auf dem Zielsystem erzeugt, zum Entwicklungs-PC geschickt und dort in Modellinformation zurück transformiert werden. Das geschieht üblicherweise über so genannte Code Instrumentierung. Dieses Vorgehen hat den großen Nachteil, dass der auszuführende Code durch die Instrumentierung um ein Vielfaches mit Overhead befrachtet wird und sich die reale Laufzeit um ein Vielfaches verlangsamt.

Passend zum Embedded UML Studio™ gibt es nun eine Debugging Lösung, die wie herkömmliche Embedded Hochsprachen-Debugger auf Basis eines Monitors arbeitet. Der Vorteil liegt auf der Hand, echtzeitfähiges Debugging mit minimalem Overhead auf UML Modell-Ebene.

Die Schnittstelle zwischen dem Zielsystem und Entwicklungsrechner kann flexibel gewählt werden. In Kombination mit entsprechenden Entwicklungstools, z.B: der Keil µVision kann dafür JTAG als Schnittstelle genutzt werden.  Mit der UDE (Universal Debug Engine) der Firma pls kann alternativ z.B. auch CAN als Interface genutzt werden.