Als ich vor etwa 20 Jahren in der Branche angefangen habe (ich tue zwar so, als wäre ich noch in meinen 20ern, daher klingt diese Zahl ganz gut), gab es in den meisten großen Unternehmen nur eine IT-Abteilung mit einem Leiter. Heute gibt es mehrere Leiter in verschiedenen Abteilungen, von denen einige für unterschiedliche Bereiche des Unternehmens zuständig sind. Manche Aufgaben werden outgesourct, manche intern abgewickelt, und bei manchen kommen Auftragnehmer zum Einsatz.

Wenn es darum geht, die meisten Systeme miteinander zu verbinden, konzentriert sich die Branche darauf, „einen Konnektor dieses oder jenes zu haben“, während die eigentliche Herausforderung darin besteht, wie man eine Verbindung zu genau dieser Implementierung des jeweiligen Systems herstellt.

Im Laufe der Jahre haben sich die Technologien weiterentwickelt, und mit ihnen auch die Säulen (oder Silos) der Teams. Daher ist die Bereitstellung einer Integrationslösung zur Vernetzung mehrerer Systeme eher ein Albtraum für das Projektmanagement (so etwas wie „Katzen hüten“) als ein Konnektor . Nehmen wir ein typisches mittelständisches Unternehmen, das seine Cloud Anwendungen (CRM, HR usw.) mit seinen On-Premises (SAP, Oracle Finance, Dynamics, Datenbanken usw.) verbinden möchte. Aufgabe ziemlich einfache Aufgabe, da uns alle Konnektor zur Verfügung stehen und wir im schlimmsten Fall immer noch auf einen Webservice-basierten Konnektor Datenbankkonnektoren zurückgreifen können. Das Problem „Haben wir einen Konnektor jedes System?“ ist innerhalb weniger Minuten gelöst.

Das eigentliche Problem und der größte Zeitfresser ist die Frage, wie die Verbindung hergestellt wird und wem wir Zugriff gewähren. Betrachtet man die beteiligten Technologieebenen (unter Zugrundelegung des OSI-Modells als Methode zur schrittweisen Durchsicht der Zugriffsebenen):

  • Physikalische Schicht - wie ist der Server angeschlossen und durch welche Geschwindigkeitsgrenzen könnte dies eingeschränkt werden (ist der Server angeschlossen?).
  • Datenverbindungsschicht - welches QoS-Niveau haben wir, gibt es irgendwelche Einschränkungen, in welchem VLAN befinden wir uns und worauf hat dieses VLAN Zugriff bzw. nicht?
  • Netzwerkebene - können wir einen Netzwerktest mit jedem System durchführen, das wir anschließen müssen?
  • Transportschicht - können wir eine Verbindung aufrechterhalten und wie ist die Leistung dieser Verbindung?
  • Sitzungsschicht - welche Authentifizierungsmechanismen gibt es für jedes System? Können wir uns authentifizieren?
  • Präsentationsschicht - können wir Zugang zu den Metadaten hinter jedem System erhalten? Haben wir ausreichende Rechte?
  • Anwendungsschicht - Können wir ein Beispiel für die Daten sehen, mit denen wir uns verbinden? Sehen die Daten so aus, wie wir sie erwartet haben? Können wir Aktualisierungen, Einfügungen, Hochfügungen, Löschungen und Lesevorgänge durchführen? Wurde die Anwendung angepasst und können wir auf diese Anpassungen zugreifen?

Um all dies zu erreichen, ist die Zusammenarbeit mit verschiedenen IT-Teams sowohl intern als auch extern erforderlich. Möglicherweise ist auch die Zusammenarbeit mit Anbietern oder anderen Entwicklern außerhalb des Unternehmens erforderlich. Denken Sie an die folgenden Rollen (die Liste ist nicht vollständig), für die Sie das Vertrauen und das Wissen bzw. die Unterstützung dieser Personen gewinnen müssen:

  • Server/Hardware Manager - Virtueller Server, Kapazität, Serverinstallation.
  • Betriebssystem-Spezialisten - Windows / Linux / AIX / etc. Die Fähigkeit, Ihre Integrationssoftware auszuführen? Installation, Patching und Wartung? Fernzugriff auf den Server?
  • Netzwerkmanager - In welcher Zone wurde der Server installiert? Besteht Konnektivität zu jedem System? Fernzugriff auf den Server?
  • Sicherheit/Firewall - Welche Ports sind gesperrt und müssen für diesen neuen Dienst geöffnet werden? Bereitet die Antiviren-Software Probleme? Fernzugriff auf den Server? Browser-Zugriff auf den Server?
  • Cloud Application Specialist - Zugriffsmethode, Sicherheit, Zugriffsmöglichkeit? Können wir uns anmelden?
  • Datenbankadministratoren - Datenbankzugriff, Rechte, einfache Datenbanklesetests.
  • Spezialisierte Anwendungen (SAP BAPI-Entwickler) - Gibt es einige kundenspezifische BAPIs, die verwendet werden müssen? Welche der Standard-BAPIs sollten nicht verwendet werden? Können wir den Fat Client/die Webanwendung verwenden, um das System anzuzeigen und abfragen ? Können wir ein Test-/Entwicklungssystem verwenden?
  • Anwendungsentwickler - Gibt es eine Standardmethode für Anforderungserfassung, Entwicklungsmethodik, Peer Reviews, Nutzer , Systemtests, Lasttests?

Wenn wir beweisen müssen, dass wir eine Verbindung zu einem System herstellen können, verbringen wir 90 % unserer Zeit damit, mit den Leuten darüber zu arbeiten, und 10 % damit, die eigentliche Verbindung herzustellen. Zu wissen, mit wem man arbeiten muss, und dessen Vertrauen und Zustimmung zu gewinnen, ist die eigentliche Herausforderung.