towards an open source mde tool infrastructure for …...uml-rt: characteristics domain-specific •...
TRANSCRIPT
![Page 1: Towards an open source MDE tool infrastructure for …...UML-RT: Characteristics Domain-specific • Embedded systems with soft real-time constraints Graphical, but textual syntax](https://reader033.vdocuments.us/reader033/viewer/2022041904/5e62128a9917bc17606f5aff/html5/thumbnails/1.jpg)
Towards an open source
MDE tool infrastructure
for the Internet of Things
Juergen Dingel
Sept 18, 2017
![Page 2: Towards an open source MDE tool infrastructure for …...UML-RT: Characteristics Domain-specific • Embedded systems with soft real-time constraints Graphical, but textual syntax](https://reader033.vdocuments.us/reader033/viewer/2022041904/5e62128a9917bc17606f5aff/html5/thumbnails/2.jpg)
Technology for collection, aggregation, and analysis of data from
range of devices to optimize operation of a system in different
domains, including buildings, traffic, health care, energy,
business, industry
2 2
And, please, don’t
forget to buy milk
again! You should walk these
short distances in the
future.
Can you turn me
around?
I look fuller from
the other side.
The Internet of Things (IoT)
EXE'17
![Page 3: Towards an open source MDE tool infrastructure for …...UML-RT: Characteristics Domain-specific • Embedded systems with soft real-time constraints Graphical, but textual syntax](https://reader033.vdocuments.us/reader033/viewer/2022041904/5e62128a9917bc17606f5aff/html5/thumbnails/3.jpg)
IoT: Core Characteristics
3
distributedopen
heterogenous
self-optimizing
context-aware
adaptive
autonomouslarge scale
timed
reactive
concurrent
Bla, …
Bla, …
Bla, …
Bla, …
Bla, …
Bla, …
Bla,…
Bla,…
EXE'17
available
reliable
J. Dingel
![Page 4: Towards an open source MDE tool infrastructure for …...UML-RT: Characteristics Domain-specific • Embedded systems with soft real-time constraints Graphical, but textual syntax](https://reader033.vdocuments.us/reader033/viewer/2022041904/5e62128a9917bc17606f5aff/html5/thumbnails/4.jpg)
MDE
� MDE = notations, techniques, tools to leverage abstraction
and automation for system development
� Examples for abstraction and automation
• Virtual memory [Denning 1970]
• Internet Protocol [Cerf 2017]
� Examples for MDE
• Robotics software [SPARC 2016]
• Industrial DSLs (e.g., at Ericsson)
• Game development (e.g., in Unity)
4
[Cerf 2017] V.G. Cerf. In Praise of Underspecification? CACM 60(8):7. Aug 2017
[Denning 1970] P. Denning. Virtual Memory. ACM Computing Surveys 2(3):153-189. 1970
[SPARC 2016] SPARC. Robotics 2020 Multi-Annual Roadmap: For Robotics in Europe,
Horizon 2020 Call ICT-2017 (ICT-25, ICT-27 & ICT-28). Dec 2016.
![Page 5: Towards an open source MDE tool infrastructure for …...UML-RT: Characteristics Domain-specific • Embedded systems with soft real-time constraints Graphical, but textual syntax](https://reader033.vdocuments.us/reader033/viewer/2022041904/5e62128a9917bc17606f5aff/html5/thumbnails/5.jpg)
Overview of Talk
5
distributedopen
heterogenous
self-optimizing
context-aware
adaptive
autonomouslarge scale
timed
reactive
concurrent
EXE'17
available
reliable
UML-RT with
Papyrus-RTMQTT
monitoring
animation
runtime verification
steering
adaption
ConnectingDebugging Changing
@ runtime
![Page 6: Towards an open source MDE tool infrastructure for …...UML-RT: Characteristics Domain-specific • Embedded systems with soft real-time constraints Graphical, but textual syntax](https://reader033.vdocuments.us/reader033/viewer/2022041904/5e62128a9917bc17606f5aff/html5/thumbnails/6.jpg)
Goal of Talk
� Inform
• MDE with UML-RT and Papyrus-RT and extensions
� Inspire
• Use, extend, participate
6EXE'17J. Dingel
Open Source!
![Page 7: Towards an open source MDE tool infrastructure for …...UML-RT: Characteristics Domain-specific • Embedded systems with soft real-time constraints Graphical, but textual syntax](https://reader033.vdocuments.us/reader033/viewer/2022041904/5e62128a9917bc17606f5aff/html5/thumbnails/7.jpg)
7
Background
MDE with UML-RTand Papyrus-RT
EXE'17J. Dingel
![Page 8: Towards an open source MDE tool infrastructure for …...UML-RT: Characteristics Domain-specific • Embedded systems with soft real-time constraints Graphical, but textual syntax](https://reader033.vdocuments.us/reader033/viewer/2022041904/5e62128a9917bc17606f5aff/html5/thumbnails/8.jpg)
UML-RT: History
� Real-time OO Modeling (ROOM)
• ObjecTime, early 1990 ties
� Major influence on UML 2
• E.g., StructuredClassifier
� “RT subset of UML”
� Tools
• ObjecTime Developer
• IBM Rational RoseRT
• IBM RSA-RTE
• Protos ETrice
• Eclipse Papyrus-RT
EXE'17 8
[Selic, Gullekson, Ward. Real-Time Object-Oriented Modellng. Wiley. 1994]
J. Dingel
![Page 9: Towards an open source MDE tool infrastructure for …...UML-RT: Characteristics Domain-specific • Embedded systems with soft real-time constraints Graphical, but textual syntax](https://reader033.vdocuments.us/reader033/viewer/2022041904/5e62128a9917bc17606f5aff/html5/thumbnails/9.jpg)
UML-RT: Characteristics
� Domain-specific
• Embedded systems with soft real-time constraints
� Graphical, but textual syntax exists
� Small, cohesive set of concepts
� Strong encapsulation
• Actors (active objects)
• Explicit, typed interfaces
• Message-based communication
� Event-driven execution
• State machines
� Lots of analysis opportunities
EXE'17 9
Real-time System
• actors
• state
outputs =
f(state,inputs)
inputs
inputs
out2
out1
out2
…
in2
in2
…
in1
in1
…
“UML-RT has features that appeal to the formalist”
[Whittaker et al 2000]
[Whittaker et al 2000] P. Whittaker, M. Goldsmith, K. Macolini, T. Teitelbaum. “Model checking UML-RT protocols”.
Workshop on Formal Design Techniques for Real-Time UML. York, UK. Nov. 2000.
J. Dingel
![Page 10: Towards an open source MDE tool infrastructure for …...UML-RT: Characteristics Domain-specific • Embedded systems with soft real-time constraints Graphical, but textual syntax](https://reader033.vdocuments.us/reader033/viewer/2022041904/5e62128a9917bc17606f5aff/html5/thumbnails/10.jpg)
UML-RT: Core Concepts (1)
� Types
• Capsules (active classes)
° Capsule instances (parts)
• Passive classes (data classes)
° Objects
• Protocols
• Enumerations
� Structure
• Attributes
• Ports
• Connectors
EXE'17 10
� Behaviour
• Messages (events)
• State machines
� Grouping
• Package
� Relationship
• Generalization
• Associations
J. Dingel
![Page 11: Towards an open source MDE tool infrastructure for …...UML-RT: Characteristics Domain-specific • Embedded systems with soft real-time constraints Graphical, but textual syntax](https://reader033.vdocuments.us/reader033/viewer/2022041904/5e62128a9917bc17606f5aff/html5/thumbnails/11.jpg)
UML-RT:
Core Concepts (2)
� Model
• Collection of capsule definitions
• ‘Top’ capsule containing collection of parts (capsule
instances)
� Capsules
• May contain
° Attributes, ports, or other parts
• Behaviour defined by state machine
� Ports
• Typed over protocol defining input and output messages
� State machine
• Transition triggered by incoming messages
• Action code can contain send statements that send
messages over certain ports
EXE'17 11J. Dingel
![Page 12: Towards an open source MDE tool infrastructure for …...UML-RT: Characteristics Domain-specific • Embedded systems with soft real-time constraints Graphical, but textual syntax](https://reader033.vdocuments.us/reader033/viewer/2022041904/5e62128a9917bc17606f5aff/html5/thumbnails/12.jpg)
Capsules (1)
EXE'17 12
� Kind of active class
• Attributes, operations
• Own, independent flow
of control (logical thread)
� May also contain
• Ports over which messages can be sent, received
• Parts (instances of other capsules) and connectors
� Creation, use of instances tightly controlled
• Created by runtime system (RTS)
• Cannot be passed around
• Stored in attribute of another capsule (part)
• Information flow only via messages sent to ports
⇒ better concurrency control and encapsulation
� Behaviour defined by state machine
J. Dingel
![Page 13: Towards an open source MDE tool infrastructure for …...UML-RT: Characteristics Domain-specific • Embedded systems with soft real-time constraints Graphical, but textual syntax](https://reader033.vdocuments.us/reader033/viewer/2022041904/5e62128a9917bc17606f5aff/html5/thumbnails/13.jpg)
Protocols
EXE'17 13
� Provide types for ports
� Define
• Input messages
° Services provided by capsule owning port
• Output messages
° Services required by capsule owning port
• Input/output messages
� Messages can carry data
J. Dingel
![Page 14: Towards an open source MDE tool infrastructure for …...UML-RT: Characteristics Domain-specific • Embedded systems with soft real-time constraints Graphical, but textual syntax](https://reader033.vdocuments.us/reader033/viewer/2022041904/5e62128a9917bc17606f5aff/html5/thumbnails/14.jpg)
Ports
14
� “Boundary objects” owned by capsule
� Typed over a protocol P
� Have ‘send ’ operation
portName.msg(arg1,...,argn).send()
� E.g., in Pinger
pingPort.ping().send()
J. Dingel
![Page 15: Towards an open source MDE tool infrastructure for …...UML-RT: Characteristics Domain-specific • Embedded systems with soft real-time constraints Graphical, but textual syntax](https://reader033.vdocuments.us/reader033/viewer/2022041904/5e62128a9917bc17606f5aff/html5/thumbnails/15.jpg)
Ports: External, Internal, Relay
� External behaviour
• Provides (part of) externally visible functionality (isService=true)
• Incoming messages passed on to state machine (isBehaviour=true)
• Must be connected (isWired=true)
� Internal behaviour
• As above, but not externally visible (isService=false)
• Connect state machine with a capsule part
� Relay
• Pass external messages to and from capsule parts
EXE'17 15
relay
internal
external
external or relay
J. Dingel
![Page 16: Towards an open source MDE tool infrastructure for …...UML-RT: Characteristics Domain-specific • Embedded systems with soft real-time constraints Graphical, but textual syntax](https://reader033.vdocuments.us/reader033/viewer/2022041904/5e62128a9917bc17606f5aff/html5/thumbnails/16.jpg)
Ports: System
� Connects capsule to Runtime System (RTS)
library via corresponding system protocol
� Provides access to RTS services such as
• Timing: setting timers, time out message
° timer2Port.informIn(UMLRTTimespec(10, 0));
// set timer that will expire in 10 secs and 0 nano secs
° When timer expires, ‘timeout ’ message will be sent over timer2Port
• Log: sending text to console
° logPort.log(“Ready to self-destruct”)
EXE'17 16
Application code (generated or hand-written)
RTS Library
Target OS
Target HW
J. Dingel
![Page 17: Towards an open source MDE tool infrastructure for …...UML-RT: Characteristics Domain-specific • Embedded systems with soft real-time constraints Graphical, but textual syntax](https://reader033.vdocuments.us/reader033/viewer/2022041904/5e62128a9917bc17606f5aff/html5/thumbnails/17.jpg)
Ports: SPP and SAP
� So far, only wired ports
• Connected automatically when instances are created
� Unwired ports
• Original intent: ‘layered’ design
• Connected at run-time
° Port on provider: Service Provision Point (SPP)
° Port on user: Service Access Point (SAP)
° Register with RTS using unique service name (manually or automatic)
EXE'17 17J. Dingel
![Page 18: Towards an open source MDE tool infrastructure for …...UML-RT: Characteristics Domain-specific • Embedded systems with soft real-time constraints Graphical, but textual syntax](https://reader033.vdocuments.us/reader033/viewer/2022041904/5e62128a9917bc17606f5aff/html5/thumbnails/18.jpg)
Example: Ping Pong
EXE'17 18J. Dingel
![Page 19: Towards an open source MDE tool infrastructure for …...UML-RT: Characteristics Domain-specific • Embedded systems with soft real-time constraints Graphical, but textual syntax](https://reader033.vdocuments.us/reader033/viewer/2022041904/5e62128a9917bc17606f5aff/html5/thumbnails/19.jpg)
Example: Ping Pong
EXE'17 19
![Page 20: Towards an open source MDE tool infrastructure for …...UML-RT: Characteristics Domain-specific • Embedded systems with soft real-time constraints Graphical, but textual syntax](https://reader033.vdocuments.us/reader033/viewer/2022041904/5e62128a9917bc17606f5aff/html5/thumbnails/20.jpg)
Papyrus-RT: Overview
EXE'17 20
� Papyrus for Real-Time industrial-grade, complete modeling
environment for the development of complex, software
intensive, real-time, embedded, cyber-physical systems.
� Part of PolarSys
• Eclipse Working Group
• Open source for embedded systems
� Building on
• Eclipse Modeling Framework (EMF), Xtext, Papyrus
� History
• 2015: V0.7.0
• March 2017: v0.9
• Fall 2017: v1.0 [https://wiki.eclipse.org/Papyrus-RT]
J. Dingel
![Page 21: Towards an open source MDE tool infrastructure for …...UML-RT: Characteristics Domain-specific • Embedded systems with soft real-time constraints Graphical, but textual syntax](https://reader033.vdocuments.us/reader033/viewer/2022041904/5e62128a9917bc17606f5aff/html5/thumbnails/21.jpg)
Resources: UML-RT and Papyrus-RT
� UML-RT
• Papers:
° B. Selic. Using UML for Modeling Complex Real-time Systems. Workshop
on Languages, Compilers, and Tools for Embedded Systems (LCTES’98)
° E. Posse, J. Dingel. An Executable Semantics for UML-RT. SoSyM
15(1):179-217. 2016
• Tutorials:
° MODELS’17, http://flux.cs.queensu.ca/mase/papyrus-rt-
resources/supporting-material-for-the-models17-tutorial/
° EclipseCon’17, http://flux.cs.queensu.ca/mase/papyrus-rt-
resources/supporting-material-for-eclipsecon17-unconference/
� Papyrus-RT
• Distribution: https://eclipse.org/papyrus-rt
• Wiki: https://wiki.eclipse.org/Papyrus-RT
• Overview: https://www.youtube.com/watch?v=UqefL7-ZPYo21EXE'17
This
afternoon!
![Page 22: Towards an open source MDE tool infrastructure for …...UML-RT: Characteristics Domain-specific • Embedded systems with soft real-time constraints Graphical, but textual syntax](https://reader033.vdocuments.us/reader033/viewer/2022041904/5e62128a9917bc17606f5aff/html5/thumbnails/22.jpg)
22
Ongoing Research 1
Connecting
EXE'17J. Dingel
![Page 23: Towards an open source MDE tool infrastructure for …...UML-RT: Characteristics Domain-specific • Embedded systems with soft real-time constraints Graphical, but textual syntax](https://reader033.vdocuments.us/reader033/viewer/2022041904/5e62128a9917bc17606f5aff/html5/thumbnails/23.jpg)
From Isolated to Connected
23
Model M
C/C++
cgen
Model M
C/C++
Animation 1
SimulationRuntime
Verification
System
Component 1
Monitoring,
learning,
adapting
cgen System
Component 2
Animation 2
MQTT
EXE'17J. Dingel
![Page 24: Towards an open source MDE tool infrastructure for …...UML-RT: Characteristics Domain-specific • Embedded systems with soft real-time constraints Graphical, but textual syntax](https://reader033.vdocuments.us/reader033/viewer/2022041904/5e62128a9917bc17606f5aff/html5/thumbnails/24.jpg)
Mechanism 1: Gateway Capsule
� Using SAP/SPP
• Protocol defines incoming/outgoing messages
• Automatic registration
� Bi-directional
• Incoming messages can trigger transitions
24
External
tool
EXE'17J. Dingel
![Page 25: Towards an open source MDE tool infrastructure for …...UML-RT: Characteristics Domain-specific • Embedded systems with soft real-time constraints Graphical, but textual syntax](https://reader033.vdocuments.us/reader033/viewer/2022041904/5e62128a9917bc17606f5aff/html5/thumbnails/25.jpg)
Gateway Capsule: Example
25EXE'17
![Page 26: Towards an open source MDE tool infrastructure for …...UML-RT: Characteristics Domain-specific • Embedded systems with soft real-time constraints Graphical, but textual syntax](https://reader033.vdocuments.us/reader033/viewer/2022041904/5e62128a9917bc17606f5aff/html5/thumbnails/26.jpg)
Gateway Capsule: Examples
� Monitoring and steering
• Parcel routing system
• https://www.youtube.com/watch?v=Eb
MIgEX9O58
26EXE'17J. Dingel
� Animation and simulation
using Unity
[Diagrams courtesy
Michal Pasternak]
![Page 27: Towards an open source MDE tool infrastructure for …...UML-RT: Characteristics Domain-specific • Embedded systems with soft real-time constraints Graphical, but textual syntax](https://reader033.vdocuments.us/reader033/viewer/2022041904/5e62128a9917bc17606f5aff/html5/thumbnails/27.jpg)
Mechanism 2: MQTT
� Message Queue Telemetry Transport (MQTT)
• Publish/subscribe protocol
• Light-weight, low resource requirements
• Easy to use:
(dis-)connect, (un-)subscribe, publish
• Standardized
� Implementations
• E.g., Eclipse Paho
� Brokers
• E.g., Eclipse Mosquitto
27
Topic Subscribers
“Temperature/bedroom” Component 2
… …
EXE'17J. Dingel
![Page 28: Towards an open source MDE tool infrastructure for …...UML-RT: Characteristics Domain-specific • Embedded systems with soft real-time constraints Graphical, but textual syntax](https://reader033.vdocuments.us/reader033/viewer/2022041904/5e62128a9917bc17606f5aff/html5/thumbnails/28.jpg)
MQTT Support in Papyrus-RT
� In model
• Subscribe(t) in capsule C
° register unwired port of C as SAP under name t
• Publish(t,m) in capsule C
° send m to port of C associated with t
� RTS
• Maintains connection to broker(s) and
topic/broker table
• Sends published messages to corresponding
broker(s)
• Periodically checks brokers for incoming
messages
• Sends incoming message m to port associated
with m
28
Component 2
Broker
RTS
EXE'17J. Dingel
![Page 29: Towards an open source MDE tool infrastructure for …...UML-RT: Characteristics Domain-specific • Embedded systems with soft real-time constraints Graphical, but textual syntax](https://reader033.vdocuments.us/reader033/viewer/2022041904/5e62128a9917bc17606f5aff/html5/thumbnails/29.jpg)
29
Ongoing Research 2
Debugging
EXE'17J. Dingel
![Page 30: Towards an open source MDE tool infrastructure for …...UML-RT: Characteristics Domain-specific • Embedded systems with soft real-time constraints Graphical, but textual syntax](https://reader033.vdocuments.us/reader033/viewer/2022041904/5e62128a9917bc17606f5aff/html5/thumbnails/30.jpg)
Model Debugging: Two Approaches
1. Interpretation
• Pros
° Easier to integrate into MDE environment
• Cons
° Two semantics: Interpreter vs code generator
° Two platforms: Modeling platform vs target platform
2. Executing generated code on target platform
• Pros
° One semantics, one platform
• Cons
° How to implement?
30EXE'17J. Dingel
![Page 31: Towards an open source MDE tool infrastructure for …...UML-RT: Characteristics Domain-specific • Embedded systems with soft real-time constraints Graphical, but textual syntax](https://reader033.vdocuments.us/reader033/viewer/2022041904/5e62128a9917bc17606f5aff/html5/thumbnails/31.jpg)
Existing Approaches
31EXE'17J. Dingel
[Diagram courtesy Mojtaba Bagherzadeh]
Consequences?
![Page 32: Towards an open source MDE tool infrastructure for …...UML-RT: Characteristics Domain-specific • Embedded systems with soft real-time constraints Graphical, but textual syntax](https://reader033.vdocuments.us/reader033/viewer/2022041904/5e62128a9917bc17606f5aff/html5/thumbnails/32.jpg)
Our Approach
Key idea: Use model transformation to enrich model to allow
it to support debugging operations:
• Execution stop and resume (breakpoints),
• variable access,
• collection of execution traces
32EXE'17J. Dingel
[Diagram courtesy
Mojtaba Bagherzadeh]
![Page 33: Towards an open source MDE tool infrastructure for …...UML-RT: Characteristics Domain-specific • Embedded systems with soft real-time constraints Graphical, but textual syntax](https://reader033.vdocuments.us/reader033/viewer/2022041904/5e62128a9917bc17606f5aff/html5/thumbnails/33.jpg)
33EXE'17J. Dingel
Example: Ping Pong
[Diagram courtesy Mojtaba Bagherzadeh]
![Page 34: Towards an open source MDE tool infrastructure for …...UML-RT: Characteristics Domain-specific • Embedded systems with soft real-time constraints Graphical, but textual syntax](https://reader033.vdocuments.us/reader033/viewer/2022041904/5e62128a9917bc17606f5aff/html5/thumbnails/34.jpg)
34J. Dingel
Transformation of Structure
[Diagram courtesy Mojtaba Bagherzadeh]
![Page 35: Towards an open source MDE tool infrastructure for …...UML-RT: Characteristics Domain-specific • Embedded systems with soft real-time constraints Graphical, but textual syntax](https://reader033.vdocuments.us/reader033/viewer/2022041904/5e62128a9917bc17606f5aff/html5/thumbnails/35.jpg)
35
User-defined model
Instrumented model
EXE'17J. Dingel
Transformation of Behaviour
[Diagram courtesy Mojtaba Bagherzadeh]
![Page 36: Towards an open source MDE tool infrastructure for …...UML-RT: Characteristics Domain-specific • Embedded systems with soft real-time constraints Graphical, but textual syntax](https://reader033.vdocuments.us/reader033/viewer/2022041904/5e62128a9917bc17606f5aff/html5/thumbnails/36.jpg)
Overview
36EXE'17J. Dingel
[Diagram courtesy
Mojtaba Bagherzadeh]
Pre
runtime
At
runtime
![Page 37: Towards an open source MDE tool infrastructure for …...UML-RT: Characteristics Domain-specific • Embedded systems with soft real-time constraints Graphical, but textual syntax](https://reader033.vdocuments.us/reader033/viewer/2022041904/5e62128a9917bc17606f5aff/html5/thumbnails/37.jpg)
37
List running capsules:#list
Step execution#next –c capsule1
View last 10 events#view –c capsule1 –n 10
Generate sequence diagram:#seq –c capsuleName
EXE'17J. Dingel
Example: Command Line Interface
[Diagram courtesy Mojtaba Bagherzadeh]
![Page 38: Towards an open source MDE tool infrastructure for …...UML-RT: Characteristics Domain-specific • Embedded systems with soft real-time constraints Graphical, but textual syntax](https://reader033.vdocuments.us/reader033/viewer/2022041904/5e62128a9917bc17606f5aff/html5/thumbnails/38.jpg)
Evaluation
� Instrumentation time
~40sec for model with 400 transitions
� Program size
comparable with existing approaches
� Runtime performance overhead
microseconds per transition
38EXE'17J. Dingel
![Page 39: Towards an open source MDE tool infrastructure for …...UML-RT: Characteristics Domain-specific • Embedded systems with soft real-time constraints Graphical, but textual syntax](https://reader033.vdocuments.us/reader033/viewer/2022041904/5e62128a9917bc17606f5aff/html5/thumbnails/39.jpg)
Resources: Model-level Debugging
� Paper
• M. Bagherzadeh, N. Hili, J. Dingel. Model-level, Platform-
independent Debugging in the Context of the Model-driven
Development of Real-time Systems. ESEC/FSE’17.
� Videos
• CLI: https://www.youtube.com/watch?v=UJ4BYSOrTOQ
• GUI: https://www.youtube.com/watch?v=PvPbV5QkQ9Y&t=8s
� Code with tutorial
• https://github.com/moji1/MDebugger
� Virtual Box image
• https://github.com/moji1/MDebugger
39EXE'17
![Page 40: Towards an open source MDE tool infrastructure for …...UML-RT: Characteristics Domain-specific • Embedded systems with soft real-time constraints Graphical, but textual syntax](https://reader033.vdocuments.us/reader033/viewer/2022041904/5e62128a9917bc17606f5aff/html5/thumbnails/40.jpg)
40
Ongoing Research 3
EXE'17J. Dingel
Changing @ runtime
![Page 41: Towards an open source MDE tool infrastructure for …...UML-RT: Characteristics Domain-specific • Embedded systems with soft real-time constraints Graphical, but textual syntax](https://reader033.vdocuments.us/reader033/viewer/2022041904/5e62128a9917bc17606f5aff/html5/thumbnails/41.jpg)
Supporting Modifications at Runtime
� A.k.a., “hot patching/loading”, dynamic software updating
� As in, e.g., Erlang, Java Hotswap, Unreal engine, MS VS Recode
41
Modify
Build
Exec
Modify
Build
Exec
EXE'17J. Dingel
![Page 42: Towards an open source MDE tool infrastructure for …...UML-RT: Characteristics Domain-specific • Embedded systems with soft real-time constraints Graphical, but textual syntax](https://reader033.vdocuments.us/reader033/viewer/2022041904/5e62128a9917bc17606f5aff/html5/thumbnails/42.jpg)
Supporting Modifications at Runtime (Cont’d)
� Use shared, dynamically loaded and linked objects
• Compile dynamically modifiable capsules into shared objects
• Whenever capsule changes,
° recompile and relink, and
° transfer state
� Challenge
• State transfer can lead to inconsistencies
� Demo
• https://youtu.be/FrJm9NTR-bc
� Ongoing
• Minimizing inconsistencies
• Roll back
42EXE'17J. Dingel
![Page 43: Towards an open source MDE tool infrastructure for …...UML-RT: Characteristics Domain-specific • Embedded systems with soft real-time constraints Graphical, but textual syntax](https://reader033.vdocuments.us/reader033/viewer/2022041904/5e62128a9917bc17606f5aff/html5/thumbnails/43.jpg)
43
Ongoing Research 4
Demonstrator: PolarSys Rover
EXE'17J. Dingel
![Page 44: Towards an open source MDE tool infrastructure for …...UML-RT: Characteristics Domain-specific • Embedded systems with soft real-time constraints Graphical, but textual syntax](https://reader033.vdocuments.us/reader033/viewer/2022041904/5e62128a9917bc17606f5aff/html5/thumbnails/44.jpg)
� PolarSys Rover
• 2 motors, motor controller
• Line sensor, ultrasonic detection
sensor, camera
• https://www.polarsys.org/projects/polar
sys.rover
� Raspberry Pi 3 Model B
• 1.2GHz 64-bit Quad-core, 1GB RAM
• WLAN, Bluetooth, 4 USB, HDMI,
Ethernet
44/37EXE'17J. Dingel
https://www.youtube.com/watch?v=2kLhRUHGLB4
[UML-RT slides courtesy of Nicolas Hili]
![Page 45: Towards an open source MDE tool infrastructure for …...UML-RT: Characteristics Domain-specific • Embedded systems with soft real-time constraints Graphical, but textual syntax](https://reader033.vdocuments.us/reader033/viewer/2022041904/5e62128a9917bc17606f5aff/html5/thumbnails/45.jpg)
45
Conclusion
EXE'17J. Dingel
![Page 46: Towards an open source MDE tool infrastructure for …...UML-RT: Characteristics Domain-specific • Embedded systems with soft real-time constraints Graphical, but textual syntax](https://reader033.vdocuments.us/reader033/viewer/2022041904/5e62128a9917bc17606f5aff/html5/thumbnails/46.jpg)
Conclusion
MDE with UML-RT and Papryrus-RT
+ Connecting (gateway, MQTT)
+ Debugging
+ Change at RT
+ Distribution
+ Deployment (MARTE)
+ Schedulability
+ Testing
+ ?
= Open source MDE tool infrastructure for (certain kinds of)
IoT applications
46EXE'17
This talk
Future work
J. Dingel
Open Source!
![Page 47: Towards an open source MDE tool infrastructure for …...UML-RT: Characteristics Domain-specific • Embedded systems with soft real-time constraints Graphical, but textual syntax](https://reader033.vdocuments.us/reader033/viewer/2022041904/5e62128a9917bc17606f5aff/html5/thumbnails/47.jpg)
Resources
� http://flux.cs.queensu.ca/mase/papyrus-rt-resources/
47EXE'17J. Dingel
![Page 48: Towards an open source MDE tool infrastructure for …...UML-RT: Characteristics Domain-specific • Embedded systems with soft real-time constraints Graphical, but textual syntax](https://reader033.vdocuments.us/reader033/viewer/2022041904/5e62128a9917bc17606f5aff/html5/thumbnails/48.jpg)
Acknowledgements
� Nicolas Hili, PDF
� Mojtaba Bagherzadeh, PhD
� Karim Jahed, PhD
� Reza Ahmadi, PhD
� Michal Pasternak, MSc
� Harshith Vasanth Gayathri, MSc
� Sudharshan Gopikrishnan, MSc
48EXE'17J. Dingel
![Page 49: Towards an open source MDE tool infrastructure for …...UML-RT: Characteristics Domain-specific • Embedded systems with soft real-time constraints Graphical, but textual syntax](https://reader033.vdocuments.us/reader033/viewer/2022041904/5e62128a9917bc17606f5aff/html5/thumbnails/49.jpg)
49
Thank you …
… for your attention
EXE'17J. Dingel
Hey you shrub, do you always have to
have the last word?