An interactive simulation environment to analyze the dynamic of System-Of-Systems during cascading faillure.
# System-Of-Systems Architecture Framework
SoSAF est un framework developpe sur Pharo permettant de definir un modele de conception d'execution et d'analyse, et de proceder a une simulation interactive.
SoSAF integre une couche de verification de modele permettant de maintenir le modele coherant durant toute la durée de la simulation. Cette derniere est de type synchrone et s'execute pas à pas.
```
Metacello new
baseline: 'SoSAF-Core';
repository: 'github://Cracen26/SoSAF/src';
load
```
## Model Definition
```
sos := SoSAFModel new.
"System-Of-Systems components definition"
sos addCS: #(
#($A 100) #($B 60) #($C 70) #($D 80)
#($F 100) #($G 20) #($H 10) #($I 30)
) .
"2 cluster: green and gray"
sos
createCluster: #('survey' #($A $B $C $D));
createCluster: #('rescue' #($F $G $H $I)).
"Dependecies between components"
sos addDependencies: #(
#($A $B 0.2 30) #($A $C 0.8 60)
#($B $D 0.8 30) #($C $D 0.1 20)
#($A $D 0.5 60)
#($F $G 0.2 30) #($F $H 0.8 60)
#($G $I 0.8 30) #($H $I 0.1 20)
#($F $I 0.6 40)
#($A $F 0.1 60)
); init.
sos displayStructure .
```
## Analysis
### Structure
.
### Performance Assessment
By conducting a sensitivity analysis, we have the opportunity to obtain metrics related to the operability of each system as output. Each configuration can then be tested and evaluated to enable system engineers to make informed choices.
The following code snippet allows for the update of the internal component parameters. We can as well update dependencies.
```
sos
step;
updateCS: #($A 30);
step;
updateCS: #($B 10);
step;
updateCS: #($C 20);
step;
updateCS: #($D 40);
step.
```
.