Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where Jean-Marie Favre is active.

Publication


Featured researches published by Jean-Marie Favre.


Electronic Notes in Theoretical Computer Science | 2005

Towards a Megamodel to Model Software Evolution Through Transformations

Jean-Marie Favre; Tam NGuyen

Model Driven Engineering is a promizing approach that could lead to the emergence of a new paradigm for software evolution, namely Model Driven Software Evolution. Models, Metamodels and Transformations are the cornerstones of this approach. Combining these concepts leads to very complex structures which revealed to be very difficult to understand especially when different technological spaces are considered such as XMLWare (the technology based on XML), Grammarware and BNF, Modelware and UML, Dataware and SQL, etc. The concepts of model, metamodel and transformation are usually ill-defined in industrial standards like the MDA or XML. This paper provides a conceptual framework, called a megamodel, that aims at modelling large-scale software evolution processes. Such processes are modeled as graphs of systems linked with well-defined set of relations such as RepresentationOf (μ), ConformsTo (χ) and IsTransformedIn (τ).


Engineering Interactive Systems | 2008

A Model-Driven Engineering Approach for the Usability of Plastic User Interfaces

Jean-Sébastien Sottet; Gaëlle Calvary; Joëlle Coutaz; Jean-Marie Favre

Plastic User Interfaces (UI) are able to adapt to their context of use while preserving usability. Research efforts have focused so far, on the functional aspect of UI adaptation, while neglecting the usability dimension. This paper investigates how the notion of mapping as promoted by Model Driven Engineering (MDE), can be exploited to control UI adaptation according to explicit usability criteria. In our approach, a run-time UI is a graph of models related by mappings. Each model (e.g., the task model, the Abstract UI, the Concrete UI, and the final UI) describes the UI from a specific perspective from high-level design decisions (conveyed by the task model) to low-level executable code (i.e. the final UI). A mapping between source and target models specifies the usability properties that are preserved when transforming source models into target models. This article presents a meta-model for the notion of mapping and shows how it is applied to plastic UIs.


international conference on human computer interaction | 2007

Model-driven adaptation for plastic user interfaces

Jean-Sébastien Sottet; Vincent Ganneau; Gaëlle Calvary; Joëlle Coutaz; Alexandre Demeure; Jean-Marie Favre; Rachel Demumieux

User Interface (UI) plasticity denotes UI adaptation to the context of use (user, platform, physical and social environments) while preserving usability. In this article, we focus on the use of Model-Driven Engineering and demonstrate how the intrinsic flexibility of this approach can be exploited by designers for UI prototyping as well as by end-users in real settings. For doing so, the models developed at design-time, which convey high-level design decisions, are still available at run-time. As a result, an interactive system is not limited to a set of linked pieces of code, but is a graph of models that evolves, expresses and maintains multiple perspectives on the system from top-level tasks to the final UI. A simplified version of a Home Heating Control System is used to illustrate our approach and technical implementation.


international workshop on principles of software evolution | 2005

Languages evolve too! Changing the software time scale

Jean-Marie Favre

Humans will have to live with software for a long time. As demonstrated by the Y2K problem, computer professionals used a wrong time scale when thinking about software. Large software products live much longer than expected. It took a few decades to the research community to admit that software engineering was not only about software development, but above all, about software evolution. However, most academics still consider languages as immutable artefacts. Language/software co-evolution issues are still neglected. Migration issues are however commonplace in software industry. It is therefore time to recognize that languages evolve too. Languages are integral parts of software products. Languages are software too. This paper surveys a few models of evolution taking decades and centuries as time-scales. Then programming languages evolution over the last half-century is sketched by means of a metamodel movie.


software configuration management workshop | 1998

Toward SCM / PDM Integration?

Jacky Estublier; Jean-Marie Favre; Philippe Morat

Software Configuration Management (SCM) is the discipline of controlling the evolution of a software product. Product Data Management (PDM) is the disciple of designing and controlling the evolution of a product design. For a long time, these two domains have been disconnected, but they probably share common concepts and techniques. Furthermore, any large product development includes a substantial (and growing) part of software development. There is a need to control the evolution of both the product and its associated software. Thus we are faced with the question: are the involved concepts and techniques close enough to envision a common tool capable of supporting both domains. This paper tries to answer this question, through an analysis of the PDM standard STEP and tools characteristic of both domains: Metaphase for PDM; Clear Case and Adele for SCM.


model driven engineering languages and systems | 2005

Towards model driven engineering of plastic user interfaces

Jean-Sébastien Sottet; Gaëlle Calvary; Jean-Marie Favre; Joëlle Coutaz; Alexandre Demeure; Lionel Balme

Ubiquitous computing has introduced the need for interactive systems to run on multiple platforms in different physical environments. Providing a user interface specially crafted for each context of use ( ) is costly, may result in inconsistent behaviors [5] and above all is limited to the contexts of use that have been envisioned at design time. Opportunistic interaction in a changing environment requires enabling approaches and techniques for gracefully adapting the interactive system to its context of use. In Human-Computer Interaction, this ability of an interactive system to withstand variations of context of use while preserving its quality in use is called plasticity [7]. This paper shows how Model Driven Engineering is suited for supporting plasticity both at design time and run time.


