Presentation is loading. Please wait.

Presentation is loading. Please wait.

Models for Language Engineering Bruno F. Barroca.

Similar presentations


Presentation on theme: "Models for Language Engineering Bruno F. Barroca."— Presentation transcript:

1 Models for Language Engineering Bruno F. Barroca

2 Outline: ① Type Models -Conformance -Relations between models ② (Model) Representation -Self-description -Efficiency -Usability ③ Model of a Meta-Modeling Environment 2

3 3  Type Models: Types of Type models Linguistic  Grammars  Parsers (Strings -> Trees)  Visitor Pattern (Trees -> Graphs)  Attribute Grammars (Multi-stage programming)  Metamodels (Modelverse, ECore, KM3, etc.)  Syntax-directed modeling environments  Instantiation (Factory Pattern) Ontological (General)  Domain Models (Automotive, Bio-informatics, Pharmaceuticals)  Constraint solving  Model Checkers  Theorem provers  Description Logics / Reasoners  Orthogonal analysis

4 4

5 5

6 6

7 Conformance 7

8 8

9  Relations between Models Models and Models Model Transformations  Match Models  Apply Models Conformance with Type Models Model elements From different models Models and Model Elements  Relations are also typed  Megamodeling  Multi-level modeling 9

10 10  Self-describable representations Online (live) modifications and updates  Granularity  Boundary (scope) of self-modification  Built-in functionality Heterogeneity problems  Rewrite itself onto a new platform (situation)  Based on some specification  Typically a Platform model, or  Deployment model

11 11  Efficient representation Match operation on Graphs is a NP-Complete Problem Match operation on Trees (Visitor pattern)  TrNET (Join operations, Construction of complex match patterns based on simple ones)  Analysis  Overlapped pattern matching  Automated redundancy check  Clone detection  Optimization (cost models) Easier to match on paths?  with proper representation  Almost constant complexity How to represent Graphs as paths?  Time complexity  Spatial complexity  Redundancy

12 12  Usable representation General modeling languages? (e.g., UML)  Structure  Class Diagrams  Component Diagrams  Behavior  State charts  Finite state machines  Sequence Diagrams  SCCD with ActionCode Time concept  DEVS with Neutral Action Code  DEVSPro  DEVSLang  Action Code  Programming Language agnostic  Platform independent (API/Library)

13 13

14 14

15 15

16 16  Modeling of (Meta) Modeling Environments? Variability analysis  Features  Language Engineering Domain analysis Types and Patterns  Synchronization of Abstract Syntax with Concrete Syntax  Merge/composition/weaving of arbitrary AS with CS  Notion of model and language fragments  Network language as a glue for the fragments  CS Metamodel?  Diagram/canvas graphical objects/Toolbars/Property Views  Structure  Behavior  Wizards and Tutorials  Notion of Layers  Restricted views based on User profiles

17 Thank you! 17


Download ppt "Models for Language Engineering Bruno F. Barroca."

Similar presentations


Ads by Google