ppti.info Fiction Eclipse Modeling Framework Pdf


Sunday, November 10, 2019

Modeling Framework ppti.info Technology Project: Graphical Modeling Framework (GMF). ▫ Commercial offerings .. (ppti.info).

Language:English, Spanish, Hindi
Published (Last):08.10.2015
ePub File Size:17.39 MB
PDF File Size:13.23 MB
Distribution:Free* [*Regsitration Required]
Uploaded by: ANNAMARIE

It engineering platforms. He has been involved in program and is important that designers are able to comprehend the vari- organization committees of conferences and co-edited several ous kinds of design-level structural evolution that a soft- special issues on scientific journals about these subjects. Nurturing the detection of differences between models is essential to model development and management practices, which are traditionally not neglected in high-quality soft- mising the adoption of generic modelling techniques [5].

Thus, these activities are In this paper, we discuss the problem of model differ- crucial not only for understanding the system design and its ences and illustrate how EMF Compare [6] addresses evolution but also for obtaining an accurate picture of the this difficult task in the Eclipse generic platform. In par- quality requirements of the system so that it can be consist- ticular, the approach is metamodel-independent, i. Moreo- permit to benefit fully from its potential in MDE.

This pa- ver, it is model-based in the sense that the outcome of a per presents part of the state of the art in calculating model model comparison is represented by means of a model differences and outlines a conceptual framework which pre- which enables its manipulations in model-to-model or scribes crucial requirements to enhance differences to first- model-to-text transformations.

Accordingly, a solution must necessarily have The paper is structured as follows: in Section 2 an intro- a high degree of separation between three relevant aspects duction to the problem of model differences is presented in model differentiation: calculation, representation, and and a number of representation requirements are given.

IX, No. Finally some conclu- Representation. Detecting differences and identifying sions are drawn. However, the effectiveness decompose the problem into its constituent parts. In fact, of representation of model differences is often compromised its complexity is manifold and refers at least to the follow- by factors such as the calculation method or the scope of ing aspects: the model difference.

For instance, in the case of edit scripts a calculation: a procedure, method or algorithm able the representation is operational since it describes how to to compare or contrast two distinct models; modify the initial model in order to obtain the final model. In other c visualization: model differences often requires to be cases, the representation may even be model-based which visualized in a human-readable notation which let the de- permits further manipulations of the differences , as in the signer grasp the rationale behind the modification which case of coloring, but the visualization and the representa- the models underwent during their lifetime.

In general, a proper representation must contain and characterize EMF Compare according to them. In the context of software evolution, dif- this knowledge available to further analyses and manipula- ference calculation has been intensively investigated as tions. Thus, we believe it must be given in terms of abstract witnessed by a number of approaches ranging from text— syntax by introducing suitable metamodels as outlined be- comparisons to model—differencing techniques.

As stated low. Mens in [7], delta calculation algorithms can be clas- Visualization. Differences often require to be presented sified by different points of view, each of which is related according to a specific need or scope highlighting those to the particular application the approach is used for.

Navigation menu

Spe- pieces of information which are relevant only for the pre- cialized differencing methods have been introduced to fixed goal. In other words, a visualization is realized by strictly compare Universal Modelling Language diagrams, giving a concrete syntax which renders the abstract syntax such as [8] [9] [10] amongst others. These approaches can representation and may vary from intuitive diagrammatic be divided in two main categories depending whether they notations to textual catalogues as, for instance, spreadsheet make use of persistent identifiers or similarity metrics: the data.

The same representation may include different former relies heavily on identifiers which are assigned to visualizations depending on the specific purpose the de- model elements by the modelling tools. This compromises signer has in mind. In this respect, both edi scripts and col- interoperability and locks the models within a specific plat- ouring represent two different visualizations although they form since identifiers are not universally computable.

The are generated directly by the specific differencing algorithm latter approach establishes how similar two model elements and letting the representation be rendered by means of in- are by comparing not only the properties local to the ele- ternal formats which prevent them from being processed in ments but also their global properties which makes the tool chains.

For instance, edit scripts render both represen- method agnostic of the modeling tools being independent tation and visualization with the same notation. In particular, we are inter- mechanisms. A generalization of the work by Z. Xing and ested in those representations which raise model differences E. Stroulia [10] is an approach based on structural similar- to the rank of first class objects fulfilling the "everything is ity which is able to compare not only UML Universal a model" principle [5].

As a consequence, a number of de- Modelling Language models but also models conforming sirable properties must be imposed on representation tech- to any arbitrary metamodel [11]. This represents an advance niques as discussed in [14] and described below. That means one can get those models and use them to external sources of information, as for instance references produce differences reports thanks to model-to-text trans- to base model elements or base metamodels; formation, or can refactor the differencing model to ignore 4 transformative, each difference model must induce some differences.

