Model-Based Design - PowerPoint PPT Presentation

About This Presentation
Title:

Model-Based Design

Description:

Changing from UML-CD/OCL to MOF in. abstract syntax modeling ... represents all key ingredients: function, architecture, refinement, platforms ... – PowerPoint PPT presentation

Number of Views:36
Avg rating:3.0/5.0
Slides: 21
Provided by: edward101
Category:
Tags: based | cd | design | generator | key | model

less

Transcript and Presenter's Notes

Title: Model-Based Design


1
Model-Based Design
  • Edited by Janos Sztipanovits, Presented by Gabor
    Karsai
  • ISIS, Vanderbilt University

2
Objectives
  • Model-based design focuses on the formal
    representation, composition, and manipulation of
    models during the design process.
  • Specific research areas
  • Composition of Domain Specific Modeling Languages
  • Model Transformation
  • Model Synthesis

3
1. Composition of Domain Specific Modeling
Languages
L lt C, A, S, MS, MCgt
Concepts Relations Well formed-nessrules
Abstract Syntax A
Semantic DomainS
Mathematical abstraction for specifying the
meaning of models
MS
Semantic Mapping
Parsing
MC
Concrete Syntax C
Notation forrepresenting models
4
Research Agenda
  • Baseline
  • Modeling of Abstract Syntax using UML class
    diagrams and OCL as meta language
  • Meta-programmable Graphical Model Editor (GME)
  • Research Agenda
  • Using the Meta-Object Facility (OMG) as the
    meta-metamodel
  • Specification of DSML semantics via meta-modeling
  • Foundation for composing DSML-s
  • New Semantic Domains
  • Extension of meta-programmable tools

5
Semantics via Meta-Modeling Baseline
Meta-modeling language with well-defined semantics
Abstract Syntax
Semantic Domain
Semantics
parses to
Concrete Syntax
Represented by Meta-model
Semantics
Abstract Syntax
Semantic Domain
Semantics
parses to
DSML
Concrete Syntax
6
New Direction Precise Meta-Modeling
GME MOF
Abstract syntax modeling with MOF
GMEADSML
Meta-model
C
C
A
MOFADSML
MC
Concrete syntax modeling
?
MOF
GME MOF
GMEMC,DSML
MC
MS
MC
MOF
S
A
MOF
DSML
MS
S
A
C
S
MS
TLAAMOF
TLASMOF
TLAMS,MOF
GMECDSML
TLAAMOF
TLASMOF
TLAMS,MOF
TLA
TLA
TLA
GME MOF
TLA
TLA
TLA
GME
Set-valued semantics for MOF
MOF/TLA Model (meta-meta model)
Meta- Programmable Model Builder
Modeled by
Mapped into
  • Ongoing Work (Poster Compositional Metamodeling
    for DSMLs)
  • Changing from UML-CD/OCL to MOF in abstract
    syntax modeling
  • Developing set-valued semantics for MOF using
    TLA as meta-language
  • Developing MOFADSML? TLAADSML translator

7
Semantics via Translation Baseline
Modeling language with well-defined semantics
Abstract Syntax
Semantics
Semantic Domain
parses to
Lee, Sangiovanni-Vincentelli
Concrete Syntax
Semantics
translator
Abstract Syntax
Semantic Domain
Semantics
parses to
Concrete Syntax
DSML
8
New Direction Translational Specification of
DSML Semantics
HMADM
MADM
TLA
TLASMA
Metapr. transformer
MS AHMA?SMA MS MS1? MS2 ? MS3
TLA
TLAMS,MA
MS3 TLAAMA?TLASMA
MHMA,MA
TLA
MOFAHMA
MOFAMA
MOFTHMA,MA
TLAAMA
MOF
MOF
MOF
MS1 MOFAHMA?MOFAMA
MS2 MOFAMA?TLAAMA
  • Ongoing Work (Poster Compositional Metamodeling
    for DSMLs)
  • TLA specification of the semantics of selected
    models of computations (reference models)
  • Specifying DSML semantics via specifying mapping
    between the abstract syntax of DSML and the
    reference models
  • Developing modeling and translation tools

9
New Semantic Domains HyVisual Hybrid System
Modeling Tool Based on Ptolemy II
HyVisual is a DSML designed for hybrid system
modeling, specialized from Ptolemy II by
combining its CT and FSM domains.
10
Major Applications of Meta Modeling Metropolis
Meta Model (Formal Model)
  • How are designs represented in Metropolis?
  • Metropolis meta-model a language modeling
    mechanisms
  • represents all key ingredients function,
    architecture, refinement, platforms
  • parser and API to browse designs, interact with
    tools

11
Metropolis Meta-Model
  • Must describe objects at different levels of
    abstraction
  • Do not commit to the semantics of any particular
    model of computation
  • Define a set of building blocks
  • specifications with many useful Models of
    Computations can be described using the building
    blocks
  • Processes, communication media and schedulers
    separate computation, communication and
    coordination

