1 MBSE 2012 Copyright © Chris Paredis. All Rights Reserved. Model Transformations in Model-Based Systems Engineering Chris Paredis Associate Director Model-Based.

Slides:



Advertisements
Similar presentations
Integration of MBSE and Virtual Engineering for Detailed Design
Advertisements

Language Specification using Metamodelling Joachim Fischer Humboldt University Berlin LAB Workshop Geneva
The role of OCL in the Model Driven Architecture Jos Warmer Klasse Objecten
Software Modeling SWE5441 Lecture 3 Eng. Mohammed Timraz
Professor John Hosking, Dean of Engineering and Computer Science Models, Modelling, MBSE.
Production Rule Representation Team Response Presentation to BEIDTF OMG Montreal Aug 2004 Ruleml.org.
Formal Techniques in Software Engineering Universiteit AntwerpenIntroduction 1.1 Formal Techniques in Software Engineering 3de BAC Informatica Chapter.
Programmierung verteilter Systeme Lab Institut für Informatik Universität Augsburg Universitätsstraße 14, Augsburg Tel.: (+49) 821/ , Fax:
Amit, Keyur, Sabhay and Saleh Model Driven Architecture in the Enterprise.
Building Enterprise Applications Using Visual Studio ®.NET Enterprise Architect.
Automated Analysis and Code Generation for Domain-Specific Models George Edwards Center for Systems and Software Engineering University of Southern California.
7 July 2003 MDA presentation Dennis Wagelaar 1 Model-Driven Architecture The current state of affairs.
Ontologies Reasoning Components Agents Simulations An Overview of Model-Driven Engineering and Architecture Jacques Robin.
Model Driven Architecture (MDA) Partha Kuchana. Agenda What is MDA Modeling Approaches MDA in a NutShell MDA Models SDLC MDA Models (an Example) MDA -
CS 290C: Formal Models for Web Software Lecture 6: Model Driven Development for Web Software with WebML Instructor: Tevfik Bultan.
Whole Platform Tesi di Dottorato di: RICCARDO SOLMI Università degli Studi di Bologna Facoltà di scienze matematiche, fisiche e naturali Corso di Dottorato.
OMG Meeting, Helsinki Model Driven Architecture An Alternative Implementation Approach Werner Froidevaux
MDD Tutorial for managers Eclipse ECESIS Project A presentation of MDD basics Model-driven development (MDD) tutorial for managers EUROPEAN SOFTWARE INSTITUTE,
BPM based robust e-business application development.
CASE Tools And Their Effect On Software Quality Peter Geddis – pxg07u.
Model Based Systems Engineering (MBSE) using SysML GSFC Systems Engineering Seminar June 8, 2010 Sanford Friedenthal Lockheed Martin
1 MBSE Copyright © Georgia Tech. All Rights Reserved. Model-Based Systems Engineering with SysML: Problem Definition, Simulation and Optimization.
MDA Guide Version CYT. 2 Outline OMG Vision and Process Introduction to MDA How is MDA Used? MDA Transformations Other MDA Capabilities Using the.
Xactium xDSLs Run Models Not Code Tony Clark
Workshop on Integrated Application of Formal Languages, Geneva J.Fischer Mappings, Use of MOF for Language Families Joachim Fischer Workshop on.
MDA and QVT  Tom Gullion, Director of Product Management, Together Products.
Mihir Daptardar Software Engineering 577b Center for Systems and Software Engineering (CSSE) Viterbi School of Engineering 1.
MDE Model Driven Engineering Xavier Blanc Université Pierre et Marie Curie
3 April SOA: Services Oriented Architecture MDA: Model Driven Architecture.
Model transformation with a dedicated imperative language IRISA Rennes (France) - Triskell team Jean-Marc Jézéquel Didier Vojtisek Jean-Philippe Thibault.
Introduction to MDA (Model Driven Architecture) CYT.
2nd TTCN-3 User Conference, June The TTCN-3 Metamodel – A Basis for Tool Integration Ina Schieferdecker TU Berlin/Fraunhofer Fokus Hajo Eichler,
University of Southern California Center for Systems and Software Engineering Model-Based Software Engineering Supannika Koolmanojwong Spring 2013.
Model Driven Development An introduction. Overview Using Models Using Models in Software Feasibility of MDA MDA Technologies The Unified Modeling Language.
GIT SysML Work Update Representing Executable Physics-based CAD/CAE Models in SysML Presenter
1 5 Nov 2002 Risto Pohjonen, Juha-Pekka Tolvanen MetaCase Consulting AUTOMATED PRODUCTION OF FAMILY MEMBERS: LESSONS LEARNED.
MDA – Model Driven Architecture Olivier Riboux. Overview What is MDA? The Challenges MDA addresses Developing in the MDA Benefits / Conclusion Case Study:
December 4, ICSSEA’03 The SmartTools Software Factory The MDA approach and Generative programming for Software Development:
CIM LAB MEETING Presentation on UML Rakesh Mopidevi Kwangyeol Ryu.
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
Cooperative Computing & Communication Laboratory A Survey on Transformation Tools for Model-Based User Interface Development Robbie Schäfer – Paderborn.
1 Technical & Business Writing (ENG-715) Muhammad Bilal Bashir UIIT, Rawalpindi.
XASTRO-2 Presentation CCSDS SAWG th November 2004.
Yu, et al.’s “A Model-Driven Development Framework for Enterprise Web Services” In proceedings of the 10 th IEEE Intl Enterprise Distributed Object Computing.
Ontologies Reasoning Components Agents Simulations An Overview of Model-Driven Engineering and Architecture Jacques Robin.
Model Driven Performance Analysis University College London James Skene –
Design Pattern Support based on principles of model driven development Zihao Zhao.
© 2014 Phoenix Integration, Inc. All Rights Reserved phoenix-int.com Simulation Workflow Automation and Model Management MBSE Workshop / INCOSE IW 2014.
Viewpoint Modeling and Model-Based Media Generation for Systems Engineers Automatic View and Document Generation for Scalable Model- Based Engineering.
Model Based Systems Engineering Visualization Steven Corns Missouri University of Science & Technology.
SysML-Modelica Transformation Specification (SE DSIG Meeting, Jacksonville, 3/22/2010) Chris Paredis Georgia Tech On behalf of the SysML-Modelica Working.
Model Driven Architecture MDA SE-548 Lale Doğan
© 2009 Artisan Software Tools. All rights reserved. Testing Solutions with UML/SysML Andrew Stuart, Matthew Hause.
International Workshop 28 Jan – 2 Feb 2011 Phoenix, AZ, USA Modeling Standards Activity Team Model-based Systems Engineering (MBSE) Initiative Roger Burkhart.
SysML Modelica Integration Working Group Report (SE DSIG Meeting, San Antonio, TX, 9/15/2009) Chris Paredis Georgia Tech 1.
Page 1 Hitachi Ltd. – FhI FOKUS TTCN-3 User Conference, June 2005 MDA based approach for generation of TTCN-3 test specifications Hideto Ogawa, Hitachi.
Model Based Engineering Environment Christopher Delp NASA/Caltech Jet Propulsion Laboratory.
INCOSE IW 2012 MBSE Workshop Systems Modeling
SysML-Modelica WG Meeting Robot Example Chris Paredis Georgia Tech Update by S. Friedenthal
Copyright © 2014 InterCAX LLC. All Rights Reserved. SLIM for Model-Based Systems Engineering Manas Bajaj, PhD Chief Systems Officer
Building Enterprise Applications Using Visual Studio®
SysML-Modelica: A Redefinition & Modification Use Case
SysML v2 Usability Working Session
Chris Paredis Georgia Tech
Evaluating Compuware OptimalJ as an MDA tool
Constructing MDA-based Application Using Rational XDE for .NET
Execute your Processes
Automated Analysis and Code Generation for Domain-Specific Models
On behalf of the SysML-Modelica Working Group
Software Architecture & Design
Presentation transcript:

