Modélisation de la structure en UML (Partie II) Systèmes en temps réel Modélisation de la structure en UML (Partie II)
Structure (part2) - 2
Synopsis Revue Plus sur les Ports Encore plus sur les Ports Exemple: System Processor Structure (part2) - 3
Revue Capsules Ports Protocoles La fondation sur laquelle nous allons modéliser les systèmes en temps réel avec UML Ports La seule interface publique par laquelle les capsules communiquent entre elles Protocoles Fournit la spécification pour tous les messages qui entrent et sortent d’un port Structure (part2) - 4
Plus sur les Ports: Compatibilité ports base et conjugué base (ou non conjugué) habituellement associé du côté du client le port conjugué a les messages inverses de la base ports symétriques messagesIn & messagesOut sont identiques server client conjugate base conjugate server client server Structure (part2) - 5
Plus sur les Ports : Visibilité (cont) ports publiques fait partie de l’interface de la capsule apparaît sur la frontière de la capsule ports protégés connecte une capsule aux rôles des capsules qui sont contenues pas visible en dehors de la capsule contenant Structure (part2) - 6
Plus sur les Ports : Terminaison Ports terminaux Finissent sur une machine d’état Peut connecter des capsule à des rôles de capsule Ports de relais Fait partie de l’interface de la capsule Apparaissent à la frontière de la capsule Structure (part2) - 7
Plus sur les Ports : types de connecteurs ports attachés (Wired) doivent être connectés à d’autres ports pour envoyer des messages ports non attachés ne peuvent pas être connectés directement à d’autres ports utilisés pour modéliser les canaux de communication dynamiques Structure (part2) - 8
Encore plus sur les Ports : Ports de système Ports journal (Log Ports) Système de journal pour messages à but général log() – imprime un message à l’écran sans un CR show() - imprime un message à l’écran avec un CR Aussi cr(), space(), tab(), crtab(), clear(), commit() captainsLog.log(“salut les Martiens !”); Ports de chrono (Timing Ports) Service de chrono général (absolu & relatif) shipsTimer.informIn(*); aussi informAt(*), informEvery(*), cancelTimer(**) Structure (part2) - 9
Encore plus sur les Ports : Ports de système Ports d’exception Utilisés pour définir les politiques personnalisés pour traiter les exceptions myExceptionPort.userError().raise(); Sujet avancé / couvert plus tard dans le cours Ports cadre (Frame Ports) Utilisés pour créer, détruire, importer ou déporter les capsules durant l’exécution Structure (part2) - 10
Rappel: Exemple System Processor Structure (part2) - 11
Ajout d’un subsystem controller Structure (part2) - 12
Diagramme de structure de Capsule : SystemProcessor « références » Structure (part2) - 13
Diagramme de structure de Capsule : SubsystemController Structure (part2) - 14
Diagramme de structure de Capsule : ECM Structure (part2) - 15
Exercice: Dessinez les diagrammes de structure de capsule correspondants Structure (part2) - 16