Architekturelemente

Die Architekturelemente von Innovator ermöglichen eine effiziente und sichere Zusammenarbeit im Team.

Lizenzserver

Der Hauptlizenzserver ist der zentrale Einstiegspunkt in die Client-Server-Architektur von Innovator. Er nimmt folgende Aufgaben wahr.

Hinweis

Alle Innovator-Anwendungskomponenten müssen Netzwerkverbindungen zu den jeweiligen Lizenzservern aufbauen können. Die Freigabe von Netzwerkports ist daher zwingend erforderlich.

Modellserver

Der Modellserver stellt die Modelldaten für die Innovator-Client-Anwendungen bereit.

Beim Start liest er das ihm über Parameter mitgeteilte Repository ein und baut aus dessen Daten eine In-Memory-Datenbank auf. Nach der Anmeldung am Lizenzserver steht der Modellserver zur Verbindungsaufnahme durch die Client-Anwendungen bereit. Er regelt den konkurrierenden Zugriff verschiedener Benutzer auf die Modelldaten und sorgt für deren Konsistenz.

Der Modellserver und die Client-Anwendungen kommunizieren über komprimierte Telegramme, die sowohl Kommandos als auch Daten enthalten.

Repository und Modelle

Die Datenbank, die alle Modelldaten und Profile enthält, wird als Repository bezeichnet.

Repositorys bis zur Version 14.1, deren eigenständiger Modellserver am Hauptlizenzserver läuft, stehen als Unternehmensrepositorys auch an allen internen Projektlizenzservern zur Verfügung.

Innovator ermöglicht die Verwaltung von Modellversionen. Dadurch kann dasselbe Modell in verschiedenen Ständen verwendet werden. Für verwaltete Modelle wird das Konzept der zentralen Bereitstellung nicht angeboten.

An einem Modell können prinzipiell beliebig viele Benutzer gleichzeitig arbeiten. Damit nicht mehrere Benutzer zugleich ein Element ändern können, ist das Innovator-Modell mit einem Sperrkonzept ausgestattet. Dieses ermöglicht einem Benutzer, Elemente und Diagramme zur exklusiven Veränderung für sich zu reservieren. Andere Benutzer können sich weiterhin über den aktuellen Zustand dieser gesperrten Elemente informieren, diese aber nicht ändern.

Bus

Der Bus ist eine Kommunikationskomponente, die es Lizenzservern, Modellservern, Client-Anwendungen und Agenten ermöglicht, schnell und asynchron Statusinformationen auszutauschen.

Für jeden Lizenzserver existiert ein Bus. Beim Start eines Lizenzservers wird dieser automatisch ebenfalls gestartet.

Einschränkung

Unter Windows muss bei Nutzung eines Dienstes zum Start des Lizenzservers der Bus (inobus) ebenfalls als separater Dienst eingerichtet werden.

Hub

Jeder Lizenzserver startet automatisch einen Hub (InoHub.jar), auch als Dienst. Ein Hub stellt zentrale Auskunftsdienste zur Verfügung. Er dient z.B. zur Namensauflösung von alternativen Innovator-Links auf physische Modelle.

Agent

Der Agent ist eine Verwaltungskomponente, die die Systemumgebung auf den für den Innovator-Betrieb vorgesehenen Servern kontrolliert und verwaltet. Seine Kernaufgabe ist die Pflege und Verwaltung aller unter Versionskontrolle stehenden Modelle.

Die Agenten (InoAgent.jar) nutzen als Dienstmanager Apache Commons Daemon. Sie können als Dienste eingerichtet werden.

Benachrichtigungsservice

Der Benachrichtigungsservice (InnoNotify.exe) ist eine Verwaltungskomponente, die für das Sammeln und Versenden der Änderungsbenachrichtigungen zuständig ist.

Client-Anwendung Modelleditor

Der Modelleditor ist das Werkzeug, mit dem die Modellierer Zugriff auf die Modelle erhalten und Modellinhalte erstellen und bearbeiten können. Dieses Programm ist nur für Windows erhältlich und eine Anwendung auf Basis der "WPF"-Architektur von Microsoft.

Beim Start des Modelleditors nimmt dieser Kontakt mit dem eingestellten Lizenzserver auf und stellt dem Anwender die für ihn erreichbaren Modelle zur Anmeldung zur Verfügung. Die vom Modelleditor bereitgestellten Funktionen richten sich danach, welche Lizenz für den Anwender vorliegt, welche Konfigurationseinstellungen im Repository für das Modell hinterlegt sind und in welcher Rolle der Anwender angemeldet ist.

Über Plug-ins kann der Modelleditor in seiner Funktionalität weitreichend erweitert werden. Plug-ins für verschiedenste Funktionen können sowohl von der MID bezogen als auch vom Kunden selbst programmiert werden.

Weitere Client-Anwendungen

Für die Bearbeitung der den Modellen stets zugrundeliegenden UML-Profile wird der Konfigurationseditor genutzt. Die seitens MID gepflegten Profile werden dabei durch Customization-Profile ergänzt, mit denen sich kundenspezifische Erweiterungen umsetzen lassen. Außerdem werden im Konfigurationseditor Festlegungen zur Modelldokumentation und zur Anzeige im Modelleditor getroffen.

Die administrative Verwaltung von Lizenzen, Servern, Modellen, Modellversionen, Benutzern und Anmelderegeln sind die Hauptaufgaben des Administrationsprogramms. Außerdem können sowohl die Umgebung als auch die Windows-Dienste hier verwaltet werden.

Der Transformator dient der Transformation von Repositorys und Modellversionen in eine neue Innovator-Version.

Netzwerk

Sofern Innovator nicht vollständig auf einem Einzelplatzrechner installiert ist, wird zur Kommunikation der Komponenten untereinander immer ein Netzwerk benötigt. Innovator kommuniziert mit einem eigenen Protokoll auf TCP/IP-Basis (Transmission Control Protocol/Internet Protocol).

Zur Aufnahme der Kommunikation müssen auf den Rechnern, auf denen Lizenzserver, Bus, Agent oder Modellserver laufen, Kommunikationsports geöffnet werden.

Hinweis

Da die Client-Anwendungen eine hochfrequente und intensive Kommunikation mit dem Modellserver erfordern, existieren hohe Anforderungen an die Latenz dieser Netzwerkverbindung. Bei einem Zugriff z.B. über eine Internet-VPN-Verbindung können merkliche Beeinträchtigungen in der Bedienbarkeit von Innovator entstehen.

Im Netzwerk ist weder die Anzahl der Clients noch der Repositorys beschränkt. Im Netzbetrieb können beliebig viele Modellserver gestartet und von beliebig vielen Benutzern kontaktiert werden.

Beim Einstieg in die Oberflächenbearbeitung werden dem Benutzer alle Repositorys mit den darin enthaltenen Modellen zur Bearbeitung angeboten, für die aktuell ein erreichbarer Modellserver gestartet ist. Unabhängig von der physischen Position der Daten im Netzwerk kann damit jeder Benutzer von Innovator prinzipiell mit jedem Modell arbeiten.

Die Benutzer- und Rechteverwaltung von Innovator ermöglicht es, für die einzelnen Modelle den Zugang und die Befugnisse zu steuern.