1 MBSE 2012 Copyright © Chris Paredis. All Rights Reserved. Model Transformations in Model-Based Systems Engineering Chris Paredis Associate Director Model-Based Systems Engineering Center Georgia Tech Model-Based Systems Engineering Center

2 MBSE 2012 Copyright © Chris Paredis. All Rights Reserved. Objective u Provide enough information about model transformations so that you can envision where in your organization the use of model transformations can add value u Examples are not meant to be an exhaustive review of the state of the art but only illustrations

3 MBSE 2012 Copyright © Chris Paredis. All Rights Reserved. Overview of Presentation u Background — Model Transformations –What is a model transformation? — some simple examples –Meta-modeling and Model transformations languages u Model Transformations in MBSE? –A taxonomy of usage scenarios –Examples and illustrations u How to get started? u Summary

4 MBSE 2012 Copyright © Chris Paredis. All Rights Reserved. What is a Model Transformation? u Model Transformation: Any operation on a model that produces another model u Very general: Almost anything you “do” with a model u Our primary interest: Automated model transformations

5 MBSE 2012 Copyright © Chris Paredis. All Rights Reserved. Example: Models Evolve Over Time (from: A Practical Guide to SysML — Friedenthal, Moore, Steiner)

6 MBSE 2012 Copyright © Chris Paredis. All Rights Reserved. Example: Models Evolve Over Time (from: A Practical Guide to SysML — Friedenthal, Moore, Steiner) We forgot to drain the residue…

