TESTING NEXT GENERATION
Was ist OTX?
In der Vergangenheit wurden Testabläufe oft prosaisch beschrieben oder als Flow-Chart Diagramme in „Visio“ gezeichnet. Diese Spezifikation wurde dann für verschiedene Zielsysteme meist immer wieder neu „von Hand“ programmiert. Es ist leicht nachzuvollziehen, dass dies weder effizient noch prozesssicher ist. In der Automobilindustrie wurde daher der neue OTX Standard - Open Test sequence eXchange) - entwickelt. OTX ist ein in der ISO 13209 standardisiertes Plattform und Tester unabhängiges Beschreibungsformat für ausführbare Prüfsequenzen. Die XML basierte Testablaufsprache ist in der Lage, Prüfwissen über Abteilungs-, Tool- und Prozessgrenzen hinweg auszutauschen. Das in den Abläufen gespeicherte Know-how geht nicht verloren, sondern kann selbst nach vielen Jahren wiederverwendet werden. OTX ist eine ausführbare Spezifikation mit prüfbarer Qualität. Es ist plattformunabhängig und harmonisierend und integrierend, da es verschiedene Standards verbinden kann.
Ein Prüfablauf besteht aus einer oder mehreren Aktivitäten. Alle Aktivitäten sind in OTX Bibliotheken so genannte OTX-Extensions thematisch gruppiert. Die OTX-Basisbibliothek (Core) enthält alle Aktivitäten für die allgemeine Prüflogik, wie beispielsweise Prozedur-Aufrufe, Zuweisungen, Verzweigungen, Schleifen, Aktivitäten für parallele Ausführung und Fehlerbehandlung. Alle Extensions erweitern den auch stand-alone lauffähigen Core um spezifische Funktionen, siehe Bild oben (Dunkelgrau = ISO 13209-3, Hellgrau = ISO 13209-4)
Standardisierung zur Beherrschung der wachsenden Komplexität
Wir leben in einer vernetzten Welt. Die flächendeckende Verfügbarkeit sicherer, breitbandiger und systemübergreifender Kommunikation, die immer anspruchsvollere Kundenanforderungen sowie der stetig steigende globale Wettbewerb führen zu einem permanenten Druck auf alle betrieblichen Abläufe und Prozesse. Die dadurch zunehmende Komplexität stellt Unternehmen vor die Herausforderung, ihre operativen Abläufe kontinuierlich zu hinterfragen und zu verbessern. Am Grad der "entspannten" Beherrschung der Komplexität wird die Qualität der betrieblichen Prozesse sichtbar.
Hierbei spielen Standards eine zentrale Rolle. Standards schaffen weltweit einheitliche Grundlagen für den Austausch von Komponenten. Sie basieren auf beweisbaren naturwissenschaftlichen Argumenten und verfolgen gesamtwirtschaftliche Zwecke. Der Nutzen für alle steht über dem Vorteil einzelner Personen oder Institutionen. Grundsätzlich ist ein Standard eine Empfehlung und der Einsatz ist freiwillig. Wegen der großen Bedeutung für das Zusammenspiel von technischen und wirtschaftlichen Lösungen ist jedoch eine möglichst breite Akzeptanz und Anwendung von Standards notwendig und sinnvoll.
Aufgrund seiner integrativen und harmonisierenden Wirkung kommt dem Standard OTX eine besondere Bedeutung zu, denn OTX ist wie kaum ein anderer Standard in der Lage, verschiedene bisher getrennt Standards zusammenzuführen.
Einbindung in bestehende Standards
OTX integriert sich nahtlos in bestehende Standards wie ISO 22900 (Diagnoselaufzeitsystem MVCI) und ISO 22901 (ODX) und dient als Bindeglied zu Standards und Anwendungen in anderen Bereichen, z.B. ASAM GDI, ASAM XIL oder ASAM MCD3-MC. Das Ziel von OTX ist der prozesssichere Austausch, die Archivierung und Ausführung von Prüfwissen. Mit der Unterstützung durch geeignete graphische Softwarewerkzeuge wird dadurch der Diagnoseentwicklungsprozess einfacher und produktiver.
Vorteile
Anbindung externer Systeme (OTX-Mapping)
Für die universelle und plattformübergreifende Anbindung beliebiger externer System wurde gemeinsam mit einem Automobilhersteller das so genannte OTX-Mapping entwickelt. Unabhängig von der eigentlichen Prüflogik, können über eine Mapping Schicht Benutzeroberflächen, Umgebungsdaten, Status-Informationen oder beliebige Gerätetreiber eingebunden werden. Durch den Austausch einer einzigen XML-Datei kann dieselbe OTX Sequenz auf Prüfstand A von Hersteller 1 oder auf Prüfstand B von Hersteller 2 ausgeführt werden. Über den OTX-Mapping Editor können die Verbindungen graphischen erstellt und bearbeitet werden.
OTX vs. Java
Wenn man OTX als Domänen spezifische Meta-Sprache vorstellt, kommt schnell das Argument: Wozu benötigt man eine neue Programmiersprache? Gibt es nicht schon genug davon? Warum verwendet man nicht Java? Ist Java nicht ausgereifter und hat eine bessere Tool-Unterstützung?
Die Argumente sind zwar nachvollziehbar, jedoch sind Java und OTX nicht vergleichbar. Das Datenmodel von Java ist erheblich komplexer als das von OTX. OTX lebt von der Reduktion auf das, was für das Testen im Umfeld der Automobilindustrie wirklich benötigt wird. OTX enthält umfangreiches anwendungsbezogenes Expertenwissen für die Beschreibung von Prüfabläufen. Würde man versuchen, Java in Richtung OTX zu verändern hätte man nur einen zweiten OTX Standard geschaffen und keinen Gewinn.
Für Java benötigt man einen Softwareentwickler mit Spezialkenntnissen, für OTX einen Ingenieur (Techniker mit Programmierkenntnissen). Mit Java kann man einen OTX-Editor programmieren, mit OTX beschreibt man Prüfabläufe.
Für die Ausführung wird aus OTX Java (oder anderer) Code generiert, übersetzt und ausgeführt.