Presentation is loading. Please wait.

Presentation is loading. Please wait.

Institute for Software Integrated Systems Vanderbilt University On Metamodel Composition Akos Ledeczi, Greg Nordstrom, Gabor Karsai, Peter Volgyesi and.

Similar presentations


Presentation on theme: "Institute for Software Integrated Systems Vanderbilt University On Metamodel Composition Akos Ledeczi, Greg Nordstrom, Gabor Karsai, Peter Volgyesi and."— Presentation transcript:

1 Institute for Software Integrated Systems Vanderbilt University On Metamodel Composition Akos Ledeczi, Greg Nordstrom, Gabor Karsai, Peter Volgyesi and Miklos Maroti 6 September 2001 CCA ‘01 México City, México Presented by Jonathan M. Sprinkle

2 Overview Introduction Composition of Metamodels Metamodeling Environment Illustrative Example Conclusions Feedback Loop

3 Introduction Why is it good to model CBS’s? –Requirements force the tight integration of information processing with physical processes –Attempting to manage a system based on documentation requirements is terribly difficult Fortunately, it is possible to use a model of the system to enforce the requirements or constraints of the system.

4 Introduction What is the best way to express this model of the system? –Differential equations –UML –Simulink/Stateflow –Backus-Naur form –Cindy Crawford’s measurements The correct answer is: –The best way to model the system depends on the system! –Some modeling languages work better than others, depending on the “domain” of the system

5 Introduction One solution is to develop a modeling library for each and every type of system that will ever be used in the history of the world –Try to get funding for this one Another solution is to develop a language for developing modeling languages –provides the modeler with the ability to customize his own domain language for his own domain –also, this abstracts the process for the modeling environment, which means that all “metamodels” will be expressed in the same language

6 Introduction Meta-metamodels Domain Models Metamodels CBS (domain) describe

7 Y Z Composition of Metamodels W W X Y W X X

8 Composition allows metamodels to contain other metamodels –This allows a metamodeler to take advantage of existing metamodels –Metamodeling development time is decreased –Systems may be independently developed, and later brought together Other features of the composable meta- modeling environment allow for models describing similar systems to be brought together in a common modeling environment

9 Composition of Metamodels How are metamodels described? –Currently, UML and OCL are used to describe the language of the domain. –A UML class in the metamodel translates to a domain entity type (e.g. robot, PLC, cooling system, HMI). –OCL is used to give semantic constraints to the system. How is composition accomplished? –UML containment and inheritance are used to describe the relationships of domain entity types, not of the metamodeling entities. In other words, it is difficult to customize the metamodeling constructs in terms of other metamodeling constructs. –Thus, UML was extended to include new operators to express the relationships between metamodeling constructs.

10 Composition of Metamodels The Union operator –This operator describes a full union of two UML classes. All attributes and capabilities are combined into one class, thus creating a domain entity that is the union of two domain entities Example –A tire manufacturer gauges its plant output with light gates (for height of tire stack) and sonic detectors (for width of tire, to determine tire type). The data from these actuators are coalesced, and interpreted by two different computers. –Modeling these two actuators as one could make data interpretation easier, by combining height and width into one class, rather than two Light Gates Union Sonics

11 Composition of Metamodels Implementation Inheritance operator –In this composition type, the child inherits all of the attributes of its parent, but receives only the associations where its parent is the container Example –A man and his son exhibit Implementation Inheritance. The child gets the attributes of his father (e.g. same house, same looks), and will “inherit” the belongings owned (“contained”) by his father –However, the child does not go to his father’s job, although his father has an association with work. Father Son

12 Composition of Metamodels Interface Inheritance operator –The complement of Implementation Inheritance –In this composition type, only the associations where its parent is NOT the container, and inherits no attributes whatsoever Example –The new manager of a pro sports team gets Interface Inheritance from the previous manager. The new manager has the same responsibility as the old manager. –However, he has different perks (attributes), and without the same respect from the players (container associations) Manager New Manager

13 Metamodeling Environment The GME tool suite uses the same editor for editing metamodels as for editing domain models This is because the metamodeling environment is just a domain modeling language in the “Metamodeling” domain In fact, the metamodeling environment was generated from its own metamodel, known as the meta-metamodel Domain metamodel metamodeling Domain Models domain modeling Generates

14 Now in GME it is possible to “import” metamodels into the metamodeling environment, and combine them using the composition operators This allows metamodel reuse, facilitated by the fact that the metamodeling environment is a full fledged domain environment Also, extending the metamodels leaves the originals intact, while the extensions reflect changes to the originals when they take place Metamodeling Environment

15 Illustrative Example We have a Signal Flow (SF) environment (paradigm) with Compounds (which contain primitives) and Primitives (connected by I/O signals) whose behavior is specified by C code. We have a FSM paradigm with States connected by Transitions Now, we want to be able to express the behavior of Primitives using an FSM, instead of C code. We want to combine the two, resulting in: –Primitive “FSMNode” that contains an FSM spec –FSMNodes should contain States, but States should not contain FSMNodes –FSMNodes can have I/O signals connecting it to States

16 Illustrative Example True UML Inheri- tance Implementation Inheritance

17 Illustrative Example

18 Conclusions 1.Domain specific models can lead to efficient modeling of CBS’s. 2.The best domain specific modeling environments are custom created for the domain. 3.By creating performatives that associate metamodeling concepts, custom creation of DSME’s is made more simple because of the ability to reuse and merge existing metamodels.

19 Questions? “Well HAL, I’m damned if I can find anything wrong with it.” “Yes. It’s puzzling, isn’t it.” -- 2001: A Space Odyssey


Download ppt "Institute for Software Integrated Systems Vanderbilt University On Metamodel Composition Akos Ledeczi, Greg Nordstrom, Gabor Karsai, Peter Volgyesi and."

Similar presentations


Ads by Google