model driven engineering languages and systems | 2012

Modeling the linguistic architecture of software products

Jean-Marie Favre; Ralf Lämmel; Andrei Varanovich

Understanding modern software products is challenging along several dimensions. In the past, much attention has been focused on the logical and physical architecture of the products in terms of the relevant components, features, files, and tools. In contrast, in this paper, we focus on the linguistic architecture of software products in terms of the involved software languages and related technologies, and technological spaces with linguistic relationships such as membership, subset, or conformance. We develop a designated form of megamodeling with corresponding language and tool support. An important capability of the megamodeling approach is that entities and relationships of the megamodel are linked to illustrative software artifacts. This is particularly important during the understanding process for validation purposes. We demonstrate such megamodeling for a technology for Object/XML mapping. This work contributes to the 101companies community project.


Electronic Notes in Theoretical Computer Science | 2005

Modeling Software Evolution by Treating History as a First Class Entity

Stéphane Ducasse; Tudor Gîrba; Jean-Marie Favre

The histories of software systems hold useful information when reasoning about the systems at hand or about general laws of software evolution. Yet, the approaches developed so far do not rely on an explicit meta-model and do not facilitate the comparison of different evolutions. We argue for the need to define history as a first class entity and propose a meta-model centered around the notion of history. We show the usefulness of our a meta-model by discussing the different analysis it enables.


human-centered software engineering | 2009

Megamodeling and Metamodel-Driven Engineering for Plastic User Interfaces: MEGA-UI

Jean-Sébastien Sottet; Gaëlle Calvary; Jean-Marie Favre; Joëlle Coutaz

Models are not new in Human Computer Interaction (HCI). Consider all the Model-Based Interface Design Environments (MB-IDE) that emerged in the 1990s for generating User Interfaces (UI) from more abstract descriptions. Unfortunately, the resulting poor usability killed the approach, burying the models in HCI for a long time until new requirements sprung, pushed by ubiquitous computing (e.g., the need for device independence). These requirements, bolstered by the large effort expended in Model-Driven Engineering (MDE) by the Software Engineering (SE) community, have brought the models back to life in HCI. This paper utilizes both the know-how in HCI and recent advances in MDE to address the challenge of engineering Plastic UIs, i.e., UIs capable of adapting to their context of use (User, Platform, Environment) while preserving usability. Although most of the work has concentrated on the functional aspect of adaptation so far, this chapter focuses on usability. The point is to acknowledge the strength of keeping trace of the UI’s design rationale at runtime so as to make it possible for the system to reason about its own design when the context of use changes. As design transformations link together different perspectives on the same UI (e.g., user’s tasks and workspaces for spatially grouping items together), the paper claims for embedding a graph that depicts a UI from different perspectives at runtime while explaining its design rationale. This meets the notion of Megamodel as promoted in MDE. The first Megamodel was used to make explicit the relations between the core concepts of MDE: System, Model, Metamodel, Mapping, and Transformation. When transposed to HCI, the Megamodel gives rise to the notion of Mega-UI that makes it possible for the user (designer and/or end-user) to browse and/or control the system from different levels of abstraction (e.g., user’s tasks, workspaces, interactors, code) and different levels of genericity (e.g., model, metamodel, meta-metamodel). Yet, a first prototype (a rapid prototyping tool) has been implemented using general MDE tools (e.g., EMF, ATL). So far, the effort has been directed on the subset of the graph that links together different perspectives on the same UI including its mapping on the platform. Via an Extra-UI, the designer controls the UI’s molding and distribution based on a library of self-explanative transformations. Extra-UIs were previously called Meta-UIs. But as Meta is confusing with the same Meta prefix in MDE, we prefer the prefix Extra to assess there is no change of level of genericity. By contrast the Meta-UI manipulates upper levels of genericity (Meta levels in MDE) for making it possible for the user (designer and/or end-user) to observe and/or define languages for specifying UIs and Meta-UIs. Meta-UIs is the next step in our research agenda. Mega-UI is the overall UI that encompasses UIs, Extra-UIs, and Meta-UIs.


Electronic Notes in Theoretical Computer Science | 2005

Using Meta-Model Transformation to Model Software Evolution

Tudor Gîrba; Jean-Marie Favre; Stéphane Ducasse

Understanding how software systems evolve is useful from different perspectives: reverse engineering, empirical studies etc.. For an effective understanding we need an explicit meta-model. We introduce Hismo, a meta-model which is centered around the notion of history and we show how we can obtain it from a snapshot meta-model. Based on our experience in developing the Hismo reverse engineering system, we show how we can transform a snapshot meta-model in a history meta-model.

Collaboration


Dive into the Jean-Marie Favre's collaboration.

Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Ralf Lämmel

University of Koblenz and Landau

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Andreas Winter

University of Koblenz and Landau

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Joëlle Coutaz

Joseph Fourier University

View shared research outputs
Top Co-Authors

Avatar

Andrei Varanovich

University of Koblenz and Landau

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Researchain Logo
Decentralizing Knowledge