[3.6] Beyond Data Sharing - Pieter van Gorp [3TU.Datacentrum Symposium 2014, Eindhoven]
A model-driven course on Petri-Nets, Metamodels and Graph Grammars Pieter Van Gorp...
-
date post
19-Dec-2015 -
Category
Documents
-
view
215 -
download
0
Transcript of A model-driven course on Petri-Nets, Metamodels and Graph Grammars Pieter Van Gorp...
![Page 1: A model-driven course on Petri-Nets, Metamodels and Graph Grammars Pieter Van Gorp pieter.vangorp@ua.ac.be Hans Schippers hans.schippers@ua.ac.be Dirk.](https://reader034.fdocuments.us/reader034/viewer/2022051516/56649d355503460f94a0cb47/html5/thumbnails/1.jpg)
a model-driven course on Petri-Nets, Metamodels and Graph Grammars
Pieter Van [email protected]
Hans [email protected]
Dirk [email protected]
Serge [email protected]
![Page 2: A model-driven course on Petri-Nets, Metamodels and Graph Grammars Pieter Van Gorp pieter.vangorp@ua.ac.be Hans Schippers hans.schippers@ua.ac.be Dirk.](https://reader034.fdocuments.us/reader034/viewer/2022051516/56649d355503460f94a0cb47/html5/thumbnails/2.jpg)
2
Myth of Formal Methods:• exhaustive proofs• high training required• hard to comprehend• expensive• ...
![Page 3: A model-driven course on Petri-Nets, Metamodels and Graph Grammars Pieter Van Gorp pieter.vangorp@ua.ac.be Hans Schippers hans.schippers@ua.ac.be Dirk.](https://reader034.fdocuments.us/reader034/viewer/2022051516/56649d355503460f94a0cb47/html5/thumbnails/3.jpg)
3
Solution• Prevent spread of such myths into Industry• Variety of Courses apply Formal Modeling
- designing a distributed system: introduction to UML,
- designing a compiler: advanced class diagrams, text grammars,
- relational algebra,
- B, Z, OCL, Hoare Logic, ...
• However: - always limited to one modeling language / formalism- no link between:
• “mathematical” languages• more human-friendly languages• source code
- students: formal methods not applicable in practical software engineering?
• Therefore: - New Model-Driven Engineering (MDE) Course- Software Development with Various Formalisms
Metamodeling and Model Transformation
![Page 4: A model-driven course on Petri-Nets, Metamodels and Graph Grammars Pieter Van Gorp pieter.vangorp@ua.ac.be Hans Schippers hans.schippers@ua.ac.be Dirk.](https://reader034.fdocuments.us/reader034/viewer/2022051516/56649d355503460f94a0cb47/html5/thumbnails/4.jpg)
4
1. Designing the Course• Objectives
• Tool Selection
2. Course Description• Teaching Methods
• Evaluation Methods
• Course Artifacts
• Link to Objectives
3. Lessons Learned
![Page 5: A model-driven course on Petri-Nets, Metamodels and Graph Grammars Pieter Van Gorp pieter.vangorp@ua.ac.be Hans Schippers hans.schippers@ua.ac.be Dirk.](https://reader034.fdocuments.us/reader034/viewer/2022051516/56649d355503460f94a0cb47/html5/thumbnails/5.jpg)
5
Objectives / Expected Learning Outcomes
• “Based on formal specifications (logical specifications, statecharts, Petri-Nets) the student should be able to build models expressing the intended functionality of a system, to analyse and to verify these models, and to generate a working implementation from them.”
• “The student should be able to express the intended functionality of a system from different viewpoints in different formalisms (Petri-Nets, Graph Grammars) and ensure particular properties (boundedness, consistency, ...) of such models. The student should use state-of-the-art transformation techniques (model animation, model translation and code generation) to integrate distinct models and relate them to a complete implementation. The student should experiment with metamodelling in this context, and acquire an understanding of the benefits and limitations of the 4-layer meta-data architecture.”
Designing the Course >>
khj
(Meta-)Modeling
Properties Transformations
![Page 6: A model-driven course on Petri-Nets, Metamodels and Graph Grammars Pieter Van Gorp pieter.vangorp@ua.ac.be Hans Schippers hans.schippers@ua.ac.be Dirk.](https://reader034.fdocuments.us/reader034/viewer/2022051516/56649d355503460f94a0cb47/html5/thumbnails/6.jpg)
6
• DiaMeta- advantage: standard (MOF) compliant- interoperable with group's research tool- disadvantage: immature
• Tiger- advantage: “sexy” (Eclipse)- disadvantage: heavyweight, yet no MOF/EMF support (yet)
• AToM3
- advantages: self-containedness- disadvantage: non-standard
Tool SelectionDesigning the Course >>
![Page 7: A model-driven course on Petri-Nets, Metamodels and Graph Grammars Pieter Van Gorp pieter.vangorp@ua.ac.be Hans Schippers hans.schippers@ua.ac.be Dirk.](https://reader034.fdocuments.us/reader034/viewer/2022051516/56649d355503460f94a0cb47/html5/thumbnails/7.jpg)
7
1. Designing the Course• Objectives
• Tool Selection
2. Course Description• Teaching Methods
• Evaluation Methods
• Course Artifacts
• Link to Objectives
3. Lessons Learned
![Page 8: A model-driven course on Petri-Nets, Metamodels and Graph Grammars Pieter Van Gorp pieter.vangorp@ua.ac.be Hans Schippers hans.schippers@ua.ac.be Dirk.](https://reader034.fdocuments.us/reader034/viewer/2022051516/56649d355503460f94a0cb47/html5/thumbnails/8.jpg)
8
Teaching MethodsCourse Description >>
7x 11x
![Page 9: A model-driven course on Petri-Nets, Metamodels and Graph Grammars Pieter Van Gorp pieter.vangorp@ua.ac.be Hans Schippers hans.schippers@ua.ac.be Dirk.](https://reader034.fdocuments.us/reader034/viewer/2022051516/56649d355503460f94a0cb47/html5/thumbnails/9.jpg)
9
• BlackBoard Assignments: 8
• Relaxed Deadlines- E-mail sumissions
• Incremental Assignments
- Prepared Solutions
• Assignment completion overview
• Three Evaluation Milestones
• Extra Examination:
- Oral with written preparation
EvaluationCourse Description >>
![Page 10: A model-driven course on Petri-Nets, Metamodels and Graph Grammars Pieter Van Gorp pieter.vangorp@ua.ac.be Hans Schippers hans.schippers@ua.ac.be Dirk.](https://reader034.fdocuments.us/reader034/viewer/2022051516/56649d355503460f94a0cb47/html5/thumbnails/10.jpg)
10
1. Designing the Course• Objectives
• Tool Selection
2. Course Description• Teaching Methods
• Evaluation Methods
• Course Artifacts
• Link to Objectives
3. Lessons Learned
![Page 11: A model-driven course on Petri-Nets, Metamodels and Graph Grammars Pieter Van Gorp pieter.vangorp@ua.ac.be Hans Schippers hans.schippers@ua.ac.be Dirk.](https://reader034.fdocuments.us/reader034/viewer/2022051516/56649d355503460f94a0cb47/html5/thumbnails/11.jpg)
11
Petri-Net Editor (I/II)Course Artifacts >>
All thinkingPh. 1: Forks on TablePh. 2: Forks on Table
Ph. 3: Forks on TablePh. 5: Forks on Table
Ph. 4: Forks on TablePh. 6: Forks on Table
......
Ph. 1 & 5 will start eating
Ph. 3: Could eat too
Ph. 4: Cannot start eating!
![Page 12: A model-driven course on Petri-Nets, Metamodels and Graph Grammars Pieter Van Gorp pieter.vangorp@ua.ac.be Hans Schippers hans.schippers@ua.ac.be Dirk.](https://reader034.fdocuments.us/reader034/viewer/2022051516/56649d355503460f94a0cb47/html5/thumbnails/12.jpg)
12
Petri-Net Editor (II/II)Course Artifacts >>
Modeling a Visual Language Editor Modeling Language Structure (= metamodel)
>> as E/R or Class Diagram Modeling Concrete Syntax Some Python code required
![Page 13: A model-driven course on Petri-Nets, Metamodels and Graph Grammars Pieter Van Gorp pieter.vangorp@ua.ac.be Hans Schippers hans.schippers@ua.ac.be Dirk.](https://reader034.fdocuments.us/reader034/viewer/2022051516/56649d355503460f94a0cb47/html5/thumbnails/13.jpg)
13
RailRoad Editor
...
...
Course Artifacts >>
...
Animation changes train location
![Page 14: A model-driven course on Petri-Nets, Metamodels and Graph Grammars Pieter Van Gorp pieter.vangorp@ua.ac.be Hans Schippers hans.schippers@ua.ac.be Dirk.](https://reader034.fdocuments.us/reader034/viewer/2022051516/56649d355503460f94a0cb47/html5/thumbnails/14.jpg)
14Graph Grammars (I/II)
![Page 15: A model-driven course on Petri-Nets, Metamodels and Graph Grammars Pieter Van Gorp pieter.vangorp@ua.ac.be Hans Schippers hans.schippers@ua.ac.be Dirk.](https://reader034.fdocuments.us/reader034/viewer/2022051516/56649d355503460f94a0cb47/html5/thumbnails/15.jpg)
15Graph Grammars (II/II)Train Animation:rewriting of abstract nodes
Train 2 Petri Transl.:Traceability
Train 2 Petri Translation:Out-Place MtoN rules
![Page 16: A model-driven course on Petri-Nets, Metamodels and Graph Grammars Pieter Van Gorp pieter.vangorp@ua.ac.be Hans Schippers hans.schippers@ua.ac.be Dirk.](https://reader034.fdocuments.us/reader034/viewer/2022051516/56649d355503460f94a0cb47/html5/thumbnails/16.jpg)
16
1. Designing the Course• Objectives
• Tool Selection
2. Course Description• Teaching Methods
• Evaluation Methods
• Course Artifacts
• Link to Objectives
3. Lessons Learned
![Page 17: A model-driven course on Petri-Nets, Metamodels and Graph Grammars Pieter Van Gorp pieter.vangorp@ua.ac.be Hans Schippers hans.schippers@ua.ac.be Dirk.](https://reader034.fdocuments.us/reader034/viewer/2022051516/56649d355503460f94a0cb47/html5/thumbnails/17.jpg)
17
Content<>ObjectivesCourse Description >>
Modeling Properties Transformation
Introduction
Papers, Discussion, Motivating Demo’s
C/E Nets
P/T Nets
Colored Nets
PN Metamodel
Train Metamodel
Safety
Deadlocks?
PN Animation
Train Animation
Discussion:Evaluation AToM3 GGs
Classification Papers“Beyond AToM3”
dq
PN ModelsTrain-to-PN
Next step:tracing back
analysis results
Generating Editors
Train Models
![Page 18: A model-driven course on Petri-Nets, Metamodels and Graph Grammars Pieter Van Gorp pieter.vangorp@ua.ac.be Hans Schippers hans.schippers@ua.ac.be Dirk.](https://reader034.fdocuments.us/reader034/viewer/2022051516/56649d355503460f94a0cb47/html5/thumbnails/18.jpg)
18
1. Designing the Course• Objectives
• Tool Selection
2. Course Description• Teaching Methods
• Course Artifacts
• Evaluation Methods
• Link to Objectives
3. Lessons Learned
![Page 19: A model-driven course on Petri-Nets, Metamodels and Graph Grammars Pieter Van Gorp pieter.vangorp@ua.ac.be Hans Schippers hans.schippers@ua.ac.be Dirk.](https://reader034.fdocuments.us/reader034/viewer/2022051516/56649d355503460f94a0cb47/html5/thumbnails/19.jpg)
19
Best Practices
• Best Practices
- Feasibility Study- Expert Supervision- Start Small- Work Incrementally- Illustrate Applicability- Examples First- Problems First
Lessons Learned >>
![Page 20: A model-driven course on Petri-Nets, Metamodels and Graph Grammars Pieter Van Gorp pieter.vangorp@ua.ac.be Hans Schippers hans.schippers@ua.ac.be Dirk.](https://reader034.fdocuments.us/reader034/viewer/2022051516/56649d355503460f94a0cb47/html5/thumbnails/20.jpg)
20
Planned Improvements• Planned Improvements
- Provide Tool Feedback
- Consider Alternative Tools
- Provide Integration Components• to Petri-Net Analysis Tools
- Extend Railroad Case Study
- Prepare Follow-Up Courses
Lessons Learned >>
![Page 21: A model-driven course on Petri-Nets, Metamodels and Graph Grammars Pieter Van Gorp pieter.vangorp@ua.ac.be Hans Schippers hans.schippers@ua.ac.be Dirk.](https://reader034.fdocuments.us/reader034/viewer/2022051516/56649d355503460f94a0cb47/html5/thumbnails/21.jpg)
21
Industrial Relevance• Industrial Relevance
- Curriculum at University of Antwerp:• 3 Master Profiles:
- industrial, - educational,- or research profile.
• Course in BACH3 tradeoff!
- Concrete alternatives:(a) Use of UML code generator (transformations)
in popular middleware context
(b) Building editors and transformationswithout middleware focus
- Why (b)?• tool internals look beyond marketing!• demand from automotive industry
Lessons Learned >>
![Page 22: A model-driven course on Petri-Nets, Metamodels and Graph Grammars Pieter Van Gorp pieter.vangorp@ua.ac.be Hans Schippers hans.schippers@ua.ac.be Dirk.](https://reader034.fdocuments.us/reader034/viewer/2022051516/56649d355503460f94a0cb47/html5/thumbnails/22.jpg)
22
Conclusions• Course Format
» Conventional Lectures: Petri-Nets» Paper Discussions: MDE» AToM3 Lab Sessions
Integrated Case Study, Problems First
• Course Focus» Integration of Languages
• Course Evaluation» Content meets Objectives» BlackBoard Questionnaire: Students Excited!» Encouraging basis for other new MDE courses
![Page 23: A model-driven course on Petri-Nets, Metamodels and Graph Grammars Pieter Van Gorp pieter.vangorp@ua.ac.be Hans Schippers hans.schippers@ua.ac.be Dirk.](https://reader034.fdocuments.us/reader034/viewer/2022051516/56649d355503460f94a0cb47/html5/thumbnails/23.jpg)
23
Thanks for your Attention
http://www.fots.ua.ac.be/~pvgorp/research/
http://www.pietervangorp.com/