Blazo Nastov. Journée des doctorant, Nîmes, France 19 June 2014

Similar documents
Towards V&V suitable Domain Specific Modeling Languages for MBSE

A Design Pattern for Executable DSML

Introduction to MDE and Model Transformation

Introducing Simulation and Model Animation in the MDE Topcased 1 Toolkit

Transformation of the system sequence diagram to an interface navigation diagram

FOUR INDEPENDENT TOOLS TO MANAGE COMPLEXITY INHERENT TO DEVELOPING STATE OF THE ART SYSTEMS. DEVELOPER SPECIFIER TESTER

challenges in domain-specific modeling raphaël mannadiar august 27, 2009

The GEMOC Initiative On the Globalization of Modeling Languages

Model Driven Engineering (MDE)

An Introduction to MDE

Kermeta tutorial. How to create an EMF meta model? François Tanguy, Didier Vojtisek, Zoé Drey, Marie Gouyette. Abstract

Generative Technologies for Model Animation in the TOPCASED Platform

Compositional Model Based Software Development

Use of Model Driven Engineering in Building Generic FCA/RCA Tools

Model transformations. Overview of DSLE. Model transformations. Model transformations. The 4-layer architecture

RsaML : A Domain Specific Modeling Language for describing Robotic software architectures with integration of real-time properties.

DiverSE s Seminar about Software Language Engineering

Semantic Specifications for Domain-Specific Modeling Languages

ATL: Atlas Transformation Language. ATL User Manual

Dominique Blouin Etienne Borde

Model driven Engineering & Model driven Architecture

SCENARIO-BASED REQUIREMENTS MODELLING

Introduction to Dependable Systems: Meta-modeling and modeldriven

Pragmatic integration of model driven engineering and formal methods for safety critical systems design

To be or not programmable Dimitri Papadimitriou, Bernard Sales Alcatel-Lucent April 2013 COPYRIGHT 2011 ALCATEL-LUCENT. ALL RIGHTS RESERVED.

Advances on cognitive automation at LGI2P / Ecole des Mines d'alès

Requirements Modelling and Software Systems Implementation Using Formal Languages

IMCE MOF2 / OWL2 Integration

Improving the Definition of UML

3.4 Deduction and Evaluation: Tools Conditional-Equational Logic

Composition and concurrent execution of heterogeneous domain-specific models

Sequence Diagram Generation with Model Transformation Technology

Transforming models with ATL

Petri Nets. Petri Nets. Petri Net Example. Systems are specified as a directed bipartite graph. The two kinds of nodes in the graph:

Formal Verification for safety critical requirements From Unit-Test to HIL

TOWARDS A MORE FLEXIBLE MODEL-DRIVEN ENGINEERING

On the link between Architectural Description Models and Modelica Analyses Models

Model Driven Engineering (MDE) and Diagrammatic Predicate Logic (DPL)

Génie Logiciel Avancé - Advanced Software Engineering A Brief Revision of UML

A Model-Driven Approach for Telecommunications Network Services Definition

UML Profile for MARTE: Time Model and CCSL

Automatic test generation based on functional coverage

Measuring Incrementally Developed Model Transformations Using Change Metrics

SPECIFICATION OF MODEL TRANSFORMATION AND WEAVING IN MODEL DRIVEN ENGINEERING

CIS 1.5 Course Objectives. a. Understand the concept of a program (i.e., a computer following a series of instructions)

Standards for Writing Requirements and Specifications. Drs. Schesser & Simone BME 496 Capstone II

Software Language Engineering of Architectural Viewpoints

A Taxonomy of Model Transformation

Recommended Practice for Software Requirements Specifications (IEEE)

UML 2.0 State Machines

An Ontological Analysis of Metamodeling Languages

Verification of Megamodel Manipulations Involving Weaving Models

MODEL-DRIVEN ENGINEERING FOR IMPLEMENTING THE ISO SERIES OF INTERNATIONAL STANDARDS

Introduction To Model-to-Model Transformation


Software Architecture

Towards an Integrated System Model for Testing and Verification

Software Engineering from a

White Paper on RFP II: Abstract Syntax Tree Meta-Model

Performance Evaluation

Challenges for advanced domain-specific modeling. István Ráth. Budapest University of Technology and Economics

History-based Schemes and Implicit Path Enumeration

Metamodeling. Janos Sztipanovits ISIS, Vanderbilt University

An Implementation of the Behavior Annex in the AADL-toolset Osate2

TOPCASED. Toolkit In OPen source for Critical Applications & SystEms Development

AADL Requirements Annex Review

ATHABASCA UNIVERSITY RULE ENHANCED BUSINESS PROCESS MODELING OF SERVICE ORIENTED ARCHITECTURES LUIS ROCHA. A project submitted in partial fulfillment

