Wie viel Formalisierung benötigt ein Modell?
Formalisierung von Modellen
Abstraktion durch Modellierung ist im Software- und Systems-Engineering ein bewährtes Mittel. Darstellungen, die auf bestimmte Aspekte reduziert sind, helfen den Projektbeteiligten dabei, hohe Komplexität zu beherrschen. Darum wird in vielen Projekten auch großer Aufwand in das Erschaffen von Modellen investiert. Dieser Aufwand ist umso höher, je mehr formale Kriterien das Modell erfüllen muss. An dieser Stelle stellt sich die Frage, wie viel Formalisierung ein Modell denn tatsächlich benötigt, um seinen Zweck zu erfüllen.
Einsatzzweck eines Modells
In der Praxis können wir unterschiedliche Einsatzzwecke von Modellen beobachten. Im Folgenden sind drei im Projektalltag typischerweise gut voneinander abgrenzbare Klassen von Einsatzzwecken beschrieben.
Skizze
Darstellungen eines Modells eignen sich gut dazu, Personen Sachverhalte und System- bzw. Softwareeigenschaften besser begreifbar zu machen. Dadurch kann beispielsweise ein besseres Verständnis zwischen Projektbeteiligten erreicht werden. Die Skizze hat als einzige Aufgabe, bei der Kommunikation zwischen Personen Information zu transportieren, die auf verbalem Wege nur schwer vermittelt werden kann. Die Skizze kommt oftmals dann zum Einsatz, wenn ein gemeinsames Problemverständnis erarbeitet werden soll, also bei der Problemanalyse. Eine Skizze wird ohne besondere Werkzeugunterstützung angefertigt und kann prinzipiell weggeworfen werden, sobald sie ihren Zweck erfüllt hat.
Spezifikation / Dokumentation
Modelle werden sehr gerne dazu genutzt, um Systeme oder Software zu spezifizieren. Diese Spezifikation dient sowohl als Entwurf für eine Implementierung als auch als Dokumentation dieser Implementierung. Ersteres dient dazu unnötigen Aufwand durch Fehlversuche bei der Implementierung zu reduzieren, während Letzteres dabei hilft, die Implementierung beispielsweise bei der Wartung besser zu verstehen. Für die Spezifikation / Dokumentation wird in der Regel ein Modellierungswerkzeug genutzt.
Simulation / Implementierung
Modelle eignen sich auch dazu, bestimmte Aspekte eines Systems oder einer Software teilweise oder vollständig zu simulieren. Dabei handelt es sich um ausführbare Modelle, die sich in einigen Fällen sogar direkt in eine Implementierung überführen lassen. In diesem Falle tritt die Modellierung an die Stelle der Implementierung. Für die Simulation / Implementierung wird immer ein Modellierungswerkzeug benötigt.
Der Einsatzzweck bestimmt den benötigten Formalisierungsgrad
Wenn wir uns nun ansehen, wie hoch der benötigte Formalisierungsgrad für die oben identifizierten Einsatzzweckklassen ist, ergibt sich der in der nachfolgenden Grafik dargestellte Zusammenhang. Es wird deutlich, dass der Aufwand, den man in das Erstellen eines stärker formalisierten Modelles investiert durch einen entsprechenden Einsatzzweck gerechtfertigt sein sollte. Die Formalisierung eines Modells hat keinen Selbstzweck!
Kategorien
Tags
Philip Stolz
Kontaktieren Sie Philip StolzHerr Philip Stolz ist als Senior Consultant im Bereich Requirements Engineering (RE) tätig. Seine Schwerpunkte liegen in der Einführung und Prozessverbesserung von Requirements Engineering (RE). Herr Stolz verfügt über eine fundierte Ausbildung im Bereich Software Engineering (Dipl.-Inf., Softwaretechnik). Durch Erfahrung aus unterschiedlichen Entwicklungsprojekten in verschiedenen industriellen Branchen sind ihm typische Projektsituationen sowie das Vorgehen bei der Einführung methodischer Verfahren innerhalb von Projektteams bekannt.