7 MBSE 2012 Copyright © Chris Paredis. All Rights Reserved. Example: Models Evolve Over Time (from: A Practical Guide to SysML — Friedenthal, Moore, Steiner) Hmm… we could make this a continuous process

8 MBSE 2012 Copyright © Chris Paredis. All Rights Reserved. Model Transformations u A SysML model is a snapshot… u How are the snapshots connected to each other?  Model Transformations u A model transformation represents knowledge… u The more sophisticated the knowledge, the more difficult the transformation is to automate

9 MBSE 2012 Copyright © Chris Paredis. All Rights Reserved. Examples of Model Transformations Transformation Source Model Stage-Gate Documents Transformation.pdf.html.pptx Endogenous TransformationExogenous Transformation

10 MBSE 2012 Copyright © Chris Paredis. All Rights Reserved. Examples of Model Transformations Project Management Metrics Transformation Simulation & Optimization Transformation Source Model Stage-Gate Documents Transformation.pdf.html.pptx

11 MBSE 2012 Copyright © Chris Paredis. All Rights Reserved. Some History: Model-Driven Architecture Platform- Independent Model CORBA Model MDA Tool generates all or most of the implementation code for deployment technology selected by the developer. Java/EJB Model CORBA XML/SOAP Model Java/EJB XML/SOAP Other Other Model Map Platform Specific Model to application interfaces, code, GUI descriptors, SQL queries, etc. (from: MDA, by R. Soley: PIM PSM Code

12 MBSE 2012 Copyright © Chris Paredis. All Rights Reserved. Automated Transformations: A Closer Look… Transformation.pdf.html.pptx Source ModelTarget Model Source Modeling Language Target Modeling Language modeled in Models must be Formal

13 MBSE 2012 Copyright © Chris Paredis. All Rights Reserved. Automated Transformations: A Closer Look… Transformation.pdf.html.pptx Source ModelTarget Model Source Modeling Language Target Modeling Language modeled in Source Meta-Model Target Meta-Model defined by conforms to Formal Syntax and Semantics

14 MBSE 2012 Copyright © Chris Paredis. All Rights Reserved. Modeling Languages are also Modeled Formally u UML is defined by a meta-model u This meta-model is defined in a meta-modeling language: The MOF language (Meta-Object Facility) How is a meta-modeling language defined? Part of the meta-model for UML (from: A Practical Guide to SysML — Friedenthal, Moore, Steiner)

15 MBSE 2012 Copyright © Chris Paredis. All Rights Reserved. The OMG Meta-Model Infrastructure System conforms to represented by M0Reality Model M1User Model Meta-model M2UML Meta-meta-model M3MOF conforms to

16 MBSE 2012 Copyright © Chris Paredis. All Rights Reserved. Model Transformation Specification conforms to readswrites refers to executes (Czarnecki, K., & Hellen, S., 2006) Source Meta-model Transformation Specification Target Meta-model Source Model Transformation Engine Target Model

17 MBSE 2012 Copyright © Chris Paredis. All Rights Reserved. Implementations of Model Transformation u Imperative –Conventional programming tools –Access models through API of modeling tools –Java, Python, Ruby u Declarative –Consist of multiple declarative model transformation rules »Left-hand side = applicability pattern »Right-hand side = model modification to apply –Transformation engine automatically determines which rules to apply –ATL, QVT, Moflon, GReAT, VIATRA2,…

18 MBSE 2012 Copyright © Chris Paredis. All Rights Reserved. Generative Model Transformation for Hydraulic System u Model Transformation rules to generate systems u Generate random system alternatives by applying rules in randomized order (Example in MOFLON)

19 MBSE 2012 Copyright © Chris Paredis. All Rights Reserved. Generative Model Transformation for Hydraulic System u Model Transformation rules to generate systems u Generate random system alternatives by applying rules in randomized order (Example in MOFLON)

20 MBSE 2012 Copyright © Chris Paredis. All Rights Reserved. Decision Tree of Generation Process

21 MBSE 2012 Copyright © Chris Paredis. All Rights Reserved. Overview of Presentation u Context — Model Transformations –What is a model transformation? — some simple examples –Meta-modeling and Model transformations languages u How can model transformations be useful in MBSE? –A taxonomy of usage scenarios –Examples and illustrations u How to get started? u Summary

22 MBSE 2012 Copyright © Chris Paredis. All Rights Reserved. Taxonomy for Model Transformations in MBSE u Organized by the nature of the knowledge encoded in the transformation 1.Knowledge about Views »Take information from a model and represent it in a different (graphical) syntax 2.Knowledge about Analysis »Take a structural description of a system and generate a corresponding analysis model 3.Knowledge about Synthesis »Generate a (more detailed) structural description u From simple to sophisticated From specific to general

23 MBSE 2012 Copyright © Chris Paredis. All Rights Reserved. Why are Model Transformations Important? Collaboratively Developing Complex Systems Software Manufacturing Project Management Testing Analysis CAD Fuselage Landing Gear Engines …

24 MBSE 2012 Copyright © Chris Paredis. All Rights Reserved. Why are Model Transformations Important? Highly Interrelated Information & Knowledge Software Manufacturing Project Management Testing Analysis CAD Fuselage Landing Gear Engines … Relations / Dependencies

25 MBSE 2012 Copyright © Chris Paredis. All Rights Reserved. System Model Why are Model Transformations Important? MBSE Allows for More Formal Communication Software Manufacturing Project Management Testing Analysis CAD Fuselage Landing Gear Engines …

26 MBSE 2012 Copyright © Chris Paredis. All Rights Reserved. System Model Why are Model Transformations Important? MBSE Allows for More Formal Communication Software Manufacturing Project Management Testing Analysis CAD Fuselage Landing Gear Engines …

27 MBSE 2012 Copyright © Chris Paredis. All Rights Reserved. Example: Representing CAD parts in Creo as SysML Blocks in MagicDraw (from: Manas Bajaj, InterCAX)

28 MBSE 2012 Copyright © Chris Paredis. All Rights Reserved. Example: Representing Assembly Structures in Windchill as SysML part properties in MagicDraw (from: Manas Bajaj, InterCAX) SysML model block structure Part structure (BOM) in PLM systems (e.g. Windchill) Auto-generation and sync

29 MBSE 2012 Copyright © Chris Paredis. All Rights Reserved. Document Generator by INCOSE SE2 team (mbse.gfse.de)

30 MBSE 2012 Copyright © Chris Paredis. All Rights Reserved. Document Generator by INCOSE SE2 team (mbse.gfse.de)

31 MBSE 2012 Copyright © Chris Paredis. All Rights Reserved. Document Generator by INCOSE SE2 team (mbse.gfse.de) SysML + Profile Transformation DocBook XML file XSLT Transformation.html.pdf.docx

32 MBSE 2012 Copyright © Chris Paredis. All Rights Reserved. Using DocGen at JPL (Source: “Model Based Document and Report Generation for Systems Engineering,” Delp, Lam, Fosse, Lee)

33 MBSE 2012 Copyright © Chris Paredis. All Rights Reserved. Taxonomy for Model Transformations in MBSE u Organized by the nature of the knowledge encoded in the transformation 1.Knowledge about Views »Take information from a model and represent it in a different (graphical) syntax 2.Knowledge about Analysis »Take a structural description of a system and generate a corresponding analysis model 3.Knowledge about Synthesis »Generate a (more detailed) structural description u From simple to sophisticated From specific to general

34 MBSE 2012 Copyright © Chris Paredis. All Rights Reserved. System Model Why are Model Transformations Important? MBSE Allows for More Formal Communication Software Manufacturing Project Management Testing Analysis CAD Fuselage Landing Gear Engines …

35 MBSE 2012 Copyright © Chris Paredis. All Rights Reserved. Execute Parametric Models in ModelCenter u Syntactic transformation from parametrics to ModelCenter Transformation System Properties Analysis Model

36 MBSE 2012 Copyright © Chris Paredis. All Rights Reserved. 36 SysML-Modelica Transformation Specification SysML- Modelica Transformation follows the principles of Model- Driven Architecture (MDA)

37 MBSE 2012 Copyright © Chris Paredis. All Rights Reserved. 37 Modelica SysML4Modelica Bi-directional Transformation

38 MBSE 2012 Copyright © Chris Paredis. All Rights Reserved. SysML4Modelica to Modelica Syntactical Mapping 38

39 MBSE 2012 Copyright © Chris Paredis. All Rights Reserved. Transform Structure into Analysis Model

40 MBSE 2012 Copyright © Chris Paredis. All Rights Reserved. Transform Structure into Analysis Model u Transformation requires deep analysis knowledge…

41 MBSE 2012 Copyright © Chris Paredis. All Rights Reserved. Model Transformations for Fluid Power u Transformation Rules: –If Cylinder in descriptive, then ModelicaCylinder in analytical –If Pump in descriptive, then ModelicaPump and ModelicaFilter in analytical –… –If connection between Pump and Valve, then ModelicaConnection between ModelicaPump and ModelicaValve –… Not a good idea! Too many rules… Too specific, brittle Not a good idea! Too many rules… Too specific, brittle

42 MBSE 2012 Copyright © Chris Paredis. All Rights Reserved. Define Model Correspondences Correspondence Models

43 MBSE 2012 Copyright © Chris Paredis. All Rights Reserved. Structure to Analysis Mapping SysML4Modelica Analysis Model SysML Descriptive Model Transformation Modelica Model Only 2 rules One for components One for connections Only 2 rules One for components One for connections

44 MBSE 2012 Copyright © Chris Paredis. All Rights Reserved. Generation of Vehicle Analyses (Work with students B. Bailey, J. Branscomb & Ford Motor Company) u Reference model of logical vehicle architecture in SysML u Specialize the reference model into a variant for a specific vehicle program u Specify the types of analyses needed

45 MBSE 2012 Copyright © Chris Paredis. All Rights Reserved. Generation of Vehicle Analyses (Work with students B. Bailey, J. Branscomb & Ford Motor Company) u Automatically generate templates for: –Modelica (for physics-based modeling) –Simulink (for controls) u Subsystem modeling –SME fill in model details –Validate subsystem models u System-level model integration –Guaranteed compatibility –Modelica model integrated into Simulink Architecture in SysML Logical Vehicle Automated Transformation Integrated Simulink- Modelica Model

46 MBSE 2012 Copyright © Chris Paredis. All Rights Reserved. Taxonomy for Model Transformations in MBSE u Organized by the nature of the knowledge encoded in the transformation 1.Knowledge about Views »Take information from a model and represent it in a different (graphical) syntax 2.Knowledge about Analysis »Take a structural description of a system and generate a corresponding analysis model 3.Knowledge about Synthesis »Generate a (more detailed) structural description u From simple to sophisticated From specific to general

47 MBSE 2012 Copyright © Chris Paredis. All Rights Reserved. Synthesis Rules u Capture heuristic synthesis knowledge: What are promising system architectures? u Difficult to create a transparent “grammar” — which architectures are covered by the grammar?

48 MBSE 2012 Copyright © Chris Paredis. All Rights Reserved. Additional Example of Synthesis Knowledge u Variant modeling — constraint-based representation of a set of architectures (mbse.gfse.de) u F6 program at JPL: Generation and analysis of fractionated satellite systems Transformation Set of variations One variant

49 MBSE 2012 Copyright © Chris Paredis. All Rights Reserved. Architecture Exploration Using SysML & CPLEX (Work with former students Alek Kerzhner) 1.Formulate Problem in SysML 2.Transform to Superstructure 3.Transform to Introduce Behavior 4.Transform to Linearize 5.Transform to AIMMS syntax 6.Solve using CPLEX 7.Transform solutions into SysML SE Problem AIMMS – CPLEX Generation of Mixed Integer Programming model through transformations

50 MBSE 2012 Copyright © Chris Paredis. All Rights Reserved. Overview of Presentation u Context — Model Transformations –What is a model transformation? — some simple examples –Meta-modeling and Model transformations languages u How can model transformations be useful in MBSE? –A taxonomy of usage scenarios –Examples and illustrations u How to get started? u Summary

51 MBSE 2012 Copyright © Chris Paredis. All Rights Reserved. How to get started.. u Imperative modeling –Traditional programming languages: Java, Python,… –Direct use of the APIs of SysML and Analysis tools u Declarative Model Transformation Languages –ATL, QVT, Moflon, VIATRA2,… –All are Eclipse based –Integration of Model Transformation tools into current SysML tools is not well supported…

52 MBSE 2012 Copyright © Chris Paredis. All Rights Reserved. Model Transformation Tools conforms to readswrites refers to executes (Czarnecki, K., & Hellen, S., 2006) Source Meta-model Transformation Specification Target Meta-model Source Model Transformation Engine Target Model Eclipse MMTSysML ToolAnalysis Tool

53 MBSE 2012 Copyright © Chris Paredis. All Rights Reserved. So What? Should I use Model Transformations? It depends… u Costs –Knowledge capture, management is expensive –Requires “knowledge engineers” who understand how best to generalize knowledge and encode it in transformations –Infrastructure u Benefits –Improved consistency –Once the knowledge has been captured, the cost of applying it is very small –Eliminate tedious, non-value-added tasks in MBSE process

54 MBSE 2012 Copyright © Chris Paredis. All Rights Reserved. 1.Model Transformations –Any operation on a model that produces another model –Automated model transformations defined at meta-model level –Model transformation tools in Eclipse 2.Model Transformations in MBSE –Views: Synchronize views and maintain consistency –Analysis: Generate analysis models –Synthesis: Generate promising architectures 3.Cost-Benefit –Identify simple MBSE tasks that are tedious and error-prone Model-Based Systems Engineering Center Key Take-Aways

cser13.gatech.edu