Protokollkonverter – es fügt sich zusammen

Dass OKIT eine Expertise in der Integration von Schnittstellen hat sollte sich auch dem letzten Kunden eingebrannt haben. Seit vielen Jahren bauen wir neue Schnittstellen oder setzen Protokolle um. Wenn nötig auch schonmal direkt aus einer IEC-Spezifikation. Mittlerweile hat sich da ein stattlicher Fundus ergeben. IEC 60870-5-104, DNP3 und Modbus sind aktuell die beliebtesten.

Mehrfach auf den Baustellen gesehen habe ich: Protokollkonverter. Große, teure Geräte – auch schonmal jenseits der 10k€. Ich finde es beeindruckend, was die Anwender dieser Geräte ganz offensichtlich bereit sind zu zahlen.

Nur – mit einem hohen Preis für ein ausgefeiltes Gerät ist noch nicht die Lösung eingekauft. Immer mehr Softwareentwickler setzen ihre Hoffnung auf diese Maschinen und binden daran ihre Datenbanken an. Dabei fehlt gelegentlich das fundamentale Wissen um die individuellen Beschränkungen der einzelnen Protokolle. Die Folge: die Schnittstelle liefert nicht die Daten, die benötigt werden. Vielleicht nicht den passenden Umfang, vielleicht nicht in der richtigen Reihenfolge, vielleicht nicht mit dem richtigen Zeitstempel, vielleicht mit mangelhafter Performance.

Einige Konsequenzen, die sich aus meiner Sicht ergeben:

  • Der Umgang mit Interfaces muss agil sein. Ein neues Interface darf auch mal zur Refakturierung führen. Viele Schnittstellen sind ähnlich, wenn sie in einem ähnlichen Kontext angewendet werden. Das kann man erkennen und diese Essenz kann man destillieren.
  • Manchmal möchte man zu viel auf einmal erreichen. Mehr Schnittstellen als im Projekt notwendig, sollen bedient werden können. Aber: Es gibt keine eierlegende Wollmilchsau. Einfach ist gut. Komplex heißt Probleme – spätestens auf der Baustelle; und dort hat man wahrlich genug andere Probleme.
  • Informatiker – mich eingeschlossen – neigen zu eleganten und flexiblen Archiktekturen. Ich habe mich der Meinung angeschlossen: Guter Code ist der, der das Problem löst und dabei noch vom Kollegen verstanden wird. Das gilt insbesondere für die Anwendung von Schnittstellen. Übertrage ich die Daten für die Leistung eines Kraftwerks, dann will ich keine Hex-Adressen und kryptische Telegramm-Typen sehen, sondern etwas in der Richtung set(Kraftwerk,Leistung);

Und nach einer Hand voll Schnittstellen, die uns immer wieder über den Weg laufen, habe ich es über Weihnachten gemacht: Ich habe es zusammengefügt. Es ist elegant, es ist schnell und es ist flexibel. Aber es ist keine schwarze Kiste für 10k€. Es ist eher so etwas wie erlernte Kampfkunst – Schnittstellen-Selbstverteidigung auf der Baustelle. In den Händen eines fähigen Anwenders leistet sie mit wenigen Handgriffen wahre Wunder. Ohne ein Verständnis und Training der Grundlagen dagegen holt man sich blaue Augen. Was mich zu der Überzeugung führt: Das Projekt ist das Ziel. Für den Preis einer Protokollkonverter-Kiste liefere ich zwei Integrations-Projekte und zufriedene Kunden.

Posted in IT