SysML Past, Present, and Future. J.D. Baker Sparx Systems Ambassador Sparx Systems Pty Ltd

SUMMARY: MODEL DRIVEN SECURITY

Hierarchical Composition and Abstraction In Architecture Models

Formal Verification for UML/SysML models

Towards a PIM for virtual prototyping

Semantic Exploitation of Engineering Models: An Application to Oilfield Models

Outline. SLD challenges Platform Based Design (PBD) Leveraging state of the art CAD Metropolis. Case study: Wireless Sensor Network

Virtual Composition of EMF Models

A PRIMITIVE EXECUTION MODEL FOR HETEROGENEOUS MODELING

Kermeta tutorial. How to create a metamodel. François Tanguy, Didier Vojtisek. Abstract

Horváth Ákos Bergmann Gábor Dániel Varró István Ráth

By: Chaitanya Settaluri Devendra Kalia

AMT2.0 - Qualitative and Quantitative Trace Analysis with Extended Signal Temporal Logic

Two Basic Correctness Properties for ATL Transformations: Executability and Coverage

Leveraging Model-Driven Engineering Techniques in Optimizing Compiler Research

Semantics via Syntax. f (4) = if define f (x) =2 x + 55.

Locally unique labeling of model elements for state-based model differences

2nd Belgian-Dutch workshop on Software Evolution

Towards Language-Oriented Modeling

Reifying Concurrency for Executable Metamodeling

Language engineering and Domain Specific Languages

The Specifications Exchange Service of an RM-ODP Framework

Supply Tank 1. Storage Tank 1 TE1. Supply Tank 2. Storage Tank 2 TE2

Plan. Language engineering and Domain Specific Languages. Language designer defines syntax. How to define language

Lecture: Simulation. of Manufacturing Systems. Sivakumar AI. Simulation. SMA6304 M2 ---Factory Planning and scheduling. Simulation - A Predictive Tool

On Using UML Profiles in ATL Transformations

Expressing variability for design patterns re-use

MONIKA HEINER.

Application: Programming Language Semantics

On the Use of Alloy in Engineering Domain Specific Modeling Languages

Towards xmof: Executable DSMLs based on fuml

Start Up Benoît Langlois / Thales Global Services Eclipse (EMFT) EGF 2011 by Thales; made available under the EPL v1.

Q Body of techniques supported by. R precise mathematics. R powerful analysis tools. Q Rigorous, effective mechanisms for system.

Transcription:

Apport de l Ingénierie des Langages de Modélisation à l Ingénierie Système Basée sur les Modèles : conception d une méthode outillée pour la génération de Langages Métier interopérables, analysables et prouvables Blazo Nastov Laboratoire de Génie Informatique et d Ingénierie de Production Journée des doctorant, Nîmes, France 19 June 2014 Institut Mines-Télécom LGI2P - Ecole des Mines d Alès LIRMM - Université Montpellier 2 Blazo.Nastov@mines-ales.fr

Plan Context Creating DSMLs Model simulation & Property proof Limitations of existing works Conclusion and Perspectives 2

Systems Engineering Approach for designing complex systems Involves to create, manipulate and analyze models A model = an aspect of a system under study Engineers take and argue architectural decisions based on models Decisions have impact on the system functioning, safety, cost Engineers must have confidence in created models Confidence in a model if one is 1) Well formed and 2)The right model Model verification improves confidence in models 3

How to creating a DSML Language description Abstract syntax: metamodel Language concepts Relationships between concepts Concrete syntax Textual Graphical Define abstract syntax Define concrete syntax Semantics description An abstract syntax reveal a partial description of the language s semantics Such semantics may sometimes be ambiguous: Different specialists may have different understanding of a single model Types of semantics Denotational - a set of mathematical objects (denotations) which represents the meaning of the model Operational - how a model is interpreted as a sequence of computational steps Translational - translating a model into another language that is well understood 4

Model simulation & Property proof Case 1: Manipulate 3th party equivalent models Provide translational semantics Case 2: Directly manipulate created models Provide operational semantics DSML created by Model Translational Semantics based on translate into Target DSML created by Model Operational Semantics Simulate based on Operational Semantics DSML State of the art: based on create by Simulate Model A Design Pattern to Build Executable DSMLs and Associated V&V Tools (Combemale 2012) 5

