Meta-Modell für Story-Diagramme und Expressions SDM Taskforce Meeting am 8.12.2010 Meta-Modell für Story-Diagramme und Expressions - Dietrich Travkin 08.12.2010
Motivation Ziel: Ausdrucksmächtigkeit von Story-Diagrammen erweitern, um Matching Constraints zu formulieren komplexe Algorithmen zu spezifizieren in Story-Diagrammen fehlende Sprachkonstrukte zu kompensieren Vorgehen: textuellen Sprachen einbetten, insb. OCL und Java Expressions in beliebigen textuellen Sprachen soweit möglich, Typprüfung bei Ausdrücken ermöglichen Meta-Modell für Story-Diagramme und Expressions - Dietrich Travkin 08.12.2010
Verwendung von Expressions Matching Constraints Zuweisungen an Objektattribute Binding von Objekten und Parametern (Zuweisung eines Variablenwerts) Qualifier bei Links zu qualifizierten Assoziationen Bestimmung von Pfaden (erlaubte Assoziationen, etc.) Guards bei Transitionen (Bool‘sche Bedingungen, Exceptions) Rückgabeausdrücke Algorithmen und Ähnliches Meta-Modell für Story-Diagramme und Expressions - Dietrich Travkin 08.12.2010
Literale, z.B.: 5, 7.9, „text“, true Arten von Expressions Werte: Literale, z.B.: 5, 7.9, „text“, true Variablenwerte (Knoten, Attribute, Parameter, Exceptions) Anzahl gebundener Objekte zu einem Mengenknoten Zusammengesetzte Ausdrücke: Logische, arithmetische und vergleichende Ausdrücke Methodenaufrufe, ggf. auf Objekten Ausdrücke in anderen Sprachen: beliebige Ausdrücke in einer textuellen Sprache wie OCL oder Java Meta-Modell für Story-Diagramme und Expressions - Dietrich Travkin 08.12.2010
Literale, z.B.: 5, 7.9, „text“, true Meta-Modell für Werte Literale, z.B.: 5, 7.9, „text“, true Meta-Modell für Story-Diagramme und Expressions - Dietrich Travkin 08.12.2010
Variablenwerte: Attribute Meta-Modell für Werte Variablenwerte: Attribute Meta-Modell für Story-Diagramme und Expressions - Dietrich Travkin 08.12.2010
Variablenwerte: Knoten Meta-Modell für Werte Variablenwerte: Knoten Meta-Modell für Story-Diagramme und Expressions - Dietrich Travkin 08.12.2010
Variablenwerte: Anzahl von Objekten zu einem Mengenknoten Meta-Modell für Werte Variablenwerte: Anzahl von Objekten zu einem Mengenknoten Meta-Modell für Story-Diagramme und Expressions - Dietrich Travkin 08.12.2010
Variablenwerte: Exceptions Meta-Modell für Werte Variablenwerte: Exceptions Meta-Modell für Story-Diagramme und Expressions - Dietrich Travkin 08.12.2010
Meta-Modell für zusammengesetzte Ausdrücke Logische, arithmetische und Vergleichsoperatoren Meta-Modell für Story-Diagramme und Expressions - Dietrich Travkin 08.12.2010
Meta-Modell für Ausdrücke in anderen Sprachen Einbettung anderer Sprachen wie OCL & Java Meta-Modell für Story-Diagramme und Expressions - Dietrich Travkin 08.12.2010
Typprüfung in Editoren & Co. Interfaces für Statische Typprüfung bei Expressions insb. in Editoren: ExpressionType Checker Auswertung von Expressions: ExpressionEvaluator Chain of Responsibility von speziellen Checkern und Evaluators für bestimmte Arten von Ausdrücken Auch: Bestimmen verwendeter Variablen, um zu entscheiden, wann ein Ausdruck auswertbar ist Liste von allen Variablen im Kontext Mapping von Variablen auf ihre Werte (ggf. int, String, MyType,…) Meta-Modell für Story-Diagramme und Expressions - Dietrich Travkin 08.12.2010
Expressions für Pfadausdrücke --> Carsten? Offene Fragen Expressions für Pfadausdrücke --> Carsten? Spezielle Expressions für Templates nötig? Meta-Modell für Story-Diagramme und Expressions - Dietrich Travkin 08.12.2010