Presentation is loading. Please wait.

Presentation is loading. Please wait.

NSF/ITR: Foundations of Hybrid and Embedded Software Systems Model-Integrated Computing: Foundations DSML Composition Model Synthesis and Model Transformation.

Similar presentations


Presentation on theme: "NSF/ITR: Foundations of Hybrid and Embedded Software Systems Model-Integrated Computing: Foundations DSML Composition Model Synthesis and Model Transformation."— Presentation transcript:

1 NSF/ITR: Foundations of Hybrid and Embedded Software Systems Model-Integrated Computing: Foundations DSML Composition Model Synthesis and Model Transformation Janos Sztipanovits March 11, 2003

2 Sztipanovits 2 Middleware Services and OS Component Libraries Middleware OS Framework Libraries Platform QoSORB OS Scheduling Fault Tolerance CORBA IDL QoS API POSIX API Replication API Library Components Library Components Library Components Library Components Model-Based Design and Composition Auto-Generated Code Model-based Generators Generator Technology Domain-Independent Models (models of computations: SDF, FSM, CSP, …) User Interface Decision Support Control Sensor System Application-Specific Models DS Model Libraries/ Patterns DI Model Libraries/ Patterns Domain- Specific Modeling Technology Tools Application

3 Sztipanovits 3 Platforms (There are many…) Hardware CPU, MEM, I/O Operating System QoS Middleware Application Hardware CPU, MEM, I/O Operating System QoS Middleware Application Control Algorithm QoS parameters Measured vars. Control vars. Application OS Strong isolation between SW and HW by Active Control TTP Bus Servo Controller Servo Controller CNI Control Data Processor BG TTP Controller CNI Control Data Processor BG TTP Controller Servo Controller Servo Controller CNI Control Data Processor BG TTP Controller CNI Control Data Processor BG TTP Controller Time-Triggered Architecture (distributed, hard real-time, safe) QoS Middleware (such as CORBA) Integration framework, composition mechanisms, components

4 Sztipanovits 4 MDA View of Model-Based Design Platform- Independent Model CORBA Model CORBA Java/EJB XML/SOAP Other Java/EJB Model XML/SOAP Model Other Model MDA Tool generates all or most of the implementation code for deployment technology selected by the developer. Richard Mark Soley, Model Driven Architecture: An Introduction A Detailed Model, stating Pre- and Post- Conditions in OCL, and Semantics in Action Language Map a PIM to Specific Middleware Technologies via OMG Standard Mappings Map a PIM to Many Middleware Technologies via OMG Standard Mappings Map PSM to application interfaces, code, GUI descriptors, SQL queries, etc.

5 Sztipanovits 5 Model-Based Design for Embedded Systems Implementation Space Mapping Application Space Challenges: Domain Specific Modeling Languages (DSML) Model Synthesis Model Transformation Design Gen./ Synth. DSMLDSML Application Models DSMLDSML Implement. Models Model-Based Design FM ARCH SYNLHY CONIMP ODE P i-1 PiPi P i+1 Model-Based Design of Embedded Systems FSM

6 Sztipanovits 6 Specification of Domain Specific Modeling Languages (DSML) Concrete Syntax C Abstract Syntax A Semantic Domain S Semantics parses to Concepts Relations Well formed-ness rules Mathematical abstraction for specifying the meaning of models Notation for representing models L = MCMC MSMS

7 Sztipanovits 7 Concrete Syntax and Abstract Syntax Notation for representing models: E.g.: Block Diagram Concrete Syntax C Abstract Syntax A Semantic Domain S Semantics parses to MCMC MSMS Mathematical abstraction for specifying the meaning of models But What About S? Signal Flow Language (SF) Concepts, Relations Well formed-ness rules: Self.InputPorts()  forAll(ip  ip.src()  forAll(x1,x2  x1=x2)) UML-CD/OCL

8 Sztipanovits 8 Semantics via Meta-Modeling Concrete Syntax Abstract Syntax Semantic Domain Semantics parses to Meta-modeling language with well-defined semantics Concrete Syntax Abstract Syntax Semantic Domain Semantics parses to Represented by Meta-model Semantics DSML Meta-model Structural Semantics DSML: StateFlow DOMAIN-MODEL META-MODEL Meta-Model of StateFlow using uml/OCL as meta modeling language.

9 Sztipanovits 9 Semantics via Translation Concrete Syntax Abstract Syntax Semantic Domain Semantics parses to Concrete Syntax Abstract Syntax Semantics parses to Semantic Domain translator DSML Semantics Modeling language with well-defined semantics Synchronous Dataflow (SDF) translator Behavioral Semantics A SF Hierarchical Signal Flow (HSF) Lee, Sangiovanni-Vincentelli

10 Sztipanovits 10 Consistency! DSML Composition Semantic domain impact! Composed Behavioral Semantics: HYBRID SYSTEM Concrete Syntax Abstract Syntax Semantic Domain Semantics parses to A L1 L 1 ||L 2 Concrete Syntax Semantic Domain Semantics parses to Structural Semantics Abstract Syntax translation HSF + SDF+Cont.Dyn A L2 Concrete Syntax Abstract Syntax Semantic Domain Semantics parses to Concrete Syntax Semantic Domain Semantics parses to Abstract Syntax translation FSM CSP

