The growing request for high-quality applications for em- bedded systems demands model-driven approaches that facilitate their design as well as the verification and validation activities.
In this paper we present MOSES, a model-driven performance analysis methodology based on Foundational UML (fUML). Implemented as an executable model library, MOSES provides data structures, as Classes, and algorithms, as Activities, which can be imported to instrument fUML models and then to carry out the performance analysis of the modeled system through fUML model simulation. An industrial case study is provided to show MOSES at work, its achievements and its future challenges.
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
fUML-Driven Performance Analysisthrough the MOSES Model Library
1. fUML-Driven
Performance Analysis
through the
MOSES Model Library
Luca Berardinelli, Vittorio Cortellessa
Post Doc @ DISIM
University of L’Aquila
*ACES-MB Workshop@MODELS2014
2. MOSES and PRESTO
MOSES: MOdeling Software and platform architEcture in UML 2 for
Simulation-based performance analysis
Scope:
Software Architecture
& Hardware Platform Modeling
Non-Functional Validation
Performance Analysis
http://www.presto-embedded.eu/
3. MOSES in a Nutshell
MOSES: MOdeling Software and platform architEcture in UML 2 for
Simulation-based performance analysis
Everything is a
fUML Model
MOSES
Performance
Analysis
Results
Model
Library
System Model
Hardware
Platform
Software
Architecture
4. MOSES in a Nutshell
Everything is a
fUML Model
MOSES
Model
Library
Perf.
Analysis
Results
<<extended by>>
System Model
Software
Hardware
Architecture Platform
fUMLVirtual
Machine
<<simulated by>>
<<generates>>
Execution
Model
5. MOSES in a Nutshell (tools)
Everything is a
fUML Model
MOSES
Model
Library
Perf.
Analysis
Results
<<extended by>>
System Model
Software
Hardware
Architecture Platform
fUMLVirtual
Machine
<<simulated by>>
<<generates>>
Execution
Model
6. Foundational UML
Everything is a
fUML Model
COMPOSITE STRUCTURES
COMPONENTS
DEPLOYMENTS
INTERACTIONS
STATE MACHINES
USE CASES
lightweight extensions by
PROFILES
CLASSES
ACTIVITIES
ACTIONS
8. Case Study: Indoor Positioning System
Everything is a
fUML Model
System Model
Indoor Positioning System
Hardware
Platform
MANET
Nodes
Software
Architecture
OLSR
protocol
9. Case Study: Indoor Positioning System
• Indoor Positioning System (IPS)
based on a Mobile Ad Hoc
NETwork (MANET), nodes are
mobile, connected by wireless
links
• Software (COTS):
o Optimized Link State Routing (OLSR),
IP routing
o Standard: RFC3626, defines data
structures (tables) and functionalities
o Implementation: OLSR Daemon, olsrd
• Hardware:
o ATMEL ATZB-900-B0 module that sustains,
with its transceiver, the signaling among
nodes
o OMAP L138 module sustains physical,
medium access control, and network
layers of the communication network
OLSR daemon
TI OMAP L138
(Digital Signal Processor, ARM CPU)
ATMEL ATZB-900-B0 (μc, transceiver)
HARDWARE PLATFOM SOFTWARE ARCHITECTURE
12. The MOSES Model Library
Everything is a
fUML Model
System Model
Indoor Positioning System
MOSES
Performance
Analysis
Results
Model
Library
Software Architecture
OLSR protocol
an intermediate, executable layer
to carry out performance analysis of a
System Model
on top of fUML VM simulation
Hardware Platform
MANET Node(s)
13. MOSES (structure, informal)
System Model
Indoor Positioning System
Main
Dispatcher
Workload
Generator
MOSES
Software Architecture
OLSR protocol
Communication Request(s), 0..*
Hardware Platform
MANET Node(s)
Software Request(s)
(invoking OLSR functionalities)
Resource Request(s), 1..*
(invoking Components' operations)
CPU
Computing Request(s), 1..*
Dispatcher
Computing Resources
FCFS
CPU
RR
CPU ...
Network
Dispatcher
Communication Resources
WiFi UMTS ...
Storage Request(s), 0..*
Disk
Dispatcher
Storage Resources
ROM RAM ...
14. MOSES (behavior, informal)
System Model
Indoor Positioning System
additional data:
timings for execution occurrences
MOSES
Software Architecture
OLSR protocol
Hardware Platform
MANET Node(s)
15. MOSES (structure, fUML)
System Model
Indoor Positioning System
Software Architecture
OLSR protocol
Dispatchers'
Hierarchy
Hardware Platform
MANET Node(s)
Workload Generator
connected to software components that
receive Software Requests
16. MOSES (structure, fUML)
System Model
Indoor Positioning System
Software Architecture
OLSR protocol
timings for execution occurrences
(e.g., arrival time, service time)
generated by random number generators
(e.g., waiting time, completion time)
derived slot values by simulation of activities
Hardware Platform
MANET Node(s)
17. MOSES (structure, fUML)
System Model
Indoor Positioning System
Software Architecture
OLSR protocol
Hardware Platform
MANET Node(s)
Simulation Parameters:
e.g., max number of Software Request
generated by the Workload Generator
Simulation Results:
e.g., System Response Time, CPU Utilisation
18. MOSES (model instrumentation)
System Model
Indoor Positioning System
Main
Dispatcher
CPU
Dispatcher
Network
Dispatcher
Disk
Dispatcher
Computing Resources
FCFS
CPU
RR
CPU ...
Communication Resources
WiFi UMTS ...
Storage Resources
ROM RAM ...
Workload
Generator
MOSES
Software Architecture
OLSR protocol
Hardware Platform
MANET Node(s)
Software Request(s)
(invoking OLSR functionalities)
Resource Request(s), 1..*
(invoking Components' operations)
Computing Request(s), 1..* Communication Request(s), 0..* Storage Request(s), 0..* Two main steps:
• Generalizations
• Extension of Software Behaviors with
MOSES-specific actions
19. • An IPS's Node is the MOSES Model
we are going to simulate a single node
rather than the whole netw<ork
• OLSR HELLO Message is
the Software Request
• OLSR is a SwComponent
• OLSR's Repositories are SwComponents
• OMAP L-138's CPU is a FCFS CPU
MOSES
<<model library>>
IPS fUML Model (software structure) IPS fUML Model (hardware structure)
20. OLSR Functionality: HELLO Message Processing
model instrumentation
LinkSet::update()
additional data:
timings
for execution
occurrences
LinkSet::update()
21. Performance Analysis by fUML VM
Everything is a
fUML Model
MOSES
Model
Library
Perf.
Analysis
Results
GUI
<<extended by>>
System Model- Indoor
Positioning System
• Workload: HELLO Message(s)
• Processing Steps: Flooding of HELLOs
• Timings for ALL the involved
components' operations.
fUMLVirtual
Machine
<<simulated by>>
<<generates>>
Execution
Model
22. Performance Analysis by fUML VM
additional
data:
timings
additional
data:
timings
additional
data:
timings
additional
data:
timings
additional
data:
timings
MOSES
GUI
Workload Generator Parameters: arrival pattern of HELLOs
Stop Conditions: e.g. MAX #HELLOs
Performance
Analysis Results
Operations' Resource Demands
23. Performance Analysis by fUML VM
Assumed or Measured
Parameters
-
Service Time per
Operations
-
Exponentially
Distributed Variables
additional data:
timings
MOSES
GUI
"Time" is not natively
managed by the fUML VM
Operations' Resource Demands
24. Performance Analysis by fUML VM
additional
data:
timings
additional
data:
timings
additional
data:
timings
additional
data:
timings
additional
data:
timings
MOSES
GUI
instances of
Performance
Analysis
Results
25. Future Work (1)
Everything is a
fUML Model
MOSES
Model
Library
Perf.
Analysis
Results
<<extended by>>
System Model
Software
Hardware
Architecture Platform
fUMLVirtual
Machine
<<simulated by>>
<<generates>>
Execution
Model
• Extending analysis capabilities
• Enhancing its design (it is a model!)
implementation biases w.r.t. the chosen fUML VM
(Cameo Simulation Toolkit)?
Luca Berardinelli, Antinisca Di Marco, Stefano Pace:
fUML-Driven Design and Performance Analysis of Software Agents for Wireless Sensor
Network.
ECSA 2014: 324-339
26. Future Work (2)
Everything is a
fUML Model
Martin Fleck, Luca Berardinelli, Philip Langer, Tanja Mayerhofer, Vittorio Cortellessa:
Resource Contention Analysis of Cloud-based System through fUML-driven MOSES
Model Execution.
NiM-ALP@MoDELS 2013: 6-15
Model
Library
Perf.
Analysis
Results
<<extended by>>
System Model
Software
Hardware
Architecture Platform
fUMLVirtual
Machine
<<simulated by>>
<<generates>>
Execution
Model
• Applying fUML-driven analysis in different
domains (e.g., Cloud-based Systems)
27. Future Work (3)
Everything is a
fUML Model
MOSES
Model
Library
Perf.
Analysis
Results
<<extended by>>
System Model
Software
Hardware
Architecture Platform
fUMLVirtual
Machine
<<simulated by>>
<<generates>>
Execution
Model
• Studying the suitability of the current of
the fUML VM for Non-Functional
Analyses
Experienced scalability problem with large
workloads
http://www.modelexecution.org/
28. fUML-Driven
Performance Analysis
through the
MOSES Model Library
Thank You
Luca Berardinelli,
Post Doc @ DISIM
University of L’Aquila