Zum Hauptinhalt springen

Einführung / Schnellstart

Die Information Toolbench (ITB) ist eine leichtgewichtige, aber leistungsstarke Plattform zur Metadaten-Modellierung, die Teams dabei unterstützt, Metadaten systemübergreifend konsistent zu strukturieren, zu verwalten und zu verteilen.
Sie ermöglicht es Ihnen, Modelle zu erfassen, Vorlagen zu definieren und Metadaten mit minimalem Aufwand in Ihre breitere Datenlandschaft zu integrieren.

In der Funktionsübersicht finden Sie alles, was ITB kann, nach Bereichen gruppiert, sowie die Information, welche Edition (Public / Enterprise) die jeweilige Funktion bereitstellt.

Was ITB bietet​

  • Intuitive Modellierung – Definieren Sie Metadaten-Strukturen und Beziehungen über ein klares und flexibles Modell.
  • Template Engine – Generieren Sie Dokumentationen, Konfigurationsdateien oder Integrationsartefakte direkt aus Ihren Metadaten.
  • Erweiterbar von Grund auf – ITB fördert Erweiterungen statt Modifikationen und gewährleistet so Stabilität und Aktualisierbarkeit.
  • Automatisierungsfreundlich – Integrieren Sie ITB über CLI, APIs oder CI/CD-Pipelines in Ihre Arbeitsabläufe.
  • Leichtgewichtig & modular – Nutzen Sie nur die Module, die Sie benötigen, und fügen Sie weitere hinzu, wenn Ihre Anwendungsfälle wachsen.

Für wen ITB gedacht ist​

ITB eignet sich ideal für Teams, die:

  • konsistente Metadaten über Werkzeuge und Prozesse hinweg benötigen
  • Artefakte automatisch aus Metadaten generieren möchten
  • einen modularen, offenen und transparenten Modellierungsansatz bevorzugen
  • den Overhead großer Enterprise-Modellierungswerkzeuge vermeiden möchten
  • eine bewährte Struktur wünschen, ohne künftiges Wachstum einzuschränken

Aktueller Stand​

ITB befindet sich in seiner ersten Version – funktional, nützlich und bereits in der Praxis im Einsatz – verfügt aber noch über viel ungenutztes Potenzial.
Rechnen Sie mit einer raschen Weiterentwicklung, weiteren Modulen, tiefergehenden Integrationsmöglichkeiten und fortlaufender Stabilisierung.

ITB lokal ausführen​

Alles Nötige liegt im öffentlichen Distributionsrepository github.com/BanianAG/itb. Die Images sind öffentlich – kein docker login, kein Konto.

Eines muss aber vorher besorgt werden: eine Lizenzdatei. Sie ist kostenlos und per Selbstbedienung unter itb.banian.ch/license erhältlich. Die API prüft sie beim Start und verweigert ohne sie den Dienst – von aussen sieht das aus wie ein Container, der sich ohne brauchbare Meldung beendet.

git clone https://github.com/BanianAG/itb.git && cd itb
cp /pfad/zu/ihrer/license.json ./license.json
./itb.sh # Windows ohne WSL: .\itb.ps1

itb.sh fragt vier Dinge ab – Version, E-Mail, Passwort, Port –, schreibt .env, legt ./data an, prüft die Lizenz und startet den Stapel. Ein zweiter Aufruf startet nur noch.

./itb.sh --check # was fehlt? ändert nichts, startet nichts
./itb.sh --reconfigure # die Fragen noch einmal beantworten
./itb.sh --logs # starten und dann dem API-Log folgen

Zugriff auf die Web-Anwendung​

Öffnen Sie die ITB-Weboberfläche in Ihrem Browser:

  • WebApp: http://itb.localhost
  • API: http://api.itb.localhost
  • Dokumentation: wird von der API unter http://api.itb.localhost/user-docs/ bereitgestellt (öffnen Sie sie über das Menü Hilfe → Dokumentation der WebApp)

Hinweis: Diese URLs funktionieren lokal dank des Traefik Load Balancers. Stellen Sie sicher, dass Ihre /etc/hosts-Datei die erforderlichen Einträge enthält (in der Regel bereits durch docker-compose konfiguriert).

Anmeldung​

Es gibt kein Vorgabekonto. Sie melden sich mit der E-Mail-Adresse und dem Passwort an, die Sie itb.sh genannt haben. In .env stehen sie als ITB_AUTH_USERS in der Form benutzer:sha256hex, das Klartextpasswort wird also nirgends abgelegt. Zum Ändern ./itb.sh --reconfigure ausführen.