In this respect, the method is model-based a transformation, such that whenever it is applied to the according to the requirements in Section 2. Moreover, the trans- formation must also be applicable to any other model which 3. Consequently this algo- depends only on difference models being composed and is rithm produces most of the calculation complexity. In es- compatible with the induced transformations; sence, we have to consider all the elements of both versions 6 metamodel independence, the representation tech- of the model and decide whether an element in the first niques must be agnostic of the base metamodel, i.

In other We do use the "same" word as we do not want to test equal- words, it must be not limited to specific metamodels, as for ity, we are just trying to find out if this element has a com- instance happens for certain calculation methods e. Next we will analyse the intrinsic differences [10] which are given for the UML metamodel. The above discussion presents a minimal set of require- The generic match engine is based on statistics, heuris- ments which should be taken into account in order to let a tics, and instances which are compared with four different generic modeling platform deal with an advanced form of metrics aggregated in an overall score of matching.

These model management.

In the next section, we will illustrate metrics analyse the name of an element, its content, its type EMF Compare showing how our approach fulfills most of and the relations it has with other elements; it returns a value the described requirements. Especially, the "name" metric tries to find an EMF Compare is an Eclipse project which was initiated attribute standing for a name of the model element, the "type" in at Eclipse Summit Europe, where the need for a metric compares the meta-class features, this is useful if model comparison engine emerged.

The Obeo and Intalio you want to consider the possible types refactoring an In- companies [15] [16] contributed the first implementation terface changed in Class for instance. The "relation" metric of this component which has had two stable releases since considers the linked instances both from containment and from that time.

Eclipse Modeling Framework

The goals of this component are to provide "out non-contained relations, respectively. Finally, the "content" of the box" model comparison and merge support.

Even if metric analyses the intrinsic content of the instance. The metrics gets "false high scores" be- different levels of generality and which depend on the main cause most of the data comes from default values which are concerns one wants to address with model comparison see shared amongst instances.

Introduction à EMF Eclipse Modeling Framework

These cases have been processed Sect. The EMF model is also created in a dynamic way i. The third part of the bridge is the M1-level transformation with EMF mod- els as input and Visio models as output. The document contains the Visio model data which is parsed by a C program.

This program creates the Visio model by using the Visio programming interface. EPC is a graphical modelling language to describe business processes. EPC models consist of nodes and arcs. Nodes can be functions, events, or connectors. Arcs between these elements represent the control flow. This transformation is easy to realise by a model-to-model transformation with EMF-based transformation tools.

Thereafter, we can apply the validation rules to check the models.

In this case the model contains no errors. The above example is very specific but, it is also possible to use other stencils and Visio models. Furthermore, the usage of other bridges from EMF to other metamodel hierarchies enables the usage of further tools. All these bridges apply the same pattern to integrate different metamodel hierarchies. They define a mapping on the M3-level and use the instance-of relationship between the underlying level to transform metamod- els at M2-level and models at M1-level.

In the context of tool integration, the existing approaches are manifold. Re- garding the level of transformation, the M3B approach is based upon a mapping onto the M3-level. Other approaches [15, 2] work on M2-level, that is, the in- tegration is based on a transformation between metamodels correlating to the data models of the tools.

GXL, for instance, offers support for exchanging instance graphs together with their appropriate schema information in an uniform format. GXL is based on typed, attributed, ordered directed graphs, which are extended by concepts to support the repre- sentation of hypergraphs and hierarchical graphs. Theoretically, GXL could be used in order to realise the exchange of the data between each level.

For this, each model has to be transformed into this graph format. For this purpose, we explored the Visio stencil definition concepts and the underlying data structure of models. Furthermore, we described the metametamodel Ecore and the generic model storage structure of EMF. Based on this information, we specified an M3-level mapping and derived an M2- level and M1-level transformation. Based on the transformation specification, we have implemented the bridge as an Eclipse plug-in.

Furthermore, we have demonstrated the bridge by an example of EPC export. M3-Level-Based Bridges have already been used repeatedly to achieve meta model interchange between different tools based on metamodel hierarchies. As a result of the development and the study of this bridge and other bridges, we can say that this approach is useful to build tool chains and to reuse models and model operations. In a next step, we want to describe the concept in a more formal way than presented in this paper.

References 1. Stahl, T. Bezivin, J. Karsai, G. Biafore, B. Steinberg, D. The Eclipse Series. Addison-Wesley Longman 6.

Kern, H. In Tolvanen, J. Software and Systems Modeling 5 4 — 9. Software and System Modeling 4 2 — Mens, T. In Bezivin, J.

Kelly, S. Keller, G. In Pautasso, C. Balmin, A. Amelunxen, C.

