using the vanderbilt generic modeling environment (gme) to address soa qos
DESCRIPTION
Using the Vanderbilt Generic Modeling Environment (GME) to Address SOA QoS. Sumant Tambe Graduate Intern, Applied Research, Telcordia Technologies Inc. [email protected] June 17, 2009. Outline. Introduction to Model Integrated Computing (MIC) 4 layer meta-level architecture - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Using the Vanderbilt Generic Modeling Environment (GME) to Address SOA QoS](https://reader035.vdocuments.net/reader035/viewer/2022062809/56815753550346895dc4f7ec/html5/thumbnails/1.jpg)
Using the Vanderbilt Generic Modeling Environment (GME) to Address SOA QoS
Sumant TambeGraduate Intern, Applied Research, Telcordia Technologies Inc. [email protected] 17, 2009
![Page 2: Using the Vanderbilt Generic Modeling Environment (GME) to Address SOA QoS](https://reader035.vdocuments.net/reader035/viewer/2022062809/56815753550346895dc4f7ec/html5/thumbnails/2.jpg)
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
![Page 3: Using the Vanderbilt Generic Modeling Environment (GME) to Address SOA QoS](https://reader035.vdocuments.net/reader035/viewer/2022062809/56815753550346895dc4f7ec/html5/thumbnails/3.jpg)
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.
![Page 4: Using the Vanderbilt Generic Modeling Environment (GME) to Address SOA QoS](https://reader035.vdocuments.net/reader035/viewer/2022062809/56815753550346895dc4f7ec/html5/thumbnails/4.jpg)
4 / 13
Defining domain models (Metamodeling)
switch (state) { case ‘A’: /* ... */ case ‘B’: /* ... */
M3
M2
M1
M0
![Page 5: Using the Vanderbilt Generic Modeling Environment (GME) to Address SOA QoS](https://reader035.vdocuments.net/reader035/viewer/2022062809/56815753550346895dc4f7ec/html5/thumbnails/5.jpg)
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
![Page 6: Using the Vanderbilt Generic Modeling Environment (GME) to Address SOA QoS](https://reader035.vdocuments.net/reader035/viewer/2022062809/56815753550346895dc4f7ec/html5/thumbnails/6.jpg)
6 / 13
GME Editor (M1) snapshot
Parts browser with custom icons
A graphical domain modelof signal flow graphs
Tree view
![Page 7: Using the Vanderbilt Generic Modeling Environment (GME) to Address SOA QoS](https://reader035.vdocuments.net/reader035/viewer/2022062809/56815753550346895dc4f7ec/html5/thumbnails/7.jpg)
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)
![Page 8: Using the Vanderbilt Generic Modeling Environment (GME) to Address SOA QoS](https://reader035.vdocuments.net/reader035/viewer/2022062809/56815753550346895dc4f7ec/html5/thumbnails/8.jpg)
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)
![Page 9: Using the Vanderbilt Generic Modeling Environment (GME) to Address SOA QoS](https://reader035.vdocuments.net/reader035/viewer/2022062809/56815753550346895dc4f7ec/html5/thumbnails/9.jpg)
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
![Page 10: Using the Vanderbilt Generic Modeling Environment (GME) to Address SOA QoS](https://reader035.vdocuments.net/reader035/viewer/2022062809/56815753550346895dc4f7ec/html5/thumbnails/10.jpg)
10 / 13
A DSML Example: Component QoS Modeling Language (CQML) Hierarchical structuring of component-based systems
Detector1
Detector2
Planner3 Planner1
Error Recovery
Effector1
Effector2
Config
LEGEND
Receptacle
Event Sink
Event Source
Facet
![Page 11: Using the Vanderbilt Generic Modeling Environment (GME) to Address SOA QoS](https://reader035.vdocuments.net/reader035/viewer/2022062809/56815753550346895dc4f7ec/html5/thumbnails/11.jpg)
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
![Page 12: Using the Vanderbilt Generic Modeling Environment (GME) to Address SOA QoS](https://reader035.vdocuments.net/reader035/viewer/2022062809/56815753550346895dc4f7ec/html5/thumbnails/12.jpg)
12 / 13
A Prototype Structural SOA Modeling Language Using GME
Metamodel
![Page 13: Using the Vanderbilt Generic Modeling Environment (GME) to Address SOA QoS](https://reader035.vdocuments.net/reader035/viewer/2022062809/56815753550346895dc4f7ec/html5/thumbnails/13.jpg)
13 / 13
Thank you!