Formal Metamodeling for Secure Model-Driven Engineering

Author(s):  
Liliana Maria Favre

Systems and applications aligned with new paradigms such as cloud computing and internet of the things are becoming more complex and interconnected, expanding the areas in which they are susceptible to attacks. Their security can be addressed by using model-driven engineering (MDE). In this context, specific IoT or cloud computing metamodels emerged to support the systematic development of software. In general, they are specified through semiformal metamodels in MOF style. This article shows the theoretical foundations of a method for automatically constructing secure metamodels in the context of realizations of MDE such as MDA. The formal metamodeling language Nereus and systems of transformation rules to bridge the gap between formal specifications and MOF are described. The main contribution of this article is the definition of a system of transformation rules called NEREUStoMOF for transforming automatically formal metamodeling specifications in Nereus to semiformal-MOF metamodels annotated in OCL.

Author(s):  
Liliana María Favre

The model-driven architecture (MDA) is an approach to model-centric software development. The concepts of models, metamodels, and model transformations are at the core of MDA. Model-driven development (MDD) distinguishes different kinds of models: the computation-independent model (CIM), the platform-independent model (PIM), and the platform-specific model (PSM). Model transformation is the process of converting one model into another model of the same system, preserving some kind of equivalence relation between them. One of the key concepts behind MDD is that models generated during software developments are represented using common metamodeling techniques. In this chapter, we analyze an integration of MDA metamodeling techniques with knowledge developed by the community of formal methods. We describe a rigorous framework that comprises the NEREUS metamodeling notation (open to many other formal languages), a system of transformation rules to bridge the gap between UML/OCL and NEREUS, the definition of MDA-based reusable components, and model/metamodeling transformations. In particular, we show how to integrate NEREUS with algebraic languages using the Common Algebraic Specification Language (CASL). NEREUS focuses on interoperability of formal languages in MDD.


Author(s):  
Liliana Favre

The model-driven architecture (MDA) is an approach to model-centric software development. The concepts of models, metamodels, and model transformations are at the core of MDA. Model-driven development (MDD) distinguishes different kinds of models: the computation-independent model (CIM), the platform-independent model (PIM), and the platform-specific model (PSM). Model transformation is the process of converting one model into another model of the same system, preserving some kind of equivalence relation between them. One of the key concepts behind MDD is that models generated during software developments are represented using common metamodeling techniques. In this chapter, we analyze an integration of MDA metamodeling techniques with knowledge developed by the community of formal methods. We describe a rigorous framework that comprises the NEREUS metamodeling notation (open to many other formal languages), a system of transformation rules to bridge the gap between UML/OCL and NEREUS, the definition of MDA-based reusable components, and model/metamodeling transformations. In particular, we show how to integrate NEREUS withalgebraic languages using the Common Algebraic Specification Language (CASL). NEREUS focuses on interoperability of formal languages in MDD.


Author(s):  
Gan Deng ◽  
Douglas C. Schmidt ◽  
Aniruddha Gokhale ◽  
Jeff Gray ◽  
Yuehua Lin ◽  
...  

This chapter describes our approach to model-driven engineering (MDE)-based product line architectures (PLAs) and presents a solution to address the domain evolution problem. We use a case study of a representative software-intensive system from the distributed real-time embedded (DRE) systems domain to describe key challenges when facing domain evolution and how we can evolve PLAs systematically and minimize human intervention. The approach uses a mature metamodeling tool to define a modeling language in the representative DRE domain, and applies a model transformation tool to specify modelto- model transformation rules that precisely define metamodel and domain model changes. Our approach automates many tedious, time consuming, and error-prone tasks of model-to-model transformation, thus significantly reducing the complexity of PLA evolution.


2013 ◽  
Vol 14 (1) ◽  
pp. 42-49
Author(s):  
Erika Asnina

Abstract The paper focuses on an open question about ensuring conformity among a domain of system knowledge, an analysis domain, a software design domain, and code. Principles of Model Driven Engineering are used in the research, namely, formal specifications of domains and support of conformity among these specifications with the help of traceability mechanism. Topological Functioning Model (TFM) has a mathematical mechanism for supporting traceability, and, thus, conformity. The main results demonstrate that the TFM holds the central place in a chain of trace links between specifications, and analysis of these links enables verification of domain conformity. The results are theoretical and require additional practical experiments.


Quality insurance creates a leverage effect in the global market competition, in particular for software development processes. Thus, companies are brought to use several standards and benchmarks of good practices in management and control of information systems. However, implementing several standards within the same company is difficult and time consuming. In this paper, we propose a Model Driven Engineering approach of building a common repository. It is focused on the common metamodel building. The transformation rules are formalized and illustrated by CMMI model.


Author(s):  
Moez Essaidi ◽  
Aomar Osmani ◽  
Céline Rouveirol

Transformation design is a key step in model-driven engineering, and it is a very challenging task, particularly in context of the model-driven data warehouse. Currently, this process is ensured by human experts. The authors propose a new methodology using machine learning techniques to automatically derive these transformation rules. The main goal is to automatically derive the transformation rules to be applied in the model-driven data warehouse process. The proposed solution allows for a simple design of the decision support systems and the reduction of time and costs of development. The authors use the inductive logic programming framework to learn these transformation rules from examples of previous projects. Then, they find that in model-driven data warehouse application, dependencies exist between transformations. Therefore, the authors investigate a new machine learning methodology, learning dependent-concepts, that is suitable to solve this kind of problem. The experimental evaluation shows that the dependent-concept learning approach gives significantly better results.


Author(s):  
Victoria Torres ◽  
Joan Fons ◽  
Vicente Pelechano

Users consider usability aspects as a key factor when using Web applications. For this reason, in this work we take a special care in this very important issue. In particular, we are centred on usability aspects regarding business process driven Web applications. Therefore, in this work we gather a set of guidelines provided by experts in Web usability and present the solution designed in a particular Web engineering method that follows a model driven development approach. The provided solution bases on the introduction of these guidelines following two different approaches. The former implies handling usability guidelines at the modeling level. The latter implies using them for the definition of the transformation rules that generate the corresponding usable Web applications.


Sign in / Sign up

Export Citation Format

Share Document