Jean BézivinUniversity of Nantes | UNIV Nantes · None
Jean Bézivin
HDR, PhD
About
181
Publications
67,219
Reads
How we measure 'reads'
A 'read' is counted each time someone views a publication summary (such as the title, abstract, and list of authors), clicks on a figure, or views or downloads the full-text. Learn more
7,982
Citations
Introduction
Publications
Publications (181)
The subject of applications of MDE is vast and rapidly evolving. Usually one may consider three important areas: generation of software artifacts, discovery of models from structured systems and interoperability between heterogeneous systems. As the third part of this series of tutorial, this article will show these three areas of increasing comple...
In Model-driven engineering (MDE), metamodels provide some sort of typing system on top of models, and provide a precise, regular and strong support for representations of systems by models. As we have already briey introduced in the previous article, metamodels are further typed by metametamodels and, together with models that are typed by metamod...
Complex systems are hard to define. Nevertheless they are more and more frequently encountered. Examples include a worldwide airline traffic management system, a global telecommunication or energy infrastructure or even the whole legacy portfolio accumulated for more than thirty years in a large insurance company. There are currently few engineerin...
Complex systems are hard to define [1]. Nevertheless they are more and more frequently encountered. Examples include a worldwide airline traffic management system, a global telecommunication or energy infrastructure or even the whole legacy portfolio accumulated for more than thirty years in a large insurance company. There are currently few engine...
1. INTRODUCTION
The aim of the First International Workshop on Global Integrated
Model Management is to bring together researchers working on
outstanding model driven engineering issues, with a view to
discussing them, comparing their approaches, techniques or ideas,
and letting these researchers take advantage of different
perspectives on these i...
Model driven engineering (MDE) is a set of well defined practices based on tools that use at the same time metamodeling and model transformations, to achieve some automated goals in the production, maintenance or operation of software intensive systems. Although there are a substantial amount of literature on individual technique, it has been diffi...
Domain-Specific Languages (DSLs) enable more concise and readable specifications than General Purpose Languages (GPLs). They are for this reason increasingly used. This DSL approach presents, however, many challenges. One of them is the prototyping and implementation of the numerous DSLs that are required to replace a single GPL. This work presents a...
This paper provides a summary of the First International Workshop on Model Driven Interoperability (MDI 2010), held on October
5, 2010, in conjunction with the MODELS 2010 conference in Oslo, Norway.
Research groups develop plenty of tools aimed at solving real industrial problems. Unfortunately, most of these tools remain as simple proof-of-concept tools that companies consider too risky to use due to their lack of proper user interface, documentation, completeness, support, etc that companies expect from commercial-quality level tools. Based...
Recently, Model-Driven Architecture (MDA) has been proposed to take into account the development of large software systems, such as B2B applications on the Internet. However, before this becomes a reality, some issues need solutions, such as the definition of various Domain-Specific Languages (DSL) and also automatic transformation between these do...
Software tools and corresponding knowledge tend to be collected and packaged into platforms like Eclipse, MathLab or KDE. Their success and usefulness combined with their growing size and complexity rise issues about management of dependencies between their components and between the platform and other applications which rely on its plug-in system...
Model Driven Engineering (MDE) advocates the use of models, metamodels and model transformations to revisit some of the classical operations in software engineering. MDE has been mostly used with success in forward and reverse engineering (for software development and better maintenance, respectively). Supporting system interoperability is a third...
Successful application of model-driven engineering approaches requires interchanging a lot of relevant data among the tool ecosystem employed by an engineering team (e.g., requirements elicitation tools, several kinds of modeling tools, reverse engineering tools, development platforms and so on). Unfortunately, this is not a trivial task. Poor tool...
Abstract. Complex software systems are often constructed by assembling bundles from repositories. Eclipse is one of these systems; build on top of a platform accepting different sets of bundles according to the user needs. This adaptability is one of the main benefits of this kind of systems but implies also several configuration problems. The cons...
Model-Driven Engineering (MDE) advocates the use of models at every step of the software development process. Within this context, a team of engineers collectively and collaboratively contribute to a large set of interrelated models. Even if the main focus can be on a single model (e.g. a class diagram model), related elements in other models (e.g....
This paper describes the scope, structure and contents of the First International Workshop on Model Driven Interoperability (MDI 2010), which was held on October 5, 2010, in conjunction with the MoDELS 2010 conference in Oslo, Norway.
Conceptual schemas (CS) are core elements of information systems knowledge. A challenging issue in the management processes is to allow decision makers, such as business people, to directly define and refine their schemas using a pseudo-natural language. The recently published Semantics for Business Vocabulary and Rules (SBVR) is a good candidate f...
This paper presents a solution to the Case Study: BPMN to BPEL Model Transformation. This solution implements a bridge between two business process modeling languages, BPMN and BPEL. The proposed solution has been implemented using ATL.
Model Driven Engineering (MDE) is rapidly maturing and is being deployed in several situations. We report here on an experiment
conducted in the context of ILOG, a leader in the development of Business Rule Management Systems (BRMS). BRMSs aim at enabling
business users automating their business policies. There is a growing number of BRMS supportin...
Writing navigation expressions is an important part of the task of developing a model transformation definition. When navigation is complex and the size of source models is significant, performance issues cannot be neglected. Model transformation languages often implement some variants of OCL as their navigation language. Writing efficient code in...
The level of maturity that has been reached by model transformation technologies is proved by the growing literature on transformation libraries that address an increasingly wide spectrum of applications.
With the success of the modeling and transformation paradigm, the need arises to address more complex applications that require a direct manipula...
Technological and business changes influence the evolution of software systems. When this happens, the software artifacts may need to be adapted to the changes. This need is rapidly increasing in systems built using the Model-Driven Engineering (MDE) paradigm. An MDE system basically consists of metamodels, terminal models, and transformations. The...
Models play a cornerstone role in Model-Driven Engineering (MDE). The use of models opens up new possibilities for creating, analyzing, and manipulating systems through various types of tools and languages. Each model usually addresses
This paper presents a representative case study of bridging UML/MARTE (unified modeling language/modeling and analysis of real time and embedded systems) to FIACRE (intermediate format for the architectures of embedded distributed components), and discusses in detail two sub-problems of semantic mapping and syntactic transformation respectively. At...
A matching strategy computes mappings between two models by executing a set of heuristics. In this paper, we introduce the AtlanMod Matching Language (AML), a Domain Specific Language (DSL) for expressing matching strategies. AML is based on the Model-Driven paradigm, i.e., it implements model matching strategies as chains of model transformations....
Model-driven engineering (MDE) is frequently presented as an important change in software development practice. However, behind
this new trend, one may recognize a lot of different objectives and solutions. This paper first studies the multiple facets
of MDE and its evolution in the recent period. Several new usage scenarios (i.e., reverse engineer...
For nearly ten years, modern forms of software modeling have been used in various contexts, with good apparent success. This is a convenient time to reflect on what has been achieved, where we stand now, and where we are leading to with Model-Driven Engineering (MDE). If there is apparently some consensual agreement on the core mechanisms, it is mu...
This paper reports on a panel discussion held during the Educators’ Symposium at MODELS’2009. It shortly explains the context
provided for the discussion and outlines the statements made by the panelists. The panelists were asked to make their statements
along a number of topics relevant to teaching modeling like: Notation, Semantics, Programming,...
Model Driven Engineering (MDE) is rapidly maturing and is being deployed in several situations. We report here on an experiment conducted in the context of ILOG, a leader in the development of Business Rule Management Systems (BRMS). BRMSs aim at enabling business users automating their business policies. There is a growing number of BRMS supportin...
Different communities have developed plenty of design notations for software engineering in support of practical (via UML)
and rigorous (via formal methods) approaches. Hence the problem of bridging these notations rises. Model-driven engineering
(MDE) is a new paradigm in software engineering, which treats models and model transformations as first...
Writing queries and navigation expressions in OCL is an important part of the task of developing a model transformation definition.
When such queries are complex and the size of the models is significant, performance issues cannot be neglected.
In this paper we present five patterns intended to optimize the performance of model transformations whe...
OMG is mainly famous for its CORBA and IDL activities. In the various working groups of this organization, many different themes are however studied, with the same industrial consensus process that has made the success of CORBA, IDL, IIOP and many other middleware recommendations. Some of the outcomes of these efforts have already gained an importa...
Different formal methods have presented plenty of formal models for system specification and proof. Hence the problem of bridging these formal models rises. MDE is a new paradigm in software engineering, which implements software by (meta-)modeling and model transforming. In this paper, we provide a MDE based approach for bridging heterogeneous for...
The basic assumption in model engineering (MDE) is to consider models as first class entities. One of the most important kinds of models in MDE approaches are transformation models. Transformation models define operations between different models. However, there are many operations that are not efficiently handled by generic model transformations....
In the context of Model Driven Engineering, models are the main development artifacts and model transformations are among the most important operations applied to models. A number of specialized languages have been proposed, aimed at specifying model transformations. Apart from the software engineering properties of transformation languages, the av...
Several years ago, first generation model driven engineering (MDE) tools focused on generating code from high-level platform-independent abstract descriptions. Since then, the target scope of MDE has much broadened and now addresses for example testing, verification, measurement, tool interoperability, software evolution, and many more hard issues...
Writing queries and navigation expressions in OCL is an important part of the task of developing a model transformation definition. When such queries are complex and the size of the models is significant, performance issues cannot be neglected. In this paper we present five patterns intended to optimize the performance of model transformations when...
The problem of automatic or semi-automatic adaptation of models to their evolving metamodels is gaining importance in the Model-Driven community. Recent approaches propose to adapt models using predefined information (i.e., a trace of changes). Unfortunately, this information is not always available in practice. In many situations metamodels evolve...
At a recent meeting, the TNI-Software Company presented the following problem: "An organization has developed a huge quantity of software artifacts conforming to the AUTOSAR 2.0 standard. They wish to migrate these to a new version of the AUTOSAR standard. Which is the best way to proceed in order to automate this migration?". This article presents...
In this paper, we propose a solution to build a Domain Specific Language (DSL) for interactive television applications with the Atlas Model Management Architecture (AMMA) platform. We demonstrate how to give a textual concrete syntax to a metamodel and how to build an Eclipse editor automatically. Finally, we discuss the need of a megamodel for man...
In object technology, reusability is achieved primarily through class inheritance. In model engineering, where reusability is also important, it should be possible to extend a modeling artifact in a similar manner to add new capabilities. This paper presents a conceptual and practical approach tomodel extensibility, in which new models are created...
Complex metamodels are often decomposed into several views, in particular for architecture framework metamodels such as DoDAF (Department of Defense Architecture Framework). Designing models that conform to this kind of metamodels implies data integration problems between the different views. Usually, different views from a same metamodel share a c...
Establishing and using traceability and provenance between different models is a very important issue in complex software systems. Traceability in the small (local traceability) handles the trace information between model elements. Traceability in the large (global traceability) handles traceability information between models as a whole. Current so...
Model driven engineering (MDE) is frequently presented as an important change in software development practices. However behind this new trend, one may recognize a lot of different objectives and solutions. This paper studies the multiple facets of MDE and its evolution in the recent period. It concludes by emphasizing the broad potential applicati...
Interoperability of heterogeneous data sources has been extensively studied in data integration applications. However, the increasing number of tools that produce data with very different formats, such as bug tracking, version control, etc., produces many different kinds of semantic heterogeneities. These semantic heterogeneities can be expressed a...
More than five years ago, the OMG proposed the Model Driven Architecture (MDA™) approach to deal with the separation of platform dependent and independent aspects in information systems. Since then, the initial idea of MDA evolved and Model Driven Engineering (MDE) is being increasingly promoted to handle separation and combination of various kinds...
Model-driven engineering is based on the use of models at all stages of the development. In many situations, these models have to be represented so as to be handled by a human being or a specific tool (e.g. a compiler). However, the default representation of models (XMI) is generally not adapted. There is consequently a need for tools enabling the...
Much of the current work on model transformations seems essentially operational and executable in nature. Executable descriptions are necessary from the point of view of implementation. But from a con- ceptual point of view, transformations can also be viewed as descriptive models by stating only the properties a transformation has to fulfill and b...
In the context of Model Driven Engineering models are the main development artifacts and model transformations are among the most important operations applied to models. A number of specialized languages have been proposed, aimed at specifying model transformations. Apart from the software engineering properties of transformation languages the avai...
We first present a model repository that has been built as part of the open source Eclipse GMT/AM3 project (Generative Modeling Technology/ATLAS MegaModel Management). Several contributed artifacts present in this repository are organized into sets of models of similar nature called zoos. The structure of the repository will be rapidly described. I...
Within the GMT technology project (Generative Modeling Tools), an initial set of tools and artifacts for Global Model Management have recently been released under Eclipse. This paper presents the corresponding AM3 (ATLAS MegaModel Management) goals and contributions. AM3 is intended to provide support for modeling in the large, i.e. managing global...
Building on previous experiments of reverse engineering with the Squeak language, we have designed a new prototype on the DotNet platform that should be able to exploit the full capabilities of the Visual Basic 9.0 language, including the facilities offered for dynamic typing. The objective of this work is to prove that we are able to implement an...
There is little agreement on terminology in model composition, and even less on key characteristics of a model composition
solution. We present three composition frameworks: the Atlas Model Weaver, the Epsilon Merging Language, and the Glue Generator
Tool, and from them derive a core set of common definitions. We use this to outline the key require...
The existence of many application scenarios and link types motivates the development of sets of DSLs (Domain Specific Languages) to capture links between model elements. We propose using weaving models [1] to do this. A weaving model conforms to a weaving metamodel. The creation of weaving models requires adapted user interfaces, for example with l...
1. INTRODUCTION
The aim of the First International Workshop on Global Integrated
Model Management is to bring together researchers working on
outstanding model driven engineering issues, with a view to
discussing them, comparing their approaches, techniques or ideas,
and letting these researchers take advantage of different
perspectives on these i...
We consider in this paper that a DSL (Domain Specific Language) may be defined by a set of models. A typical DSL is the ATLAS
Transformation Language (ATL). An ATL program transforms a source model (conforming to a source metamodel) into a target model
(conforming to a target metamodel). Being itself a model, the transformation program conforms to...
We are witnessing an increasing interest in the Software Engineering community towards the use of models for developing software systems. Shifting intellectual property and business logic from source code into models, allows organizations to focus on the important aspects of their systems, which have traditionally been blurred by the usage of stand...
Domain-Specific Languages (DSLs) are high level languages defined for combining expressivity and simplicity by means of constructs which are close to the problem domain and distant from the intricacies of underlying software implementation constraints. In contrast with general purpose languages, DSLs are typically not useful for generic tasks in mu...
In this paper we report on some research activities in the ATLAS team in Nantes and the GOOD OLD AI research group in Belgrade
in the domain of model-based engineering. We start from the idea that a convenient organization of various technical spaces
in three “metamodeling” layers offers a convenient working environment. The main message of this pa...
In this paper, we present a metamodel for supporting the mapping specification between two metamodels. A mapping model based
on this proposed metamodel defines correspondences between elements from two metamodels. It can then be used to generate a
transformation definition, e.g. using Atlas Transformation Language (ATL). This metamodel is based on...
Over the last years, Model Driven Engineering platforms evolved from fixed metamodel tools to systems with variable metamodels. This enables dealing with a variety of Domain Specific Languages (DSLs). These generic platforms are increasingly adopted to solve problems like code generation. However, these environments are often limited to syntax defi...
Working with models often requires the ability to assert the compliance of a given model to a given set of constraints. Some tools are able to check OCL invariants on UML models. However, there are very few tools able to do the same for any metamodel. This is quite penalizing for the DSL (Domain Specific Language) approach to model engineering. In...
Domain modeling promotes the description of various facets of information systems by a coordinated set of domain-specific lan- guages (DSL). Some of them have visual/graphical and other may have textual concrete syntaxes. Model Driven Engineering (MDE) helps defining the concepts and relations of the domain by the way of metamodel elements. For vis...
In the context of Model Driven Engineering (MDE), models are the main development artifacts and model transformations are among the most important operations applied to models. A number of specialized languages have been proposed in order to specify model transformations. The OMG has, for instance, adopted the QVT specification. Apart from the soft...
In this paper we introduce the concept of Technical Space (TS) to refer to technologies at a higher level of abstraction. Some tech-nical spaces can be easily identified, e.g. the XML TS, the DBMS TS, the programming languages TS, the OMG/MDA TS, etc. As the spec-trum of such available technologies is rapidly broadening, the necessity to offer clea...
Reverse engineering and software evolution are probably today among the most challenging research areas in software engineering. They are also very rich fields for applying model engineering techniques. However, in order to define a sound model-driven reverse engineering framework, we need to understand more clearly the conditions under which vario...