# Transconnect

Transconnect ist ein universeller Integrationsserver (Enterprise Service Bus) für die Integration von Softwaresystemen in einer skalierbaren Architektur. Dieses Produkt der SQL Projekt AG ist ein klassisches Enterprise Application Integration (EAI) Produkt, welches aber auch für Business-to-Business Kommunikation eingesetzt werden kann. Es bietet ergänzend Werkzeuge zum Aufbau eines Business-Activity-Monitoring.
Die Entwicklungswerkzeuge sowie die Management-Konsole von Transconnect basieren auf Eclipse-Technologie. Zentraler Punkt einer Integration sind die Integrations-Workflows. Mittels BPMN 2.0-konformer Darstellung werden die unterschiedlichen Aktionen konfiguriert und der Datenfluss festgelegt. Datentransformationen können dabei die Struktur und den Inhalt der Daten verändern.
Der Hauptnutzen des Systems liegt, wie bei EAI-Architekturen üblich, in der Reduktion der Schnittstellenanzahl und damit der Verbesserung der Pflegbarkeit.
Der Einsatz von Transconnect erfolgt branchenübergreifend, z. B. in den Branchen:
* Fertigung
* Gesundheitswesen
* Öffentlicher Dienst
* Versicherungswirtschaft (als BiPRO-Server)
* Energiewirtschaft

## Technologie

Transconnect arbeitet nachrichtenbasiert und ist ein ESB mit einem generischen Ansatz. Anstelle von spezifischen Adaptern für konkrete System und Funktionen gibt es allgemein verwendbare Adapter. Erst bei der Konfiguration der Verarbeitungsprozesse wird das konkrete System und die Funktion festgelegt.
Der Funktionsumfang von Transconnect kann an vielen Stellen durch eigene Java-Klassen erweitert werden. Es können eigene zeitgesteuerte Aufgaben, Mappingfunktionen, Adapterplugins und vollständige Adapter implementiert werden.
Transconnect verwendet als internes Datenformat XML. Transformationen der Daten können mit XSLT (Version 1 und 2) sowie STX vorgenommen werden. Validierungen erfolgen mit XSD. Die Größe der XML-Dokumente ist nur durch den der internen Datenbank zur Verfügung stehenden Speicherplatz begrenzt.

## Versionen

* 1998 – TransConnect 1.3.0
* 2001 – TransConnect 1.3.1
* 2003 – TransConnect 1.3.2
* 2004 – TransConnect 1.3.3
* 2005 – TransConnect 1.3.4
* 2006 – TransConnect 1.3.5
* 2012 – TransConnect 2.1.0
* 2013 – TransConnect 2.2.1
* 2014 – TransConnect 2.2.2 (Neu: technisches Monitoring mit Dashboards, Diagrammen, Grenzwertüberwachung und Benachrichtigung)
* 2015 – TransConnect 2.2.3 (Neu: Abbildung von Projektstrukturen für Administration, Versionierung der Serverkonfiguration inkl. History, Rollback und Versionsvergleich, Benutzerprofile zur Steuerung der Zugriffsrechte auf Objektebene, Java 7)
* 2016 – TransConnect 2.3.0 (Neu: grafischer BPMN-Editor zur Erstellung von Verarbeitungsprozessen, grafisches Monitoring der Nachrichtenverarbeitung, Java 8, Unterstützung von XSLT 2.0, Unterstützung von MacOS als Plattform für Administrations GUI)
* 2017 – TransConnect 2.3.1 (Neu: Business Activity Monitoring inkl. Business Intelligence and Reporting Tools)
* 2018 – TransConnect 2.3.2 (Neu: SNMP-Adapter zum Auslesen von Informationen aus technischen Geräten, OFTP 2.0-Adapter zum bidirektionalen Austausch von Dateien gem. Empfehlung des VDA)
* 2020 – TransConnect 2.3.3 (Neu: Dateiadapter: Unterstützung von SMB V1 und V2, Webservice-Adapter: Neuer Verbindungstyp mit TGIC Token Authentisierung, HTTP-Eingangsadapter: Neue Verbindungstypen: JSON und XML, Automatische Erkennung von Abhängigkeiten zwischen Transformationen)
* 2021 – TransConnect 2.3.4 (Neu: Speicherprogrammierbare Steuerung (SPS/PLC), Message Queuing Telemetry Transport (MQTT), Online Services Computer Interface (OSCI), Erzeugen von Dateien und Anhängen aus Base64-Daten, Neuer optionaler Parameter ‚Client Secret‘ für OAuth2.0-Authentifizierung des HTTP Ausgangsadapters, Neue Java-Funktionen für XSLT-Transformationen, Update auf Adopt Open JDK 11.0.8+10, Update Manager auf Eclipse-Plattform 4.16 (2020-06))
* 2021 – TransConnect 2.3.5 (Neu: Neuer Verbindungstyp für Dateiadapter: AWS-S3, Neuer Verbindungstyp Modbus TCP für SPS/PLC-Adapter, Datenbankadapter liefert autogenerierte Spaltenwerte beim Update zurück, Manager: Prozesseditor und Orchestrierungseditor unterstützen die separate Palette Ansicht, Unterstützung von HiDPI-Displays, Repository-Export und -Import liefern zusätzliche Statusinformationen, Neuer Wartungsmodus des Servers, Update Jetty auf Version 9.4.43.v20210629, Update Java auf Eclipse Adoptium OpenJDK 11.0.13+8)

