teaching synchronous languages at kiel...
TRANSCRIPT
![Page 1: Teaching Synchronous Languages at Kiel Universityrtsys.informatik.uni-kiel.de/~biblio/downloads/talks/slap06-rvh-talk.pdfI Use C, Java; Lego Mindstorms I Last taught: Winter ’04/’05](https://reader031.vdocument.in/reader031/viewer/2022041406/5e1835937a4cf3310c5c0877/html5/thumbnails/1.jpg)
IntroductionClasses
Lessons Learned
Teaching Synchronous Languages at Kiel University
Prof. Dr. Reinhard v. Hanxleden
Christian-Albrechts Universitat zu KielFaculty of Engineering
Dept. of Computer Science and Applied MathematicsReal-Time Systems and Embedded Systems Group
Prof. Dr. Reinhard v. Hanxleden SLAP’06, Vienna, 25 March 2006 Slide 1
![Page 2: Teaching Synchronous Languages at Kiel Universityrtsys.informatik.uni-kiel.de/~biblio/downloads/talks/slap06-rvh-talk.pdfI Use C, Java; Lego Mindstorms I Last taught: Winter ’04/’05](https://reader031.vdocument.in/reader031/viewer/2022041406/5e1835937a4cf3310c5c0877/html5/thumbnails/2.jpg)
IntroductionClasses
Lessons Learned
Historical Development
Past graduate level courses
I Covered Statemate/SDL in classes offered by SoftwareTechnology Group since 1990s
I Classes on Synchronous Languages and Modelling Tools in2002 and 2003
Classes currently offered by Real-Time/Embedded System Group
I “Design of Embedded Real-Time Systems”
I “Model-Based System Design and Distributed Real-TimeSystems”
I “Synchronous Languages”
Prof. Dr. Reinhard v. Hanxleden SLAP’06, Vienna, 25 March 2006 Slide 2
![Page 3: Teaching Synchronous Languages at Kiel Universityrtsys.informatik.uni-kiel.de/~biblio/downloads/talks/slap06-rvh-talk.pdfI Use C, Java; Lego Mindstorms I Last taught: Winter ’04/’05](https://reader031.vdocument.in/reader031/viewer/2022041406/5e1835937a4cf3310c5c0877/html5/thumbnails/3.jpg)
IntroductionClasses
Lessons Learned
Historical Development
Past graduate level courses
I Covered Statemate/SDL in classes offered by SoftwareTechnology Group since 1990s
I Classes on Synchronous Languages and Modelling Tools in2002 and 2003
Classes currently offered by Real-Time/Embedded System Group
I “Design of Embedded Real-Time Systems”
I “Model-Based System Design and Distributed Real-TimeSystems”
I “Synchronous Languages”
Prof. Dr. Reinhard v. Hanxleden SLAP’06, Vienna, 25 March 2006 Slide 2
![Page 4: Teaching Synchronous Languages at Kiel Universityrtsys.informatik.uni-kiel.de/~biblio/downloads/talks/slap06-rvh-talk.pdfI Use C, Java; Lego Mindstorms I Last taught: Winter ’04/’05](https://reader031.vdocument.in/reader031/viewer/2022041406/5e1835937a4cf3310c5c0877/html5/thumbnails/4.jpg)
IntroductionClasses
Lessons Learned
Design of Embedded Real-Time SystemsModel-Based System Design and Distributed RT SystemsSynchronous Languages
“Design of Embedded Real-Time Systems”
I Introductory classI Contents:
I Real-Time ProgrammingLanguages
I Concurrency, SchedulingI Timing analysisI Dependability
I Use C, Java; Lego Mindstorms
I Last taught: Winter ’04/’05
Practical follow-up lab (Summer ’05):
I Flipper control
I C programming, OS interfacing
Prof. Dr. Reinhard v. Hanxleden SLAP’06, Vienna, 25 March 2006 Slide 3
![Page 5: Teaching Synchronous Languages at Kiel Universityrtsys.informatik.uni-kiel.de/~biblio/downloads/talks/slap06-rvh-talk.pdfI Use C, Java; Lego Mindstorms I Last taught: Winter ’04/’05](https://reader031.vdocument.in/reader031/viewer/2022041406/5e1835937a4cf3310c5c0877/html5/thumbnails/5.jpg)
IntroductionClasses
Lessons Learned
Design of Embedded Real-Time SystemsModel-Based System Design and Distributed RT SystemsSynchronous Languages
“Design of Embedded Real-Time Systems”
I Introductory classI Contents:
I Real-Time ProgrammingLanguages
I Concurrency, SchedulingI Timing analysisI Dependability
I Use C, Java; Lego Mindstorms
I Last taught: Winter ’04/’05
Practical follow-up lab (Summer ’05):
I Flipper control
I C programming, OS interfacing
Prof. Dr. Reinhard v. Hanxleden SLAP’06, Vienna, 25 March 2006 Slide 3
![Page 6: Teaching Synchronous Languages at Kiel Universityrtsys.informatik.uni-kiel.de/~biblio/downloads/talks/slap06-rvh-talk.pdfI Use C, Java; Lego Mindstorms I Last taught: Winter ’04/’05](https://reader031.vdocument.in/reader031/viewer/2022041406/5e1835937a4cf3310c5c0877/html5/thumbnails/6.jpg)
IntroductionClasses
Lessons Learned
Design of Embedded Real-Time SystemsModel-Based System Design and Distributed RT SystemsSynchronous Languages
“Model-Based System Design + Distributed RT Systems”I Rather practically oriented
I First contact with synchronous languagesI Contents:
I Motivation for system modellingI Statecharts (Statemate, Stateflow,
SyncCharts/SSMs) + EsterelI Real-time communication protocolsI Time vs. event triggered architectures
I Use Esterel-Studio, Kiel IntegratedEnvironment for Layout (KIEL)
I Last taught: Summer ’05
Practical follow-up lab (Winter ’05/’06):
I Railway control
I Simulink/Stateflow, TTP
Prof. Dr. Reinhard v. Hanxleden SLAP’06, Vienna, 25 March 2006 Slide 4
![Page 7: Teaching Synchronous Languages at Kiel Universityrtsys.informatik.uni-kiel.de/~biblio/downloads/talks/slap06-rvh-talk.pdfI Use C, Java; Lego Mindstorms I Last taught: Winter ’04/’05](https://reader031.vdocument.in/reader031/viewer/2022041406/5e1835937a4cf3310c5c0877/html5/thumbnails/7.jpg)
IntroductionClasses
Lessons Learned
Design of Embedded Real-Time SystemsModel-Based System Design and Distributed RT SystemsSynchronous Languages
“Model-Based System Design + Distributed RT Systems”I Rather practically oriented
I First contact with synchronous languagesI Contents:
I Motivation for system modellingI Statecharts (Statemate, Stateflow,
SyncCharts/SSMs) + EsterelI Real-time communication protocolsI Time vs. event triggered architectures
I Use Esterel-Studio, Kiel IntegratedEnvironment for Layout (KIEL)
I Last taught: Summer ’05
Practical follow-up lab (Winter ’05/’06):
I Railway control
I Simulink/Stateflow, TTP
Prof. Dr. Reinhard v. Hanxleden SLAP’06, Vienna, 25 March 2006 Slide 4
![Page 8: Teaching Synchronous Languages at Kiel Universityrtsys.informatik.uni-kiel.de/~biblio/downloads/talks/slap06-rvh-talk.pdfI Use C, Java; Lego Mindstorms I Last taught: Winter ’04/’05](https://reader031.vdocument.in/reader031/viewer/2022041406/5e1835937a4cf3310c5c0877/html5/thumbnails/8.jpg)
IntroductionClasses
Lessons Learned
Design of Embedded Real-Time SystemsModel-Based System Design and Distributed RT SystemsSynchronous Languages
“Synchronous Languages”
I More on theoretical sideI Contents:
I Esterel semantics (logical, constructive, circuit)I Lustre/SCADEI Synthesis of Esterel, LustreI Reactive processingI Constructiveness analysis
I Use esterel/xes, lustre/luciole
I Last taught: Winter ’05/’06
Follow-up seminar (Summer ’06):
I Integration control/data-flow
I GALS
I Combination synchronous programming/other paradigms
Prof. Dr. Reinhard v. Hanxleden SLAP’06, Vienna, 25 March 2006 Slide 5
![Page 9: Teaching Synchronous Languages at Kiel Universityrtsys.informatik.uni-kiel.de/~biblio/downloads/talks/slap06-rvh-talk.pdfI Use C, Java; Lego Mindstorms I Last taught: Winter ’04/’05](https://reader031.vdocument.in/reader031/viewer/2022041406/5e1835937a4cf3310c5c0877/html5/thumbnails/9.jpg)
IntroductionClasses
Lessons Learned
Design of Embedded Real-Time SystemsModel-Based System Design and Distributed RT SystemsSynchronous Languages
“Synchronous Languages”
I More on theoretical sideI Contents:
I Esterel semantics (logical, constructive, circuit)I Lustre/SCADEI Synthesis of Esterel, LustreI Reactive processingI Constructiveness analysis
I Use esterel/xes, lustre/luciole
I Last taught: Winter ’05/’06
Follow-up seminar (Summer ’06):
I Integration control/data-flow
I GALS
I Combination synchronous programming/other paradigms
Prof. Dr. Reinhard v. Hanxleden SLAP’06, Vienna, 25 March 2006 Slide 5
![Page 10: Teaching Synchronous Languages at Kiel Universityrtsys.informatik.uni-kiel.de/~biblio/downloads/talks/slap06-rvh-talk.pdfI Use C, Java; Lego Mindstorms I Last taught: Winter ’04/’05](https://reader031.vdocument.in/reader031/viewer/2022041406/5e1835937a4cf3310c5c0877/html5/thumbnails/10.jpg)
IntroductionClasses
Lessons Learned
Lessons LearnedTheoretical principles of synchronous programming aregrasped rather quickly
I CS students arrive fairly well prepared regarding theoreticalbackground (automata, language semantics)
I Formal Esterel semantics helps understanding SSMsI Use KIEL system to facilitate model entry, to illustrate
relationship Esterel/SSMs and SSM optimizations, and formicrostep simulation
However, effective practical use of synchronous programmingrequires training + experience
I States vs. eventsI Esterel vs. host languageI State diagrams vs. flow chartsI “Good” models vs. “Spaghetti” models
Thanks! Questions/Comments?
Prof. Dr. Reinhard v. Hanxleden SLAP’06, Vienna, 25 March 2006 Slide 6
![Page 11: Teaching Synchronous Languages at Kiel Universityrtsys.informatik.uni-kiel.de/~biblio/downloads/talks/slap06-rvh-talk.pdfI Use C, Java; Lego Mindstorms I Last taught: Winter ’04/’05](https://reader031.vdocument.in/reader031/viewer/2022041406/5e1835937a4cf3310c5c0877/html5/thumbnails/11.jpg)
IntroductionClasses
Lessons Learned
Lessons LearnedTheoretical principles of synchronous programming aregrasped rather quickly
I CS students arrive fairly well prepared regarding theoreticalbackground (automata, language semantics)
I Formal Esterel semantics helps understanding SSMsI Use KIEL system to facilitate model entry, to illustrate
relationship Esterel/SSMs and SSM optimizations, and formicrostep simulation
However, effective practical use of synchronous programmingrequires training + experience
I States vs. eventsI Esterel vs. host languageI State diagrams vs. flow chartsI “Good” models vs. “Spaghetti” models
Thanks! Questions/Comments?
Prof. Dr. Reinhard v. Hanxleden SLAP’06, Vienna, 25 March 2006 Slide 6
![Page 12: Teaching Synchronous Languages at Kiel Universityrtsys.informatik.uni-kiel.de/~biblio/downloads/talks/slap06-rvh-talk.pdfI Use C, Java; Lego Mindstorms I Last taught: Winter ’04/’05](https://reader031.vdocument.in/reader031/viewer/2022041406/5e1835937a4cf3310c5c0877/html5/thumbnails/12.jpg)
IntroductionClasses
Lessons Learned
Lessons LearnedTheoretical principles of synchronous programming aregrasped rather quickly
I CS students arrive fairly well prepared regarding theoreticalbackground (automata, language semantics)
I Formal Esterel semantics helps understanding SSMsI Use KIEL system to facilitate model entry, to illustrate
relationship Esterel/SSMs and SSM optimizations, and formicrostep simulation
However, effective practical use of synchronous programmingrequires training + experience
I States vs. events
I Esterel vs. host languageI State diagrams vs. flow chartsI “Good” models vs. “Spaghetti” models
Thanks! Questions/Comments?
Prof. Dr. Reinhard v. Hanxleden SLAP’06, Vienna, 25 March 2006 Slide 6
![Page 13: Teaching Synchronous Languages at Kiel Universityrtsys.informatik.uni-kiel.de/~biblio/downloads/talks/slap06-rvh-talk.pdfI Use C, Java; Lego Mindstorms I Last taught: Winter ’04/’05](https://reader031.vdocument.in/reader031/viewer/2022041406/5e1835937a4cf3310c5c0877/html5/thumbnails/13.jpg)
IntroductionClasses
Lessons Learned
Lessons LearnedTheoretical principles of synchronous programming aregrasped rather quickly
I CS students arrive fairly well prepared regarding theoreticalbackground (automata, language semantics)
I Formal Esterel semantics helps understanding SSMsI Use KIEL system to facilitate model entry, to illustrate
relationship Esterel/SSMs and SSM optimizations, and formicrostep simulation
However, effective practical use of synchronous programmingrequires training + experience
I States vs. eventsI Esterel vs. host language
I State diagrams vs. flow chartsI “Good” models vs. “Spaghetti” models
Thanks! Questions/Comments?
Prof. Dr. Reinhard v. Hanxleden SLAP’06, Vienna, 25 March 2006 Slide 6
![Page 14: Teaching Synchronous Languages at Kiel Universityrtsys.informatik.uni-kiel.de/~biblio/downloads/talks/slap06-rvh-talk.pdfI Use C, Java; Lego Mindstorms I Last taught: Winter ’04/’05](https://reader031.vdocument.in/reader031/viewer/2022041406/5e1835937a4cf3310c5c0877/html5/thumbnails/14.jpg)
IntroductionClasses
Lessons Learned
Lessons LearnedTheoretical principles of synchronous programming aregrasped rather quickly
I CS students arrive fairly well prepared regarding theoreticalbackground (automata, language semantics)
I Formal Esterel semantics helps understanding SSMsI Use KIEL system to facilitate model entry, to illustrate
relationship Esterel/SSMs and SSM optimizations, and formicrostep simulation
However, effective practical use of synchronous programmingrequires training + experience
I States vs. eventsI Esterel vs. host languageI State diagrams vs. flow charts
I “Good” models vs. “Spaghetti” models
Thanks! Questions/Comments?
Prof. Dr. Reinhard v. Hanxleden SLAP’06, Vienna, 25 March 2006 Slide 6
![Page 15: Teaching Synchronous Languages at Kiel Universityrtsys.informatik.uni-kiel.de/~biblio/downloads/talks/slap06-rvh-talk.pdfI Use C, Java; Lego Mindstorms I Last taught: Winter ’04/’05](https://reader031.vdocument.in/reader031/viewer/2022041406/5e1835937a4cf3310c5c0877/html5/thumbnails/15.jpg)
IntroductionClasses
Lessons Learned
Lessons LearnedTheoretical principles of synchronous programming aregrasped rather quickly
I CS students arrive fairly well prepared regarding theoreticalbackground (automata, language semantics)
I Formal Esterel semantics helps understanding SSMsI Use KIEL system to facilitate model entry, to illustrate
relationship Esterel/SSMs and SSM optimizations, and formicrostep simulation
However, effective practical use of synchronous programmingrequires training + experience
I States vs. eventsI Esterel vs. host languageI State diagrams vs. flow chartsI “Good” models vs. “Spaghetti” models
Thanks! Questions/Comments?
Prof. Dr. Reinhard v. Hanxleden SLAP’06, Vienna, 25 March 2006 Slide 6
![Page 16: Teaching Synchronous Languages at Kiel Universityrtsys.informatik.uni-kiel.de/~biblio/downloads/talks/slap06-rvh-talk.pdfI Use C, Java; Lego Mindstorms I Last taught: Winter ’04/’05](https://reader031.vdocument.in/reader031/viewer/2022041406/5e1835937a4cf3310c5c0877/html5/thumbnails/16.jpg)
IntroductionClasses
Lessons Learned
Lessons LearnedTheoretical principles of synchronous programming aregrasped rather quickly
I CS students arrive fairly well prepared regarding theoreticalbackground (automata, language semantics)
I Formal Esterel semantics helps understanding SSMsI Use KIEL system to facilitate model entry, to illustrate
relationship Esterel/SSMs and SSM optimizations, and formicrostep simulation
However, effective practical use of synchronous programmingrequires training + experience
I States vs. eventsI Esterel vs. host languageI State diagrams vs. flow chartsI “Good” models vs. “Spaghetti” models
Thanks! Questions/Comments?
Prof. Dr. Reinhard v. Hanxleden SLAP’06, Vienna, 25 March 2006 Slide 6