Studied approach: concept A metamodel including multiple metamodels DDMM - Domain Definition Meta Model SDMM - State Definition Meta Model EDMM - Event Definition Meta Model TM3 - Trace Management Meta Model Semantics description A Property-Driven Approach for Formal Verification of process Models (Combemale 2008) Limitations State notion Event-State-Property notion Temporal dimension Stable state Property description Language interoperability MetaMetaModel (M3) Action Language or Model Transformation Metamodeling Language (e.g. MOF) MetaModel (M2) <<conforms to>> SDMM States Definition MetaModel <<merge>> <<changes>> <<conforms to>> <<merge>> TM3 Trace management MetaModel <<import>> Semantics Semantics Mapping <<trigerredby>> DDMM Domain Definition MetaModel <<merge>> EDMM Events Definition MetaModel 6

<<Resource>> Limitations of studied approach (1) 1) State notion and formalization Principle The behavior of a concept = state model The evolution of a concept = state change Example of a SDMM Limitation: concepts having large, possibly unlimited, number of states Example: Oil 5L <<Function>> F1 Example of EDMM Observation: the resource oil should be in a state of min 5L Proposal: SDMM extension Define a finite number of descriptive states (e.g. sufficient or insufficient) Quality and Quantity state variables Mixed 7

Limitations of studied approach (2) 2) Towards condition and event based transition approach Principle Define states in a SDMM Define events in a EDMM Define evolution properties Example (see SDMM and EDMM) For f Function { (f.state==authorised) AND ( i f.iteminputs,(i.state==present)) AND ( j f. resourceflowinputs,((j.requestedquantity >= j.sourceresource.availablequantity) AND (j.requestedquality == j.sourceresource.quality)))) implies executefunction(f) } Limitation: difficult to read and understand Proposal: use state machines to abstract SDMM and EDMM in order to improve readability and understandability Proposal: define transition firing, including an explicit conditional part clearly identified and separated from the SDMM and EDMM Example Authorised Cond1 ExecuteFunction Execution Cond1: {(f.state==authorised) AND ( i f.iteminputs,(i.state==present)) AND ( j f. resourceflowinputs, ( (j.requestedquantity >= j.sourceresource.availablequantity) AND (j.requestedquality == j.sourceresource.quality))))} 8

Limitations of studied approach (3) 3) Towards model transient states detection and management Principle Temporal properties are defined using TOCL Only one clock is considered Limitation: model stability is out of reach A model is in a stable state if it cannot evolve into another state, taking into account the inputs defined into an operational scenario A transient state of a concept is a state such that it is possible to change that state without modifying the inputs Example Firing conditions b 0 = A 1 a 1 = B 1 Scenario = (a 0,T 0, A 0, B 0 ) T 0 T 1 T 2 a 0 b 0 a 1 A 0 A 1 B 0 B 1 A 1 A 2 a 0 a 1 A 0 A 1 A 2 A 0 Result= (T 1, A 2, B 1 ) a 3 A 1 b 0 a 2 B 0 B 1 b 1 Proposal: consider model stability Introduce two types of clocks External: bound to the environment Internal: bound to the concept evolution Introduce evolution algorithm RI read input CFS calculate future state WO write output Initialize internal clock T i Initialize external clock T e RI CFS t 0 t 1 t 2 Increment external clock Stability is reached? Internal clock External clock WO 9

Limitations of studied approach (4) 4) Towards properties modeling language and checking techniques Principle A property should be verified at each execution (universal property), or at least once (existential property) Type of properties Structural properties Temporal properties Quantitative properties Limitation: considered approach is less advanced and profound compared to other property-driven approaches Proposal: study existing approached and extend then formalize the considered pattern 5) Towards modeling languages and models interoperability Limitation: model interoperability is out of reach of considered pattern Proposal: extend the pattern in order to handle model interoperability Model interoperability = Dynamic semantics interoperability Extend SDMM & EDMM DSML Model Ecore Define interoperability rules Interactions DSML Model 10

Studied approach: tools Kermeta - executable metamodeling language Define operational semantics trough aspect programming in imperative way ATL - Atlas Transformation Langage Define operational semantics through endogenous transformations in declarative way Define translational semantics through exogenous transformations in declarative way Main limitation and locks Programming related SE experts are not necessarily experts in programming 11

Synthesis Systems engineering Model confidence & verification techniques A complete language description is composed of An abstract syntax A concrete syntax A semantics description Simulation and property proof A Design Pattern to Build Executable DSMLs Limitations and Proposals 12

Publications B. Nastov, F. Pfister, Experimentation of a Graphical Concrete Syntax Generator for Domain Specific Modeling Languages. INFORSID 2014 (Selected for a special number of the review ISI) B. Nastov,Contribution to model verification: operational semantic for System Engineering modeling languages. CIEL 2014 B. Nastov, V. Chapurlat, C. Dony and F. Pfister. A verification approach from MDE applied to Model Based System Engineering: xeffbd dynamic semantic. CSD&M 2014 13