Modelle und deren Einsatzzweck

Modelle werden aus einem bestimmten Grund erstellt. Dieser Grund kann die Dokumentation eines bestehenden Systems, das Erfassen von neuen Anforderungen oder die Erstellung eines ausführbaren Artefakts (denn auch Quellcode und dessen binäre Repräsentation (Bytecode order Maschinencode) sind Modelle) sein.

Bei der Erstellung eines Modells spielt immer dessen geplanter Einsatzzweck eine Rolle: „Welche Diagrammtypen verstehen die Nutzer des Modells?“, „Wie detailliert soll das Modell sein?“ und „Soll die Wartungssicht im Modell berücksichtigt werden?“ sind einige Beispielfragen, die bei jeder Änderung/Erweiterung des Modells stets aufs Neue beantwortet werden müssen.

Bei einer Erstellung eines Modells für alle erdenklichen zukünftigen Einsatzzwecke passiert meiner Erfahrung nach folgendes: Das Modell wird aufgebläht, die Übersicht geht verloren, die eigentlich vorher festgelegte Abstraktionsebene wird verlassen und es werden lähmende Details eingeführt und diskutiert. Lähmende Details besitzen keine zusätzliche semantische Bedeutung, je nach Kontext können das z.B. Stereotypen order auch Assoziationstypen sein. Die Diskussionen über solche Sachverhalte („Aggregation oder Komposition?“) haben keinen Wert, sie führen meist nicht einmal zu einem Ergebnis und zerstören die Absicht der Modellierung: Aus etwas schönen, erhabenen und abstrakten wird etwas kleinliches und dogmatisches, das sich nicht mehr in gesunden Bahnen bewegt.

Die lähmenden Details können durch (Selbst-)Disziplin verhindert werden, ein Skill, den Mitglieder eines Modellierungsteams besitzen sollten. Das setzt aber vorraus, dass vorher der Einsatzzweck und die Abstraktionsebene festgelegt sind. Extern kann höchstens durch Moderation das Auftreten der lähmenden Diskussionen in gewissen Grenzen unterbunden werden, dabei ist aber Fingerspitzengefühl vonnöten, da zwischen wichtigen Detailfragen und überflüssigen Diskussionen eine schmale Grenze verläuft.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.