76 lines
4.1 KiB
Plaintext
Executable File
76 lines
4.1 KiB
Plaintext
Executable File
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.
|
|
|