Im Rahmen eines Projektes erfolgt die Dokumentation von betroffenen Schnittstellen (Soll- Zustand) in der Regel in einem Kontextdiagramm.
Eine Schnittstelle (engl. Interface) ist ein definierter gedachter oder tatsächlicher Übergang an der Grenze zwischen zwei Funktionseinheiten mit den vereinbarten Regeln für die Übergabe von Daten aber auch von Hardwarekomponenten, logischen Softwareeinheiten oder zwischen Menschen und Computern.
Durch eine Schnittstelle, die sich sowohl für die Darstellung einer Punkt-zu-Punkt-Verbindung wie auch von Mehrpunktverbindungen eignet, können nicht nur technische Funktionen voneinander abgegrenzt sondern auch die Übergabebereiche von Verantwortlichkeiten definiert werden.
Der hieraus resultierende relevante Extrakt wird in einem Schnittstellenkonzept, welches für eine projektbegleitende Prüfung einer Systemeinführung benötigt wird, näher beschrieben.
Wesentliche Inhalte eines Schnittstellenkonzeptes: |
» Analyse Kommunikationswege, Schnittstellen, Kommunikationsobjekte und Technologie |
» Aufwandsschätzung Filetransfer-Service |
» Kontextdiagramm und Beschreibung der technischen Kommunikation |
Der Nutzen eines Schnittstellenkonzeptes |
» Definition Schnittstellen und Analyse der technischen Umsetzung |
In den Themenbereichen Security (Sicherheit) und Systemarchitektur werden alle notwendigen Informationen für den späteren Betrieb beschrieben, insbesondere: |
» Fachlich prägnante Beschreibung der erwarteten Anwendungskommunikation |
» Darstellung der beteiligten Anwendungen und ihrer Kommunikation im Kontextdiagramm |
» Definition des Informations- und Datenaustausches (Quellapplikation/ Zielapplikation) |
» Nummerierung der Schnittstellen |
» Dokumentierung der Änderung mittels einer Versionsnummer (Schnittstellenversion) |
Für eine Kommunikationsstrecke sind formal mindestens die Angaben Service Provider, Service Nutzer, Datenmenge, Technologie, Zeitliche Verfügbarkeit, Genutztes Kommunikationsdatenmodell/ Datensatzbeschreibung erforderlich.
Eine Kommunikation zwischen Anwendungen ist dann inhaltlich als qualitativ hochwertig anzusehen, wenn nachstehenden Kriterien erfüllt werden |
» Schnittstelle des Service Anbieters ist idempotent |
» Service Nutzer kann Nachrichten erneut senden |
» Keine zeitliche Abhängigkeit aufeinanderfolgender Nachrichten |
» Keine Berechtigungsprüfung beim Service Anbieter für die Service Nutzung |
» Kommunikation ist asynchron und ist nicht nur technisch sondern auch fachlich entkoppelt |
Grundsätzlicher Service eines Systembetrieb zur Sicherstellung einer technischen Umsetzung |
» Automatisierung |
» Nachvollziehbarkeit |
» Benachrichtigungsmöglichkeiten |
» Monitoring (Agent) |
Identifikation des Szenarios |
||
» |
Szenario Name |
|
» |
Service Name |
|
» |
Ansprechpartner |
|
Fachlicher Kontext |
||
» |
Fachlicher Hintergrund |
|
Warum existiert das Schnittstellenszenario? Betroffene Prozesse/Prozessschritte? Welche Rollen gibt es? Wer ist Auslöser der Schnittstelle? |
||
» |
Fachliche Beschreibung der übertragenen Daten |
|
Beschreibung der fachlichen Daten, die übertragen werden (z. B. Vertrag, Antrag, Rechnung) |
||
Integrationsarchitektur |
||
» |
Technisches Kontextdiagramm |
|
Kurzbeschreibung der Beziehungen der betroffenen Anwendungen zueinander |
||
» |
Abhängigkeiten |
|
Welche Abhängigkeiten existieren zu anderen Schnittstellenszenarien, Systemen und Anwendungen? |
||
Technische Umsetzung |
||
» |
Schnittstellendetails |
|
- Name (ggf. Nachrichtentyp) - Sendende Anwendung (und Quellsystem) - Empfangende Anwendung(en) und Zielsystem(e) - Massendaten (Batch / kein Batch) - Kommunikationsart (synchron / asynchron) - Integrationstechnologie(n) - Datenänderung bei Zielsystem - Informationsobjekte - Informationsobjektdetails (ggf. Mapping) |
||
» |
Format der Schnittstellen |
|
» |
Versionierung |
|
Ist eine Versionierung der Schnittstelle möglich? Wie wird diese realisiert? |
||
» |
Transaktionssicherheit |
|
Ist eine Transaktionsaktionssicherheit der Schnittstellen wichtig? Wie wurde diese realisiert? |
||
» |
Tests |
|
» |
Key Mapping |
|
» |
Mapping |
|
» |
Routing |
|
Szenario Eigenschaften |
||
» |
Name (ggf. Nachrichtentyp) Verteilszenario Mehrfaches Senden Sendende Anwendung Aufbewahrungszeit der Nachrichten Nur einmaliges Verarbeiten möglich? Unterschiedliche Reihenfolge möglich? |
|
Prüfungen und Fehlerbehandlung |
||
» |
Klassifikation |
|
1) Update-Fault – Fehler |
||
|
Ein Update-Fault wird bei technischen Problemen des Empfängers ausgelöst, die eine Verarbeitung der Nachricht verhindern. |
|
2) Keymapping-Fault – Fehler |
||
|
Wird bei einem Keymapping-Feld ein Wert übertragen, der nicht einem zulässigen Keymap-Wert entspricht, so muss der Empfänger einen Keymapping-Fault auslösen. Eine Verarbeitung der Nachricht wird verhindert. |
|
3) Deserialisierungsfehler – Harter Fehler |
||
|
Entspricht das Format der gesendeten Nachricht nicht der beim Empfänger erwarteten Struktur, so tritt beim Empfänger ein Deserialisierungsfehler auf. |
|
4) Nachricht nicht zustellbar – Harter Fehler |
||
|
Ist ein Empfängersystem nicht erreichbar, so wird eine versendete Nachricht als „nicht zustellbar“ deklariert. |
|
» |
Prüfungen und Fehlerbehandlung |
|
» |
Monitoring |
|
» |
Logging |
|
Quality of Service |
||
» |
Performance |
|
Name (ggf. Nachrichtentyp) |
||
Maximale Gesamtdauer der Datenübertragung in ms |
||
» |
Erwartete Systemlasten und Nachrichtengrößen |
|
- Maximale Last in Nachrichten pro Tag - Durchschnittliche Last in Nachrichten pro Tag - Maximale Nachrichtengröße in kB - Durchschnittliche Nachrichtengröße in kB |
||
» |
Lastverteilung |
|
- Name (ggf. Nachrichtentyp) - Beschreibung der Lastverteilung (inkl. Spitzenlast) |
||
» |
Messung und Abrechnung des Datenvolumens |
|
» |
Anmerkungen und Besonderheiten |
|
Systemarchitektur |
||
» |
Betriebsrelevante Informationen |
|
» |
Restriktionen aus dem Betrieb |
|
Sicherheitsrichtlinien |
||
» |
Zugangsberechtigungen |
|
» |
Verschlüsselung der Daten |
|
» |
Vertraulichkeit und Sicherheit |