Download presentation
Presentation is loading. Please wait.
1
Using the Vanderbilt Generic Modeling Environment (GME) to Address SOA QoS Sumant Tambe Graduate Intern, Applied Research, Telcordia Technologies Inc. stambe@telcordia.com June 17, 2009
2
2 / 13 Outline Introduction to Model Integrated Computing (MIC) – 4 layer meta-level architecture Overview of GME – Background, architecture, metamodeling, and tooling Examples of Domain-Specific Modeling Languages (DSMLs) – Component QoS Modeling Language (CQML) Tutorial for creating a simple structural SOA modeling language using GME
3
3 / 13 Model Integrated Computing (MIC) Motivation – Design documents are not just documentation, they are part of the system. Capture specification in the form of domain models – Ideally, correct-by-construction – Higher level and highly intuitive – Speak the language of the domain Automate system development process – Formal analysis, simulation, platform-specific code/configuration generation, deployment meta-data, etc.
4
4 / 13 Defining domain models (Metamodeling) switch (state) { case ‘A’: /*... */ case ‘B’: /*... */ M3 M2 M1 M0
5
5 / 13 Generic Modeling Environment (GME) – A mature metamodeling tool Developed at Institute for Software Integrated Systems (ISIS), Vanderbilt University Under development since 1995 Supports 4-layer metamodeling architecture API support in C++, Java, Python Different model storage formats: database, binary, XML Classic paper: Composing Domain-Specific Design Environments, Akos Ledeczi et al., IEEE Computer, Nov 2001
6
6 / 13 GME Editor (M1) snapshot Parts browser with custom icons A graphical domain model of signal flow graphs Tree view
7
7 / 13 Architecture of GME Event-driven Drag and drop Expand/Collapse Multi-view Object Constraint Language (OCL) API for model manipulation (R/W) (C++, Java, Python)
8
8 / 13 Metamodeling Using GME MetaGME: GME’s metamodeling language (M3) MetaGME is meta-circular (can describe itself) Very similar to UML class diagrams Supports general modeling concepts such as – First class domain concepts (classes) – Textual, numerical, and enumerated attributes – Hierarchy (UML composition) – Connection (UML association) – Inheritance (interface/implementation inheritance) – Reference – Multi-aspect modeling (view-per-concern)
9
9 / 13 Defining Domain Specific Modeling Languages (DSMLs) Using GME DSMLs capture the domain formally – E.g., State machines, Component-based systems, Web page navigation modeling language Only allows ”valid” sentences in the domain – Correct-by-construction Every DSML has 3 parts – Abstract syntax (relationship of the domain concepts) – Concrete syntax (textual, graphical, tabular) – Semantics Static semantics specified using metamodel cardinalities & OCL Dynamic semantics implemented using translators
10
10 / 13 A DSML Example: Component QoS Modeling Language (CQML) Hierarchical structuring of component-based systems
11
11 / 13 CQML QoS Modeling(2/2) FailOverUnit – Annotate protected components and assemblies – Specify # of replicas Network-level QoS – Annotate component connections – Specify priority of communication traffic – QoS provisioning using differentiated services – Work done with Telcordia in 2006! Security QoS – Annotate component ports or connections – Controls role-based access control (RBAC) Policies
12
12 / 13 A Prototype Structural SOA Modeling Language Using GME Metamodel
13
13 / 13 Thank you!
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.