System Communication Jupiter



Anleitung: ScomEditor – Kommunikationsmodellierung

Einleitung

Der ScomEditor ist ein Software-Tool zur Modellierung von Kommunikationsstrukturen innerhalb eines Software-Systems. Ein solches Software-Systems besteht aus verschiedenen Subsystemen, die wiederum in Module unterteilt sind. Diese Module kommunizieren auf zwei Arten miteinander:

  • manuellen Implementierungsaufwand
  • redundante Kommunikationsimplementierungen
  • Integrationsaufwand zwischen Modulen

Komponenten des Kommunikationsmodells

Das Kommunikationsmodell basiert auf vier zentralen Bausteinen:

Eine Activity ist ein in sich abgeschlossenes Programm innerhalb des Kommunikationssystems.

  • Eigenständigkeit: Jede Activity läuft als eigenes Programm (als ein Task). Das sorgt dafür, dass die Activity stabil läuft und andere Programme nicht stört.
  • Struktur: Eine Activity besteht aus mehreren kleineren Bausteinen, den sogenannten „Runnables“.
  • Ablauf: Diese Runnables sind in einer festen Reihenfolge angeordnet – vergleichbar mit einem Wegweiser oder einem Ablaufplan. Dadurch ist genau festgelegt, welcher Schritt nach dem anderen ausgeführt wird, was die Arbeit sehr strukturiert und übersichtlich macht.

Allgemein: Eine Activity ist ein eigenständiges Programm, das seine Aufgaben in fest definierten, geordneten Einzelschritten (Runnables) abarbeitet.

Ein Runnable ist der Baustein im Kommunikationssystem. Vergleichbar mit einem Werkzeug in einem Werkzeugkasten erfüllt es eine spezialisierte Aufgabe oder Geschäftslogik innerhalb der Anwendung:

  • Der Inhalt: Jedes Runnable enthält eine ganz bestimmte Aufgabe oder eine Geschäftslogik (also das „Gehirn“ einer Funktion).
  • Die Verbindung (Ports): Damit diese Werkzeuge miteinander arbeiten können, haben sie Anschlüsse – sogenannte Ein- und Ausgangsports.
  • Flexibilität: Da ein Runnable mehrere Anschlüsse haben kann, ist das System sehr flexibel. Man kann Runnables wie Legosteine miteinander kombinieren, um komplexe Aufgaben zu lösen.

Allgemein: Ein Runnable ist ein kleiner, spezialisierter Arbeitsschritt, der Daten über Anschlüsse (Ports) empfängt, verarbeitet und weitergibt. So lassen sich durch geschicktes Zusammenstecken dieser Bausteine umfangreiche Abläufe erstellen.

Ein Port ist der kleinste Baustein im Kommunikationssystem. Über den Port läuft die Datenaustausch zwischen Runnables.

  • Eingangsport – Daten empfangen.
  • Ausgangsport – Daten senden.

Eine Connection ist die Verbindung zwischen Ausgangsport und Eingangsport vom Runnable. Es gibt zwei Typen von Connection:

  • Interne Connection – Runnables kommunizieren miteinander innerhalb eines Activity.
  • Externe Connection – Runnables kommunizieren miteinander außerhalb eines Activity.

Beispiele für Verdeutlichung:

Für den Datenaustausch zwischen Modulen wird ein Kommunikationsmodell als Basis erstellt.

Auf dem Bild ist die interne Kommunikation zwischen zwei Runnables innerhalb eines Activity. Runnable1:PortOut sendet Daten zum Runnable:PortIn

Intern
Interne Kommunikation

Hier ist die externe Kommunikation zwischen zwei Runnables außerhalb eines Activity. Activity1:Runnable1:PortOut sendet Daten zum Activity2:Runnable2:PortIn

Extern
Interne und externe Kommunikation

Ein Kommunikationssystem kann mehreren Activities enthalten, ebenso ein Activity kann mehre Runnable enthalten. Jedes Runnable kann bis 16 Ports für Datenaustausch haben. Die Daten können einfache und komplexe Daten-Typen haben.

Hinweis zur Darstellung: Im ScomEditor werden Verbindungen nicht durch Linien, sondern durch eine farbliche Kennzeichnung an den Ports dargestellt. Jede Verbindung besitzt dabei eine individuelle Farbe, um eine übersichtliche Zuordnung zu ermöglichen.

Runnables
Runnables

Benutzeroberfläche

Die Benutzeroberfläche des ScomEditors ist in fünf Bereiche unterteilt:

1. Steuerungsbuttons

Damit werden Aufgaben vom Tool gesteuert:

  • Load Yaml – Laden vom Kommunikationsmodell aus YAML-Dateien.
  • Save Yaml – Speichern vom Kommunikationsmodell in YAML-Dateien.
  • Update Model – Aktualisieren vom Kommunikationsmodell.
  • Generate Code - Generierung der Middleware-Code und optional wird generierte Code mit CMake gebaut und kompiliert.
  • Settings – Konfiguration vom ScomEditor.

2. Baumstruktur von Scom-Instanzen.

Mit Scom-Instanzen werden Instanzen der Systemkommunikation gemeint. Das sind:

  • Activitiy
  • Runnable
  • Port

3. Eigenschaften der Scom-Instanzen.

Das sind Namen von Scom-Instanzen, Datentypen, Einbindungen zur Softwarestruktur.

4. Übersicht von Kommunikationsmodell.

Dies ist eine Übersicht der SCOM-Instanzen und der Interaktion zwischen ihnen.

5. Information der Prozessabläufe im ScomEditor.

Benutzer wird über Vorgänge im ScomEditor informiert.

Benutzeroberfläche
Benutzeroberfläche