Bachelor-Thesis Entwicklung einer automatisierten Dokumentation von LabVIEW Quellcode für das Rahmenwerk CS Fachbereich Echtzeitsysteme Gesellschaft für Schwerionenforschung, Abteilung Experiment-Elektronik 22. Oktober 2007 Martin Feldmann, [email protected] 1 Thema Ziel: • Dokumentation von CS-Klassen in Form eines UMLKlassendiagramms Motivation: • zunehmende Komplexität von Systemen • Verbesserung der Wiederverwendbarkeit von Kontrollsystemkomponenten • Dokumentation soll automatisiert werden • kürzere Einarbeitungszeit für neue Entwickler • Dokumentation für Lehrveranstaltungen und Trainingskurse 22. Oktober 2007 Martin Feldmann, [email protected] 2 Anforderungen • Voraussetzung ist die Verwendung eines CASE-Tools zur Darstellung des UML-Klassendiagramms • Abbildung der Daten, um ein UML-Klassendiagramm erzeugen zu können, inklusive Mehrfachvererbung Voraussetzung an die Abbildung: • Verwendung eines Austauschformates, das von einem CASETool importiert und als UML-Klassendiagramm dargestellt werden kann 22. Oktober 2007 Martin Feldmann, [email protected] 3 Austauschformat: Java Vorteil: • Java ist kompatibel und bietet die größte Flexibilität bei der Auswahl eines CASE-Tools Nachteil: • Java unterstützt keine direkte Mehrfachvererbung 22. Oktober 2007 Martin Feldmann, [email protected] 4 Lösung zur Mehrfachvererbung in Java Optionen: •Klassen werden als Klassen modelliert: •Klassen werden als Interfaces modelliert 22. Oktober 2007 Martin Feldmann, [email protected] 5 CASE-Tool Anforderungen: • muss kostenlos sein • automatische Layoutfunktion • Klassendiagramme speichern und als Bilddateien exportieren • Import von Java-Quellen unterstützen • Mehrfachvererbung darstellen • Exportfunktion in Austauschformate • Unterstützung von Komplementärdiagrammen (Sequence, Statechart etc.) Oracle JDeveloper 22. Oktober 2007 Martin Feldmann, [email protected] 6 LabVIEW-Program Das LabVIEW-Programm zur Erzeugung der Quellen besteht aus zwei Teilen: • Datenakquisition – Vererbung, Methoden, Attribute, Ein- und Ausgangsparameter, Sichtbarkeit der Methoden • Generator – ließt die Daten – schreibt die Java-Quellen 22. Oktober 2007 Martin Feldmann, [email protected] 7 Demonstration 22. Oktober 2007 Martin Feldmann, [email protected] 8 Ausblick/ Diskussion Mögliche zukünftige Entwicklungen: • verbesserte Modellierung spezieller Methoden (z.B. Konstruktor) • Erzeugung von C++/ XMI Code 22. Oktober 2007 Martin Feldmann, [email protected] 9