## Architektur

Transconnect wurde ursprünglich in C entwickelt. Nach einem Upgrade zu C++ wurde die Software in Java grundlegend neu entwickelt und ist jetzt unter Linux und Windows lauffähig. Sie nutzt zahlreiche XML-Technologien für die Speicherung von Daten, für Transformationen, Validierung und Verarbeitung.
Eine Persistenzdatenbank speichert neben der versionierten Konfiguration auch die Anwendungsdaten, bis sie erfolgreich verarbeitet wurden. Damit wird Datenverlust und Doppelverarbeitung verhindert.
Die Verteilung von Daten basiert auf der Definition von Routen, die auch abhängig vom Inhalt der Daten sein können (content-based routing). Für jede Route kann seit Version 2.3.0 mit einem grafischen Editor ein Prozess erstellt werden, mit dem die Verarbeitung der Anwendungsdaten festgelegt wird.

## Adapter

Adapter sind das Bindeglied zwischen dem Transconnect-Server und den zu integrierenden Softwaresystemen. Im Standard sind folgende Adapter enthalten:
* PDF/A
* Befehlszeilen (Telnet, SSH, Powershell etc.)
* Lotus Notes Domino
* EDIFACT
* Dateisysteme (lokal, SMB, FTP, FTPS, SFTP, HTTP)
* E-Mail (POP3, SMTP)
* GDV (Gesamtverband der Deutschen Versicherungswirtschaf)
* HTTP/REST (bidirektional)
* Datenbanken (JDBC)
* JMS
* LDAP / Microsoft Active Directory
* MS Office (Excel, Word)
* Webservice (SOAP, bidirektional)
Zusätzlich gibt es Adapterpakete für:
* SAP (RFC, BAPI, IDocs, bidirektional)
* Gesundheitswesen (HL7, DICOM, LDT, bidirektional)
* BiPRO-Standards
* Fertigung (OPC/UA, MQTT, Siemens S7 usw.)
Über ein kostenlos mitgeliefertes Adapter-Framework können eigene Adapter entwickelt oder integriert werden. Beispiel sind Adapter zu folgenden Systemen:
* 3DEXPERIENCE
* ENOVIA SmarTeam

## Alternativen

* Microsoft BizTalk
* SAP Process Integration
* SoftProject X4 ESB von SoftProject
* WebSphere von IBM
* webMethods von Software AG
* Oracle Fusion Middleware
* weitere Alternativen (auch Open-Source-Lösungen) unter ESB