Architektur​

ITB besteht aus zwei Hauptkomponenten:

  • WebApp – Die browserbasierte Modellierungsoberfläche. Modelle werden lokal im Browser mittels IndexedDB gespeichert, was eine schnelle und offline-fähige Bearbeitung ermöglicht.
  • API – Der Backend-Dienst und das maßgebliche System (System of Record). Verwaltet die Git-basierte Versionskontrolle, die Vorlagengenerierung und kollaborative Arbeitsabläufe.

Die WebApp arbeitet für die lokale Modellierung eigenständig. Wenn Sie bereit sind, Ihre Arbeit zu teilen oder zu versionieren, verbinden Sie sich mit der API, um Modelle über Git zu veröffentlichen und wiederherzustellen.

Modell-Export & -Import (Git-basiert)​

ITB nutzt einen Git-basierten Arbeitsablauf für den Modellaustausch und bietet damit eine vollwertige Versionskontrolle mit Unterstützung für Zusammenarbeit.

Ein Modell veröffentlichen​

Um Ihr Modell zu teilen oder in einem Git-Repository zu sichern:

  1. Konfigurieren Sie eine Git-Verbindung in der API (Repository-URL und Zugangsdaten)
  2. Verwenden Sie die Aktion Modell zu Git veröffentlichen, um Ihr aktuelles Modell in das konfigurierte Repository zu übertragen
  3. Die API merkt sich den Git-Ursprung, sodass nachfolgende Veröffentlichungen dasselbe Remote-Repository ansprechen

Ein Modell wiederherstellen​

Um ein Modell aus einem bestehenden Git-Repository zu laden:

  1. Stellen Sie sicher, dass für das Ziel-Repository eine Git-Verbindung konfiguriert ist
  2. Verwenden Sie die Aktion Modell von Git wiederherstellen, um das neueste Modell aus dem Remote-Repository zu beziehen
  3. Optimistisches Sperren (Optimistic Locking) verhindert das versehentliche Überschreiben von Änderungen anderer Benutzer

Tipp: Der Git-basierte Austausch unterstützt die Zusammenarbeit im Team – mehrere Benutzer können Modelle in dasselbe Repository veröffentlichen und daraus wiederherstellen, mit Konflikterkennung durch optimistisches Sperren.

Vorlagengenerierung​

Um Vorlagen aus Ihrem aktuellen Modell zu generieren, gehen Sie wie folgt vor:

  1. Stellen Sie sicher, dass Ihr Modell bereit ist:

    • Vergewissern Sie sich, dass Ihr Modell mit allen Entitäten, Beziehungen und Attributen korrekt definiert ist
  2. Generieren Sie Vorlagen über die API:

    • Öffnen Sie die interaktive API-Dokumentation (Swagger): http://api.itb.localhost/api/docs
    • Rufen Sie den Endpunkt generateAll auf (kein Body erforderlich)
    • Der Endpunkt bereinigt veraltete Ausgaben vor der Neugenerierung
  3. Greifen Sie auf Ihre Vorlagen zu:

    • Generierte Vorlagen sind im Ordner output/templates verfügbar
    • Verwenden Sie den Export-Endpunkt, um alle Artefakte als ZIP-Datei herunterzuladen

Dokumentation​

Die ITB-Dokumentation ist nun direkt in die Plattform integriert:

  • Zugriff in der App: Öffnen Sie Hilfe → Dokumentation in der WebApp (oder rufen Sie http://api.itb.localhost/user-docs/ auf)
  • Passt immer zu Ihrer Version: Die Dokumentation ist in das je Edition spezifische API-Image eingebettet und entspricht daher stets Ihrer bereitgestellten ITB-Version
  • Editionsgerecht: Eine öffentliche Bereitstellung liefert nur die öffentliche Dokumentation; Enterprise ergänzt die Enterprise-Seiten

Ausblick & Haftungsausschluss​

Die aktuelle Version von ITB befindet sich noch in der Beta-Phase.
Die Nutzung erfolgt auf eigenes Risiko. Die Plattform ist zwar funktionsfähig, kann jedoch Fehler oder unvollständige Funktionen enthalten.

Die Dokumentation wird fortlaufend aktualisiert, um neue Funktionen, Verbesserungen und Best Practices abzubilden.
Wir empfehlen, regelmäßig nach Aktualisierungen und neuen Hinweisen zu sehen.