11 Sztipanovits 11 Support for Compositional Meta-Modeling Composition Operators Metamodel composition with GME

12 Sztipanovits 12 Model Synthesis and Transformations Model Synthesis Model Transformation Matlab Code-Gen. if (inactiveInterval != -1) { int thisInterval = (int)(System.currentTimeMillis() - lastAccessed) / 1000; if (thisInterval > 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.currentTimeMillis(); this.isNew=false; } lastAccessedTime = 0L; lastAccessedTime = ((Long) stream.readObject()).longValue(); maxInactiveInterval = ((Integer) stream.readObject()).intValue(); isNew = ((Boolean) stream.readObject()).booleanValue(); Matlab Code-Gen. Domain-Specific Modeling Languages Generator Model-Based Generator Technology - Modeling of generators - Generating generators - Provably correct generators - Embeddable generators Configuration Specification Analysis Tool Code FM ARCH SYNLHY CONIMP ODE P i-1 PiPi P i+1 Model-Based Design of Embedded Systems FSM

13 NSF Meta- Programmable Model Builder (GME) Instance of A SDF Meta-model-2 l SF  L SF HSF Domain model l SDF  L SDF SDF Executable model SDF Platform A SF Meta-model-1 instance of GEN Generator Specification G: A SF →A SDF Transformer Ongoing Work: Meta-generators

14 Sztipanovits 14 Ongoing Work: Constraint-Based Model Synthesis

15 Sztipanovits 15 www.omg.org/mda Ongoing Work: Combining MIC & Component Middleware QoS Policies QoS Property Adaptor Real-time POA ORB QoS Interfaces Container CORBA Component Client/Peer Server/Peer Application Code Component Home CORBA Component CORBA Component CORBA Component CCM Component Library Model-Based Generator Select Component Synthesize & Assemble CORBA Component CORBA Component CORBA Component CCM Model Library

16 Sztipanovits 16 Tools for Model-Integrated Computing Technology Services Platform Specific Models (SDF, FSM, CSP, …) Auto-Generated Code Security Models Fault Models Middleware Services and OS ORB OS Scheduling Fault Tolerance CORBA IDL QoS API Vehicle Controllers Sensor System Models Application Specific Models Library Components Library Components Library Components Library Components POSIX API REPLICATION API DS Model Libraries/ Patterns Component & Platform Models Model-based Generators Middleware Component Libraries Application Component Libraries Domain- Specific Modeling & Analysis Environment Generator Technology Middleware Technology Meta Model Libraries Tool Metadata Meta Genererator Component Libraries ECLIPSE OTIF Libraries Meta Modeling Environment Meta- Generator Technology Open Tool Integration Framework Integrated Tools Embedded Computing Applications Domain Specific Tools Domain Independent Tools Domain Independent Tools OTIF Tool Integration Platform Metamodel Repository Summary

17 Sztipanovits 17

18 Sztipanovits 18 Research Agenda on Domain Specific Modeling Languages  Precise, compositional meta-modeling  Multiple aspect modeling in the compositional meta-modeling framework  Practical issues: – Examples, meta-model libraries – Meta-programmable tools – Link to UML-2

19 Sztipanovits 19 Meta-generators: Model Transformations in Tool Integration Approach (Karsai): Meta- models for source and target models plus transformations, then generating the transformer Transformer Domain-specific model Target model Meta- model for source Meta- model for target Meta- model for transform GEN Roles transformations play in model-based design: Refining a design into an implementation Code generation PIM -> PSM mapping Support for model interchange for tool integration

20 Sztipanovits 20 Generative modeling: Extensions to Meta-Modeling Languages Iterative (“for”) and conditional (“if”)constructs in models can greatly enhance expressiveness while reducing complexity. Input design: with “for” loop What it means: Transformer Replicate the middle of pipeline “Order” times! Order = 3

21 Sztipanovits 21 Other Uses of Transforms on Models: Design Patterns Design patterns capture prototypical solutions to a design problem. As such, they are parametric and reusable. Design pattern (as a transform) Input design Design with pattern applied Transformer

22 Sztipanovits 22 Research Agenda on Model Transformations  Languages and tools for meta generators  Model synthesis using explicit design patterns  Model synthesis using constraint-based design-space exploration  Generative modeling extensions to languages  Embeddable generators

23 Sztipanovits 23 Conclusion  The hard problems of building large embedded systems are Semantics and Compositionality  Model-based integration technology has the power to solve the problem  Model-Integrated Computing evolves to be a mature technology for the development of complex applications


Download ppt "NSF/ITR: Foundations of Hybrid and Embedded Software Systems Model-Integrated Computing: Foundations DSML Composition Model Synthesis and Model Transformation."

Similar presentations


Ads by Google