Proceedings of the 30th International Conference on Software Engineering — Technical report Winter, A. The consequent use of models, modelling languages and model operations as central concepts in this approach leads to several advantages: a better handling of complexity, more efficient development processes, and im- proved software quality, to name a few. Today powerful tools are available for the support of typical MDD tasks such as language definition, modelling or model processing.

But an ongoing problem is the insufficient tool interoperability [2, 3]. This lack of interoperability complicates the development of complete tool chains or the reuse of existing metamodels, models, and model operations in a development process.

We apply this ap- proach to realise the interchange of metamodels and models between two selected tools: Microsoft Visio [4] and Eclipse Modeling Framework EMF [5]. Microsoft Visio is a widely used commercial tool that is mainly suitable for modelling and visualising information.

Visio provides the definition of modelling languages by using stencils.

The tool is part of the Microsoft Office Suite that enables the integration into other Microsoft products. In addition, there are many tools and add-ons ViFlow1 , SemTalk2 , etc. EMF allows the definition of domain-specific metamodels and provides basic functionalities, such as a serialization function, a generator language, and an API to access meta models. In summary, the motivation to build an M3B between Visio and EMF is that both tool spaces can benefit from the created interoperability be- cause Visio has advantages in modelling and EMF provides a wide range of model processing tools.

The paper is structured as follows: in the following section, we will give a conceptual overview of M3B. As the bridge is based on the mapping between metametamodels, we will explore the metamodel hierarchy of Visio and EMF in section 3.

Then, we will present the development of the bridge and show an example in section 4. Lastly, we will give an overview of related works in section 5 and will present our conclusions in section 6.

Although the implementation of such bridges can differ in technical terms, the conceptual approach is the same. A basic prerequisite to construct M3Bs is the existence of a metamodel hi- erarchy [8] consisting of three levels. At the lowest level M1-level are models which describe a software system.

The structure of these models and the available concepts that can be instantiated in these models are defined by a metamodel at M2-level. Finally, the structure and the available concepts of the metamod- els are defined by a metametamodel at M3-level.

Models, metamodels and the metametamodel are connected by a linguistic instance relationship [8] that can also be denoted as conform-to relationship [9].

Based on the existence of such hierarchies, the basic step to build an M3B is the mapping between the metametamodels. The mapping consists of different mapping rules that specifiy the relation between semantically equivalent con- cepts. Semantic equivalence means, for instance, that the concepts at M3-level which express relationships at M2-level are mapped onto each other. Further semantic concepts are described in [7] and include, for instance, object type, attribute type or data type.

Based on the mapping specification, the transfor- mation of metamodels and models can be derived. To create the transformations, it is necessary to know how the conform-to relationship is realised between each level. The M2-level transformation maps metamodels between hierarchies.

Pattern of M3-Level-Based Bridges metamodels in both hierarchies are isomorphic. Analogous to the M2-level trans- formation, the M1-level transformation enables the mapping of models. These models are also isomorphic.

Figure 1 shows the concept of M3B. The use of the transformation taxonomy from Mens et al. The M2-level transformation is horizontal and exogenous because the abstraction level stays the same and the metametamodels are different.

The M1-level transformation is horizontal and endogenous because the abstraction level also stays the same and the metamodels are equal. In this section we present the data structure for Visio models at M1-level in order to describe the M1-level transformation later. A snippet of the model structure is shown in Figure 2. Visio models are stored in documents that are usually files with a name.

A document consists of pages. A page has also a name and is a canvas that contains shape elements. A shape is a model element and is an instance of a master from a stencil.

Hence, a shape has a reference attribute to a master. A shape can have its own data properties defined only at M1- level and data properties defined in a master defined at M2-level. A page can likewise have data properties. Data properties store values with a specified data type. Visio supports data types such as text, numbers, time, date, currency and list.

Furthermore, a shape can contain other shapes and can be connected with other shapes. Data Structure of Visio Models 3. The concrete and abstract syntax of a DSL can be defined by stencils. Anal- ogous to the analysis of the model structure, we have studied the object model and the user interface. The result of the analysis is a metametamodel that ex- plicates the language definition concepts. This metametamodel is here denoted as V3 model see Fig.Use the Attribute node to assign the attribute called name to each object.

Select your. Pattern of M3-Level-Based Bridges metamodels in both hierarchies are isomorphic. A further metamodelling concept is the inheritance between EClasses. Each data property is assigned to a master, has a data type, and can have a default value. The more fuzziness or adjustability in their application.

This means that the reference can be navigated from both ends. Each setter also has a generated notification to observers of the model. ResourceSetImpl ; import org. Creating JavaDoc You can also generate Javadoc for your classes and methods.

PETRONILA from Illinois
I am fond of reading books rarely . Look over my other posts. One of my hobbies is juggling club.