12
Core Metropolis Meta Model
  • Processes
  • Concurrent Computation, sequential execution
    within each process
  • Execution within a process can be suspended with
    the AWAIT statement
  • Interfaces
  • The types of Ports, bundle function declarations
  • Media
  • Model Communication by providing definitions of
    Interface Functions
  • Passive, cannot run in their own threads
  • Netlists
  • STRUCTURE and CONCURRENCY
  • Quantity Managers
  • Performance modeling
  • Constraints
  • Specification Synchronization
  • Formal Semantics
  • Operational Semantics based on Action Automata

13
2. Model Transformations
Domain-Specific Modeling
Languages
Platform-Based Design of Embedded Systems
Pi-1
Matlab Code-Gen.
Matlab Code-Gen.
Generator
Model-Based Generator Technology - Modeling
of generators - Generating generators
- Provably correct generators -
Embeddable generators
Pi
Pi1
if (inactiveInterval ! -1) int
thisInterval (int)(System.curren
tTimeMillis() - lastAccessed) / 1000
if (thisInterval gt inactiveInterval)
invalidate()
ServerSessionManager ssm
ServerSessionManager.getManager()
ssm.removeSession(this)
private long lastAccessedTime
creationTime / Return the last
time the client sent a request associated with
this session, as the number of
milliseconds since midnight, January 1, 1970
GMT. Actions that your application takes, such
as getting or setting a value associated
with the session, do not affect the access time.
/ public long getLastAccessedTime()
return (this.lastAccessedTime)
this.lastAccessedTime time /
Update the accessed time information for this
session. This method should be called by
the context when a request comes in for a
particular session, even if the
application does not reference it. /
public void access()
this.lastAccessedTime this.thisAccessedTime
this.thisAccessedTime System.currentTimeMil
lis() this.isNewfalse
lastAccessedTime 0L lastAccessedTime
((Long) stream.readObject()).longValue()
maxInactiveInterval ((Integer)
stream.readObject()).intValue() isNew
((Boolean) stream.readObject()).booleanValue()
ConfigurationSpecification
Code
Analysis Tool
14
Research Agenda
  • Baseline
  • Meta-models of the Abstract Syntax of the source
    andtarget DSML-s
  • Tools helping the procedural implementation of
    translators
  • Research Agenda
  • Meta Generators Specification and generation of
    model transformations using graph rewriting
    technology
  • Embeddable generators
  • Generative extensions to modeling languages

15
Model Transformation UsingMeta-Models and Graph
Rewriting
Metamodel of Transformation
Meta-level Translator design
Metamodel of Input
Metamodel of Output
Formal, explicit, and precise model of the
transformations
Implementation Execution
Karsai/Agrawal, ISIS
16
Component Specialization
Model of Computation semantics defines
communication, flow of control
Schedule - fire Gaussian0 - fire Ramp1 - fire
Sine2 - fire AddSubtract5 - fire SequenceScope10
Ptolemy II model
scheduler
specializer
for (int i 0 i lt plus.getWidth() i)
if (plus.hasToken(i)) if (sum null)
sum plus.get(i) else sum
sum.add(plus.get(i))
parser
method call
  • Specialize for
  • data types
  • parameter values
  • scheduling
  • By
  • token unboxing
  • inlining
  • partial evaluation
  • dead code elimination

Java actor definitions are parsed and then
specialized for their context.
if
method call
target code
block
block
abstract syntax tree
17
3. Model Synthesis
Example design flow
Controller Synthesis
System Analysis
Code Synthesis
Validation Verification
Target Analysis
Platform
Modeling
Platform Models
Test Vectors
Valid Code/Model
Integrated Model
Code/Model
Download
Valid Model
Plant Model
Valid Model
Design Feedback
Design Feedback
Challenge Compose plant and controller models
usinglibrary components with alternatives so as
to satisfy design constraints
18
Research Agenda
  • Baseline
  • Constraint-based design space exploration coupled
    to a dataflow language
  • Research Agenda
  • Pattern-based model synthesis
  • Models of Computations as design patterns
  • Design constraints and design patterns for
    multiple Models of Computations

19
Pattern-based Model Synthesis
Main Design Flow
Design Space Modeler
Simulink Behavioral Models And Model Components
Component Abstraction (TA)
Design Space Modeling (MD)
Design Space Encoding (TE)
DESERT Model Synthesis Flow
Design Space Pruning
Design Decoding
Component Reconstruction
Neema, Sztipanovits, Karsai at EMSOFT 2003
Using meta-modeling and model transformations we
made the constraint based design space
explorationtool suite composable with different
design flows.
Main Design Flow
20
Example Use of Model Translation in the DESERT
Tool Chain
Simulink Metamodel
Design Space Metamodel
Component Abstraction (TA)
Abstracted Simulink Model Components
Write a Comment
User Comments (0)
About PowerShow.com