Projektgruppe: ComponentTools - Infrastruktur zur Konstruktion, Analyse und Validierung komponentenbasierter Systeme, Bereich SWT, SS 2004 - WS 2004/05

Dozent

Ekkart Kindler (kindler@uni-paderborn.de), Raum E3.167

Betreuer

Teilnehmende Studenten

Inhalt

Viele Produktionsanlagen sind heute aus Standardkomponenten aufgebaut, die sich auf vielfältige Weise miteinander kombinieren lassen. Die einzelnen Komponenten sind dabei oft relativ einfach; die daraus aufgebauten Produktionsanlagen können dagegen sehr komplex sein. Um die Entwicklung solcher Systeme zu unterstützen, lohnt es sich, die Komponenten präzise zu modellieren. Für eine konkrete Anlage erhält man so ein Gesamtmodell, das man im Prinzip analysieren kann und mit dessen Hilfe sich eine Steuerung für die Anlage entwickeln läßt. Das Problem besteht jedoch darin, daß in diesem Modell viele verschiedenartige Eigenschaften berücksichtigt werden müssen (dynamische, physikalische und geometrische). Das Gesamtmodell der Anlage wird deshalb sehr komplex und ist bei naiver Herangehensweise nicht mehr analysierbar. In aktuellen Forschungsarbeiten werden derzeit Techniken entwickelt, die es erlauben diese Komplexität zu beherrschen.

Im Rahmen der Projektgruppe wird ein Werkzeug entwickelt, das es erlaubt, Komponentenbibliotheken zu erstellen, und dann Anlagen aus diesen Komponentenbibliotheken zu erstellen, zu visualisieren und zu analysieren. Auf dieser Basis sollen dann die in den aktuellen Forschungsarbeiten entwickelten Techniken implementiert und experimentell überprüft werden können.

Das Werkzeug soll dabei als PlugIn für die Eclipse Plattform realisiert werden und Schnittstellen zu verschiedenen Verifikationswerkzeugen besitzen. Da das Konzept des Werkzeuges für beliebige Komponentenbibliotheken und unabhängig von konkreten Modellierungstechniken sein soll, sind bei der Realisierung viele interessante konzeptionelle Aufgaben zu lösen. Darüber hinaus müssen zur Realisierung sehr unterschiedliche Techniken eingesetzt werden, so daß die Teilnehmer Erfahrungen mit verschiedenartigen Techniken sammeln können.

Abschlussdokumentation

Die Abschlussdokumentation gliedert sich in mehrere Ausarbeitungen zu den bearbeiteten Teilthemen. Einen Einstieg und Überblick über die verwendeten Konzepte und Technologien bietet das Haupt-Papier. An entsprechenden Stellen wird dann auf weitergehende Inhalte in den anderen Ausarbeitungen verwiesen.

Ein Überblick über das Projekt, Motivation und Lösungen, die verwendeten Konzepte und Technologien:
A. Gepting, J. Greenyer, A. Maas, S. Munkelt, C. Páles, T. Pivl, O. Rohe, M. Sanders, A. Scholand, C. Wagner: ComponentTools - Main Paper, August 2005

Das Benutzerhandbuch des ComponentTools Editors:
A. Gepting, J. Greenyer, A. Maas, S. Munkelt, C. Páles, T. Pivl, O. Rohe, M. Sanders, A. Scholand, C. Wagner: ComponentTools - Editor Userguide, August 2005

Eine Beschreibung, wie ComponentTools für einen speziellen Typ von Hardware-Komponentensystem angepasst werden kann:
A. Gepting, J. Greenyer, A. Maas, S. Munkelt, C. Páles, T. Pivl, O. Rohe, M. Sanders, A. Scholand, C. Wagner: ComponentTools - HowTo Paper, August 2005

Eine Beschreibung des verwendeten Metamodells und zugrundeliegender Konzepte für die Erweiterbarkeit und Flexibilität von ComponentTools:
A. Gepting, J. Greenyer, A. Maas, S. Munkelt, C. Páles, T. Pivl, O. Rohe, M. Sanders, A. Scholand, C. Wagner: ComponentTools - Concept Component Library, August 2005

Die im ComponentTools-Projekt entwickelte und eingesetzte Technologie zur Modelltransformation basierend auf der Interpretation von Tripel-Graph-Grammatiken wird im folgenden Paper konzeptuell beschrieben:
A. Gepting, J. Greenyer, A. Maas, S. Munkelt, C. Páles, T. Pivl, O. Rohe, M. Sanders, A. Scholand, C. Wagner: ComponentTools - Concept TGG Interpreter, August 2005

Die verschiedenen Teile von ComponentTools, Editoren, TGG-Interpreter, sind als Plug-Ins für die Java-Tool-Platform Eclipse implementiert. Dieses Paper beschreibt die erweiterbare Architektur des Editors und wie weitere Editoren wiederum als Plug-Ins für ComponentTools entwickelt werden können:
A. Gepting, J. Greenyer, A. Maas, S. Munkelt, C. Páles, T. Pivl, O. Rohe, M. Sanders, A. Scholand, C. Wagner: ComponentTools - Editor Architecture, August 2005

Dieses Paper beschreibt die Architektur, Schnittstellen, Erweiterungsmöglichkeiten des TGG-Interpreters:
A. Gepting, J. Greenyer, A. Maas, S. Munkelt, C. Páles, T. Pivl, O. Rohe, M. Sanders, A. Scholand, C. Wagner: ComponentTools - TGG-Interpreter Architecture, August 2005

