Design and Implementation of an Editor for Active Object/Behavior Diagrams

Autoren
W. Kraus, T. Thalhammer
Masterarbeit
MT9702 (September, 1997)
Betreut von
o. Univ.-Prof. Dr. Michael Schrefl
Angeleitet von
Dipl.-Ing. Peter Lang
Mag. Werner Obermair
Ausgeführt an
Universität Linz, Institut für Wirtschaftsinformatik - Data & Knowledge Engineering

Kurzfassung (Englisch)

This thesis presents the design and the implementation of an editor for modeling Active Object/behavior Diagrams (AOBD editor). AOBD is a graphical language for the conceptual design of active object-oriented databases. It consists of Object/Behavior Diagrams, of Situation Diagrams, and of Activation Diagrams. AOBD supports the design of object structures as well as the design of objectsæ passive and active behavior.

The AOBD editor is implemented in the programming environment VisualWorks, which uses Smalltalk-80 as scripting language, using the DoME (Domain Modeling Environment) toolset for the construction of graphical editors. The object-oriented database system GemStone and the BOSS (Binary Object Streaming Service) mechanism of VisualWorks are used to store diagrams either in a database or into a file.

The AOBD editorÆs basic architecture consists of three layers. Object on layer 1 the DoME Layer, are used for displaying and manipulating the objects representing the conceptual database schema. Since object on the DoME layer are disposed whenever a diagram is closed, objects on layer 2, the Graphical Layer, store their position, their size, and their appearance. Whenever a diagram is opened, persistent object of the graphical layer are used to create DoME object. Object on layer 3, the Semantic Layer, represent the conceptual database schema, which is created incrementally by drawing the diagrams. The AOBD editor maintains consistency throughout the diagrams by a restrictive user interface that allows only valid graphical operations and by the lexical analysis of textual expressions.

Kurzfassung (Deutsch)

Gegenstand dieser Diplomarbeit ist der Entwurf und die Implementierung eines grafischen Editors, der die Modellierung von Aktiven Objekt-Verhaltensdiagrammen (AOVD) unterstützt (AOVD Editor). AOVD ist eine grafische Entwurfssprache für den konzeptuellen Entwurf aktiver objektorientierte Datenbanken. AOVD besteht aus den Teilen Objekt-Verhaltensdiagramme, Situationsdiagramme und Aktivierungsdiagramme. Mit dieser Entwurfssprache können Objektstrukturen sowie das passive und aktive Verhalten von Objekten modelliert werden.

Der AOVD Editor ist unter VisualWorks mit MetaDoME entwickelt. VisualWorks ist eine auf Smalltalk-80 basierende objektorientierte Programmierumgebung. MetaDoME ist ein Werkzeug aus der Editorbibliothek DoME (Domain Modeling Environment) und unterstützt die Erstellung grafischer Editoren. Für die Speicherung der modellierten Diagramme werden das objektorientierte Datenbanksystem GemStone sowie der Speicherungsmechanismus BOSS (Binary Object Streaming Service) aus VisualWorks verwendet.

Die grundlegende Architektur des Editors besteht aus drei Schichten. Die erste Schicht (DoME Schicht) dient zur Darstellung und Manipulation der graphischen Objekte. Objekte dieser Schicht werden beim Schließen eines Diagramms wieder freigegeben. Die zweite Schicht (graphische Schicht) dient zur Speicherung von Position, Größe und Aussehen von Objekten der ersten Schicht. Diese Schicht wird zur Rekonstruktion der graphischen Objekte beim neuerlichen Öffnen eines Diagramms verwendet. Die dritte Schicht (semantische Schicht) repräsentiert das konzeptuelle Datenbankschema, das durch das Zeichnen der Diagramme automatisch erzeugt wird. Der AOVD Editor gewährleistet die Konsistenz der modellierten Diagramme, da nur gültige grafische Operationen durch die Benutzerschnittstelle zugelassen werden und da textuelle Ausdrücke lexikalisch überprüft werden.