Asset Data Nexus · Praxisnotizen
Plätze vor Equipments, Equipments vor der Arbeit
Nichts in einem Register kann auf ein Objekt verweisen, das noch nicht da ist. Daraus folgt die Reihenfolge, und die Entscheidungen liegen woanders.
Ein Technischer Platz muss vor dem Equipment existieren, das an ihm eingebaut ist. Das Equipment muss existieren, bevor eine Meldung es nennt. Die Meldung muss existieren, bevor ein Auftrag aus ihr angelegt wird.
Nichts davon ist planerische Geschmackssache. Es sind die Verweise, laut vorgelesen, und kein Zeitplan stellt sie um.
Ein Plan entscheidet dagegen, was dort geschieht, wo die Verweise nicht aufgehen. Diese Stellen sind erkennbar, bevor jemand einen einzigen Datensatz lädt, und es sind weniger, als ein Kick-off gewöhnlich erwartet.
Die Reihenfolge ist eine Liste von Verweisen, der Reihe nach gelesen
251 Wörter
Ein Migrationsobjekt lässt sich erst laden, wenn das existiert, worauf es verweist. Die rechte Spalte zeigt, was Ihnen jedes davon am Ende mitgibt.
| Migrationsobjekt | Was vorher existieren muss | Was Ihnen zu zählen bleibt |
|---|---|---|
| Technische Plätze | der übergeordnete Platz | Technische Plätze ohne übergeordneten Platz |
| Equipments | der Platz, an dem es eingebaut ist | nicht eingebaute Equipments |
| Klassifizierung | die Klasse und das Objekt, das klassifiziert wird | Objekte, die klassifiziert, aber nicht bewertet sind |
| Meldungen | das Objekt, das jede nennt | Meldungen ohne Code |
| Aufträge | das Objekt und die Meldung, aus der er angelegt wurde | Aufträge, deren Bezugsobjekt nicht das ihrer Meldung ist |
Ein Verweis auf ein fehlendes Objekt ist kein Datenqualitätsbefund, den jemand in einem späteren Durchgang bereinigt. Es wird überhaupt kein Datensatz angelegt. Es lohnt sich, das deutlich zu sagen, denn davon hängt ab, was ein verspätetes Migrationsobjekt kostet: Eine Struktur, die zu spät kommt, verzögert nicht die Struktur, sie verzögert alles, was an ihr hängt – und die Liste dessen, was an ihr hängt, ist die Tabelle oben.
Zwei Dinge müssen vor alledem existieren, und keines davon ist ein Objekt: die Klassen mit ihren Merkmalen und die Kataloge, in denen die Codes stehen. Beide lassen sich leicht aufschieben, bis die Objekte geladen sind, und beide kosten danach mehr. In einem Merkmal steht eine Auslegung oder ein Druck; ein Code ist das, was einen Schaden zählbar macht. Legen Sie eines von beiden nachträglich an, ist der Datenbestand schon da – dann ist es ein zweiter Durchgang über jedes Objekt statt eines Felds im ersten.
Wo die Verweise nicht aufgehen
349 Wörter
Drei Stellen, und es sind jedes Mal dieselben drei, weil sie zum Modell gehören und nicht zu einem Werk.
Equipment unter Equipment
Ein Equipment kann unter einem anderen Equipment hängen, also verweist dieses Migrationsobjekt auf sich selbst. Die Datensätze so zu sortieren, dass übergeordnete Equipments zuerst kommen, löst das nur, solange Sie die Nummern vorher kennen; bei interner Nummernvergabe hat das übergeordnete Equipment keine Nummer, bis es geladen ist, und in einem einzigen Durchgang ist das nicht zu erfüllen.
Legen Sie die Objekte flach an, und bauen Sie sie danach ein. Der Einbau als eigener Schritt ist keine Notlösung: Ein Einbau hat einen Anfang und ein Ende, er ist also ein Datensatz über einen Zeitraum und kein Feld im Stammsatz. Derselbe Schritt baut dann Equipments an Technischen Plätzen und Equipments in Equipments ein, und das ist eine Logik statt zwei.
Das Objekt, das niemand anlegt
Die Arbeit, die Sie mitnehmen, nennt Objekte. Manche dieser Objekte wird es in der neuen Struktur nicht geben – sie wurden zu einem zusammengelegt, in drei aufgeteilt, oder sie waren nie eigenständige Dinge, und jemand hat sie getrennt angelegt, damit es etwas gab, zu dem sich Arbeit erfassen ließ.
Jedes davon ist eine Entscheidung mit genau drei Antworten. Das Objekt anlegen, den Datensatz auf das umhängen, was es ersetzt hat, oder den Datensatz zurücklassen. Eine vierte Antwort gibt es nicht, und die Frage stellt sich einmal pro Objekt, nicht einmal pro Projekt – deshalb lohnt es sich, diese Objekte zu zählen, solange ihre Anzahl noch eine Zahl ist und kein Arbeitsvorrat.
Das Datum, das niemand geliefert hat
Ein Einbau hat ein Datum. Ebenso eine Meldung, ein Auftrag, ein Messwert, eine Rückmeldung. Wo die Quelle kein Datum mitbringt, liefert der Ladelauf eines, und was er meist liefert, ist der Tag, an dem er lief.
Ein Register, in dem jede Maschine am selben Nachmittag ankam, ist für einen Menschen offensichtlich falsch und für jede Auswertung eine Tatsache. Legen Sie vor dem Ladelauf fest, was aus einem fehlenden Datum wird, und wählen Sie lieber ein Datum, das sichtbar ein Platzhalter ist, als eines, das plausibel echt wirkt.
Die Nummer, mit der Sie laden, ist nicht unbedingt die, die Sie bekommen
157 Wörter
Ein Technischer Platz wird über seine eigene Kennzeichnung identifiziert; die Kennzeichnung, die Sie entworfen haben, ist also die, die Sie bekommen. Equipmentnummern vergibt dagegen häufig das System, und dann ist die Nummer in Ihrer Quellliste nicht die Nummer im Register.
Alles, was nach diesem Migrationsobjekt kommt, verweist auf die neue Nummer: der Einbau, die Klassifizierung, die Meldungen, die Aufträge, die Messwerte. Die Zuordnungstabelle von Altnummer zu neuer Nummer ist deshalb ein Arbeitsergebnis, kein Nebenprodukt. Sie muss wiederholbar sein, es darf nur eine geben, und sie muss die Leute überdauern, die den Ladelauf gefahren haben.
Die Altnummer muss außerdem in einem Feld des Stammsatzes selbst landen, sonst ist diese Tabelle der einzige Weg zurück. Welches Feld das ist, entscheidet jemand einmal. Der Equipmentstammsatz bietet mehr als ein plausibles Feld – eine Inventarnummer, eine Technische Identnummer, ein Sortierfeld –, und keines davon ist die naheliegende Wahl; der Preis dafür, nicht zu wählen, ist also, dass zwei Ladeläufe unterschiedlich entscheiden.
Wer die Abnahme unterschreibt und auf welcher Grundlage
179 Wörter
Ein Fachkonzept, aus dem sich keine Zählung ableiten lässt, kann nicht abgenommen werden. Ihm kann nur zugestimmt werden, und das ist ein anderer Akt, der keinen Nachweis darüber hinterlässt, was geprüft wurde.
Jedes der Migrationsobjekte oben endet mit einer Liste. Technische Plätze ohne übergeordneten Platz. Nicht eingebaute Equipments. Meldungen ohne Code. Diese Listen sind die Abnahmekriterien, und sie haben eine Eigenschaft, die eine schriftliche Beschreibung nicht hat: Jemand kann sie nächstes Jahr noch einmal laufen lassen und bekommt eine Zahl, die dasselbe bedeutet.
Schreiben Sie jede Liste vor dem Ladelauf auf, nicht erst danach. Eine Liste, die erst geschrieben wird, wenn die Daten existieren, wird an die Daten angepasst – nicht unredlich, sondern einfach von dem, der beides gleichzeitig vor sich hat.
Und die Unterschrift gehört dem, der falschliegt, wenn das Register falsch ist. Das ist der Planer, der Aufträge auf der Struktur anlegt, und die Person, die zum Objekt hingehen und es so gekennzeichnet vorfinden muss, wie es auf dem Bildschirm steht. Ein Projektteam kann diese Rolle nicht übernehmen: Ein Projekt endet, und das Register ist noch da.
Was die Datenmigration mitnimmt und was sie zurücklässt
197 Wörter
Stammdaten beschreiben den Ist-Zustand. Wo eine Maschine jetzt steht, ist ein Feld im Stammsatz. Wo sie vorher stand, ist die Folge der Einbauzeiträume dahinter, und die ist nur da, wenn jemand sie geladen hat.
Für abgeschlossene Arbeit gilt dasselbe. Eine Meldung und ihr Auftrag sind Datensätze zu einem Objekt, keine Attribute davon; ein Register kann also sauber geladen werden und ankommen, ohne dass zu irgendeinem Objekt etwas erfasst ist: jedes Objekt richtig, jede Historie leer.
Leer zu starten ist eine legitime Entscheidung und oft die richtige. Legitim ist sie nicht mehr, sobald niemand sie aufschreibt, denn die erste Auswertung, die zwei Jahre Ausfälle vergleicht, fällt zu kurz aus, und nichts auf dem Bildschirm sagt, ob sich das Werk verbessert hat oder die Historie dort einfach aufhört. Schreiben Sie den Cut-over-Stichtag dorthin, wo diese Auswertung gelesen wird, nicht in ein Dokument, das jemand abgelegt hat.
Was tatsächlich mitkommt, wird unterwegs nicht besser. Eine Meldung, deren Schaden in den Langtext geschrieben wurde, kommt mit dem Schaden im Langtext an. Durch den Umzug bekommt ein Datensatz keinen Code, den er nie hatte, und die Zählung, die Sie wollten, ist weiterhin nicht möglich – jetzt in zwei Systemen statt in einem.