Software

Zur steht ein Prototyp von Component Tools zur Verfügung, auf dem Diplomarbeiten zur Controllersynthese und Fehlerdiagnose aufbauen. Im März 2006 wird eine erste Version von Component Tools allgemein verfügbar gemacht (unter GPL).

Seminarausarbeitungen

Als Vorbereitung und Einstieg in die relevanten Themen der Softwaretechnik wurden von den Teilnehmern folgende Seminarthemen behandelt. Im Folenden sind Ausarbeitungen und Präsentationsfolien aufgelistet.

Markus SandersTheory of Controller SynthesisPapierFolien
Oliver RoheGraphmatching Problems and AlgorithmsPapierFolien
Thorsten PivlJMI, MOF Java Mapping, JMI Reflective InterfacePapierFolien
Andreas ScholandModel Checking and AbstractionPapierFolien
Christian WagnerModel Transformation TechniquesPapierFolien
Alexander GeptingMeta Object Facility (MOF) BasicsPapierFolien
Sebastian MunkeltRelated Software Part IPapierFolien
Joel GreenyerRelated Software Part IIPapierFolien
Csaba PalesXML Metadata Interchange (XMI)PapierFolien

Weiterführende Literatur

Die folgenden Folien und Papiere liefern etwas mehr Informationen über die Ziele und Hintergründe dieses Projekts und über die eingesetzen Techniken.

E. Kindler: DAWN for component based systems - just a different view.
In J. Desel, M. Weske (eds.): PROMISE 2002 - Prozessorientierte Methoden und Werkzeuge für die Entwicklung von Informationssystemen. Potsdam, Germany, 9.-11. October 2002. Proceedings. GI-Edition, Lecture Notes in Informatics, P-21, pp. 7-13.

E. Kindler: Eine Komponententechnik für Materialflusssysteme.
Oberseminarvortrag Universität Paderborn, 15. Mai 2003.

E. Kindler, C. Páles: 3D-Visualization of Petri Net Models: A concept.
In: G. Juhas, R. Lorenz (eds.): Workshop Algorithmen und Werkzeuge für Petrinetze, Eichstätt, September 2003.

J. Greenyer: Maintaining and Using Component Libraries for the Design of Material Flow Systems: Concept and Prototypical Implementation.
Studienarbeit, Oktober 2003.

E. Kindler: Infrastruktur zur Konstruktion, Analyse und Validierung komponentenbasierter Systeme.
Projektgruppenpräsentationen, Universität Paderborn, 26. Jan. 2004.

E. Kindler: Lösung zur Aufgabe 1 der 7. Übung zur Vorlesung Modelchecking.
2. Feb. 2004. (Nur für Besucher der Vorlesung verständlich und relevant).

B. Moore, D. Dean, A. Gerber, G. Wagenknecht, P. Vanderheyden: Eclipse Development using the Graphical Editing Framework and the Eclipse Modeling Framework. IBM Redbooks, Februar 2004.

Ekkart Kindler, Csaba Páles: 3D-Visualization of Petri Net Models: Concept and Realization.
In: J. Cortadella and W. Reisig (eds.): International Conference on Theory and Application of Petri Nets 2004, 25th Internation Conference, Bolgna, Italy. Springer, LNCS 3099: 464-473, June 2004.

Ekkart Kindler, Vladimir Rubin, Robert Wagner: An adaptable TGG interpreter for in-memory model transformation.
In: FUJABA Days 2004. Proceedings. pp. 35-38.
Darmstadt, Germany, September 15-17, 2004.

A. Gepting, J. Greenyer, E. Kindler, A. Maas, S. Munkelt, C. Pales, T. Pivl, O. Rohe, V. Rubin, M. Sander, A. Scholand, C. Wagner, R. Wagner: Component Tools: A vision for a tool.
In: E. Kindler (ed.): Algorithmen und Werkzeuge für Petrinetze (AWPN) - Algorithms and Tools for Petri nets. Proceedings of the Workshop AWPN 2004. pp. 37-42.
Paderborn, Germany, Sept. 30 & Oct. 1, 2004.

A. Gepting, J. Greenyer, A. Maas, S. Munkelt, C. Pales, T. Pivl, O. Rohe, V. Rubin, M. Sander, A. Scholand, and C. Wagner: Component Tools.
In: Gesellschaft für Informatik (ed.): Informatiktage 2005 - Fachwissenschaftlicher Informatik-Kongress, Sankt Augustin, Gemany, April 2005
. GI-Edition, Lecture Notes in Informatics, Seminars, pp. 13-16, 2005.

Holger Giese, Ekkart Kindler, Florian Klein, Robert Wagner: Reconciling Scenario-Centered Controller Design with State-Based System Models.
Fourth International Workshop on Scenarios and State Machines: Models, Algorithms and Tools, ICSE 2005 workshop, Saint-Louis, May 2005.

Ekkart Kindler, Vladimir Rubin, and Robert Wagner: Component Tools: Application and Integration of Formal Methods.
In: Electronic proceedings of the Workshop Object Orientierte Software Entwicklung 2005 (OOSE '05), Satellite event of Net.ObjectDays 2005, Erfurt, Germany, September 2005.