Design and Implementation of an Editor for Active Object/Behavior Diagrams
- Authors
- W. Kraus, T. Thalhammer
- Master Thesis
- MT9702 (September, 1997)
- Supervised by
- o. Univ.-Prof. Dr. Michael Schrefl
- Instructed by
- Dipl.-Ing. Peter Lang
Mag. Werner Obermair - Accomplished at
- University Linz, Institute of Business Informatics - Data & Knowledge Engineering
Abstract (English)
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.
Abstract (German)
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.