add umlet diagram
This commit is contained in:
1 parent
a4058a2882
commit
1bb25ec1c1
3 files changed
+403
-8
No files matched your search
@@ -112,6 +112,7 @@
|
||||
"vegalite",
|
||||
"wavedrom",
|
||||
"wireviz",
|
||||
"umlet",
|
||||
],
|
||||
},
|
||||
plantuml: {
|
||||
|
||||
@@ -0,0 +1,340 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<diagram program="umlet" version="15.1">
|
||||
<zoom_level>11</zoom_level>
|
||||
<element>
|
||||
<id>UMLClass</id>
|
||||
<coordinates>
|
||||
<x>759</x>
|
||||
<y>99</y>
|
||||
<w>242</w>
|
||||
<h>198</h>
|
||||
</coordinates>
|
||||
<panel_attributes>AppE
|
||||
fg=gray
|
||||
--
|
||||
+dataIndication
|
||||
+advIndication
|
||||
+connIndication
|
||||
+connConfirmation
|
||||
+discIndication
|
||||
+discConfirmation
|
||||
|
||||
+setNWE(NWE*)</panel_attributes>
|
||||
<additional_attributes/>
|
||||
</element>
|
||||
<element>
|
||||
<id>UMLClass</id>
|
||||
<coordinates>
|
||||
<x>374</x>
|
||||
<y>396</y>
|
||||
<w>242</w>
|
||||
<h>154</h>
|
||||
</coordinates>
|
||||
<panel_attributes>iNWE
|
||||
fg=gray
|
||||
--
|
||||
+dataIndication(Data*)
|
||||
+advIndication(Advertise*)
|
||||
+connIndication(Connection*)
|
||||
+connConfirmation(Connection*)
|
||||
+discIndication(Connection*)
|
||||
+discConfirmation(Connection*)</panel_attributes>
|
||||
<additional_attributes/>
|
||||
</element>
|
||||
<element>
|
||||
<id>UMLClass</id>
|
||||
<coordinates>
|
||||
<x>759</x>
|
||||
<y>693</y>
|
||||
<w>242</w>
|
||||
<h>99</h>
|
||||
</coordinates>
|
||||
<panel_attributes>RTX
|
||||
fg=gray
|
||||
--
|
||||
+send(Frame*)
|
||||
|
||||
+subscribe(iRTX*)</panel_attributes>
|
||||
<additional_attributes/>
|
||||
</element>
|
||||
<element>
|
||||
<id>UMLClass</id>
|
||||
<coordinates>
|
||||
<x>759</x>
|
||||
<y>396</y>
|
||||
<w>242</w>
|
||||
<h>198</h>
|
||||
</coordinates>
|
||||
<panel_attributes>NWE
|
||||
fg=gray
|
||||
--
|
||||
+dataRequest(Data*)
|
||||
+advRequest(Advertise*)
|
||||
+connRequest(Connection*)
|
||||
+discRequest(Connection*)
|
||||
+discConfirmation(Connection*)
|
||||
+receive
|
||||
|
||||
+subscribe(iNWE*)
|
||||
setRTX(RTX*)</panel_attributes>
|
||||
<additional_attributes/>
|
||||
</element>
|
||||
<element>
|
||||
<id>UMLClass</id>
|
||||
<coordinates>
|
||||
<x>374</x>
|
||||
<y>693</y>
|
||||
<w>242</w>
|
||||
<h>99</h>
|
||||
</coordinates>
|
||||
<panel_attributes>iRTX
|
||||
fg=gray
|
||||
--
|
||||
+receive(Frame*)</panel_attributes>
|
||||
<additional_attributes/>
|
||||
</element>
|
||||
<element>
|
||||
<id>UMLClass</id>
|
||||
<coordinates>
|
||||
<x>1144</x>
|
||||
<y>165</y>
|
||||
<w>143</w>
|
||||
<h>88</h>
|
||||
</coordinates>
|
||||
<panel_attributes>Node
|
||||
fg=gray</panel_attributes>
|
||||
<additional_attributes/>
|
||||
</element>
|
||||
<element>
|
||||
<id>UMLClass</id>
|
||||
<coordinates>
|
||||
<x>1144</x>
|
||||
<y>297</y>
|
||||
<w>143</w>
|
||||
<h>88</h>
|
||||
</coordinates>
|
||||
<panel_attributes>Advertise
|
||||
fg=gray
|
||||
--
|
||||
n: Node
|
||||
channel: int</panel_attributes>
|
||||
<additional_attributes/>
|
||||
</element>
|
||||
<element>
|
||||
<id>UMLClass</id>
|
||||
<coordinates>
|
||||
<x>1144</x>
|
||||
<y>418</y>
|
||||
<w>143</w>
|
||||
<h>88</h>
|
||||
</coordinates>
|
||||
<panel_attributes>Connection
|
||||
fg=gray
|
||||
--
|
||||
n1: Node
|
||||
n2: Node
|
||||
channel: int</panel_attributes>
|
||||
<additional_attributes/>
|
||||
</element>
|
||||
<element>
|
||||
<id>UMLClass</id>
|
||||
<coordinates>
|
||||
<x>1144</x>
|
||||
<y>539</y>
|
||||
<w>143</w>
|
||||
<h>88</h>
|
||||
</coordinates>
|
||||
<panel_attributes>Data
|
||||
fg=gray
|
||||
--
|
||||
Byte: data[]</panel_attributes>
|
||||
<additional_attributes/>
|
||||
</element>
|
||||
<element>
|
||||
<id>UMLClass</id>
|
||||
<coordinates>
|
||||
<x>1144</x>
|
||||
<y>704</y>
|
||||
<w>143</w>
|
||||
<h>88</h>
|
||||
</coordinates>
|
||||
<panel_attributes>Frame
|
||||
fg=gray
|
||||
--
|
||||
conn: Connection
|
||||
data: Data</panel_attributes>
|
||||
<additional_attributes/>
|
||||
</element>
|
||||
<element>
|
||||
<id>Relation</id>
|
||||
<coordinates>
|
||||
<x>869</x>
|
||||
<y>286</y>
|
||||
<w>99</w>
|
||||
<h>132</h>
|
||||
</coordinates>
|
||||
<panel_attributes>lt=<<<<->
|
||||
fg=gray
|
||||
m1=-theNWE</panel_attributes>
|
||||
<additional_attributes>10.0;10.0;10.0;100.0</additional_attributes>
|
||||
</element>
|
||||
<element>
|
||||
<id>Relation</id>
|
||||
<coordinates>
|
||||
<x>869</x>
|
||||
<y>583</y>
|
||||
<w>88</w>
|
||||
<h>132</h>
|
||||
</coordinates>
|
||||
<panel_attributes>lt=<<<<->
|
||||
fg=gray
|
||||
m1=-theRTX</panel_attributes>
|
||||
<additional_attributes>10.0;10.0;10.0;100.0</additional_attributes>
|
||||
</element>
|
||||
<element>
|
||||
<id>Relation</id>
|
||||
<coordinates>
|
||||
<x>484</x>
|
||||
<y>176</y>
|
||||
<w>297</w>
|
||||
<h>242</h>
|
||||
</coordinates>
|
||||
<panel_attributes>lt=<<.
|
||||
fg=gray</panel_attributes>
|
||||
<additional_attributes>10.0;200.0;10.0;10.0;250.0;10.0</additional_attributes>
|
||||
</element>
|
||||
<element>
|
||||
<id>Relation</id>
|
||||
<coordinates>
|
||||
<x>484</x>
|
||||
<y>561</y>
|
||||
<w>297</w>
|
||||
<h>154</h>
|
||||
</coordinates>
|
||||
<panel_attributes>lt=<<.
|
||||
fg=gray</panel_attributes>
|
||||
<additional_attributes>10.0;120.0;10.0;10.0;250.0;10.0</additional_attributes>
|
||||
</element>
|
||||
<element>
|
||||
<id>Relation</id>
|
||||
<coordinates>
|
||||
<x>605</x>
|
||||
<y>429</y>
|
||||
<w>176</w>
|
||||
<h>44</h>
|
||||
</coordinates>
|
||||
<panel_attributes>lt=<.
|
||||
fg=gray
|
||||
<<include>></panel_attributes>
|
||||
<additional_attributes>10.0;20.0;140.0;20.0</additional_attributes>
|
||||
</element>
|
||||
<element>
|
||||
<id>Relation</id>
|
||||
<coordinates>
|
||||
<x>605</x>
|
||||
<y>704</y>
|
||||
<w>176</w>
|
||||
<h>44</h>
|
||||
</coordinates>
|
||||
<panel_attributes>lt=<.
|
||||
fg=gray
|
||||
<<include>></panel_attributes>
|
||||
<additional_attributes>10.0;20.0;140.0;20.0</additional_attributes>
|
||||
</element>
|
||||
<element>
|
||||
<id>Relation</id>
|
||||
<coordinates>
|
||||
<x>990</x>
|
||||
<y>132</y>
|
||||
<w>176</w>
|
||||
<h>88</h>
|
||||
</coordinates>
|
||||
<panel_attributes>lt=<.
|
||||
fg=gray</panel_attributes>
|
||||
<additional_attributes>140.0;60.0;10.0;10.0</additional_attributes>
|
||||
</element>
|
||||
<element>
|
||||
<id>Relation</id>
|
||||
<coordinates>
|
||||
<x>990</x>
|
||||
<y>209</y>
|
||||
<w>176</w>
|
||||
<h>242</h>
|
||||
</coordinates>
|
||||
<panel_attributes>lt=<.
|
||||
fg=gray</panel_attributes>
|
||||
<additional_attributes>140.0;10.0;10.0;200.0</additional_attributes>
|
||||
</element>
|
||||
<element>
|
||||
<id>Relation</id>
|
||||
<coordinates>
|
||||
<x>990</x>
|
||||
<y>165</y>
|
||||
<w>176</w>
|
||||
<h>187</h>
|
||||
</coordinates>
|
||||
<panel_attributes>lt=<.
|
||||
fg=gray</panel_attributes>
|
||||
<additional_attributes>140.0;150.0;10.0;10.0</additional_attributes>
|
||||
</element>
|
||||
<element>
|
||||
<id>Relation</id>
|
||||
<coordinates>
|
||||
<x>990</x>
|
||||
<y>341</y>
|
||||
<w>176</w>
|
||||
<h>132</h>
|
||||
</coordinates>
|
||||
<panel_attributes>lt=<.
|
||||
fg=gray</panel_attributes>
|
||||
<additional_attributes>140.0;10.0;10.0;100.0</additional_attributes>
|
||||
</element>
|
||||
<element>
|
||||
<id>Relation</id>
|
||||
<coordinates>
|
||||
<x>990</x>
|
||||
<y>462</y>
|
||||
<w>176</w>
|
||||
<h>33</h>
|
||||
</coordinates>
|
||||
<panel_attributes>lt=<.
|
||||
fg=gray</panel_attributes>
|
||||
<additional_attributes>140.0;10.0;10.0;10.0</additional_attributes>
|
||||
</element>
|
||||
<element>
|
||||
<id>Relation</id>
|
||||
<coordinates>
|
||||
<x>990</x>
|
||||
<y>484</y>
|
||||
<w>176</w>
|
||||
<h>110</h>
|
||||
</coordinates>
|
||||
<panel_attributes>lt=<.
|
||||
fg=gray</panel_attributes>
|
||||
<additional_attributes>140.0;80.0;10.0;10.0</additional_attributes>
|
||||
</element>
|
||||
<element>
|
||||
<id>Relation</id>
|
||||
<coordinates>
|
||||
<x>990</x>
|
||||
<y>583</y>
|
||||
<w>176</w>
|
||||
<h>176</h>
|
||||
</coordinates>
|
||||
<panel_attributes>lt=<.
|
||||
fg=gray</panel_attributes>
|
||||
<additional_attributes>140.0;10.0;10.0;140.0</additional_attributes>
|
||||
</element>
|
||||
<element>
|
||||
<id>Relation</id>
|
||||
<coordinates>
|
||||
<x>990</x>
|
||||
<y>748</y>
|
||||
<w>176</w>
|
||||
<h>33</h>
|
||||
</coordinates>
|
||||
<panel_attributes>lt=<.
|
||||
fg=gray</panel_attributes>
|
||||
<additional_attributes>140.0;10.0;10.0;10.0</additional_attributes>
|
||||
</element>
|
||||
</diagram>
|
||||
@@ -24,13 +24,13 @@ et effectue des opérations pour assurer une communication efficace et fiable.
|
||||
|
||||
</details>
|
||||
|
||||
## Element de protocol
|
||||
# Element de protocol
|
||||
Un protocole est un ensemble de règles qui définit le format et la séquence des messages échangés entre les entités
|
||||
d'un système de communication. Les entités communiquent entre elles en échangeant des messages. Chaque message est
|
||||
composé d'un en-tête et d'un corps. L'en-tête contient des informations de contrôle et le corps contient les données
|
||||
à transférer. Les entités peuvent être des processus, des machines, des systèmes, etc.
|
||||
|
||||
### Notions en rapport avec les protocoles
|
||||
## Notions en rapport avec les protocoles
|
||||
Les notions suivantes sont essentielles en rapport avec la spécification des protocoles :
|
||||
|
||||
- **(N)-service :**
|
||||
@@ -77,11 +77,11 @@ Paquet virtuel de donnée qui est transporté à l'autre entité paire au moyen
|
||||
</details>
|
||||
|
||||
|
||||
## Stratégie de conception de protocoles
|
||||
# Stratégie de conception de protocoles
|
||||
Un modèle OSI à 7 couches est souvent trop complexe pour les systèmes embarqués. Il est donc nécessaire de définir
|
||||
une stratégie de conception de protocoles adaptée aux contraintes de ces systèmes.
|
||||
|
||||
### Stratégie 3 Couches
|
||||
## Stratégie 3 Couches
|
||||
La stratégie 3 couches définit trois couches de communication. Elle facilite le codage avec moins d'interfaces.
|
||||
|
||||
1. **Couche Application :**
|
||||
@@ -101,7 +101,7 @@ La stratégie 3 couches définit trois couches de communication. Elle facilite l
|
||||
Cette stratégie divise les responsabilités de communication en trois niveaux distincts, facilitant la modularité,
|
||||
la maintenance et l'interchangeabilité des composants du système.
|
||||
|
||||
### Stratégie RX-TX
|
||||
## Stratégie RX-TX
|
||||
La stratégie RX-TX définit deux processus par couche :
|
||||
|
||||
1. **Processus RX :**
|
||||
@@ -120,7 +120,7 @@ Chaque processus peut avoir un ou plusieurs SAP pour l'accès aux différents pr
|
||||
Cette stratégie permet de séparer les processus de réception et d'émission des données, facilitant la maintenance
|
||||
et l'interchangeabilité des composants du système.
|
||||
|
||||
### Stratégie SAP
|
||||
## Stratégie SAP
|
||||
La stratégie SAP définit la manière dont les services sont accessibles à l'extérieur. Il existe deux approches possibles :
|
||||
|
||||
1. **Single SAP :**
|
||||
@@ -140,7 +140,7 @@ La stratégie SAP définit la manière dont les services sont accessibles à l'e
|
||||
Cette stratégie permet de définir l'accès aux services de communication, facilitant la modularité et l'interchangeabilité
|
||||
des composants du système.
|
||||
|
||||
### Stratégie de mémoire
|
||||
## Stratégie de mémoire
|
||||
La stratégie de mémoire définit la manière dont les données sont transférées entre les couches. Il existe deux approches
|
||||
possibles :
|
||||
|
||||
@@ -159,7 +159,7 @@ possibles :
|
||||
Cette stratégie permet de gérer efficacement la mémoire, facilitant la maintenance et l'interchangeabilité des composants
|
||||
du système.
|
||||
|
||||
### Stratégie de découplage
|
||||
## Stratégie de découplage
|
||||
La stratégie de découplage définit la manière dont les données sont traitées entre les couches.
|
||||
Il existe deux approches possibles :
|
||||
|
||||
@@ -178,5 +178,59 @@ Il existe deux approches possibles :
|
||||
Cette stratégie permet de traiter les données de manière efficace, facilitant la maintenance et l'interchangeabilité
|
||||
des composants du système.
|
||||
|
||||
# Implémentation de protocoles par un example
|
||||
|
||||
Soient les classes AppE, NWE et RTXE. La lettre E signifié Entity.
|
||||
###### Exercice 1
|
||||
|
||||
<b><i><u>Question</u></i></b><br>
|
||||
Dessinez un premier diagramme de classe qui montre les différentes couches de votre système et leurs classes respectives. Esquissez les dépendances.
|
||||
|
||||
<details>
|
||||
<summary><b><i><u>Réponse</u></i></b></summary>
|
||||
|
||||
```plantuml
|
||||
@startuml
|
||||
Application.AppE .-down-> Network.NWE
|
||||
Network.NWE .up-> Application.AppE
|
||||
|
||||
Network.NWE .-down-> RTX.RTXE
|
||||
RTX.RTXE .up-> Network.NWE
|
||||
|
||||
@enduml
|
||||
```
|
||||
|
||||
</details>
|
||||
|
||||
|
||||
|
||||
###### Exercice 2
|
||||
Dans une prochaine étape, il s’agit d’ajouter aux classes les méthodes nécessaires.
|
||||
|
||||
<b><i><u>Question</u></i></b><br>
|
||||
Présentez dans un tableau les services offerts, respectivement utilisés par chaque couche.
|
||||
<details>
|
||||
<summary><b><i><u>Réponse</u></i></b></summary>
|
||||
|
||||
| Services | Application | Network | RTX |
|
||||
|-----------------|-------------|-----------|----------|
|
||||
| *Data* | required | provided | |
|
||||
| *Advertise* | | provided | |
|
||||
| *Connection* | required | provided | |
|
||||
| *Disconnection* | required | provided | |
|
||||
| *Transfer* | | required | provided |
|
||||
|
||||
|
||||
</details>
|
||||
|
||||
###### Exercice 3
|
||||
<b><i><u>Question</u></i></b><br>
|
||||
Appliquez maintenant la méthode de découplage présentée ci-dessus pour réaliser les services dans les différentes couches.
|
||||
<details>
|
||||
<summary><b><i><u>Réponse</u></i></b></summary>
|
||||
|
||||

|
||||
|
||||
</details>
|
||||
|
||||
|
||||
Reference in new issue
Block a user