describing Mobius

This commit is contained in:
Silvano Chiaradonna 2023-10-03 13:20:40 +02:00
parent 9ab8dde609
commit 7d92c516df
1 changed files with 75 additions and 0 deletions

View File

@ -0,0 +1,75 @@
3.3.3.3 Il formalismo SAN, il tool Mobius e alcuni esempi di modelli sviluppati
Per definire e valutare i modelli proposti, è stato utilizzato il
flessibile e potente ambiente
di modellazione Möbius [DCC02] implementato dall'omonimo tool [CGK09]
(i cui componenti principali sono mostrati in Figura xx1),
che supporta una molteplicità di formalismi di modellazione e di
risolutori, con capacità di interagire tra loro.
Il modello complessivo è ottenuto mediante uno o più sottomodelli
atomici che vengono convertiti (in maniera trasparente all'utente) al
livello di Abstract Functional Interface (AFI) [DCCDDDSW02,DKSC02],
dove possono essere composti gerarchicamente (come mostrato in Figure
xx1) utilizzando operatori, come Join e Rep [SM91], basati
sulla condivisione di variabili di stato o azioni.
Sul modello risultante vengono definite prima le variabili di
performance (che rappresentano le misure di interesse) ed infine gli
studi da valutare in base alla variabilità dei parametri del modello.
Tutti i formalismi e i risolutori supportati da Möbius sono basati sul
linguaggio di programmazione orientato ad oggetti C++, consentendo
l'utilizzo di codice C++ nei modelli.
Pertanto, lo strumento supporta strutture dati C++ esterne ed in
generale codice C++,
staticamente definiti al momento della compilazione e il collegamento
di librerie C++ esterne.
Tra i formalismi per la definizione dei modelli atomici, è stato
scelto quello delle Stochastic Activity Network (SAN) [SM01], una
estensione stocastica delle reti di Petri basata sulle primitive:
places, activities, input and output gates. In particolare, ....
An extensible tool for dependability, security, and perfor- mance evaluation of large and complex system models
for dependability and performance analysis
Tra i formalismi disponibili in Mobius, è stato scelto quello delle Stochastic Activity
Network (SAN) [SM01], una estensione stocastica delle reti di Petri basata sulle
primitive places, activities, input and output gates. In particolare, ....
Mobius fornisce un'infrastruttura per supportare una molteplicità di formalismi
di modellazione e risolutori,
Very briefly, SANs are a variant of Stochastic Petri Nets (SPN) with a graphical
representation consisting of places, timed and instantaneous activities, and input
and output gates. Activities are equivalent to transitions in SPN. The amount of time
to complete a timed activity may be exponentially or nonexponentially distrib- uted.
Cases can be associated to activities (represented graphically as circles on the right
side of an activity) and permited to model uncertainty upon completion of an activity.
The use of gates permits a greater flexibility in specifying enabling conditions and
completion rules than simple SPN.
The Mo ̈bius modeling framework and its supporting tool Mo ̈bius [3] are briefly recalled in the following.
Our models are defined using the SAN formalism [28], a stochastic extension of Petri nets based
on the following primitives: plain and extended places (blue and orange circles) represent
SVs, timed and instantaneous activities (hollow and solid vertical bars) with linked input and output gates
(triangles pointing left or right) represent actions. Extended places represent complex data
types (like int, float, double, structures and arrays).
Input gates control when an activity is enabled.
The delay between enabling and completing of timed activities is a generally distributed random variable,
whereas enabling and completing of instantaneous activities take place at the same time.
SVs changes occur when an activity completes, as defined by the input and output gates.
The SAN primitives are defined by C++ statements, supporting external C++ data structures and
the linking to external C++ libraries.
In Mo ̈bius, the Join and Rep state-sharing compositional operators [28] are supported at level of
AFI [23, 3] as already described in Section 4. The auxiliary functions Index() and Deps(), and
the operator D are implemented through a Perl program [34, 20] which manipulates the xml files
describing the models defined in M ̈obius.