Talk · JAX 2026
Data Architecture: The New Backbone of Modern Software
Dr. Gernot Starke (INNOQ Fellow) & Dr. Simon Harrer (CEO, Entropy Data) · 7. Mai 2026
Ein gemeinsamer Talk auf der JAX 2026 in Mainz. Gernot eröffnet mit der großen Linie -- der Geschichte der Datenspeicherung und der These, dass Software Engineering zwischen 1995 und 2020 die Daten weitgehend vergessen hat. Simon liefert die Lösung nach: Data Contracts als die API-Spezifikationsschicht für Daten, den Open Data Contract Standard (ODCS) und eine Live-Demo eines KI-Agenten, der Business-Fragen auf Basis von Contract-gestützten Datenprodukten beantwortet.
Live aufgenommen auf der JAX 2026 in Mainz. Die Annotation unten ist eine redigierte Zusammenfassung des Talks.
Q&A
Ausgewählte Fragen aus dem Publikum nach dem Talk.
F: Wie werden Contracts eigentlich durchgesetzt -- insbesondere bei Datenexfiltration und Nutzungslimits?
Auf der Producer-Seite kannst du die Garantien, die du gibst, absolut durchsetzen: Schema, Freshness, Qualität. Die Consumer-Seite der Vereinbarung durchzusetzen -- "du darfst diese Daten nur für Zweck X nutzen, nicht für Y" -- ist schwieriger. Unsere Antwort ist, vielleicht wenig überraschend, mehr KI: KI-Verhalten kannst du nur wirklich mit einer weiteren KI kontrollieren. Ein rein regelbasierter Filter lässt entweder alles durch oder würgt das Modell zur Nutzlosigkeit ab. Du kannst es auch nach Klasse härten -- z. B. ist es der KI schlicht verboten, die sensibelsten Datasets überhaupt anzufassen. Das ist regelbasiert und sauber, bedeutet aber auch, dass die KI bei diesen Datasets nicht helfen kann. So oder so ist die Tatsache, dass die KI weiß, dass die Daten existieren und wo sie liegen, selbst ein Risiko, das du managen musst -- genauso, wie wir jede andere Dual-Use-Technologie managen.
F: Braucht man eine zentrale Registry, damit Contracts überhaupt auffindbar sind?
Ja. Wir empfehlen einen Datenmarktplatz: einen zentralen Ort, an dem Consumers nach Daten shoppen können und Zugriff als Teil dieses Flows angefragt wird. Es ist das Analogon zu einem API-Gateway oder API-Katalog. Die Contracts selbst werden dezentral von den Domain-Teams verwaltet, aber die Registry muss zentral sein, damit die Discovery-Story funktioniert -- die klassische Balance aus Dezentralisierung und Zentralisierung, die du in jeder Plattform finden musst.
F: Wie passt das zu Service-Contracts und OpenAPI? Beschreiben die nicht auch Daten, über DTOs?
OpenAPI beschreibt die Form einer einzelnen Zeile: dieses Feld ist optional, jenes nicht, vielleicht ein Regex. Darüber hinaus schweigt es. Es sagt dir nicht, ob ein Feld PII-sensibel ist, welche interne Schutzklasse es hat oder wie es mit anderen Konzepten im Business zusammenhängt. Die Verbindung von orderId in der API zu OID2 in einer Datenbanktabelle ist genau das, was nur ein Semantic Layer erfasst. Mit guten Metadaten -- ODCS auf der einen, OpenAPI auf der anderen Seite -- kann die KI erkennen, dass beides dasselbe Konzept ist, und darüber joinen. Ohne das muss sie annehmen, und Annahmen sind meistens falsch.
F: Sollten wir aufhören, lesende Schnittstellen für externe Systeme zu bauen, und stattdessen einfach Data Contracts veröffentlichen?
Ein REST-GET ist bereits eine lesende Schnittstelle, also kannst du technisch einen Contract darauf legen -- die einzige Prämisse eines Data Contracts ist, dass Daten zum Lesen geteilt werden. Die tiefere Frage ist Design: kleine, Punkt-zu-Punkt-APIs, jede auf das Anfragemuster eines einzelnen Consumers zugeschnitten, vermehren sich schnell und werden in der Datenwelt zur Wartungslast. Du willst wenige, gut designte Angebote, die viele Consumers bedienen -- Produkt-Denken, one-to-many. Derselbe Instinkt, der uns von Microservices pro Consumer wegführt.
F: Ein Contract beschreibt die Producer-Seite. Wie siehst du, wohin die Daten tatsächlich fließen -- wer sie konsumiert, wie sie genutzt werden?
Ein Marktplatz bringt dich ein Stück weit: Consumers fragen Zugriff mit einem angegebenen Zweck an, der festgehalten wird. Darüber hinaus berichten Lineage-Formate wie OpenLineage, wie Daten tatsächlich durch die nachgelagerten Systeme fließen, inklusive Column-Level-Lineage. Kombiniere beides, und du kannst prüfen, ob deine Makroarchitektur-Richtlinien zu den realen Flüssen passen -- ein mächtiges Audit von "was wir sagten zu tun" gegen "was tatsächlich passiert".