Beschreibung einer Methode
zur Analyse von fachlichen Anforderungen
auf der Basis der bis dahin gemachten Erfahrungen
in den Analyseprojekten.
1995
Wie kommt man von dem von der Fachwelt gestellten meist informalen Problem zu einem
ersten strukturierten Beschreibungsansatz, auf dessen Basis die weitere Betrachtung
und Erörterung des Problems erfolgen kann?
Vielfach wird in der Literatur beschrieben, was in den frühen Phasen der
Software-Entwicklung - Planung, Vorstudie, Anforderungsanalyse - zu tun ist.
Offen bleibt jedoch zumeist, wie vorgegangen und modelliert werden soll, um
das fachliche Problem, welches mit Hilfe von geeigneten DV-Lösungen zu
unterstützen ist, richtig zu erfassen und zu begreifen.
Das zur Zeit wohl am meisten propagierte Vorgehen besteht aus der Beschreibung der
Anwendungsfälle (Use-Case-Analysis / Booch,
Oestereich).
Die hier im Ansatz vorgestellte Methode soll zur
Analyse von Informationen und Informationszusammenhängen eines Ausschnittes
der realen Welt, der im folgenden als (Fach)Domäne bezeichnet wird,
dienen.
Zunächst zum Begriff Information. Informationen ist ein mitgeteilter oder
aufgenommener Wissensbestandteil über einen bestimmten Sachverhalt der Domäne.
Es geht also um Fachkenntnis und Fachwissen der in der Domäne involvierten Personen.
Das in Form von Information repräsentierte Wissen wird gespeichert,
wiedergewonnen, formuliert, als Nachricht ausgetauscht, interpretiert und verarbeitet.
Dieser Lebenszyklus der Information (information life cycle) ist im Rahmen der
Analyse zu begreifen und zu definieren.
In diesem Sinne fokussiert sich der methodische Ansatz also nicht so sehr auf
den Gegenstand der Bearbeitung an sich oder die Verrichtungen an ihm, sondern auf die
Begriffe, mit denen die Beteiligten in der Domäne über die Sachverhalte
(in Bezug auf die Objekte und Verrichtungen an ihnen) kommunizieren.
Das Ziel der hier vorgestellten Methode ist die Erörterung der Fachbegriffe und deren
Abbildung in formalen Informationsstrukturen, auf deren Basis im weiteren die Entwicklung
von adäquaten Informationssystemen erfolgen kann.
Die Methode der Analyse basiert auf den Grundsätzen der
Definition von (Fach)Begriffen.
In mehreren meiner Projekte -
KREDIS (Landesbank Kiel, 1983),
SIKAM (Marinearsenal Wilhelmshaven, 1990),
NGS (DG Bank Frankfurt, 1993),
SIMA (Deutsche Börse Frankfurt, 1994)
- bildete sie das Fundament der Entwicklung von sachgerechten Informationssystemen in den frühen Phasen der Planung und Analyse.
Eine Methode unterstützt die Lösung eines fachlichen Problems im
Rahmen von zuvor festgelegten Aspekten, indem sie das Verfahren,
die Sprache und die Werkzeuge für die Problembetrachtung vorgibt.
Je Problem und je Aspekt der Problemstellung existiert also eine Methode
(bzw. sollte existieren), nach der ein zielorientiertes Vorgehen ermöglicht wird.
Aspekt eines Problems bedeutet, daß die Miniwelt - die fachliche Domäne
- nicht in ihrer gesamten Komplexität betrachtet wird, sondern eingeschränkt
auf bestimmte Teilbereiche, die im Rahmen der Analyse von Bedeutung sind. Das hat zur
Folge, daß man für komplexe Probleme mehrere abgestimmte Methoden benötigt.
Informationen existieren in Form von (Fach-)Begriffen und Fachaussagen
der betrachteten Miniwelt. Begriffe repräsentieren somit Informationen über die
Sachverhalte eines betrachteten Realitätsausschnittes.
Diese Sachverhalte umfassen entweder
Die Definition ist die Festlegung eines Begriffes durch Herstellung von Beziehungen zu
anderen (bekannten oder bereits definierten) Begriffen mit dem Zweck der Abgrenzung von
anderen Begriffen. Die Definition von Begriffen erfolgt nach den
Definitionsgrundsätzen laut Vorschlag
DIN 2330 und DIN 2331.
Man unterscheidet zwei Arten von Definitionen:
Ein Begriff wird durch Angabe aller wesensbestimmenden Merkmale beschrieben.
Die Inhaltsdefinition kann erfolgen durch
Die Umfangsdefinition besteht aus der Angabe aller unter einen Begriff erfaßten
Gegenstände oder Sachverhalte.
Dies kann geschehen durch:
Angabe einer Regel, nach der die Aufzählung gewonnen werden kann, so sind z.B. Primzahlen natürliche Zahlen, die nur durch eins und sich selbst teilbar sind.
Als Begriffsreihen existieren
Ein Auto wird angefertigt, indem eine Person bzw. ein Team von Personen in einem Automobilwerk in einem bestimmten Zeitraum die Bestandteile eines Autos zu einem Ganzen zusammenfügt.
Die Aussage des Beispiels enthält mehr Information, als die oben angeführten Beispiele; so wird unter anderem auch etwas über die Fertigung eines Autos etwas ausgesagt. Es ist sehr häufig, daß relationale Beziehungen zwischen Begriffen - die Gegenstände repräsentieren - aus den Prozessen an den betroffenen Gegenständen resultieren. D.h. Aussagen, die relationale Begriffsreihen implizieren, enthalten meist einen Begriff, der einen Prozeß, einen Verrichtungsaspekt, beschreibt.Partitive Beziehungen und generische Beziehungensind (häufig auftretende) Sonderfälle von relationalen Beziehungen. Partitive und generische Beziehungen repräsentieren hierarchische Abhängigkeiten zwischen den Begriffen. Relationale Beziehungen resultieren häufig aus funktionalen Abängigkeiten zwischen den Begriffen. D.h. Aussagen, die relationale Begriffsreihen implizieren, enthalten meist einen Begriff, der einen Prozeß - einen Verrichtungsaspekt - beschreibt.
Jeder Begriff innerhalb eines Begriffssystems muß eindeutig und unmißverständlich definiert sein, d.h. ein Begriff darf nur genau eine Bedeutung haben. Die zur Definition eines Begriffes verwendeten Begriffe müssen entweder allgemein bekannt oder an dieser oder einer anderen (deutlich gekennzeichneten) Stelle definiert sein. Wenn z.B. ein Wal ein im Meer lebendes Säugetier ist, dann muß der Begriff Säugetier bekannt sein.
Eine Definition eines Begriffes muß mindestens so exakt sein, daß sie zur Abgrenzung zu den im jeweiligen Zusammenhang (innerhalb des Begriffssystems) stehenden Begriffe dienen kann. Bei Begriffen, die durch Aufzählung von bekannten Begriffen definiert werden, ist zu prüfen, ob die Bedeutung eindeutig ist oder ob zusätzliche Merkmale erforderlich sind. Wenn z.B. die Begriffe Meerlebewesen und Säugetier bekannt sind, dann sind mindestens noch die Merkmale Größe und Gewicht notwendig, um die Begriffe Wal und Seehund gegeneinander abgrenzen zu können.
Ein Begriff wird im Rahmen der Definition mit Wörtern der Sprache benannt. Die Benennung muß eindeutig sein. Homonye müssen umbenannt werden, Synonyme müssen als solche gekennzeichnet werden.
Homonyme sind identische Benennungen für unterschiedliche Begriffe. Wenn z.B. der Begriff Schloß als prunkvolles Bauwerk und als Gegenstand zum Abschließen eingeführt worden ist, dann muß mindestens eine der Bedeutungen in einem neuen Begriff erfaßt werden. (Das "Schloß zum Abschließen" wird also als Vorhängeschloß bezeichnet.)
Synonyme sind unterschiedliche Benennungen für denselben Begriff, so sind z.B. die Begriffe Elysium und Garten Eden Synonyme und beschreiben beide das Paradies. Einer der synonymen Begriffe muß definiert sein, bei dem anderen ist der Verweis auf diesen hinreichend.
Häufig werden Begriffe nur im Rahmen von bestimmten Anwendungsbereichen (Domänen) definiert. Für den Fall, daß eine Definition nur begrenzt, bezogen auf einen durch die Anwendung festgelegten Aspekt, gilt, muß dies explizit vermerkt werden. Z.B. unter dem Aspekt "als Spielgerät für Kinder tauglich" ist es nicht erforderlich, den Begriff Roller als Tretroller zu präzisieren; dies ändert sich jedoch, wenn der Aspekt "Fahrzeug" betrachtet wird. Dies gilt analog für zeitliche Gültigkeit von Definitionen.
Zirkelschlüsse sind Definitionen von Begriffen unter Bezugnahme auf andere Begriffe, die zuvor durch die zu definierenden Begriffe definiert worden sind.
Ein Begriff darf nicht definiert werden unter Verwendung anderer Begriffe, die durch diesen beschrieben worden sind. Wenn z.B. definiert ist, Textilien sind "Erzeugnisse der Textilindustrie", dann darf der Begriff Textilindustrie nicht beschrieben werden als "der Industriezweig, der Textilien herstellt".
Widersprüche sind Definitionen eines Begriffes, die der Definition eines anderen Begriffes widersprechen.
Innerhalb eines Begriffssystems dürfen Definitionen von Begriffen sich nicht widersprechen. Wenn z.B. bekannt ist, daß "die Wurzel aus 2 keine rationale Zahl ist", dann darf man nicht definieren, daß "die Zahl 2 sich als Quadrat eines gekürzten Bruches darstellen läßt".
Wie oben gefordert besteht eine Methode aus mindestens einer Sprache, einem Verfahren und mindestens einem Werkzeug. Die Sprache des hier vorgestellten Methodenansatzes wird definiert durch die Sprachmittel und Modelle der Begriffsstrukturen. Das Verfahren wird angerissen durch die Definitionstechniken und Definitionsgrundsätze. Ein Werkzeug zur Unterstützung von Begriffsdefinitionen, insbesondere unter dem Gesichtspunkt der Eingliederung in eine integrierte Entwicklungsumgebung, existiert meines Wissens nicht.
In den meisten mir bekannten Werkzeugen wird das Prinzip der Anforderungsanalyse umgekehrt in der Weise, daß zuerst ein Modell entwickelt wird bevor die Modellelemente beschrieben werden können. Ken Orr et al. scheint diese Annahme zu bestätigen durch die Behauptung, daß das Modell häufig mit Methode verwechselt wird. Dies führt jedoch zu einer Definition des Modells und des darin abgebildeten Diagramms und nicht zu einer Definition der Begriffe der Fachwelt.
Der hier vorgestellte Ansatz zielt jedoch auf eine systematische Definition der Fachbegriffe und Strukturierung in Begriffssystemen, bevor darauf aufbauend das Modell eines Informationssystems entwickelt werden kann. Im Rahmen meiner Projekte habe ich mit dieser Methode durchweg gute Erfahrungen gemacht. Und dafür gibt es aus meiner Sicht folgende Gründe:
Offen bleiben noch die Fragen, wie die Integration dieses Ansatzes in den Prozeß der Software-Entwicklung integriert werden kann und wie es mit den Begriffsstrukturen weiter geht in Richtung einer werkzeuggestützten Software-Entwicklung. An dieser Stelle möchte ich mir ein wenig Beratungsspielraum offenhalten.
Booch |
Object-Oriented Analysis and Design with Applications;
Benjamin/Cummings Publishing, 1994 |
Chen |
The Entity/Relationship Model - Toward a Unified View of Data;
ACM Transactions on DBS (TODS), Vol.1(1), 1976 |
Codd |
A Relational Data Model of Data for Large Shared Data Bases;
Comm. of the ACM, Vol.13(6), 1970 |
Codd |
Extending the Relational Model;
ACM TODS, Vol.4, 1979 |
DIN2330 |
Begriffe und Benennungen - allgemeine Grundsätze;
Beuth-Verlag, 1974 |
DIN2331 |
Begriffsysteme und ihre Darstellung;
Beuth-Verlag, 1976 |
Martin |
Information Engineering;
Savant Institute, 1981 |
Ortner |
Aspekte einer Konstruktionssprache für den DB-Entwurf;
Informatik und OR, Bd. 11, Toeche-Mittler-Verlag, 1983 |
Östereich |
Objektorientierte Software-Entwicklung - Analys und Design mit der UML;
Oldenbourg-Verlag, 1998 www.oose.de/uml |
Österle |
Entwurf betrieblicher Informationssysteme;
Computer Monographien, Bd. 16, Hanser-Verlag, 1981 |
Orr et al. |
Methodology: The Experts Speak;
BYTE, 04/1989 |
Rumbaugh et al. |
Objektorientiertes Modellieren und Entwerfen;
Hanser-Verlag, 1994 |
Smith/Smith |
Database Abstractions - Aggregation and Generalization;
ACM TODS, Vol.2(2), 1977 |