Presentation is loading. Please wait.

Presentation is loading. Please wait.

On the Correctness of Model Transformations Gabor Karsai ISIS/Vanderbilt University.

Similar presentations


Presentation on theme: "On the Correctness of Model Transformations Gabor Karsai ISIS/Vanderbilt University."— Presentation transcript:

1 On the Correctness of Model Transformations Gabor Karsai ISIS/Vanderbilt University

2 Model-based Embedded Software Development Today Defines the modeling language (document) The “source code” The “compiler” The “verification tool” The “code” The “OS” Defines the modeling language (document) The “source code” The “compiler” The “verification tool” The “code” The “OS” METAMODEL Domain Models Simulation/Execution Engine Code Generator Execution Platform Executable components/code Hand- written Code COMPILER WE TRUST THESE

3 Model-based Software Development – Near Future METAMODEL Domain Models Verification Engine Code Generator Execution Platform Executable components/code Hand- written Code COMPILER Formally defines the modeling language MODEL TRANSLATOR Verification Engine Implicitly implements the semantics of the modeling language Implicitly implements the semantics of the modeling language Essential questions for model- based development: 1.How do you know that your model transformations (model translator/code generator) are correct? 2.How do you know that the products of the verification engine are true for the generated code running on the platform? Essential questions for model- based development: 1.How do you know that your model transformations (model translator/code generator) are correct? 2.How do you know that the products of the verification engine are true for the generated code running on the platform?

4 Correctness of Model Transformations - Ideas Instance-based generation of certificates: (NASA/ARC/RSE) 1.Use the transformation engine to co-generate ‘verification conditions’ 2.Use a theorem prover/model checker to check properties on the verification conditions Instance-based generation of certificates: (NASA/ARC/RSE) 1.Use the transformation engine to co-generate ‘verification conditions’ 2.Use a theorem prover/model checker to check properties on the verification conditions Other techniques: Establish a bisimulation relationship between the source and target models, build data structures during the transformation that can verify the bisimilarity. Use the transformation engine to emit assertions about abstractions of the generated code, use these assertions in the code verifier to build those abstractions. Other techniques: Establish a bisimulation relationship between the source and target models, build data structures during the transformation that can verify the bisimilarity. Use the transformation engine to emit assertions about abstractions of the generated code, use these assertions in the code verifier to build those abstractions.


Download ppt "On the Correctness of Model Transformations Gabor Karsai ISIS/Vanderbilt University."

Similar presentations


Ads by Google