11.07.2015 Aufrufe

ODL-Sprachkonstrukte und interaktive Benutzerschnittstelle - TUM

ODL-Sprachkonstrukte und interaktive Benutzerschnittstelle - TUM

ODL-Sprachkonstrukte und interaktive Benutzerschnittstelle - TUM

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

Kapitel 5ImplementierungIn diesem Kapitel wird technische Implementierung der Erweiterungen des <strong>ODL</strong>-Systems beschrieben,die im Kapitel 4 vorgestellt wurden. Wir beschreiben die Implementierung der Erweiterung des<strong>ODL</strong>-Sprachumfangs im Abschnitt 5.1 <strong>und</strong> die Realisierung der <strong>interaktive</strong>n Schnittstelle für Benutzerabfragenim Abschnitt 5.2.Zunächst wollen wir auf den allgemeinen Aufbau des <strong>ODL</strong>-Systems eingehen, der schematischauf der Abbildung 5.1 gezeigt <strong>ODL</strong> wird (eine Architektur-Schemaausführliche Beschreibung der <strong>ODL</strong>-Systemarchitektur findetsich in [Pasch], S.15-40).Output result<strong>ODL</strong>ConstraintEditorCompile<strong>ODL</strong>ConstraintGeneratorEvaluate<strong>ODL</strong>ConstraintEvaluationRead/ModifyaccessMap entities andrelations to QUESTmeta modelRead accessQUESTModelMapperPerform user queriesfor context quantifiers<strong>ODL</strong>User QuerySubsystemQUESTMeta ModelInterfaceAbbildung 5.1: Schematische Darstellung des <strong>ODL</strong>-SystemsDie Komponenten ”<strong>ODL</strong> Costraint Editor”, ”<strong>ODL</strong> Costraint Generator” <strong>und</strong>”<strong>ODL</strong> Costraint Evaluator” bilden den Hauptkreislauf des <strong>ODL</strong>-Systems – eine <strong>ODL</strong>-Abfragewird im Editor erstellt, dann wird sie vom Generator zu einer internen Darstellung kompiliert,danach ausgewertet, <strong>und</strong> schließlich wird das Ergebnis im <strong>ODL</strong>-Editor ausgegeben.Der ”<strong>ODL</strong> Costraint Generator” greift bei Bedarf auf den ”QUEST Model Mapper”zu, um Entitäten <strong>und</strong> Relationen in <strong>ODL</strong> auf Metamodell-Elemente sowie ihre Attribute <strong>und</strong> Assoziationenim QUEST-Metamodell abzubilden. Bei der Auswertung einer <strong>ODL</strong>-Abfrage muss der ”<strong>ODL</strong>Costraint Evaluator” für die Auswertung von context-Quantoren auf das ”<strong>ODL</strong> UserQuery Subsystem” zugreifen, damit der Benutzer einen Wert für die vom context-Quantorgeb<strong>und</strong>ene Variable eingeben kann.Das ”QUEST Meta Model Interface” stellt die Schnittstelle zum QUEST-Metamodelldar, über die das <strong>ODL</strong>-System auf das Metamodell <strong>und</strong> auf Produktmodelle zugreifen kann. DieseSchnittstelle, die eine Fassade-Implementierung ([GammaEtAl], S.212-222) darstellt, ist vom Gr<strong>und</strong>satzher nicht an eine konkrete Metamodell-Implementierung geb<strong>und</strong>en – ihre Zugriffsmechanismenkönnen an neue Metamodell-Implementierungen angepasst werden, ohne dass die für das <strong>ODL</strong>-

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!