Eigene Assistenten
Template-Pakete entscheiden, was ITB generiert. Capability-Pakete entscheiden, was ITB anbietet – die Assistenten, die Menüeinträge, die Aktionen in der Oberfläche. Auch sie sind Deklarationen: einen Assistenten hinzuzufügen heisst, JSON hinzuzufügen, und nicht, eine neue Version der Anwendung auszuliefern.
Jeder Assistent, den Sie für die Data-Vault-Modellierung schon benutzen, kommt auf diesem Weg. Der Demo-Assistent unten ebenso.
Ausprobieren
Demo: Retail Business Objects installiert neben seinen Vorlagen ein Capability-Paket. Laden Sie die Anwendung nach der Installation neu – Assistenten, ihre Beschriftungen und ihre Aktionen werden beim Start gelesen – und klicken Sie dann mit der rechten Maustaste auf leere Zeichenfläche und wählen New Business Object.
Das Neuladen ist nicht optional. Ein Capability-Paket ergänzt Dinge, die die Anwendung einmal beim Start liest; sein Assistent erscheint also erst danach. ITB bietet das Neuladen nach der Installation von sich aus an.
Drei Schritte:
| Schritt | Fragt nach |
|---|---|
| Object | Name, Beschreibung, Art (Business oder Value Object), wo es platziert wird und auf welcher Ansicht |
| Identifier | Der Name des Geschäftsschlüssels und sein Datentyp |
| Governance | Geschäftsdomäne, Eigentümer, Klassifikation |
Am Ende hat eine einzige Aktion die Entität angelegt, ihr Identifier-Attribut, ihre drei Governance-Werte und ihren Knoten auf der Ansicht – und unterwegs jede fehlende Typ- oder Eigenschaftsdefinition ergänzt.
Woraus ein Assistent besteht
Drei Deklarationen, jede mit einer Aufgabe:
Der Einstiegspunkt. Ein kleiner Deskriptor, der sagt, wo der Eintrag erscheint – hier im Kontextmenü der Zeichenfläche –, wie er heisst und welchen Assistenten er öffnet. Zu ändern, wo ein Assistent angeboten wird, heisst, dies zu ändern und sonst nichts.
Der Assistent. Seine Schritte und die Felder je Schritt. Ein Feld ist ein Textfeld, eine Auswahl mit festen Optionen oder eine Auswahl, die aus dem Modell selbst gespeist wird – das Feld „daneben platzieren" bietet Ihre vorhandenen Objekte an, das Ansichtsfeld Ihre Ansichten. Jede Beschriftung ist ein Übersetzungsschlüssel, der Assistent spricht also die Sprache, auf die die Anwendung eingestellt ist.
Die Transaktion. Was tatsächlich geschrieben wird, als geordnete Liste von Operationen: fehlende Typen anlegen, die Entität anlegen, ihre Attribute anlegen, sie anhängen, die Werte der benutzerdefinierten Eigenschaften schreiben, den Knoten platzieren. Sie läuft als eine Einheit.
Zwei Dinge, die man wissen sollte
Ein Assistent kann nur anbieten, was das Modell ausdrücken kann. Felder sind Textfelder und Auswahlen; es gibt keine Möglichkeit, eine frei benannte Liste von Attributen einzusammeln. Deshalb erzeugt dieser Assistent ein Attribut – den Identifier – und den Rest modellieren Sie danach. Das ist eine Grenze der Deklaration, und eine bewusste: ein Assistent, der ein Modellierungswerkzeug sein wollte, wäre ein schlechteres Modellierungswerkzeug als die Zeichenfläche.
Den Knoten zu platzieren braucht einen Anker. Der Assistent fragt, neben welches Objekt das neue gesetzt werden soll, und das Feld ist Pflicht. Ohne Anker wäre die Entität angelegt und nirgends auf der Zeichenfläche – im Modell vorhanden, auf dem Bildschirm unsichtbar. Der Pflichtanker sorgt dafür, dass das Erzeugte immer dort ist, wo Sie es sehen.
Nachlesen
Das Demo-Capability-Paket ist offen: seine Deskriptoren sind lesbares JSON und es braucht keinen Lizenzschlüssel. Jeder oben beschriebene Teil ist eine Datei, die Sie öffnen und mit dem vergleichen können, was Sie in der Oberfläche sehen – genau dafür ist es da.