02.06.2013 Aufrufe

Referenz-Metaschema für visuelle Modellierungssprachen - Se.uni ...

Referenz-Metaschema für visuelle Modellierungssprachen - Se.uni ...

Referenz-Metaschema für visuelle Modellierungssprachen - Se.uni ...

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

Andreas Winter<br />

<strong>Referenz</strong>-<strong>Metaschema</strong> <strong>für</strong><br />

<strong>visuelle</strong> <strong>Modellierungssprachen</strong><br />

Vom Promotionsausschuß des Fachbreichs 4: Informatik der Universität Koblenz-Landau zur<br />

Verleihung des akademischen Grades Doktor der Naturwissenschaften (Dr. rer. nat.)<br />

genehmigte Dissertation.<br />

Vorsitzender des Promotionsausschusses: Prof. Dr. Jürgen Ebert<br />

Promotionskommission<br />

Vorsitzender: Prof. Dr. Ulrich Frank<br />

Berichterstatter: Prof. Dr. Jürgen Ebert<br />

Prof. Dr. Franz Lehner<br />

Tag der wissenschaftlichen Aussprache: 14. Februar 2000


Geleitwort<br />

Sowohl bei der Beschreibung von Unternehmen, Verwaltungen und Organisationen als auch bei<br />

der Beschreibung von Softwaresystemen werden zahlreiche – häufig <strong>visuelle</strong> – Sprachen eingesetzt.<br />

Die Sprachenvielfalt ist dabei sowohl in der Organisationslehre als auch in der Softwaretechnik<br />

sehr hoch.<br />

Die vorliegende Dissertation bringt in die Menge der Sprachen zur Beschreibung von Organisationen<br />

und von Softwaresystemen ein umfassendes und leistungsfähiges konzeptuelles Ordnungssystem,<br />

das geeignet ist, diese Sprachen zusammen zu erfassen und miteinander (syntaktisch)<br />

in Beziehung zu setzen. Damit wird insbesondere die Grundlage <strong>für</strong> den Bau generischer<br />

sprachspezifischer und sprachübergreifender Werkzeuge weiter abgesichert.<br />

Herr Winter vereint die <strong>visuelle</strong>n Sprachen beider Bereiche in einer ganzheitlichen Sicht und<br />

zeigt, daß sie alle zusammen in systematischer Form beschrieben und erfaßt werden können:<br />

Aufbauend auf einer stark literatur-basierten Diskussion der Grundbegriffe „Organisation“ und<br />

„Softwaresystem“ und den jeweiligen methodischen Ansätzen <strong>für</strong> deren Analyse und Gestaltung<br />

zeigt er, daß Organisationstechnik und Softwaretechnik gegenseitig eng miteinander verflochten<br />

sind, so daß im Kontext der vorliegenden Arbeit nur eine gemeinsame, integrierte Betrachtung<br />

in Frage kommt.<br />

Um die Beschreibungsparadigmen umfassend und integriert darstellen zu können, wird dann im<br />

Verlauf der Arbeit ein gemeinsames <strong>Referenz</strong>-<strong>Metaschema</strong> erstellt, das alle behandelten Sprachen<br />

im wesentlichen als konkret-syntaktisch notierte Instanzen hierzu umfaßt.<br />

Der Autor validiert dieses <strong>Referenz</strong>-<strong>Metaschema</strong> dadurch, daß er existierende multiparadigmatische<br />

Beschreibungsansätze als Spezialfälle des integrierten <strong>Referenz</strong>-<strong>Metaschema</strong>s beschreibt.<br />

Wie durch den Begriff „<strong>Referenz</strong>“ nahegelegt, sind hierzu nur kleinere Anpassungen erforderlich.<br />

Die vorliegende Dissertation ist ein wichtiger Beitrag zu einem wesentlichen Gebiet der Softwaretechnik,<br />

nämlich der Definition und Formalisierung von <strong>visuelle</strong>n Beschreibungssprachen. Mit<br />

dieser Arbeit sind diejenigen Sprachen, die sich im praktischen Einsatz befinden, inklusive der<br />

notwendigen Kontextbedingungen erfaßt.<br />

Durch die Arbeit wird der Stand der Technik in der Organisationstheorie und in der Softwaretechnik<br />

vollständig berücksichtigt. Dabei ist zu beachten, daß nicht die Konzepte in der wissenschaftlichen<br />

Behandlung von Organisationen und Softwaresystemen (also in der Anwendungsdomäne<br />

der Sprachen) erfaßt werden, sondern die Konzepte, die in den Sprachen zu deren Beschreibung<br />

verwendet werden. Da softwaretechnische Methoden stets um Beschreibungssprachen herum


entwickelt werden, ist somit <strong>für</strong> das Method Engineering eine Basis geschaffen, die auch den<br />

semantischen und den transformativen Teil von Methoden formalisieren läßt.<br />

Das eingeführte <strong>Referenz</strong>schema ist insgesamt als ein konsistenter und hinreichend vollständiger<br />

Vorschlag zu sehen, der sich in der Diskussion in der Wissenschaft, vor allem aber bei der Implementierung<br />

in CASE-Werkzeugen noch weiter bewähren muß. Die Definition von UML durch<br />

die OMG über ein schwach untermauertes Metamodell ist dagegen ein eher blasser Ansatz. Der<br />

Autor hat gezeigt, daß sich sein <strong>Referenz</strong>-<strong>Metaschema</strong> mit den eingeführten Mitteln vollständig<br />

beschreiben läßt und daß Variantenbildung – wie die zahllosen Beispiele zeigen – ausgesprochen<br />

einfach ist.<br />

Durch die Veröffentlichung dieser Dissertation durch den Deutschen Universitäts-Verlag kann<br />

die Arbeit die Verbreitung erlangen, die sie verdient und die sie benötigt, um die Diskussion über<br />

<strong>visuelle</strong> Sprachen in der Softwaretechnik und deren Präzisierung voranzubringen.<br />

Jürgen Ebert


Vorwort<br />

Diese Dissertation entstand während meiner Anstellung als wissenschaftlicher Mitarbeiter in der<br />

Forschungsgruppe Softwaretechnik der Universität Koblenz-Landau bei Herrn Prof. Dr. Jürgen<br />

Ebert. Die Arbeit wurde teilweise durch ein Graduiertenstipendium des Landes Rheinland-Pfalz<br />

unterstützt. Ich möchte mich an dieser Stelle bei allen bedanken, die zur Erstellung dieser Arbeit<br />

beigetragen haben.<br />

Meinem Mentor, Herrn Prof. Dr. Jürgen Ebert, danke ich <strong>für</strong> das mir entgegengebrachte Vertrauen,<br />

das diese Arbeit erst ermöglichte. Er hat mir das weite Feld der Softwaretechnik eröffnet und<br />

mich in die wissenschaftliche Beschäftigung mit der Softwaretechnik eingeführt. In seiner Arbeitsgruppe<br />

fand ich die Freiräume und die konstruktive und diskussionsfreudige Atmosphäre,<br />

ohne die praxisnahe, wissenschaftliche Arbeit nicht möglich ist.<br />

Herrn Prof. Dr. Franz Lehner danke ich <strong>für</strong> sein Interesse an dieser Arbeit und die Bereitschaft,<br />

die Berichterstattung zu übernehmen. Intensive Diskussionen mit ihm erlaubten es mir, die Softwaretechnik<br />

auch aus Sicht der Wirtschaftsinformatik zu sehen. Für seine Diskussionsbereitschaft<br />

und seine wertvollen Kommentare und Bemerkungen, die diese Arbeit deutlich beeinflußt<br />

haben, bedanke ich mich sehr herzlich.<br />

Herrn Prof. Dr. Heino Kaack, der die Fertigstellung dieser Dissertation leider nicht mehr erleben<br />

konnte, danke ich <strong>für</strong> seine Unterstützung bei den ersten Schritten zu dieser Arbeit. Er brachte<br />

mich den Fragestellungen der Verwaltungsinformatik und der Organisationsmodellierung näher.<br />

In seiner Forschungsstelle <strong>für</strong> Verwaltungsinformatik ermöglichte er mir meine ersten wissenschaftlichen<br />

Gehversuche. Gemeinsam mit Herrn Prof. Dr. Jürgen Ebert und Herrn Dr. Andreas<br />

Engel brachte er mich auf die Idee zu dieser Arbeit und ermutigte mich zur Realisierung dieser<br />

Dissertation.<br />

Meinen Kollegen Bernt Kullbach und Roger Süttenbach schulde ich Dank <strong>für</strong> das Lesen und<br />

Kommentieren früherer Versionen dieser Arbeit. Trotz ihrer eigenen zeitlichen Belastung, nahmen<br />

sie sich stets die Zeit <strong>für</strong> intensive und wertvolle Diskussionen zu meiner Arbeit. Diese<br />

Diskussionen mit ihnen möchte ich nicht missen. Bei Bernt Kullbach bedanke ich mich darüber<br />

hinaus auch sehr herzlich, daß er mich in den letzten Monaten in GUPRO deutlich entlastete.<br />

Der in dieser Arbeit verwendete EER/GRAL-Ansatz zur Konzeptmodellierung basiert auf gemeinsamen<br />

Arbeiten mit Martin Carstensen, Peter Dahm, Prof. Dr. Jürgen Ebert, Angelika Franzke<br />

und Manfred Kamp. Ihnen danke ich <strong>für</strong> viele Gespräche zur Metamodellierung und zur Formalisierung<br />

von EER/GRAL.<br />

Intensive Diskussionen zu Teilbereichen meiner Arbeit konnte ich mit Dr. Andreas Engel, Prof.<br />

Dr. Ulrich Frank, Christel Heil, Rudolf Kruse, Prof. Dr. Albrecht Meißner, Dr. Stephan Philip-


pi, Michael Prasse, Ulrich Remus, Martin Schulze, Thomas Schumm, Carlo Simon, Christopher<br />

Thomann, Ingar Uhe und Prof. Dr. Alfred Winter und der GI/GMDS Arbeitsgruppe „Methoden<br />

und Werkzeuge <strong>für</strong> das Management von Krankenhausinformationssystemen“ führen. Ihnen<br />

danke ich <strong>für</strong> viele hilfreiche Kommentare, die die vorliegende Dissertation deutlich geprägt<br />

haben.<br />

Für die Hilfe beim Umgang mit LATEX, Linux, Tgif und diversen Druckern danke ich Dr. Marcel<br />

Bresink, Detlev Droege, Rainer Krienke, Christoph Litauer und Friedbert Widmann.<br />

Schließlich danke ich meinen Eltern <strong>für</strong> ihre vielfältige Unterstützung und da<strong>für</strong>, daß sie bereits<br />

in frühen Jahren <strong>für</strong> meine Ausbildung gesorgt haben. Ohne sie wäre vieles nicht möglich<br />

gewesen.<br />

Andreas Winter


Kurzfassung<br />

Die Modellierung von Organisationen und Softwaresystemen erfolgt heute multiperspektivisch<br />

aus unterschiedlichen Darstellungssichten. Hierzu wird sowohl in der Organisationstechnik als<br />

auch in der Softwaretechnik eine große Vielfalt unterschiedlicher <strong>visuelle</strong>r Sprachen verwendet.<br />

Diese Arbeit integriert diese Beschreibungsmittel auf konzeptioneller Ebene und identifiziert die<br />

Querbezüge der Darstellungen unterschiedlicher Sichten.<br />

Zur Strukturierung des weiten Spektrums unterschiedlicher <strong>Modellierungssprachen</strong> wird ausgehend<br />

von den zentralen Modellierungssichten ein Klassifikationsschema entwickelt, durch das<br />

die verschiedenen Beschreibungsmittel auf zehn grundlegende Beschreibungsparadigmen zurückgeführt<br />

werden können.<br />

Die durch Sprachen dieser Paradigmen modellierten Konzepte und deren Beziehungen werden<br />

durch <strong>Referenz</strong>-<strong>Metaschema</strong>ta formalisiert. Diese <strong>Referenz</strong>-<strong>Metaschema</strong>ta sind einerseits so allgemein<br />

gehalten, daß die Ableitung spezialisierter <strong>Metaschema</strong>ta konkreter Modellierungsmittel<br />

leicht möglich ist. Andererseits sind sie auch so konkret, daß diese Spezialisierungen nur geringfügige<br />

Anpassungen der <strong>Referenz</strong>-<strong>Metaschema</strong>ta erfordern. Das <strong>Referenz</strong>-<strong>Metaschema</strong> <strong>für</strong><br />

<strong>visuelle</strong> <strong>Modellierungssprachen</strong> faßt diese <strong>Referenz</strong>-<strong>Metaschema</strong>ta der Beschreibungsmittel <strong>für</strong><br />

Organisationen und Softwaresysteme in einem integrierten <strong>Referenz</strong>-<strong>Metaschema</strong> zusammen.<br />

Das <strong>Referenz</strong>-<strong>Metaschema</strong> <strong>für</strong> <strong>visuelle</strong> <strong>Modellierungssprachen</strong> bietet einen umfassenden Überblick<br />

über die heute zur Modellierung von Organisationen und Softwaresystemen verwendeten<br />

Beschreibungsmittel. Unabhängig von konkreten Notationen werden diese Sprachen entlang<br />

ihrer Modellierungskonzepte dargestellt und Querbezüge zwischen den verschiedenen Darstellungsmitteln<br />

der unterschiedlichen Sichten und Paradigmen herausgestellt.<br />

Anwendung findet dieses <strong>Referenz</strong>-<strong>Metaschema</strong> neben der Festlegung der Modellierungskonzepte<br />

und deren Beziehungen u. a. auch als Modellierungsmittel zur Entwicklung spezialisierter<br />

<strong>Metaschema</strong>ta konkreter, multiperspektivischer <strong>Modellierungssprachen</strong>, und es kann als Vergleichsmaßstab<br />

zur Einordnung dieser Sprachen herangezogen werden. Für die Entwicklung von<br />

Modellierungswerkzeugen definiert das <strong>Referenz</strong>-<strong>Metaschema</strong> bzw. die hieraus abgeleiteten Spezialisierungen<br />

Repositorystrukturen zur internen Verwaltung von Modelldaten und spezifiziert<br />

die Konsistenz der Teilmodelle unterschiedlicher Beschreibungsmittel zueinander.


Inhaltsverzeichnis<br />

1 Einführung und Zielsetzung 1<br />

I Grundlagen und Einordnung 11<br />

2 Organisationen und Softwaresysteme 13<br />

2.1 ModellierungvonOrganisationen . . . . . . . . . . . . . . . . . . . . . . . . . 13<br />

2.1.1 Vorgehen zur Organisationsgestaltung . . . . . . . . . . . . . . . . . . . 16<br />

2.1.2 Methoden des Requirements-Engineering der Organisationstechnik . . . 18<br />

2.1.3 Visuelle <strong>Modellierungssprachen</strong> der Organisationstechnik . . . . . . . . 19<br />

2.2 Modellierung von Softwaresystemen . . . . . . . . . . . . . . . . . . . . . . . . 20<br />

2.2.1 Vorgehen zur Softwareerstellung . . . . . . . . . . . . . . . . . . . . . . 21<br />

2.2.2 Methoden des Requirements-Engineering der Softwaretechnik . . . . . . 22<br />

2.2.3 Visuelle <strong>Modellierungssprachen</strong> der Softwaretechnik . . . . . . . . . . . 24<br />

2.3 Modellierung von Organisationen und Softwaresystemen . . . . . . . . . . . . . 25<br />

2.4 Einordnung in die Zielsetzung dieser Arbeit . . . . . . . . . . . . . . . . . . . . 29<br />

3 Visuelle <strong>Modellierungssprachen</strong> der Organisations- und Softwaretechnik 31<br />

3.1 Klassifikationsschema <strong>für</strong> <strong>visuelle</strong> <strong>Modellierungssprachen</strong> . . . . . . . . . . . . 31<br />

3.1.1 Beschreibungssichten . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32<br />

3.1.2 Beschreibungsparadigmen . . . . . . . . . . . . . . . . . . . . . . . . . 34<br />

3.1.3 Beschreibungssichten und -paradigmen . . . . . . . . . . . . . . . . . . 35<br />

3.1.4 Visuelle <strong>Modellierungssprachen</strong> . . . . . . . . . . . . . . . . . . . . . . 38<br />

3.2 Visuelle Modellierungsprachen der Aufgabensicht . . . . . . . . . . . . . . . . . 40<br />

3.2.1 Visuelle Modellierungsprachen des Aufgabengliederungsparadigmas . . 40<br />

3.3 Visuelle <strong>Modellierungssprachen</strong> der Aufbausicht . . . . . . . . . . . . . . . . . 44<br />

3.3.1 Visuelle Modellierungsprachen des Stellengliederungsparadigmas . . . . 45


xii Inhaltsverzeichnis<br />

3.3.2 Visuelle <strong>Modellierungssprachen</strong> des Komm<strong>uni</strong>kationsparadigmas . . . . 52<br />

3.4 Visuelle <strong>Modellierungssprachen</strong> der Prozeßsicht . . . . . . . . . . . . . . . . . . 55<br />

3.4.1 Visuelle <strong>Modellierungssprachen</strong> des Datenflußparadigmas . . . . . . . . 56<br />

3.4.2 Visuelle <strong>Modellierungssprachen</strong> des Zustandsübergangsparadigmas . . . 65<br />

3.4.3 Visuelle <strong>Modellierungssprachen</strong> des Netzparadigmas . . . . . . . . . . . 70<br />

3.4.4 Visuelle <strong>Modellierungssprachen</strong> des Kontrollflußparadigmas . . . . . . . 82<br />

3.5 Visuelle <strong>Modellierungssprachen</strong> der Objektsicht . . . . . . . . . . . . . . . . . . 85<br />

3.5.1 Visuelle <strong>Modellierungssprachen</strong> des Objekt-Instanzparadigmas . . . . . 86<br />

3.5.2 Visuelle <strong>Modellierungssprachen</strong> des Objekt-Interaktionsparadigmas . . . 88<br />

3.5.3 Visuelle <strong>Modellierungssprachen</strong> des Objekt-Beziehungsparadigmas . . . 92<br />

3.6 Einordnung in die Zielsetzung dieser Arbeit . . . . . . . . . . . . . . . . . . . . 101<br />

4 Modelle, <strong>Referenz</strong>modelle und Metamodelle 103<br />

4.1 Modelle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103<br />

4.2 <strong>Referenz</strong>modelle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105<br />

4.2.1 Anforderungen an <strong>Referenz</strong>modelle . . . . . . . . . . . . . . . . . . . . 107<br />

4.2.2 Beispiele <strong>für</strong> <strong>Referenz</strong>modelle . . . . . . . . . . . . . . . . . . . . . . . 110<br />

4.2.3 Zusammenfassung: Anwendungsbereiche von <strong>Referenz</strong>modellen . . . . . 115<br />

4.3 Metamodelle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116<br />

4.3.1 Beispiele<strong>für</strong>Metamodelle . . . . . . . . . . . . . . . . . . . . . . . . . 117<br />

4.3.2 Zusammenfassung: Anwendungsbereiche von Metamodellen . . . . . . . 130<br />

4.3.3 Metamodelle und <strong>Referenz</strong>modelle . . . . . . . . . . . . . . . . . . . . 132<br />

4.4 Einordnung in die Zielsetzung dieser Arbeit . . . . . . . . . . . . . . . . . . . . 134<br />

II Modellbildung des <strong>Referenz</strong>-<strong>Metaschema</strong>s 137<br />

5 Graphbasierte Konzeptmodellierung 139<br />

5.1 Konzeptmodellierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139<br />

5.2 Konzeptmodellierung mit EER/GRAL . . . . . . . . . . . . . . . . . . . . . . . 144<br />

5.2.1 TGraphen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144<br />

5.2.2 Graphklassen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148<br />

5.3 Zusammenfassung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165


Inhaltsverzeichnis xiii<br />

6 <strong>Referenz</strong>-<strong>Metaschema</strong> 167<br />

6.1 Herleitung und Spezialisierung des <strong>Referenz</strong>-<strong>Metaschema</strong>s . . . . . . . . . . . . 167<br />

6.2 <strong>Metaschema</strong>taderAufgabensicht . . . . . . . . . . . . . . . . . . . . . . . . . . 168<br />

6.2.1 <strong>Metaschema</strong>ta des Aufgabengliederungsparadigmas . . . . . . . . . . . 168<br />

6.3 <strong>Metaschema</strong>taderAufbausicht . . . . . . . . . . . . . . . . . . . . . . . . . . . 172<br />

6.3.1 <strong>Metaschema</strong>ta des Stellengliederungsparadigmas . . . . . . . . . . . . . 172<br />

6.3.2 <strong>Metaschema</strong>ta des Komm<strong>uni</strong>kationsparadigmas . . . . . . . . . . . . . . 177<br />

6.4 <strong>Metaschema</strong>taderProzeßsicht . . . . . . . . . . . . . . . . . . . . . . . . . . . 179<br />

6.4.1 <strong>Metaschema</strong>ta des Datenflußparadigmas . . . . . . . . . . . . . . . . . . 179<br />

6.4.2 <strong>Metaschema</strong>ta des Zustandsübergangsparadigmas . . . . . . . . . . . . . 186<br />

6.4.3 <strong>Metaschema</strong>ta des Netzparadigmas . . . . . . . . . . . . . . . . . . . . 192<br />

6.4.4 <strong>Metaschema</strong>ta des Kontrollflußparadigmas . . . . . . . . . . . . . . . . 207<br />

6.5 <strong>Metaschema</strong>taderObjektsicht . . . . . . . . . . . . . . . . . . . . . . . . . . . 209<br />

6.5.1 <strong>Metaschema</strong>ta des Objekt-Instanzparadigmas . . . . . . . . . . . . . . . 209<br />

6.5.2 <strong>Metaschema</strong>ta des Objekt-Interaktionsparadigmas . . . . . . . . . . . . 212<br />

6.5.3 <strong>Metaschema</strong>ta des Objekt-Beziehungsparadigmas . . . . . . . . . . . . . 214<br />

6.6 Integriertes <strong>Referenz</strong>-<strong>Metaschema</strong> . . . . . . . . . . . . . . . . . . . . . . . . . 225<br />

6.6.1 Integration der <strong>Referenz</strong>-<strong>Metaschema</strong>ta . . . . . . . . . . . . . . . . . . 225<br />

6.6.2 Paradigmenübergeifende GRAL-Zusicherungen . . . . . . . . . . . . . . 230<br />

6.7 Zusammenfassung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 234<br />

III Anwendung des <strong>Referenz</strong>-<strong>Metaschema</strong>s 235<br />

7 Architektur integrierter Informationssysteme 237<br />

7.1 Integration der <strong>Metaschema</strong>ta der ARIS-Beschreibungsmittel . . . . . . . . . . . 238<br />

7.2 Paradigmenübergreifende GRAL-Zusicherungen . . . . . . . . . . . . . . . . . . 239<br />

7.2.1 Paradigmenübergreifende Zusicherungen der Prozeßsicht . . . . . . . . . 240<br />

7.2.2 Paradigmenübergreifende Zusicherungen der Aufgaben- und Prozeßsicht 240<br />

7.3 Anwendung des ARIS-<strong>Metaschema</strong>s . . . . . . . . . . . . . . . . . . . . . . . . 241<br />

8 Unified Modeling Language 243<br />

8.1 Integration der <strong>Metaschema</strong>ta der UML-Beschreibungsmittel . . . . . . . . . . . 244<br />

8.2 Paradigmenübergreifende GRAL-Zusicherungen . . . . . . . . . . . . . . . . . . 245<br />

8.2.1 Paradigmenübergreifende Zusicherungen der Objektsicht . . . . . . . . . 246


xiv Inhaltsverzeichnis<br />

8.2.2 Paradigmenübergreifende Zusicherungen der Prozeß- und Objektsicht . . 247<br />

8.3 Anwendung des UML-<strong>Metaschema</strong>s . . . . . . . . . . . . . . . . . . . . . . . . 248<br />

9 Software-Evaluation 249<br />

9.1 Integration der <strong>Metaschema</strong>ta zur Software-Evaluation . . . . . . . . . . . . . . 250<br />

9.2 Paradigmenübergreifende GRAL-Zusicherungen . . . . . . . . . . . . . . . . . . 252<br />

9.2.1 Paradigmenübergreifende Zusicherungen der Aufgaben- und Prozeßsicht 252<br />

9.3 Anwendung des <strong>Metaschema</strong>s zur Software-Evaluation . . . . . . . . . . . . . . 253<br />

10 Zusammenfassung und Ausblick 255<br />

A Formalisierung des <strong>Referenz</strong>-<strong>Metaschema</strong>s 261<br />

A.1 EER-Modell . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 262<br />

A.2 GRAL-Zusicherungen der Aufgabensicht . . . . . . . . . . . . . . . . . . . . . . 263<br />

A.2.1 GRAL-Zusicherungen des Aufgabengliederungsparadigmas . . . . . . . 263<br />

A.3 GRAL-Zusicherungen der Aufbausicht . . . . . . . . . . . . . . . . . . . . . . . 263<br />

A.3.1 GRAL-Zusicherungen des Stellengliederungsparadigmas . . . . . . . . . 263<br />

A.3.2 GRAL-Zusicherungen des Komm<strong>uni</strong>kationsparadigmas . . . . . . . . . . 264<br />

A.4 GRAL-Zusicherungen der Prozeßsicht . . . . . . . . . . . . . . . . . . . . . . . 264<br />

A.4.1 GRAL-Zusicherungen des Datenflußpardigmas . . . . . . . . . . . . . . 264<br />

A.4.2 GRAL-Zusicherungen des Zustandsübergangsparadigmas . . . . . . . . . 265<br />

A.4.3 GRAL-Zusicherungen des Netzparadigmas . . . . . . . . . . . . . . . . 266<br />

A.4.4 GRAL-Zusicherungen des Kontrollflußparadigmas . . . . . . . . . . . . 267<br />

A.5 GRAL-Zusicherungen der Objektsicht . . . . . . . . . . . . . . . . . . . . . . . 267<br />

A.5.1 GRAL-Zusicherungen des Objekt-Instanzpardigmas . . . . . . . . . . . . 267<br />

A.5.2 GRAL-Zusicherungen des Objekt-Interaktionsparadigmas . . . . . . . . 267<br />

A.5.3 GRAL-Zusicherungen des Objekt-Beziehungsparadigmas . . . . . . . . . 268<br />

A.6 Sichten- und Paradigmenübergreifende GRAL-Zusicherungen . . . . . . . . . . . 268<br />

B Glossar 271<br />

B.1 Grundlegende Definitionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271<br />

B.2 Konzepte des <strong>Referenz</strong>-<strong>Metaschema</strong>s . . . . . . . . . . . . . . . . . . . . . . . 272<br />

Literaturverzeichnis 279


Abbildungsverzeichnis<br />

2.1 Ein Wasserfallmodell zur Organisationsgestaltung . . . . . . . . . . . . . . . . . 17<br />

2.2 Ein Wasserfallmodell des Software-Lebenszyklus . . . . . . . . . . . . . . . . . 22<br />

3.1 Beschreibung einer Krankenhaus-Organisation aus verschiedenen Sichten . . . . 33<br />

3.2 Beschreibungssichten und Paradigmen . . . . . . . . . . . . . . . . . . . . . . . 37<br />

3.3 Sichten, Paradigmen und Beschreibungsmittel . . . . . . . . . . . . . . . . . . . 39<br />

3.4 Aufgabengliederungsplan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41<br />

3.5 Aufgabengliederungspläne, notationelle Varianten . . . . . . . . . . . . . . . . . 43<br />

3.6 Organigramm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46<br />

3.7 Organigramme <strong>für</strong> Einliniensysteme, notationelle Varianten . . . . . . . . . . . . 47<br />

3.8 Organigramme<strong>für</strong>Mehrlinien-Systeme . . . . . . . . . . . . . . . . . . . . . . 49<br />

3.9 Funktionendiagramm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51<br />

3.10 Komm<strong>uni</strong>gramm (Komm<strong>uni</strong>kationshäufigkeit) . . . . . . . . . . . . . . . . . . . 53<br />

3.11 Komm<strong>uni</strong>kationsmatrix (Dreiecksform) . . . . . . . . . . . . . . . . . . . . . . 54<br />

3.12 Komm<strong>uni</strong>kationsgraph . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55<br />

3.13 Kooperationsbild . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56<br />

3.14 Kontextdiagramm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58<br />

3.15 Datenflußdiagramm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59<br />

3.16 Datenflußplan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61<br />

3.17 SADT-Aktivitätsdiagramm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62<br />

3.18 Anwendungsfalldiagramm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64<br />

3.19 Statechart . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67<br />

3.20 Statecharts, notationelleVarianten . . . . . . . . . . . . . . . . . . . . . . . . . 69<br />

3.21 Grundbausteine zur Kontrollflußverknüpfung . . . . . . . . . . . . . . . . . . . 71<br />

3.22 Aktivitätsdiagramm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73<br />

3.23 EreignisgesteuerteProzeßkette . . . . . . . . . . . . . . . . . . . . . . . . . . . 76


xvi Abbildungsverzeichnis<br />

3.24 Bedingungs/Ereignis-Netz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78<br />

3.25 Vorgangsknotennetzplan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80<br />

3.26 Nassi-Shneiderman-Diagramm . . . . . . . . . . . . . . . . . . . . . . . . . . . 82<br />

3.27 Jackson-Diagramm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83<br />

3.28 Warnier-Orr-Diagramm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84<br />

3.29 Pseudo-Code und Entscheidungstabelle . . . . . . . . . . . . . . . . . . . . . . 85<br />

3.30 Objektdiagramm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87<br />

3.31 <strong>Se</strong>quenzdiagramm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90<br />

3.32 Kollaborationsdiagramm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91<br />

3.33 Notation <strong>für</strong> Kardinalitäten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93<br />

3.34 Objekt-Beziehungsdiagramm . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94<br />

3.35 Entity-Relationship-Diagramm . . . . . . . . . . . . . . . . . . . . . . . . . . . 96<br />

3.36 NIAM-Informationsstruktur-Diagramm . . . . . . . . . . . . . . . . . . . . . . 97<br />

3.37 Generisches <strong>Se</strong>mantischesModell . . . . . . . . . . . . . . . . . . . . . . . . . 98<br />

3.38 UML-Klassendiagramm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99<br />

4.1 Anwendungsbereiche von <strong>Referenz</strong>modellen . . . . . . . . . . . . . . . . . . . 115<br />

4.2 Anwendungsbereiche von Metamodellen . . . . . . . . . . . . . . . . . . . . . . 131<br />

4.3 Metamodell und <strong>Referenz</strong>modelle . . . . . . . . . . . . . . . . . . . . . . . . . 133<br />

5.1 Zusammenhang zwischen den Begriffen „Gegenstand“, „Konzept“ und<br />

„Symbol“ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139<br />

5.2 NotationvonKnoten-undKantentypen . . . . . . . . . . . . . . . . . . . . . . 157<br />

5.3 Notation von Generalisierungen . . . . . . . . . . . . . . . . . . . . . . . . . . 157<br />

5.4 Notation von Generalisierungen und Aggregationen . . . . . . . . . . . . . . . . 158<br />

5.5 Notation von Kardinalitäten und Injektivitäten . . . . . . . . . . . . . . . . . . . 159<br />

5.6 Prädikate der GRAL-Bibliothek(Auswahl) . . . . . . . . . . . . . . . . . . . . . 160<br />

5.7 Funktionen der GRAL-Bibliothek(Auswahl) . . . . . . . . . . . . . . . . . . . . 162<br />

6.1 <strong>Referenz</strong>-<strong>Metaschema</strong> des Aufgabengliederungsparadigmas<br />

(Task Decomposition Paradigm, TDP) . . . . . . . . . . . . . . . . . . . . . . . 169<br />

6.2 Spezialisierung des <strong>Referenz</strong>-<strong>Metaschema</strong>s des Aufgabengliederungsparadigmas<br />

nach [Jordt / Gscheidle, (o.J.)] TDPJordtGscheidle . . . . . . . . . . . . . . 171<br />

6.3 <strong>Referenz</strong>-<strong>Metaschema</strong> des Stellengliederungsparadigmas<br />

(Position Decomposition Paradigm, PDP) . . . . . . . . . . . . . . . . . . . . . 173<br />

6.4 Spezialisierung des <strong>Referenz</strong>-<strong>Metaschema</strong>s des Stellengliederungsparadigmas<br />

<strong>für</strong> Abteilungsorganigramme (PDPDepartment) . . . . . . . . . . . . . . . . . . 175


Abbildungsverzeichnis xvii<br />

6.5 Spezialisierung des <strong>Referenz</strong>-<strong>Metaschema</strong>s des Stellengliederungsparadigmas<br />

<strong>für</strong> ARIS-Organigramme (PDPAris) . . . . . . . . . . . . . . . . . . . . . . . . 176<br />

6.6 <strong>Referenz</strong>-<strong>Metaschema</strong> des Komm<strong>uni</strong>kationsparadigmas<br />

(Comm<strong>uni</strong>cation Paradigm, CommP) . . . . . . . . . . . . . . . . . . . . . . . . 177<br />

6.7 <strong>Referenz</strong>-<strong>Metaschema</strong> des Datenflußparadigmas (Data Flow Paradigm, DFP) . . 180<br />

6.8 Spezialisierung des <strong>Referenz</strong>-<strong>Metaschema</strong>s des Datenflußparadigmas <strong>für</strong> Echtzeit-Datenflußdiagramme<br />

(DFPRTSA) . . . . . . . . . . . . . . . . . . . . . . . 184<br />

6.9 Spezialisierung des <strong>Referenz</strong>-<strong>Metaschema</strong>s des Datenflußparadigmas <strong>für</strong> Datenflußpläne<br />

(DFPFlowChart) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185<br />

6.10 Spezialisierung des <strong>Referenz</strong>-<strong>Metaschema</strong>s des Datenflußparadigmas <strong>für</strong> SADT-<br />

Aktivitätsdiagramme (DFPSADT) . . . . . . . . . . . . . . . . . . . . . . . . . 185<br />

6.11 Spezialisierung des <strong>Referenz</strong>-<strong>Metaschema</strong>s des Datenflußparadigmas <strong>für</strong> Anwendungsfalldiagramme<br />

(DFPUseCase) . . . . . . . . . . . . . . . . . . . . . . 186<br />

6.12 <strong>Referenz</strong>-<strong>Metaschema</strong> des Zustandsübergangsparadigmas,<br />

State Transition Paradigm, STP) . . . . . . . . . . . . . . . . . . . . . . . . . . 187<br />

6.13 KonfligierendeÜbergänge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188<br />

6.14 <strong>Referenz</strong>-<strong>Metaschema</strong> des Netzparadigmas (Net Paradigm, NP) . . . . . . . . . 193<br />

6.15 Spezialisierung des <strong>Referenz</strong>-<strong>Metaschema</strong>s des Netzparadigmas <strong>für</strong> Aktivitätsdiagramme<br />

(NPActivity) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195<br />

6.16 Spezialisierung des <strong>Referenz</strong>-<strong>Metaschema</strong>s des Netzparadigmas <strong>für</strong> Vorgangskettendiagramme<br />

(NPVKD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199<br />

6.17 Spezialisierung des <strong>Referenz</strong>-<strong>Metaschema</strong>s des Netzparadigmas <strong>für</strong> Petri-Netze<br />

(NPPetri) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 201<br />

6.18 Spezialisierung des <strong>Referenz</strong>-<strong>Metaschema</strong>s des Netzparadigmas <strong>für</strong> Vorgangsknotennetzpläne<br />

(NPVKN) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204<br />

6.19 <strong>Referenz</strong>-<strong>Metaschema</strong> des Kontrollflußparadigmas<br />

(Control Flow Paradigm,CP) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207<br />

6.20 <strong>Referenz</strong>-<strong>Metaschema</strong> des Objekt-Instanzparadigmas<br />

(Object Instance Paradigm, OIP) . . . . . . . . . . . . . . . . . . . . . . . . . . 210<br />

6.21 <strong>Referenz</strong>-<strong>Metaschema</strong> des Objekt-Interaktionsparadigmas<br />

(Interaction Paradigm, IAP) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212<br />

6.22 <strong>Referenz</strong>-<strong>Metaschema</strong> des Objekt-Beziehungsparadigmas<br />

(Object-Relationship Paradigm, ORP) . . . . . . . . . . . . . . . . . . . . . . . 215<br />

6.23 Spezialisierung des <strong>Referenz</strong>-<strong>Metaschema</strong>s des Objekt-Beziehungsparadigmas<br />

<strong>für</strong> Datenlexika (ORPDD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 217<br />

6.24 Spezialisierung des <strong>Referenz</strong>-<strong>Metaschema</strong>s des Objekt-Beziehungsparadigmas<br />

<strong>für</strong> Entity-Relationship-Diagramme (ORPER) . . . . . . . . . . . . . . . . . . . 219<br />

6.25 Spezialisierung des <strong>Referenz</strong>-<strong>Metaschema</strong>s des Objekt-Beziehungsparadigmas<br />

<strong>für</strong> Entity-Relationshipdiagramme nach [Chen, 1976] (ORPChen) . . . . . . . . 219


xviii Abbildungsverzeichnis<br />

6.26 Spezialisierung des <strong>Referenz</strong>-<strong>Metaschema</strong>s des Objekt-Beziehungsparadigmas<br />

<strong>für</strong> NIAM-Informationsstruktur-Diagramme (ORPNiam) . . . . . . . . . . . . . 220<br />

6.27 Spezialisierung des <strong>Referenz</strong>-<strong>Metaschema</strong>s des Objekt-Beziehungsparadigmas<br />

<strong>für</strong> Generische <strong>Se</strong>mantische Modelle (ORPGSM) . . . . . . . . . . . . . . . . . 221<br />

6.28 Spezialisierung des <strong>Referenz</strong>-<strong>Metaschema</strong>s des Objekt-Beziehungsparadigmas<br />

<strong>für</strong> UML-Klassendiagramme (ORPUML) . . . . . . . . . . . . . . . . . . . . . 223<br />

6.29 Gemeinsame Konzepte der Paradigmen . . . . . . . . . . . . . . . . . . . . . . 226<br />

6.30 Integriertes <strong>Referenz</strong>-<strong>Metaschema</strong> der Beschreibungsmittel <strong>für</strong> Organisationen<br />

und Softwaresysteme (RMS) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227<br />

7.1 Spezialisierung des integrierten <strong>Referenz</strong>-<strong>Metaschema</strong>s <strong>für</strong> die Beschreibungsmittel<br />

des ARIS-Ansatzes (ARIS) . . . . . . . . . . . . . . . . . . . . . . . . . . 239<br />

8.1 Spezialisierung des integrierten <strong>Referenz</strong>-<strong>Metaschema</strong>s <strong>für</strong> die Beschreibungsmittel<br />

der Unified Modeling Language (UML) . . . . . . . . . . . . . . . . . . . 245<br />

9.1 Spezialisierung des integrierten <strong>Referenz</strong>-<strong>Metaschema</strong>s <strong>für</strong> die Beschreibungsmittel<br />

zur Software-Evaluation (SET) . . . . . . . . . . . . . . . . . . . . . . . 251<br />

9.2 SET-KOGGE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254


1 Einführung und Zielsetzung<br />

Die Gestaltung von Organisationen und die Entwicklung von Softwaresystemen sind komplexe<br />

Aufgaben, die kaum ohne methodische Unterstützung durchgeführt werden können. Sowohl in<br />

der Organisationstechnik als auch in der Softwaretechnik existieren Verfahren und Hilfsmittel,<br />

die die Modellierung und Analyse von organisatorischen bzw. softwaretechnischen Zusammenhängen<br />

unterstützen. Diese Hilfsmittel weisen, sowohl in bezug auf die darzustellenden Beschreibungsinhalte<br />

als auch auf die zur Modellierung verwendeten Beschreibungsmittel, Techniken<br />

und Methoden, große Ähnlichkeiten auf.<br />

Die Organisationstechnik beschäftigt sich mit der Gestaltung und Realisierung von Organisationssystemen.<br />

Die Beschreibung von Organisationen bezieht sich sowohl auf die Einbindung der<br />

Organisation in das sie umgebende soziale System als auch auf die Modellierung der eigentlichen<br />

Organisationsstruktur, der Organisationsabläufe und der durch die Organisation bearbeiteten Daten<br />

und Objekte. Hierbei umfaßt die Strukturierung der Organisationen sowohl die Zerlegung der<br />

Organisationsaufgaben in Teilaufgaben als auch die Gliederung der Organisationseinheiten, die<br />

mit der Erledigung der Aufgaben betraut sind. Neben diesen statischen Organisationsaspekten<br />

sind auch die Organisationsprozesse, durch die die zeitlich/logische Reihenfolge der Aufgabenerledigung<br />

beschrieben wird, zu erfassen bzw. festzulegen. Diese Prozesse sind ebenfalls mit den<br />

von der Organisation benötigten bzw. erzeugten Objekten und Daten in Beziehung zu setzen.<br />

Beschreibungsinhalt der Softwaretechnik ist einerseits die Einbettung zu erstellender bzw. weiterzuentwickelnder<br />

Softwaresysteme in die sie umgebenden Systeme und andererseits die Modellierung<br />

des Softwaresystems selbst. Insbesondere bei der Entwicklung und Gestaltung von<br />

Informationssystemen ist hierbei auch die Einbindung des Softwaresystems in die umgebende<br />

Organisation zu beachten. Hierzu sind die durch das Softwaresystem zu unterstützenden Aufgaben<br />

und Prozesse sowie deren Zerlegung darzustellen und die Querbezüge zu den mit der<br />

Bearbeitung befaßten Organisationseinheiten zu beschreiben. Die Modellierung des eigentlichen<br />

Softwaresystems erfordert neben der Darstellung der Objekt- und Datenstrukturen auch die Beschreibung<br />

der Prozesse und des dynamischen Verhaltens der Software.<br />

Sowohl die Modellierung von Organisationen als auch von Softwaresystemen erfordert somit<br />

die Betrachtung von Aufgaben, Organisationseinheiten, Prozessen und Objektstrukturen sowie<br />

deren Querbezüge.<br />

Zur Erfassung und Darstellung dieser Aspekte von Organisationen und Softwaresystemen wurden<br />

in der Organisationstechnik und in der Softwaretechnik vielfältige Methoden und Techniken<br />

entwickelt. Unter Techniken werden Vorgehensweisen zur Erstellung solcher Modellierungen aus<br />

einzelnen Perspektiven verstanden. Die Techniken zur Organisations- und Softwaremodellierung<br />

betonen i. allg. Perspektiven, die sich auf die zuvor skizzierten Aspekte Aufgaben, Organisati-


2 Einführung und Zielsetzung<br />

onseinheiten, Organisations- bzw. Softwareprozesse und Objekt- und Datenstrukturen beziehen.<br />

Neben dem Vorgehen zur Modellierung werden in Techniken auch die zu verwendenden konkreten<br />

Beschreibungsmittel festgelegt, die durch graphische oder textuelle Symbole und Regeln<br />

zur korrekten Verwendung näher beschrieben sind. In Methoden, die grundsätzliche Denk- und<br />

Vorgehensweisen zur Modellierung widerspiegeln, werden diese Techniken geeignet zusammengefaßt.<br />

Durch Methoden wird festgelegt, in welcher Reihenfolge die Techniken zur Erreichung<br />

des Modellierungsziels angewandt werden und wie die Teilmodelle der einzelnen Techniken zueinander<br />

in Beziehung stehen. Die Anwendung von Beschreibungsmitteln, Techniken und Methoden<br />

zur Modellierung von Organisationen und Softwaresystemen wird durch softwarebasierte<br />

Werkzeuge unterstützt, die sowohl die Modellerstellung als auch die Dokumentation und Analyse<br />

der Modellierungsergebnisse ermöglichen.<br />

Methoden und Techniken<br />

Moderne Ansätze zur Organisations- und Softwaremodellierung betrachten Organisationen und<br />

Softwaresysteme aus unterschiedlichen Sichten. Solchemultiperspektivischen Betrachtungen<br />

heben jeweils einige Aspekte des zu modellierenden Systems hervor und blenden andere, aus der<br />

jeweiligen Sicht als weniger wichtig eingestufte Aspekte, aus. Die sichtenorientierte Modellierung<br />

ermöglicht die Strukturierung und Zerlegung komplexer Modelle in kleinere, überschaubarere<br />

Teilmodelle.<br />

Ausgehend von den Aspekten, die zur Modellierung von Organisationen und Softwaresystemen<br />

zu beschreiben sind, kann eine Aufteilung in Sichten auf Aufgaben (Aufgabensicht), auf Organisationseinheiten<br />

(Stellensicht), auf Prozesse (Prozeßsicht) und auf Objektstrukturen (Objektsicht)<br />

abgeleitet werden. Ähnliche Sichteneinteilungen (vgl. auch die Diskussion in Kapitel 3.1), bei<br />

denen in Abhängigkeit vom Modellierungsziel einzelne Sichten ausgeklammert werden oder andere<br />

Sichten durch weitere Aufgliederung stärker betont werden, finden sich z. B. auch in [Olle<br />

et al., 1991], [Gutzwiller, 1994], [Ebert / Engels, 1994], [Scheer, 1992], [Jablonski et al., 1997,<br />

S. 98ff] und [Partsch, 1998, S. 44]. Die Modellierung aus jeder dieser Sichten wird durch unterschiedliche<br />

Modellierungstechniken und Beschreibungsmittel unterstützt. Einen umfassenden<br />

Überblick über den zu modellierenden Sachverhalt bietet aber nur eine integrierte Beschreibung<br />

solcher sichtenspezifischer Teilmodelle.<br />

Durch die verschiedenen Methoden zur Modellierung von Organisationen und Softwaresystemen<br />

wird i. allg. eine dieser Sichten als zentraler Ausgangspunkt der Modellierung festgelegt. Die<br />

Teilmodelle der anderen Sichten ergänzen dieses zentrale Modell.<br />

Die Methoden der Organisationstechnik können grob in funktionsorientierte und prozeßorientierte<br />

Denkweisen zur Organisationsmodellierung unterschieden werden. Während in der (klassischen)<br />

funktionsorientierten Organisationsmodellierung, die den Prinzipien der Arbeitsteilung<br />

folgt (vgl. z. B. [Kosiol, 1976], [Nordsieck, 1972], [Smith, 1990]), die hierarchische Zerlegung<br />

der Aufgaben den Ausgangspunkt zur Festlegung der Organisationsstruktur und der Unternehmensprozesse<br />

bildet, geht die prozeßorientierte Organisationsmodellierung (vgl. z. B. [Gaitanides,<br />

1983], [Scheer, 1992], [Gaitanides et al., 1994a], [Eversheim, 1996], [Hammer / Champy,<br />

1996, 52ff], [Ferstl / Sinz, 1996]) von der Darstellung der Unternehmensprozesse aus, die die<br />

Grundlage zur Schaffung funktional zusammenhängender Organisationsstrukturen bildet.


Einführung und Zielsetzung 3<br />

Die grundlegenden Modellierungsmethoden der Softwaretechnik können in strukturierte und objektorientierte<br />

Denkweisen unterschieden werden. Bei der Modellierung nach der strukturierten<br />

Analyse (vgl. z. B. [DeMarco, 1978], [Gane / Sarson, 1979], [Ward / Mellor, 1985], [Yourdon,<br />

1989]) dominiert die prozeßorientierte Untersuchung des Softwaresystems durch die Modellierung<br />

der Aufgaben und Datenflußabhängigkeiten. Diese Modellierungen werden um Darstellungen<br />

der Informationsstrukturen und der Systemdynamik ergänzt. Objektorientierte Methoden<br />

(vgl. z. B. [Rumbaugh et al., 1991], [Jacobson et al., 1993], [Booch, 1994]) gehen von einer<br />

Systembetrachtung aus Sicht der Objekte aus, die sowohl durch ihre Datenstrukturen (Zustände)<br />

als auch durch ihr Verhalten (Dynamik) charakterisiert sind.<br />

Neuere Ansätze zur Organisationsmodellierung (vgl. z. B. [Jacobson et al., 1994], [Balzert,<br />

1998a, S. 721ff], [Rumbaugh et al., 1999]) kombinieren objektorientierte Methoden mit prozeßorientierten<br />

Methoden und führen Organisations- und Softwaremodellierung zusammen. Ausgehend<br />

von der Einbettung der Organisation in das sie umgebende Umfeld erfolgt eine anwendungsfallbezogene<br />

Beschreibung der Organisationsprozesse. Hier dominiert ebenfalls die Modellierung<br />

aus Prozeßsicht, die mit einem objektorientierten Fokus um die Darstellung der restlichen<br />

Sichten ergänzt wird.<br />

In diesen grundlegenden Modellierungsmethoden (vgl. hierzu auch Kapitel 2) werden Organisationen<br />

und Softwaresysteme i. allg. aus der Aufgabensicht, aus der Stellensicht, aus der Prozeßsicht<br />

und aus der Objektsicht betrachtet. Die Methoden unterscheiden sich in der Art und<br />

Weise, wie die Betrachtungen der einzelnen Sichten miteinander kombiniert werden. Bezogen<br />

auf die funktionsorientierten und prozeßorientierten Methoden zur Organisationsgestaltung bzw.<br />

auf die strukturierten oder objektorientierten Methoden zur Softwareentwicklung unterscheiden<br />

sich die Modellierungstechniken nur in der Bedeutung, die die einzelnen Sprachmittel innerhalb<br />

des Modellierungsprozesses einnehmen.<br />

Visuelle <strong>Modellierungssprachen</strong><br />

Die Methoden und Techniken der Organisations- und Softwaremodellierung bedienen sich zur<br />

Beschreibung der Modellierungsinhalte <strong>visuelle</strong>r <strong>Modellierungssprachen</strong>. Neben der Unterstützung<br />

bei der Erfassung und Dokumentation sind diese graphischen und textuellen Beschreibungsmittel<br />

auch wesentliche Hilfsmittel zur Komm<strong>uni</strong>kation bei der (Weiter-) Entwicklung von<br />

Organisationen und Softwaresystemen. Zentraler Betrachtungsgegenstand dieser Arbeit sind diese<br />

zur Organisations- und Softwaremodellierung verwendeten <strong>visuelle</strong>n Modellierungsprachen.<br />

Zur Darstellung von Organisationen und Softwaresystemen aus verschiedenen Sichten wurde<br />

sowohl in der Organisationstechnik als auch in der Softwaretechnik eine große Anzahl unterschiedlicher<br />

<strong>visuelle</strong>r Sprachen entwickelt. Zur Modellierung aus Aufgabensicht werden u. a.<br />

Funktionsbäume, Aufgabenstrukturbäume, Funktionsstrukturdiagramme und Aufgabengliederungspläne<br />

eingesetzt. Die Beschreibung von leitungs- und interaktionsbezogenen Zusammenhängen<br />

zwischen einzelnen Organisationseinheiten aus Stellensicht erfolgt z. B. durch Abteilungsgliederungspläne,<br />

Komm<strong>uni</strong>gramme, Kooperationsbilder, Organigramme, Organisationspläne<br />

oder Stellenpläne. Zur Beschreibung aus der Prozeßsicht werden neben vielen anderen<br />

Beschreibungsmittel auch Aktivitätsdiagramme, Datenflußdiagramme, Prozeßfolgen, Netzpläne,<br />

Petri-Netze oder Statecharts verwendet. Objektzusammenhänge werden aus Objektsicht z. B.


4 Einführung und Zielsetzung<br />

durch Objektdiagramme, Interaktionsdiagramme, Datenlexika, Entity-Relationshipdiagramme<br />

und Klassendiagramme beschrieben. Einen umfassenden Überblick der wichtigsten zur Modellierung<br />

eingesetzten Sprachen gibt auch Abbildung 3.3 auf <strong>Se</strong>ite 39.<br />

Diese Beschreibungsmittel teilen sich weiter in verschiedene Dialekte und Varianten auf. Zur<br />

Notation ähnlicher Sachverhalte werden unterschiedliche graphische oder textuelle Primitive<br />

verwendet. So werden beispielsweise Prozesse in Datenflußdiagrammen oder Aufgaben in Aufgabengliederungsplänen<br />

je nach Dialekt durch Ovale, Kreise, Rechtecke u. ä. beschrieben. Verschiedene<br />

Dialekte der Klassen- bzw. Entity-Relationshipdiagramme verwenden zur Darstellung<br />

der Objektklassen z. B. unterschiedlich untergliederte Rechtecke oder Wolkensymbole. Beziehungsklassen<br />

werden durch Linien oder Rautensymbole beschrieben. Einige <strong>Modellierungssprachen</strong><br />

schreiben auch die Anordnung der darzustellenden Konzepte vor. Organisationseinheiten<br />

werden z. B. in unterschiedlichen Organigrammdialekten in Blockdarstellung, in Kreisform, in<br />

Pyramidenform, in Satellitenform oder in Säulenform notiert. Varianten der Datenflußdiagramme<br />

wie z. B. SADT oder IDEF0 fordern eine stufenartig angeordnete Folge von Prozessen, während<br />

in klassischen Datenflußdiagrammen keine spezielle Anordnung gefordert wird. Zum Teil<br />

verfolgen ähnliche Beschreibungsmittel auch unterschiedliche Schwerpunktsetzungen in der Abbildung<br />

der dargestellten Konzepte. Prozeßfolgen werden beispielsweise in Ereignisgesteuerten<br />

Prozeßketten durch Prozesse und die durch sie bewirkten bzw. ihre Bearbeitung auslösenden Ereignisse<br />

beschrieben, während in der Darstellung durch Programmablaufpläne oder Aktivitätsdiagramme<br />

solche Ereignisse kaum beachtet werden. Konzeptionelle Unterschiede zwischen Varianten<br />

einzelner Beschreibungsmittel wirken sich auch auf die Ausdrucksfähigkeit der einzelnen<br />

Sprachen aus. So werden z. B. in Statecharts und erweiterten Entity-Relationshipdiagrammen<br />

Konzepte zur Strukturierung der Modelle angeboten, während diese in den ursprünglichen Formen<br />

der Automaten bzw. (klassischen) Entity-Relationshipdiagrammen fehlen.<br />

In den konkreten Methoden zur Organisations- und Softwaremodellierung werden zur Darstellung<br />

aus den verschiedenen Sichten einige Varianten der Beschreibungsmittel fest vereinbart. Als<br />

Vertreter der Methoden zur prozeßorientierten Organisationsmodellierung können beispielsweise<br />

die Methode der Architektur integrierter Informationssysteme (ARIS) [Scheer, 1992] und die<br />

Bonapart-Methode [Krallmann / Wood, 1998] genannt werden. Während ARIS die Prozeßdarstellung<br />

mittels Ereignisgesteuerter Prozeßketten in den Vordergrund stellt, basiert die Modellierung<br />

mit Bonapart eher auf einer datenflußorientierten Prozeßbeschreibung durch Bonapart-<br />

Prozeßmodelle. In beiden Methoden werden weiter Organigramme in unterschiedlichen Notationen<br />

zur Beschreibung der Organisationsstrukturen und Funktionsbäume bzw. Aufgabenstrukturbäume<br />

zur Darstellung von Aufgabenstrukturen verwendet. Die Objektmodellierung erfolgt<br />

in ARIS durch klassische Entity-Relationshipdiagramme und Attribut-Zuordnungsdiagramme.<br />

Bonapart verwendet eingeschränkte Formen der Klassendiagramme u. a. zur schematischen Beschreibung<br />

von Informations- und Organisationsstrukturen.<br />

In den Methoden der strukturierten Analyse sind ebenfalls datenflußorientierte Prozeßbeschreibungen<br />

zentral. In der ursprünglichen Form der strukturierten Analyse nach [DeMarco,<br />

1978] wurden einfache Datenflußdiagramme und Datenlexika verwendet. Spätere Erweiterungen<br />

[Ward / Mellor, 1985], [Yourdon, 1989] ergänzten die Datenflußdiagramme um Mittel zur Beschreibung<br />

von Kontrollstrukturen und fügen weitere Modellierungsprachen z. B. Nassi/Shneiderman-Diagramme,<br />

Programmablaufpläne und einfache Zustandsübergangsdiagramme zur Beschreibung<br />

der Systemdynamik hinzu. Die Mittel zur Datenmodellierung wurden um Entity-<br />

Relationshipdiagramme ergänzt.


Einführung und Zielsetzung 5<br />

Wesentliches Beschreibungsmittel der objektorientierten Methoden, wie z. B. der Object Modeling<br />

Technique (OMT) [Rumbaugh et al., 1991] oder der Booch-Methode [Booch, 1994]<br />

sind jeweils verschieden notierte Klassendiagramme. Zur Modellierung funktionaler Prozeßzusammenhänge<br />

verwendet OMT auch die aus der strukturierten Analyse entnommenen Datenflußdiagramme.<br />

Die Beschreibung der Systemdynamik erfolgt durch Ereignisflußdiagramme<br />

und Ereignispfaddiagramme bzw. Interaktions- und Kollaborationsdiagramme. Darüber hinaus<br />

werden zur Modellierung von Systemzuständen und deren Änderungen noch jeweils eigene<br />

Statechart-Varianten eingesetzt. Mit der Unified Modeling Language (UML) [Booch et al.,<br />

1999], [Rumbaugh et al., 1999] werden die verschiedenen Sprachmittel diverser objektorientierter<br />

Methoden zusammengeführt und quasi standardisiert. Diese Sammlung, der sowohl in Methoden<br />

zur Organisationsmodellierung als auch in Methoden zur Softwaremodellierung einsetzbaren<br />

<strong>visuelle</strong>n Sprachen, legt Notationen <strong>für</strong> Aktivitätsdiagramme, Anwendungsfalldiagramme,<br />

Kollaborationsdiagramme, Klassendiagramme, Objektdiagramme, <strong>Se</strong>quenzdiagramme und Zustandsübergangsdiagramme<br />

fest.<br />

Zusammenfassend kann festgestellt werden, daß zur Modellierung von Organisationen und Softwaresystemen<br />

sehr viele, unterschiedliche Beschreibungsmittel verwendet werden, die in den<br />

diversen Modellierungsmethoden häufig in eigenen Darstellungsdialekten und -varianten eingesetzt<br />

werden. Der Vergleich und die Einordnung der zur Modellierung verwendeten Beschreibungsmittel<br />

erfordert eine geeignete Strukturierung des Spektrums der <strong>visuelle</strong>n <strong>Modellierungssprachen</strong>.<br />

Entlang einer Klassifikation der Beschreibungsmittel können die Gemeinsamkeiten<br />

und Unterschiede der einzelnen Sprachen, ihrer Dialekte und Varianten aufgezeigt und vor dem<br />

Hintergrund konkreter Modellierungsaufgaben bewertet werden. Ebenso wird hierdurch die Einschätzung<br />

der Modellierungsmächtigkeit der verschiedenen Modellierungsmethoden entlang der<br />

verwendeten Beschreibungsmittel ermöglicht.<br />

Ein Ziel dieser Arbeit ist es, eine Klassifikation der <strong>visuelle</strong>n Modellierungsprachen,<br />

die zur Darstellung organisatorischer und softwaretechnischer Zusammenhänge<br />

verwendet werden, zu schaffen.<br />

Betrachtet man hierzu die verschiedenen Beschreibungsmittel unabhängig von ihrer konkreten<br />

Notation entlang der jeweils dargestellten Modellierungskonzepte, läßt sich die Vielfalt der Beschreibungsmittel<br />

auf wenige Beschreibungsparadigmen 1 reduzieren. Den Ausgangspunkt zur<br />

Festlegung dieser Paradigmen bilden die Konzepte und die hierzwischen vorliegenden Beziehungen,<br />

die durch die einzelnen Beschreibungsmittel herausgestellt werden.<br />

1 Der Paradigmenbegriff wird in dieser Arbeit in seiner ursprünglichen Form (Paradigma, griech. παρ ´αδειγµα:<br />

Beispiel, Vorbild, Muster) und nicht in seiner durch die Wissenschaftstheorie oder durch die Linguistik geprägten<br />

Verwendung genutzt. In der Wissenschaftstheorie werden in Paradigmen allgemein anerkannte Methoden,<br />

Annahmen und Aussagen einer Wissenschaft [Lehner et al., 1995, S. 23] zusammengefaßt. Paradigmen dienen<br />

hier zur Unterscheidung und Abgrenzung wissenschaftlicher Gemeinschaften oder Schulen, denen grundlegende<br />

Annahmen, Vorstellungen und Weltbilder gemeinsam sind (vgl. u. a. [Stegmüller, 1973], [Kuhn, 1979]).<br />

Paradigmen der Linguistik unterscheiden Wortklassen, die gleichen Deklinations- oder Konjugationsformen<br />

folgen [Bußmann, 1990]. Der Paradigmenbegriff, der dieser Arbeit zugrunde liegt, dient zur Klassifikation textueller<br />

und graphischer Sprachen. Die hier verwendeten Beschreibungsparadigmen dienen zur Gruppierung<br />

solcher <strong>visuelle</strong>r Sprachen, die einem gemeinsamen Beschreibungsmuster folgen.


6 Einführung und Zielsetzung<br />

In Kapitel 3.1 wird ein solches Klassifikationsschema entwickelt, das eine sprachunabhängige<br />

Untersuchung und Einführung der Beschreibungsmittel entlang weniger Grundformen ermöglicht<br />

und als Rahmen <strong>für</strong> die weiteren Betrachtungen der <strong>visuelle</strong>n <strong>Modellierungssprachen</strong> in<br />

dieser Arbeit dient.<br />

Werkzeuge<br />

Zur Modellierung und Analyse von Organisationen und der Entwicklung von Softwaresystemen<br />

werden viele Softwarewerkzeuge angeboten2 . Je nach unterstützter Modellierungsmethode stellen<br />

diese Werkzeuge u. a. mehr oder weniger integrierte Editoren zur Erfassung und Analyse von<br />

Darstellungen gemäß der in der Methode verwendeten Beschreibungstechniken bereit.<br />

Zur Modellierung von Organisationen und Geschäftsprozessen werden z. B. das ARIS Toolset<br />

3.0, (IDS Scheer AG, Saarbrücken) [IDS, 1995], [IDS, 1998], [Scheer, 1998] zur Unterstützung<br />

der ARIS-Methode und Professional Bonapart 2.3 (PRO UBIS GmbH, Berlin) [Krallmann<br />

/ Wood, 1998], [Pro Ubis, 1999a], [Pro Ubis, 1999b] zur Unterstützung der Bonapart-Methode<br />

angeboten. Beide Werkzeuge erlauben neben der prozeßorientierten Organisationsmodellierung<br />

auch die funktionsorientierte Modellierung. Neben den wesentlichen Beschreibungsmitteln der<br />

ARIS- und Bonapart-Methoden unterstützen diese Werkzeuge auch weitere Notationsformen.<br />

Unter anderem unterstützt das ARIS-Toolset die Verwendung einiger Beschreibungsmittel der<br />

Unified Modeling Language [Booch et al., 1999]. Zur Prozeßmodellierung können bei der Modellierung<br />

mit Professional Bonapart neben den datenflußartigen Prozeßmodellen auch Ereignisgesteuerte<br />

Prozeßketten verwendet werden.<br />

Die Methoden der strukturierten Analyse werden z. B. durch die Werkzeuge CASE/4/0 (microTOOL<br />

GmbH, Berlin) [Micro Tool, 1997], [Micro Tool, 1998] und Easy CASE Professional<br />

4.22 (Visible Systems Corporation, Boston) unterstützt. Diese Werkzeuge unterstützen<br />

diverse Dialekte der Datenflußdiagramme (u. a. [DeMarco, 1978], [Gane / Sarson, 1979],<br />

[Ward / Mellor, 1985], [Longworth / Nicholls, 1986] und [Yourdon, 1989]) und der Entity-<br />

Relationshipdiagramme (z. B. nach [Chen, 1976], [Martin/McClure, 1985b] und IDEF-IX [Menzel<br />

/ Mayer, 1998]).<br />

Die Werkzeuge der objektorientierten Modellierung stellen heute in unterschiedlicher Vollständigkeit<br />

die Beschreibungsmittel der Unified Modeling Language (UML) [Booch et al., 1999] bereit.<br />

So unterstützt beispielsweise ObjectiF (microTOOL GmbH, Berlin) die Modellierung mit<br />

Anwendungsfalldiagrammen, Klassendiagrammen, <strong>Se</strong>quenzdiagrammen und Zustandsdiagram-<br />

2 Einen umfangreichen, aber leider nicht mehr aktuellen Überblick zu Modelliergungswerkzeugenbietet [Balzert,<br />

1993]. Aktuelle (J<strong>uni</strong> 1999) Überblickslisten zu Modellierungswerkzeugen finden sich z. B. auf http://www.<br />

vtt.fi/tte/staff/ojp/process.htm (Tools for Process Workflow Modeling and Simulation), auf http:<br />

//pwp.starnetinc.com/larryg/process.html (Process Modeling Tools), auf http://www.methodstools.com/tools/modeling.html<br />

(Graphical Modeling Tools), auf http://www.qucis.queensu.ca/<br />

Software-Engineering/case.html (CASE Tool Information) und auf http://www.rhein-neckar.de/<br />

cetus/oo ooa ood tools.html (Architecture and Design: Object-Oriented Analysis & Design Tools).<br />

Einen groben Überblick über objektorientierte Modellierungswerkzeuge bzw. UML-Werkzeuge bieten auch<br />

[Balzert / Balzert, 1994], [Versteegen / Versteegen, 1998], [Hunt, 1999] und http://www.jeckle.de/<br />

umltools.htm (3.1.2000). Weitere Werkzeuge zur Organisations- und Softwaremodellierung werden auch auf<br />

den CD-Roms [Balzert, 1996b] und [Balzert, 1998b] vorgestellt.


Einführung und Zielsetzung 7<br />

men. Die Object Engineering Workbench, OEW 3.0.3 (Innovative Software GmbH, Frankfurt)<br />

[ISG, 1999] und Rational Rose 98i (Rational Software Corporation, Santa Clara) bieten darüber<br />

hinaus auch die Modellierung durch Aktivitätsdiagramme und Kollaborationsdiagramme.<br />

Neben diesen Werkzeugen, die einzelne Modellierungsmethoden in evtl. unterschiedlichen Notationsformen<br />

unterstützen, erlaubt das Werkzeug System Architect 2001 (Popkin Software, New<br />

York) sowohl die Organisationsmodellierung mit funktions- und prozeßorientierten Methoden als<br />

auch die Softwaremodellierung mit strukturierten und objektorientierten Methoden. Aufgrund<br />

der Anlage als Multi-Methoden Werkzeug wird durch den System Architect 2001 ein Großteil<br />

der wesentlichen Beschreibungsmittel und -dialekte unterstützt.<br />

Generische Ansätze zur Erstellung von Modellierungwerkzeugen werden in den Meta-CASE-<br />

Werkzeugen KOGGE (Institut <strong>für</strong> Softwaretechnik, Koblenz) [Ebert et al., 1997b], [Kölzer / Uhe,<br />

1997], [Ebert et al., 1999b] und MetaEdit+ (MetaCase Consulting, Jyväskylä) [Kelly et al., 1996]<br />

verfolgt. Die Modellierung von Organisationen und Softwaresystemen wird z. B. durch KOGGE-<br />

Werkzeuge u. a. zur Erstellung von Aufgabengliederungsplänen, Organigrammen, Datenflußdiagrammen,<br />

Statecharts und Klassendiagrammen in verschiedenen Notationen unterstützt. Instanzen<br />

von MetaEdit+ liegen <strong>für</strong> die Modellierung sowohl entlang der wesentlichen Methoden der<br />

strukturierten und objektorientierten Softwareentwicklung (u. a. durch Datenflußdiagramme, Anwendungsfalldiagramme,<br />

Statecharts, Aktivitätsdiagramme und Klassendiagramme) als auch zur<br />

Geschäftsprozeßmodellierung (u. a. durch Prozeßmodelle und Prozeßmatrizen) vor.<br />

Weitere Werkzeuge wie beispielsweise Neptun/NetCase (Institut <strong>für</strong> Softwaretechnik, Koblenz)<br />

[Simon et al., 1997], [Marx, 1998] kombinieren Ansätze der objektorientierten Modellierung mit<br />

Petri-Netzen zur Modellierung von Workflows. Ebenfalls basieren Werkzeuge zur Projektplanung<br />

wie z. B. MS Project (Microsoft Corporation, Redmond) [Staff, 1996], [Microsoft, 1998]<br />

auf Beschreibungstechniken zur Prozeßmodellierung (Balkendiagramme und Vorgangsknotennetzpläne),<br />

die um geeignete Analysetechniken ergänzt wurden.<br />

Graphische Werkzeuge wie z. B. TGif (William Chia-Wei Cheng) oder Visio (Visio Corporation,<br />

<strong>Se</strong>attle) bieten in der Regel keine Methodenunterstützung. Hier werden lediglich graphische<br />

Primitive (Linien, Rechtecke, Kreise, Polygone etc.) oder Symbole aus (erweiterbaren) Symbolbibliotheken<br />

angeboten, die „geeignet“ durch den Benutzer methoden- und technikkonform zu<br />

kombinieren sind.<br />

Integrierte <strong>Referenz</strong>-<strong>Metaschema</strong>ta<br />

Die Methodenunterstützung der Modellierungswerkzeuge ermöglicht die Erstellung syntaktisch<br />

korrekter Modelle im Sinn der gewählten Methoden und Techniken. Die Erkennung syntaktisch<br />

korrekter bzw. fehlerhafter Modelle und die Unterstützung eines konkreten Modellierungsvorgehens<br />

setzt eine formale Beschreibung der Modellierungsmethode voraus. Hierzu werden Metamodelle<br />

verwendet, die die Eigenschaften der zur Modellierung verwendeten Modellierungskonzepte,<br />

deren Repräsentationsformen und deren Verwendung spezifizieren. Metamodelle umfassen<br />

Metaaktivtitätsmodelle zur Beschreibung des Modellierungvorgehens und <strong>Metaschema</strong>ta<br />

zur Beschreibung der abstrakten Syntax der hierzu verwendeten Beschreibungsmittel (vgl. auch<br />

die Diskussion des Metamodellbegriffs in Kapitel 4.3).


8 Einführung und Zielsetzung<br />

<strong>Metaschema</strong>ta zu Modellierungsmethoden und -techniken spezifizieren die syntaktische Korrektheit<br />

der Modelle und definieren die Repository-Strukturen der Modellierungswerkzeuge. Sie<br />

legen die Modellierungskonzepte der verwendeten <strong>visuelle</strong>n Sprachen und die hierzwischen erlaubten<br />

Beziehungen fest.<br />

Sowohl Modelle der Organisationstechnik als auch Modelle der Softwaretechnik bestehen aufgrund<br />

der multiperspektivischen Modellierungsansätze aus Teilmodellen mehrerer Sichten, die<br />

durch verschiedene Beschreibungsmittel notiert sind. Diese Teilmodelle müssen zueinander konsistent<br />

sein. So spiegeln beispielsweise Aufgabengliederungspläne die Verfeinerungsstruktur der<br />

Prozesse in Datenflußdiagrammen wider und Entity-Relationshipdiagramme oder Klassendiagramme<br />

müssen mit den Daten- und Objektbezügen in Prozeßdarstellung z. B. durch Ereignisgesteuerte<br />

Prozeßketten oder durch Datenflußdiagramme verträglich sein.<br />

Die <strong>Metaschema</strong>ta der Modellierungsmethoden beschreiben daher neben der abstrakten Syntax<br />

der jeweils verwendeten Beschreibungstechniken auch die Querbezüge zwischen den Konzepten<br />

der verschiedenen <strong>Modellierungssprachen</strong>. Sie definieren ein integrieres <strong>Metaschema</strong> der jeweils<br />

in der Methode zusammengefaßten <strong>visuelle</strong>n <strong>Modellierungssprachen</strong>.<br />

Für die meisten Modellierungsmethoden wurden in den letzten Jahren <strong>Metaschema</strong>ta3 entwickelt.<br />

<strong>Metaschema</strong>ta der strukturierten Analyse wurden z. B. in [Verhoef et al., 1991], [Färberböck<br />

et al., 1991] und beschränkt auf Datenflußdiagramme in [Drüke, 1996] vorgestellt. [Süttenbach/Ebert,<br />

1997] beschreiben ein Metamodell der Booch-Methode [Booch, 1994] und [Ebert<br />

/ Süttenbach, 1997a] eines der OMT-Methode nach [Rumbaugh et al., 1991]. Weitere <strong>Metaschema</strong>ta<br />

objektorientierter Methoden wurden auch in [Goor et al., 1992] und [Strahringer, 1996]<br />

vorgestellt. Während diese <strong>Metaschema</strong>ta i. allg. nicht von den Autoren der Methoden, sondern<br />

deutlich später, nach Vorstellung der jeweiligen Methoden erstellt wurden, werden neuere <strong>Modellierungssprachen</strong><br />

wie z. B. die Unified Modeling Language (UML) [OMG, 1999] direkt entlang<br />

ihrer <strong>Metaschema</strong>ta eingeführt.<br />

Diese <strong>Metaschema</strong>ta beziehen sich jedoch nur auf die konkreten, in den einzelnen Modellierungsmethoden<br />

bzw. in konkreten Werkzeugen verwendeten Beschreibungsmittel. Ein weiter<br />

gefaßtes, möglichst viele <strong>visuelle</strong> <strong>Modellierungssprachen</strong> umfassendes, integriertes <strong>Metaschema</strong><br />

existiert nicht. Umfassende <strong>Metaschema</strong>ta wie beispielsweise das UML-<strong>Metaschema</strong> [OMG,<br />

1999] betrachteten ausschließlich die Beschreibungsmittel verschiedener Sichten auf Organisationen<br />

und Softwaresysteme, integrieren diese Teil-Metaschemta aber nicht. Im <strong>Metaschema</strong> des<br />

ARIS-Ansatzes [Scheer, 1992] findet eine leichte Integration der <strong>Metaschema</strong>ta einzelner Beschreibungsmittel<br />

auf rein syntaktischer Ebene statt. Konsistenzbedingungen, die Teilmodelle<br />

unterschiedlicher Beschreibungsmittel miteinander synchronisieren, werden jedoch nicht formalisiert.<br />

Ein weitgehend integriertes <strong>Metaschema</strong> der <strong>visuelle</strong>n <strong>Modellierungssprachen</strong> bildet eine unabhängige<br />

Basis <strong>für</strong> den Vergleich und die Einordnung unterschiedlicher Modellierungsmethoden<br />

und -werkzeuge. Da es von konkreten Modellierungsmethoden abstrahiert und diverse Beschreibungsmittel<br />

konzeptionell integriert, legt es eine methodenunabhängige Terminologie der Modellierungsmittel<br />

fest und eignet sich auch als methodenunabhängiges Schulungsmittel. Ebenfalls<br />

beschreibt es eine generelle Repository-Struktur <strong>für</strong> Modellierungswerkzeuge und könnte daher<br />

3 Einige Autoren verwenden hier<strong>für</strong> auch den allgemeineren Begriff Metamodell, betrachten jedoch auschließlich<br />

syntaktische Aspekte der Methoden ohne Berücksichtigung des Modellierungsvorgehens.


Einführung und Zielsetzung 9<br />

sowohl zur Entwicklung weiterer Modellierungswerkzeuge als auch zur Definition eines generellen<br />

Austauschformats zwischen verschiedenen Modellierungswerkzeugen genutzt werden.<br />

Arbeiten im Bereich der Metamodellierung <strong>für</strong> CASE- und Reengineering-Werkzeuge haben jedoch<br />

gezeigt (vgl. z. B. [Ernst, 1997], [Ebert et al., 1999a]), daß es aufgrund der Heterogenität<br />

der hier abzubildenden Domänen nicht möglich ist, ein solches, allgemeines <strong>Metaschema</strong>, das alle<br />

bekannten <strong>visuelle</strong>n <strong>Modellierungssprachen</strong> umfaßt, zu entwickeln. Das auf den ersten Blick<br />

recht umfangreiche <strong>Metaschema</strong> der Unified Modeling Language (UML) [OMG, 1999] bildet<br />

trotz Einschränkung auf wenige Beschreibungsmittel auch über die UML-Sprachen hinaus weitere<br />

Modellierungsmittel ab. So enthält der Teil des <strong>Metaschema</strong>s <strong>für</strong> Aktivitätsdiagramme auch<br />

Komponenten zur Abbildung von Datenflußdiagrammen und der Teil zur Darstellung von Klassendiagrammen<br />

ermöglicht auch die Repräsentation von Entity-Relationshipdiagrammen und<br />

Datenlexika. Die UML, die sowohl zur Modellierung von Organisationen als auch zur Modellierung<br />

von Softwaresystemen eingesetzt werden soll, umfaßt aber z. B. keine Notationen der<br />

Stellensicht. Mittel zur Beschreibung von Organigrammen oder Stellenplänen sind dementsprechend<br />

im UML-Metamodell nicht enthalten. Ebenso sieht die UML keine Beschreibungsmittel<br />

zur Darstellung harter Echtzeit-Anforderungen zur Modellierung von Echtzeit-Systemen bereit.<br />

Auch zu einem solchen, umfassenden <strong>Metaschema</strong> sind immer Beschreibungskonzepte denkbar,<br />

die nicht in ihm enthalten sind.<br />

Anstelle eines allumfassenden <strong>Metaschema</strong>s kann jedoch ein <strong>Referenz</strong>modell entwickelt werden.<br />

<strong>Referenz</strong>modelle (vgl. zur Diskussion des <strong>Referenz</strong>modellbegriffs auch Kapitel 4.2) sind ausgewiesene<br />

Modelle, die die charakteristischen Eigenschaften einer Modelldomäne allgemeingültig<br />

beschreiben. Spezielle Modelle <strong>für</strong> konkrete Modellierungsaufgaben erhält man durch Übernahme<br />

und ggfs. Anpassung des <strong>Referenz</strong>modells.<br />

Das integrierte <strong>Referenz</strong>-<strong>Metaschema</strong> <strong>für</strong> <strong>visuelle</strong> <strong>Modellierungssprachen</strong> umfaßt die wesentlichen<br />

Konzepte der zur Modellierung von Organisationen und Softwaresystemen verwendeten<br />

Beschreibungsmittel und deren Zusammenhänge. Dieses <strong>Referenz</strong>-<strong>Metaschema</strong> ist so anzulegen,<br />

daß es mit möglichst geringem Aufwand an die Anforderungen spezieller <strong>Metaschema</strong>ta angepaßt<br />

werden kann. Ein solches <strong>Referenz</strong>-<strong>Metaschema</strong> wird in Kapitel 6 definiert und in Teil III<br />

durch Anwendung zur Methodenbeschreibung und zum Werkzeugbau validiert.<br />

Ziel dieser Arbeit ist die Entwicklung<br />

¯ eines integrierten <strong>Metaschema</strong>s der <strong>visuelle</strong>n <strong>Modellierungssprachen</strong> <strong>für</strong><br />

Organisationen und Softwaresysteme, das die konzeptionellen Grundlagen<br />

und Zusammenhänge dieser Beschreibungsmittel formalisiert, und<br />

¯ als <strong>Referenz</strong> u. a. zur Auswahl und Einordnung von <strong>visuelle</strong>n Modellierungsprachen<br />

in Modellierungsmethoden und zur Entwicklung von Modellierungswerkzeugen<br />

dient.


10 Einführung und Zielsetzung<br />

Übersicht über die nachfolgenden Kapitel<br />

Die Entwicklung des <strong>Referenz</strong>metaschemas <strong>für</strong> <strong>visuelle</strong> <strong>Modellierungssprachen</strong> ist in drei größere<br />

Teile gegliedert.<br />

Teil I schafft die Grundlagen zur Herleitung des <strong>Referenz</strong>-<strong>Metaschema</strong>s. In Kapitel 2 werden<br />

hierzu die Gemeinsamkeiten von Organisations- und Softwaremodellierungen in bezug auf Vorgehensweise<br />

und Beschreibungsmittel herausgestellt. Das Klassifikationsschema zur Einordnung<br />

der <strong>visuelle</strong>n <strong>Modellierungssprachen</strong> wird in Kapitel 3 hergeleitet. Hierzu werden grundlegende<br />

Beschreibungsparadigmen identifiziert. Entlang dieser Paradigmen werden die verschiedenen<br />

Beschreibungsmittel anhand ihrer konkreten Notation eingeführt und Anforderungen an das<br />

<strong>Referenz</strong>-<strong>Metaschema</strong> formuliert. Als durchgängige Beispiele dienen hierzu Teilmodelle zur Beschreibung<br />

der Organisation Krankenhaus. In Kapitel 4 wird das in Teil II entwickelte <strong>Referenz</strong>-<br />

<strong>Metaschema</strong> als Modell, als Metamodell und als <strong>Referenz</strong>modell eingeordnet. Dieses Kapitel<br />

enthält auch die Abgrenzung zu vergleichbaren Ansätzen.<br />

Die Herleitung des <strong>Referenz</strong>-<strong>Metaschema</strong>s erfolgt in Teil II. Kapitel 5 führt in die graphbasierte<br />

Konzeptmodellierung mit dem hierzu verwendeten EER/GRAL-Ansatz ein. Entlang des<br />

in Kapitel 3 entwickelten Klassifikationsschemas wird in Kapitel 6 das <strong>Referenz</strong>-<strong>Metaschema</strong><br />

hergeleitet. Hierzu werden zunächst einzelne <strong>Referenz</strong>-<strong>Metaschema</strong>ta der grundlegenden <strong>visuelle</strong>n<br />

<strong>Modellierungssprachen</strong> erstellt und zur Metamodellierung verschiedener konkreter Beschreibungsformen<br />

dieser Paradigmen angewandt. Anschließend erfolgt die Zusammenfassung dieser<br />

Teilschemata zum integrierten <strong>Referenz</strong>-<strong>Metaschema</strong> <strong>für</strong> <strong>visuelle</strong> <strong>Modellierungssprachen</strong> der<br />

Organisations- und Softwaretechnik.<br />

Teil III umfaßt die Validierung des integrierten <strong>Referenz</strong>-<strong>Metaschema</strong>s. Hierzu wird exemplarisch<br />

aus dem integrierten <strong>Referenz</strong>-<strong>Metaschema</strong> das <strong>Metaschema</strong> der Beschreibungsmittel des<br />

ARIS-Ansatzes (vgl. Kapitel 7) und das <strong>Metaschema</strong> der Beschreibungsmittel der Unified Modeling<br />

Language (vgl. Kapitel 8) abgeleitet. Die Anwendung des <strong>Referenz</strong>-<strong>Metaschema</strong>s zur<br />

Entwicklung von Modellierungswerkzeugen nach dem KOGGE-Ansatz wird in Kapitel 9 fallstudienartig<br />

<strong>für</strong> ein Werkzeug zur Unterstützung der Evaluation von Softwaresystemen nachgewiesen.<br />

Kapitel 10 umfaßt eine kurze Zusammenfassung der Arbeit und schließt mit einem Ausblick ab.<br />

Der Anhang enthält eine Zusammenfassung der Formalisierung des <strong>Referenz</strong>-<strong>Metaschema</strong>s und<br />

einen graphisches Glossar der grundlegenden Begriffe des <strong>Referenz</strong>-<strong>Metaschema</strong>s.


Teil I<br />

Grundlagen und Einordnung<br />

Ein Ziel dieser Arbeit ist die Klassifikation und Metamodellierung der zur Beschreibung von<br />

Organisationen und Softwaresystemen eingesetzten <strong>visuelle</strong>n <strong>Modellierungssprachen</strong>. Kapitel 2<br />

skizziert die Gemeinsamkeiten und Überschneidungen der zur Organisations- und zur Softwaremodellierung<br />

eingesetzten Beschreibungstechniken entlang der hierzu verwendeten Vorgehensmodelle<br />

und motiviert somit die integrierte Betrachtung der Beschreibungsmittel der<br />

Organisations- und Softwaretechnik.<br />

Ein Klassifikationsschema zur Einordnung der <strong>visuelle</strong>n <strong>Modellierungssprachen</strong> wird in Kapitel<br />

3 entwickelt. Die Beschreibungsmittel zur Modellierung von Organisationen und Softwaresystemen<br />

werden auf zehn Paradigmen zurückgeführt, entlang derer die diversen Sprachen in ihren<br />

konkreten Notationen eingeführt werden.<br />

Die Darstellung und Klassifikation der einzelen Beschreibungsmittel erfolgt in Teil II durch Modelle,<br />

die die wesentlichen Eigenschaften der <strong>visuelle</strong>n Sprachen der einzelnen Paradigmen herausstellen.<br />

Diesen Modellen wird einerseits <strong>Referenz</strong>charakter zugesprochen, da sie leicht zu<br />

speziellen Modellen konkreter Beschreibungsformen erweitert oder eingeschränkt werden können.<br />

Da diese Modelle andererseits auch Modelle von Modellierungsmitteln darstellen, sind sie<br />

auch als Metamodelle aufzufassen. In Kapitel 4 erfolgt daher die Einordung des im folgenden<br />

entwickelten <strong>Referenz</strong>-<strong>Metaschema</strong>s der <strong>visuelle</strong>n <strong>Modellierungssprachen</strong> der Organisationsund<br />

Softwaretechnik als Modell, als <strong>Referenz</strong>modell und als Metamodell.


2 Organisationen und Softwaresysteme<br />

Die Modellierung von Organisationen und von Softwaresystemen weist vielfältige Gemeinsamkeiten<br />

auf. In beiden Bereichen werden strukturelle und dynamische Zusammenhänge näher beschrieben.<br />

Hierbei werden ähnliche Vorgehensmodelle verfolgt und gleichartige graphische und<br />

textuelle Beschreibungsmittel eingesetzt.<br />

Im folgenden Kapitel werden diese Gemeinsamkeiten herausgestellt. Ausgehend von einer Eingrenzung<br />

der Begriffe „Organisationstechnik“ und „Softwaretechnik“ werden hierzu die in beiden<br />

Bereichen verwendeten Vorgehensmodelle, Methoden und Beschreibungsmittel isoliert skizziert.<br />

Anschließend werden die Gemeinsamkeiten und Querbezüge der Organisationsmodellierung<br />

und Softwaremodellierung herausgestellt.<br />

2.1 Modellierung von Organisationen<br />

Mit Organisation werden umgangssprachlich Institutionen wie z. B. Behörden, Industrie- und<br />

Handwerksbetriebe, Universitäten, Krankenhäuser und Vereine bezeichnet. In der Organisationslehre<br />

sind im wesentlichen zwei unterschiedliche Begriffsbildungen zu finden, die den Organisationsbegriff<br />

auf das organisierte System als Ganzes (institutionaler Organisationsbegriff)<br />

oder auf das Regelwerk zur Organisation des Systems (strukturaler oder instrumentaler Organisationsbegriff)<br />

beziehen.<br />

Institutionaler Organisationsbegriff<br />

Der umgangssprachlichen Verwendung folgt der institutionale Organisationsbegriff. DerBegriff<br />

Organisation wird hierbei als allgemeiner Oberbegriff <strong>für</strong> komplexe, soziale Systeme aufgefaßt,<br />

die durch die Interaktion mehrerer Menschen geprägt sind. Diese von der Soziologie<br />

geprägte Begriffsbildung ist vor allem in der angelsächsischen Organisationslehre verbreitet.<br />

[Leavitt, 1965] konkretisiert diesen Organisationsbegriff durch vier Systemvariablen. Organisationen<br />

werden von ihm als komplexe Systeme aufgefaßt, die mindestens durch die Variablen<br />

Aufgabe, Person/Akteur, Technik und Struktur charakterisiert sind. Die Systemvariable Aufgabe<br />

umfaßt hierbei alle Tätigkeiten der Organisation einschließlich deren Zerlegung in Teilaufgaben.<br />

Mitglieder der Organisation wie auch die von den Aktivitäten der Organisation betroffenen Kunden<br />

etc. werden durch die Systemvariable Person/Akteur beschrieben. Insbesondere umfaßt diese<br />

Variable auch die Qualifikation der Mitarbeiter. Die Systemvariable Technik faßt alle Hilfsmittel<br />

wie z. B. Maschinen und Computersysteme zusammen, die zur Aufgabenerledigung eingesetzt


14 Organisationen und Softwaresysteme<br />

werden. Durch die Systemvariable Struktur werden die Aktivitäten der Organisationsmitglieder<br />

gesteuert. Die Struktur einer Organisation kann als eine Sammlung von Regeln zur Koordination<br />

des Verhaltens der Organisationsmitglieder zur Aufgabenerfüllung aufgefaßt werden. Hierunter<br />

fallen z. B. Regeln zur Komm<strong>uni</strong>kation zwischen den Mitgliedern oder Festlegungen konkreter<br />

Arbeitsabläufe [Kieser / Kubicek, 1992, S. 16ff]. In [Leavitt / Bahrami, 1988, S. 246ff] wird<br />

als zusätzliche Systemvariable noch die Umwelt ergänzt, von der die betrachtete Organisation<br />

abzugrenzen ist.<br />

Aus soziologischer Sicht versteht [Mayntz, 1985] unter Organisation soziale Gebilde, die auf<br />

die zielgerichtete Erfüllung umrissener Aufgaben ausgerichtet sind. Nach dieser Begriffsbildung<br />

sind Organisationen durch Angabe bzw. Festlegung ihrer Mitglieder deutlich von ihrer Systemumgebung<br />

abgegrenzt. Merkmale dieser Begriffsbildungen werden von [Kieser / Kubicek, 1992,<br />

S. 4ff] zusammengefaßt: Unter Organisation werden solche „soziale[n] Gebilde“ verstanden,<br />

„die dauerhaft ein Ziel verfolgen und eine formale Struktur aufweisen, mit deren Hilfe Aktivitäten<br />

der Mitglieder auf das verfolgte Ziel ausgerichtet werden sollen“.<br />

Einen allgemeineren institutionalen Organisationsbegriff führen [Falkenberg et al., 1998, S. 84]<br />

ein. Beliebige Zusammenfassungen von (nicht notwendig menschlichen) Akteuren und Gegenständen<br />

werden hier als Organisationen aufgefaßt. Wesentlich <strong>für</strong> den Organisationsbegriff nach<br />

[Falkenberg et al., 1998] ist die Interaktion zwischen den Akteuren, die zum Funktionieren der<br />

Organisation allgemein akzeptierten Regeln genügt. Der Zusammenhang zwischen den Akteuren<br />

einer Organisation kann durch ein gemeinsames Ziel festgelegt sein. Im Gegensatz zu [Mayntz,<br />

1985] und [Kieser / Kubicek, 1992] kann aber dieser auch unabhängig von einem Organisationsziel,<br />

beliebig formuliert sein. Diese Begriffsbildung erscheint aber zu weit gefaßt, da die<br />

Aktivitäten der Organisationsmitglieder auf ein gemeinsam akzeptiertes Ziel (vgl. zu Organisationszielen<br />

auch [Kieser / Kubicek, 1992, S. 5ff]) ausgerichtet sind. Die Zielerreichung determiniert<br />

somit auch die Interaktion der Organisationsmitglieder, so daß die Zielorientierung auch als<br />

wesentliches Charakteristikum einer Organisation betrachtet werden muß.<br />

Strukturaler Organisationsbegriff<br />

Eine Begriffsauffassung, die die Strukturkomponente sozialer Systeme in den Mittelpunkt der<br />

Betrachtung rückt, wird durch den strukturalen oder instrumentalen Organisationsbegriff vertreten.<br />

Hiernach wird die Organisation als ein System formaler Regeln aufgefaßt, das als Instrument<br />

(griech.: organon) zur Steuerung des sozialen Systems dient (vgl. [Hoffmann, 1980]).<br />

Dieser Organisationsbegriff wird vorallem durch die deutschsprachige Organisationslehre vertreten.<br />

So versteht [Nordsieck, 1962] in Analogie zur Verfassung eines Staates die Organisation einer<br />

Unternehmung als ein auf Dauer angelegtes „Gefüge einer Vielzahl von Regelungen“. Diese Regeln<br />

stellen das Zusammenwirken des organisierten Systems sicher, das als eine „mit Hilfsmitteln<br />

ausgestattete Gemeinschaft aller Arbeitskräfte, die zur Erfüllung der Betriebsaufgabe zusammenwirken“<br />

[Nordsieck, 1972] charakterisiert ist. Die Notwendigkeit der Abgrenzung zwischen<br />

dem organisierten System (hier Betrieb) und seiner Organisation begründet [Nordsieck, 1972]<br />

dadurch, daß er den Betrieb als materiell, gegenständlich auffaßt, während das ihn steuernde Regelsystem<br />

abstrakt, nicht gegenständlich ist. Insbesondere gehören hiernach die im Unternehmen<br />

tätigen Personen nicht zur Organisation wohl aber zum organisierten System.


2.1 Modellierung von Organisationen 15<br />

Die Bestimmung des Organisationsbegriffs bei [Kosiol, 1976] folgt ebenfalls der instrumentalen<br />

Auffassung und stellt so die Struktur des sozialen Systems als wesentlich heraus. Kosiol<br />

vertritt darüber hinaus einen funktionalen Organisationsbegriff. Organisation wird hier als das<br />

(technische) Handeln der Menschen zur „dauerhafte[n], integrative[n] Strukturierung von Gefügesystemen“<br />

[Kosiol, 1976, S. 5] aufgefaßt. Dieser funktionalen Begriffsauffassung folgt auch<br />

die Gesellschaft <strong>für</strong> Organisation e. V., die Organisation als „ganzheitliches Gestalten der Beziehungen<br />

zwischen Aufgaben, Menschen, Sachmitteln und Informationen in sozialen Systemen“<br />

[Büchli / Chrobok, 1997, S. 103] auffaßt. Im Gegensatz zu Nordsiecks Begriffsbildung, die eher<br />

das in einem Regelsystem vorliegende Ergebnis eines Strukturierungsprozesses betont, stellen<br />

diese Begriffsbildungen auch die zielgerichtete Tätigkeit zur Bildung dieser Strukturen heraus.<br />

Wie [Nordsieck, 1962] und [Kosiol, 1976] bezieht auch [Grochla, 1982] den Organisationsbegriff<br />

auf Regelsysteme zur Steuerung und Ordnung von Institutionen. Ausgangspunkt seiner Überlegungen<br />

bilden sozio-technische Systeme [Grochla, 1978, S. 8ff]. Während bei der Betrachtung<br />

sozialer Systeme in erster Linie die Interaktion mehrerer Individuen betont wird, werden bei der<br />

Untersuchung sozio-technischer Systeme auch die (technischen) Hilfsmittel einbezogen, die zur<br />

Leistungserbringung genutzt werden. Werden zusätzlich die Hilfsmittel der Informationstechnik<br />

in den Vordergrund gestellt, spricht man auch von sozio-informationstechnischen Systemen [Euler,<br />

1989], [Ebert et al., 1992, S. 53]. Sozio- (informations-) technische Systeme sind definiert<br />

als „eine Menge von in Beziehung stehenden Menschen und Maschinen, die unter bestimmten<br />

Bedingungen nach festgelegten Regeln bestimmte Aufgaben erfüllen“ [Grochla, 1978, S. 9]. Aus<br />

systemtheoretischer Sicht stellt Grochla hier die Verhaltensweisen und Interaktionen der Elemente<br />

des Systems als das systembildende Kriterium heraus. Erst durch die systembezogene Rolle<br />

der Menschen wird das betrachtete System von seiner Systemumwelt abgegrenzt (vgl. hierzu<br />

auch [Willke, 1982, S. 36ff]). Das Zusammenwirken der Menschen und Maschinen zur Aufgabenerfüllung<br />

wird durch festgelegte Regeln gesteuert, die sich sowohl auf das Verhalten der<br />

Menschen als auch auf die Funktion der Maschinen beziehen. Die Gesamtheit dieser festgelegten<br />

(organisatorischen) Regeln bildet die Organisation des sozio-technische Systems [Grochla,<br />

1978, S. 12ff], [Grochla, 1982].<br />

Auch [Hill et al., 1994] vertreten den instrumentalen Organisationsbegriff. Sie fassen unter dem<br />

Begriff Organisation die Gesamtheit aller auf die Erfüllung eines Ziels gerichteten Maßnahmen<br />

auf, die ein soziales System strukturieren und die Aktivitäten der Menschen in diesem System,<br />

den Einsatz der hierzu benötigten Mittel und die Verarbeitung von Informationen ordnet.<br />

Objektbereich der Organisationslehre<br />

Der Objektbereich der Organisationslehre umfaßt alle durch formale Regeln gesteuerten sozio-<br />

(informations-) technischen Systeme. Solche formalen Regeln werden in einem bewußten Gestaltungsprozeß<br />

(funktionaler Organisationsbegriff) festgelegt und als gültig vereinbart. Der Gegenstandsbereich<br />

der Organisationslehre umfaßt somit einerseits sozio- (informations-) technische<br />

Systeme und andererseits auch die in Regeln festgelegte (instrumentale) Organisationen.<br />

Somit behandelt die Organisationslehre solche Systeme, die durch den institutionalen Organisationsbegriff<br />

zusammengefaßt sind.


16 Organisationen und Softwaresysteme<br />

Unter dem Begriff Organisation wird sowohl die organisatorische Struktur<br />

als auch die Einbettung der Organisationsstruktur in das umgebende soziotechnische<br />

System verstanden.<br />

Zusammenfassende Gegenüberstellungen unterschiedlicher Organisationsbegriffe finden sich<br />

z. B. auch in [Kosiol, 1976, S. 15ff], [Hoffmann, 1980], [Steinebach, 1983, S. 79ff], [Voßbein,<br />

1987, S. 8ff] und [Engel, 1993].<br />

Organisationstechnik<br />

Wesentlicher Inhalt der Organisationslehre ist die Gestaltung von Organisationen. In Anlehnung<br />

an den Begriff „software engineering“ führt [Kaucky, 1988] den Begriff Organisations-<br />

Engineering ein. Die Organisationstechnik1 bezeichnet nach [Kaucky, 1988, S. 100] die „Anwendung<br />

von Prinzipien, Methoden und Werkzeugen [...] zurDurchführung gezielter organisatorischer<br />

Änderungen unter Berücksichtigung der Informationstechnik“. Ähnlich definieren<br />

[Jacobson et al., 1994, S. 2] den Begriff „Business Engineering“ als die Menge der Techniken,<br />

die ein Unternehmen zur Entwicklung der Strukturen zur Erreichung des Unternehmensziels<br />

nutzt. Durch den Begriff „Engineering“, der i. allg. eher auf die Entwicklung technischer Systeme<br />

bezogen ist, soll hier insbesondere die methodische Strukturierung der Organisationsgestaltung<br />

hervorgehoben werden. Die ingenieursmäßige Gestaltung von Organisationen betont auch<br />

[Balzert, 1998a, S. 691], der jedoch anstelle des Begriffs „Organisationstechnik“ 2 bewußt den<br />

„weniger befremdlich klingenden“ Begriff “Organisationsmodellierung“ verwendet.<br />

Neben der strukturierten Durchführung von Organisationsgestaltungen ist auch die Entwicklung<br />

und Einordung der hierzu benötigten Prinzipien, Methoden und Werkzeuge als Teil der Organisationstechnik<br />

aufzufassen. Auf die in der Begriffsbildung von [Kaucky, 1988] besonders herausgestellte<br />

Berücksichtigung der Informationstechnik wird dagegen in den weiteren Betrachtungen<br />

verzichtet, da die Informationstechnik heute immanenter Teil der Organisationsgestaltung<br />

ist (vgl. auch Kapitel 2.3) und daher nicht mehr speziell erwähnt werden muß.<br />

Die Organisationstechnik beschäftigt sich sowohl mit der Entwicklung von Prinzipien,<br />

Methoden, Techniken und Werkzeugen zur Organisationsgestaltung als<br />

auch mit der Anwendung dieser Mittel zur Durchführung gezielter organisatorischer<br />

Änderungen.<br />

2.1.1 Vorgehen zur Organisationsgestaltung<br />

Ein allgemeines Vorgehensmodell zur Gestaltung von Organisationen wird Abbildung 2.1 vorgestellt<br />

(vgl. hierzu auch [Krüger, 1981, Bild 2], [Kaucky, 1988, S. 110ff], [Büchli / Chrobok,<br />

1 Analog zur „Softwaretechnik“ (vgl. Kapitel 2.2) wird im folgenden anstelle des Begriffs „Organisations-Engineering“<br />

der Begriff Organisationstechnik verwendet.<br />

2 Konkret beziehen [Jacobson et al., 1994], [Balzert, 1998a] ihre Betrachtungen auf Unternehmen.DaderUnternehmensbegriff<br />

jedoch <strong>für</strong> betriebliche Unternehmen und kaum <strong>für</strong> Behörden, Verwaltungen, Krankenhäuser<br />

etc. verwendet wird, wird in dieser Arbeit der allgemeinere Begriff „Organisation“ genutzt.


2.1 Modellierung von Organisationen 17<br />

1997, S. 75ff], [Frank, 1997a, Abb. 8]). Nach Erteilung eines Auftrags zur Organisationsgestaltung<br />

und einer Machbarkeitsüberprüfung ist zunächst in einer Analysephase (Organisation<br />

analysieren) das zu bearbeitende Organisationsproblem zu strukturieren sowie die Ziele der Organisationsgestaltung<br />

festzulegen. Die Entwurfsphase (Organisation entwerfen) hat die Planung,<br />

Entwicklung und Bewertung von Lösungsalternativen und die Konzeption der Problemlösung<br />

zum Ziel. Die Erarbeitung der Problemlösung setzt aus der Analysephase eine detailierte Ermittlung<br />

der Anforderungen an die zu entwickelnden Lösungen voraus. In der Realisierungsphase<br />

(Organisation realisieren) schließlich werden die zuvor entwickelten Konzepte umgesetzt. Es<br />

schließt sich eine kurze Einführungsphase (Organisation einführen) an, auf die die Wirkungsphase<br />

(Organisation verwenden und erhalten) folgt. Mit der Systemverwendung einher geht die<br />

Erhaltung des Systems durch Beseitigung von Störungen sowie kleinere Anpassungen an geänderte<br />

Bedingungen.<br />

Organisation<br />

analysieren<br />

Organisation<br />

entwerfen<br />

Requirements-<br />

Engineering<br />

Organisation<br />

realisieren<br />

Organisation<br />

einführen<br />

Abbildung 2.1: Ein Wasserfallmodell zur Organisationsgestaltung<br />

Organisation<br />

verwenden<br />

und erhalten<br />

Ein verallgemeinertes, zyklisches Vorgehensmodell zur Projektdurchführung wird in [Schmidt,<br />

1980], [Schmidt, 1989, S. 39ff] vor dem Hintergrund der Organisationsgestaltung diskutiert. Der<br />

Organisationsprozeß erfolgt in mehreren Stufen, wobei die der Analyse- und Entwurfsphase zuzurechnenden<br />

Stufen eine ähnliche Feinstruktur aufweisen. Nach dem Anstoß Organisationsgestaltung<br />

erfolgt die Erstellung diverser Studien (Vorstudie, Hauptstudie, Teilstudien) zur Konzeption<br />

der Problemlösung. In diesen Teilphasen werden zyklisch Schritte zur Festlegung des<br />

Vorgehensplanes, zur Erhebung und Analyse der relevanten Informationen des Ist-Zustandes,<br />

zur Bewertung des Ist-Zustandes, zur Gestaltung einer Solllösung und zur Bewertung der Auswahlentscheidung<br />

durchlaufen. Nach Fertigstellen der Hauptstudie erfolgt dann die Realisierung<br />

der erarbeiteten Problemlösung, deren Einführung und Verwendung.


18 Organisationen und Softwaresysteme<br />

2.1.2 Methoden des Requirements-Engineering der Organisationstechnik<br />

Die Analyse- und die Entwurfssphase der Organisationsgestaltung, in denen die konzeptionelle<br />

Entwicklung der zu gestaltenden Organisation erfolgt, werden im folgenden unter dem Begriff<br />

Requirements-Engineering3 zusammengefaßt.<br />

Das Requirements-Engineering der Organisationstechnik kann ausgehend von der Aufbauorganisation<br />

oder der Ablauforganisation durchgeführt werden (vgl. [Nordsieck, 1962, s. 9f],[Kosiol,<br />

1976, S. 32ff]). Die Aufbauorganisation behandelt die Untersuchung der statischen Organisationsaspekte.<br />

Hier stehen die Aufgaben der Organisation und die mit der Aufgabenbewältigung<br />

beauftragten Organisationseinheiten sowie die hierzwischen vorliegenden Querbezüge im Mittelpunkt<br />

der Betrachtung. Dynamische Organisationszusammenhänge werden in der Ablauforganisation<br />

untersucht. Beschreibungsschwerpunkt ist hier die räumliche und zeitliche Strukturierung<br />

der Aufgabenerledigung.<br />

Methoden des Requirements-Engineering der Organisationstechnik können in funktionsorientierte<br />

und prozeßorientierte Ansätze unterschieden werden. Während in der Organisationslehre<br />

Funktion Zusammenfassungen von Aufgaben entlang der Aufbauorganisation bezeichnen, versteht<br />

man unter Prozessen solche Aufgabenzusammenfassungen, die bezogen auf die Ablauforganisation<br />

erfolgen [Eversheim, 1996, S. 14f] [Rolf, 1998b, S. 69]. Funktions- bzw. prozeßorientierte<br />

Methoden der Organisationstechnik gehen jeweils von der Betrachtung der Aufbau- bzw.<br />

Ablauforganisation aus.<br />

Funktionsorientiertes Requirements-Engineering:<br />

Die klassische, funktionsorientierte Gestaltung von Organistationen wird von der Zerlegung<br />

der zu erledigenden Aufgaben in einfache Unteraufgaben geprägt (vgl. z. B. [Kosiol,<br />

1976], [Nordsieck, 1972], [Smith, 1990]). Der eigentlichen Organisationsmodellierung<br />

(in der Entwurfsphase) ist die Analyse der Organisationsaufgabe (Aufgabenanalyse) vorgeschaltet,<br />

bei der diese Aufgabengliederung, unabhängig von zukünftig beabsichtigten<br />

Aufgabengruppierungen, erfolgt. Die Aufgabenanalyse bildet die Grundlage der Aufgabensynthese,<br />

bei der im Rahmen der Stellenbildung zunächst die ermittelten Teilaufgaben<br />

im Hinblick auf die späteren Aufgabenträger zu Aufgabenkomplexen gruppiert werden.<br />

Diese Stellen werden anschließend in Organisationseinheiten zusammengefaßt. Neben diesen<br />

aufbauorganisatorischen Aspekten ist weiter der Arbeitsprozeß zur Erledigung der Organisationsaufgabe<br />

zu regeln. In der Arbeitsanalyse werden die in der Aufgabenanalyse<br />

ermittelten, nicht weiter zerlegten Teilaufgaben vor dem Hintergrund ihrer Ausführung<br />

näher untersucht. Diese tiefere Zerlegung der einzelnen Aufgaben bildet in der Arbeitssynthese<br />

die Grundlage zur Festlegung von Arbeitsgängen, in der u. a. die Ausführung durch<br />

die Aufgabenträger und die Abfolge zur Aufgabenerledigung bestimmt wird.<br />

Zentraler Schritt der funktionsorientierten Organisationsgestaltung ist die statische Zerlegung<br />

der Aufgaben in Teilaufgaben. Dieses Vorgehen führt i. allg. zu einer Betrachtung der<br />

Organisation aus Sicht der wesentlichen Unternehmensfunktionen (Beschaffung, Produktion,<br />

Absatz, Finanz-, Rechnungs- und Personalwesen). Funktionale Abhängigkeiten einzelner<br />

Arbeitsschritte fließen jedoch in die Organisationsgestaltung nicht ein. Die ablauf-<br />

3 Der Begriff Requirements-Engineering wird hier in Analogie zum Begriff Requirements-Engineering der Softwaretechnik<br />

(vgl. Kapitel 2.2) eingeführt.


2.1 Modellierung von Organisationen 19<br />

organisatiorische Gestaltung bezieht sich dann, bei gegebener Stellenbildung, nur noch auf<br />

die zeitliche Anordnung der Arbeitsschritte der beteiligten Stellen. Die Ablaufplanung des<br />

funktionsorientierten Requirements-Engineerings optimiert eher in bezug auf Verweilzeit<br />

pro Stelle und nicht in bezug auf die gesamte Bearbeitungsdauer pro Prozeß [Gaitanides,<br />

1983, 61ff]. In funktionsorientiert entwickelten Organisationen führen spezialisierte Stellen<br />

häufig wenige Funktionen an wenigen Objekten aus. Zur Weiterbearbeitung werden<br />

die Ergebnisse einzelner Arbeitsschritte an andere Organisationseinheiten weitergegeben.<br />

Hieraus resultierte ein häufiges Wechseln der Zuständigkeiten innerhalb der Bearbeitung<br />

eines Prozesses.<br />

Prozeßorientiertes Requirements-Engineering:<br />

Im prozeßorientierten Requirements-Engineering (vgl. z. B. [Gaitanides, 1983], [Scheer,<br />

1992], [Gaitanides et al., 1994a], [Eversheim, 1996], [Hammer / Champy, 1996, 52ff],<br />

[Ferstl / Sinz, 1996]) erfolgt die Organisationsgestaltung in Umkehrung des funktionsorientierten<br />

Requirements-Engineerings nicht entlang der hierarchisch orientierten Aufgabenteilung<br />

sondern ausgehend vom Ablauf der Unternehmensprozesse. Dem prozeßorientierten<br />

Entwurf einer Organisation geht hierbei eine ausführliche Prozeßanalyse voraus.<br />

Nach Festlegung und Eingrenzung der <strong>für</strong> die Organisation wesentlichen Prozeße (Geschäftsprozesse)<br />

durch Angabe des Prozeßbeginns, Prozeßendes und der Randbedingungen<br />

erfolgt zunächst eine hierarchische Zerlegung in Teilprozesse und (atomare) Prozeßelemente.<br />

Die hierbei ermittelten Prozeßelemente werden anschließend gemäß ihrer zeitlichen<br />

und logischen Bearbereitungsabhängigkeiten geordnet und um Bearbeitungszeiten<br />

ergänzt. Diese Prozeßbeschreibungen bilden dann (erst) die Grundlage zur Stellenbildung,<br />

indem funktional sinnvoll zusammengehörige Prozeßelemente zusammengefaßt werden.<br />

Im letzten Schritt der Organisationsgestaltung erfolgt dann die Koordination der Prozeßelemente<br />

innerhalb der Prozesse sowie die Abstimmung der einzelnen Prozesse untereinander.<br />

[Gaitanides, 1983, S. 64ff]<br />

Die funktionsorientierte Methode des Requirements-Engineering zielt auf eine zweckmäßige<br />

Zuordnung der einzelnen Aufgaben bzw. Aufgabenausführungen auf Stellen und Organisationseinheiten.<br />

Die Bildung der Aufbauorganisation dominiert dieses Vorgehen. Erst nach der<br />

Stellenbildung wird die Ablauforganisation betrachtet. Beim prozeßorientierten Requirements-<br />

Engineering bestimmen dagegen zentrale Prozesse (z. B. der Prozeß der Produktentwicklung<br />

oder der Auftragsabwicklung) die Gestaltung der Organisationsstruktur. Ziel ist es hierbei, die<br />

Prozesse optimal zu gestalten. Die Geschäftsprozeß-Modellierung determiniert die Aufbauorganisation<br />

(vgl. auch [Jablonski et al., 1997, S. 8] und [Rolf, 1998a, S. 68f]).<br />

2.1.3 Visuelle <strong>Modellierungssprachen</strong> der Organisationstechnik<br />

Für diese Methoden des Requirements-Enginnering der Organisationstechnik werden Darstellungsmittel<br />

benötigt, die sowohl aufbauorganisatorische als auch ablauforganisatorische bzw.<br />

prozeßbezogene Zusammenhänge herausstellen. Neben der Organisationsstruktur sollten diese<br />

<strong>Modellierungssprachen</strong> auch die Einbettung der Organisation in das sie umgebende System unterstützen.


20 Organisationen und Softwaresysteme<br />

Visuelle <strong>Modellierungssprachen</strong> des Requirements-Engineering der Organisationstechnik<br />

dienen als Hilfsmittel zur Erhebung und Beschreibung organisatorischer<br />

Zusammenhänge bezogen auf die statische und dynamische Organisationsstruktur<br />

und das umgebende sozio-technische System.<br />

Eingesetzt werden diese Sprachen sowohl zur Erhebung und Dokumentation dieser Zusammenhänge<br />

als auch zur Komm<strong>uni</strong>kation bei der Entwicklung, Weiterentwicklung und Vermittlung<br />

von Organisationen. Die in den folgenden Kapiteln betrachteten <strong>Modellierungssprachen</strong> dienen<br />

sowohl zur Beschreibung der Ausgangssituation in der Analysephase bzw. zu Beginn der Entwurfsphase<br />

als auch zur Entwicklung, Beschreibung und Umsetzung der Problemlösung in der<br />

Entwurfs- und Realisierungsphase.<br />

Die <strong>visuelle</strong>n <strong>Modellierungssprachen</strong> des Requirements-Engineering der Organisationstechnik<br />

werden in Kapitel 3 ausführlich dargestellt. Überblicksdarstellungen zu graphischen und textuellen<br />

Sprachen der Organisationstechnik finden sich z. B. in [Nordsieck, 1962], [Acker, 1973],<br />

[Joschke, 1980], [Schmidt, 1980], [Grochla, 1982, S. 295ff], [Blum, 1991] und [Lehner et al.,<br />

1991, S. 264ff].<br />

2.2 Modellierung von Softwaresystemen<br />

Die Softwaretechnik (engl. software engineering) befaßt sich mit dem Erstellen umfangreicher<br />

Softwaresysteme. Sie folgt ingenieurmäßigen Prinzipien, die nach [Balzert, 1996a, S. 36] einerseits<br />

„Künstlertum“ ausschließt und andererseits die ziel- und marktorientierte Entwicklung<br />

optimaler Problemlösungskompromisse unterstützt.<br />

Der Begriff “software engineering“ wurde zum Ende der 60er Jahre als Reaktion auf die allgemeine<br />

Unzufriedenheit mit produzierter Software (Software Krise) geprägt. Bauer faßte diese<br />

Problematik im Umfeld der ersten Konferenz mit dem Titel „software engineering“ (vgl. [Naur<br />

/ Randell, 1969]) passend zusammen: „The whole trouble comes from the fact that there is so<br />

much tinkering with software. It is not made in a clean fabrication process, which it should be.<br />

[...] Whatweneed, is softwareengineering.“ (nach [Bauer, 1993]). Folglich wurde auch <strong>für</strong><br />

die Entwicklung und Anwendung von Software nach (ingenieur-) wissenschaftlich fundierten<br />

Grundlagen gesucht.<br />

Die Verwendung dieser wissenschaftlichen und mathematischen Grundlagen zur Nutzbarmachung<br />

von Computersystemen <strong>für</strong> den Menschen durch Programme, Verfahren und Dokumente<br />

betrachten [Boehm, 1981] und [Denert, 1991] als wesentlichen Schwerpunkt der Softwaretechnik.<br />

Ähnlich beschreibt auch [ANSI/IEEE Std. 729, 1983] die Softwaretechnik als den systematischen<br />

Ansatz zur Entwicklung, zum Betrieb und zur Wartung von Software. Boehm stellt<br />

auch die Dokumentation, die zur Erstellung, zur Verwendung und zur Wartung der Software<br />

nötig ist, deutlich heraus. So definiert er in [Boehm, 1976] die Softwaretechnik als die praktische<br />

Anwendung wissenschaftlicher Kenntnisse zur Entwicklung und Realisierung von Computerprogrammen<br />

einschließlich der zur Entwicklung, zum Betrieb und zur Wartung benötigten<br />

Dokumentation.<br />

Auch die Entwicklung der bei der Softwareerstellung benötigten wissenschaftlichen Grundlagen<br />

ist als Aufgabe der Softwaretechnik zu sehen. Thema der Softwaretechnik ist nach [Hesse et


2.2 Modellierung von Softwaresystemen 21<br />

al., 1984] die Bereitstellung und systematische Verwendung von Methoden und Werkzeugen <strong>für</strong><br />

die Herstellung und Anwendung von Software. Ähnlich argumentiert auch [Sommerville, 1996,<br />

S. 4]. Softwaretechnik beschäftigt sich mit Theorien, Methoden und Werkzeugen, die zur Entwicklung<br />

von Computersoftware benötigt werden. Diese Begriffsbildungen zusammenfassend<br />

versteht [Balzert, 1996a, S. 36f] unter Softwaretechnik die „zielorientierte Bereitstellung und systematische<br />

Verwendung von Prinzipien, Methoden, Konzepten, Notationen und Werkzeugen <strong>für</strong><br />

die arbeitsteilige, ingenieurmäßige Entwicklung von umfangreichen Softwaresystemen.“<br />

Die Softwaretechnik befaßt sich sowohl mit der wissenschaftlichen Entwicklung<br />

von Prinzipien, Methoden, Techniken und Werkzeugen zur Softwareentwicklung<br />

als auch mit der Anwendung dieser Mittel zur Erstellung, zum Betrieb und zur<br />

Wartung von umfangreichen Softwareprodukten.<br />

Diskussionen verschiedener Softwaretechnik-Begriffe finden sich auch bei [Balzert, 1996a,<br />

S. 35] und [Pressman, 1997, S. 22].<br />

2.2.1 Vorgehen zur Softwareerstellung<br />

Wie auch in der Organisationstechnik wird der Softwareerstellungsprozeß durch Vorgehensmodelle<br />

strukturiert. Ein einfaches und nicht empfehlenwertes Modell aus den ersten Tagen der<br />

Programmierung ist im code-and-fix-Modell [Boehm, 1988] zu sehen. Programmcode wurde<br />

erstellt, anschließend wurden die Fehler beseitigt. Ein auf einer Analyse- und Synthesephase<br />

beruhendes Zwei-Phasenmodell wird als Ausgangspunkt zur Entwicklung des Phasenmodells<br />

in [Royce, 1970] vorgestellt. Bei diesem Vorgehensmodell folgen die grundlegenden Entwicklungsschritte<br />

der Softwareentwicklung nach Abnahme der Teilergebnisse aufeinander. Royce<br />

entwickelte dieses Modell anschließend zu dem von [Boehm, 1981, S. 35] als Wasserfallmodell<br />

bekannt gemachten Vorgangsmodell weiter. Die einzelnen Entwicklungsschritte können hier<br />

auch iterativ bearbeitet werden. Ebenso wurde das Wasserfallmodell um prototypische Studien<br />

ergänzt. Die in der Literatur beschriebenen Phasen der Wasserfallmodelle zur Softwareentwicklung<br />

variieren sowohl in den Bezeichnungen wie in den jeweils zugeordneten Teiltätigkeiten. Die<br />

Grundstruktur ist jedoch <strong>für</strong> alle Modelle ähnlich und bietet ein gutes Strukturierungsmittel der<br />

einzelnen Schritte zur Softwareentwicklung. Eine ausführliche Beschreibung des kanonischen<br />

Lebenszyklus-Modells, der in Abbildung 2.2, angelehnt an Abbildung 2.1, komprimiert dargestellt<br />

ist, findet sich z. B. in [Boehm, 1981, S. 37] oder [McDermid / Rook, 1991].<br />

Die Softwareentwicklung beginnt in der Analysephase oder Definitionsphase (Software analysieren)<br />

mit der Festlegung der qualitativen und quantitativen Anforderungen an das zu realisierende<br />

System. Hierbei sind insbesondere die funktionalen Eigenschaften des Softwaresystems aus Anwendersicht<br />

zu erheben sowie die Realisierungsmöglichkeiten des Vorhabens zu überprüfen. In<br />

der Entwurfsphase (Software entwerfen) erfolgt die Entwicklung eines Realisierungskonzepts,<br />

das die zuvor definierten Anforderungen erfüllt. Die Umsetzung dieser Entwürfe in ausführbare<br />

Programme erfolgt in der Implementierungsphase oder Realisierungsphase (Software implementieren).<br />

Neben der Programmierung der einzelnen Komponenten erfolgt hier auch die Integration<br />

dieser Module in das Gesamtsystem. Dieses System ist anschließend in der Einführungsphase<br />

(Software einführen) beim Anwender einzuführen. Es schließt sich die Wirkungsphase (Software


22 Organisationen und Softwaresysteme<br />

Software<br />

analysieren<br />

Software<br />

entwerfen<br />

Requirements-<br />

Engineering<br />

Software<br />

implementieren<br />

Software<br />

einführen<br />

Abbildung 2.2: Ein Wasserfallmodell des Software-Lebenszyklus<br />

Software<br />

betreiben<br />

und warten<br />

betreiben und warten) mit dem Betrieb und der Pflege und Wartung des Systems an. Die Softwareentwicklung<br />

nach dem Wasserfallmodell läuft jedoch nicht generell sequentiell ab. Rückgriffe<br />

auf vorhergehende Schritte sowie Teilentwicklungen in unterschiedlichen Phasen sind durchaus<br />

möglich.<br />

Das Wasserfallmodell bildet die Grundlage zur Entwicklung weiterer Vorgangsmodelle. Die bekannteste<br />

Erweiterung ist im Spiralmodell [Boehm, 1988] (vgl. auch das zyklische Vorgehensmodell<br />

zur Organisationsgestaltung nach [Schmidt, 1980] auf <strong>Se</strong>ite 17) zu sehen, in dem sowohl<br />

die schon bei [Royce, 1970] angesprochene Verwendung von Prototypen als auch die Risiko-<br />

Abschätzung der einzelnen Entwicklungsstufen weiter ausgeprägt wurde. Jede Phase der Softwareentwicklung<br />

(z. B. Erstellung der Machbarkeitsanalyse, Erheben der Anforderungen) wird<br />

in vier Teilschritten, der Festlegung des Phasenziels, der Risikoabschätzung, der Entwicklung<br />

und Validierung und der Planung der nächsten Phase bearbeitet.<br />

Das Spiralmodell kann als <strong>Referenz</strong>modell <strong>für</strong> Vorgehensmodelle zur Softwareentwicklung aufgefaßt<br />

werden, da aus ihm ein Großteil der anderen Vorgehensmodelle abgeleitet werden kann.<br />

[McDermid / Rook, 1991] gibt einen umfassenden Überblick zu diesen Vorgangsmodellen zur<br />

Softwareentwicklung. Weitere Diskussionen dieser Vorgehensmodelle zur Softwareerstellung<br />

findet sich z. B. auch in [Boehm, 1988] und [Lehner et al., 1995, S. 87ff].<br />

2.2.2 Methoden des Requirements-Engineering der Softwaretechnik<br />

Die frühen Phasen der Softwareentwicklung werden ebenfalls unter dem Begriff Requirements-<br />

Engineering zusammengefaßt. Ziel des Requirements-Engineering der Softwaretechnik ist es,<br />

eine vollständige, konsistente, realisierbare und eindeutige Spezifikation bereitzustellen, in der


2.2 Modellierung von Softwaresystemen 23<br />

beschrieben ist, was ein Softwaresystem tun soll [Boehm, 1979], [ANSI/IEEE Std. 729, 1983].<br />

Die Beschreibungsmittel des Requirements-Engineering beziehen sich nur bedingt auf die Darstellung<br />

der Funktionsweise eines Softwaresystems. Programmiersprachen werden daher auch in<br />

den folgenden Betrachtungen ausgeklammert.<br />

Bei den Methoden des Requirements-Engineering der Softwaretechnik werden die eher prozeßorientierten<br />

Ansätze der (modernen) strukturierten Analyse und die objektorientierten Ansätze<br />

unterschieden. In beiden Ansätzen sind Daten bzw. Datenstrukturen, Kontrollstrukturen und<br />

funktionale Zusammenhänge einzelner Softwarebausteine zu erheben und zu beschreiben.<br />

(Moderne) Strukturierte Analyse<br />

Die Methoden der strukturierten Analyse (z. B. [DeMarco, 1978], [Gane / Sarson, 1979])<br />

basieren auf der prozeßorientierten Beschreibung des Systems durch den Datenaustausch<br />

zwischen Systemprozessen. Die Modellierung nach der strukturierten Analyse beginnt mit<br />

der Abgrenzung des Softwaresystems von seiner Umwelt. Hierzu sind die Datenflußbeziehungen,<br />

über die das Softwaresystem mit seiner Umwelt komm<strong>uni</strong>ziert, zu erheben.<br />

Ausgehend von diesen Datenflüssen wird das Softwaresystem in Teilprozesse zerlegt, die<br />

ebenfalls durch ihren Datenaustausch charakterisiert sind. Nicht weiter zerlegte Prozesse<br />

werden durch Angabe ihrer Kontrollflüsse konkretisiert. Die moderne strukturiere Analyse<br />

[Yourdon, 1989] erweitert die strukturierte Analyse um die Beschreibung von der Systemdynamik<br />

und der Informationsstrukturen. Die Steuerung der Abarbeitung der einzelnen<br />

Prozesse wird durch zusätzliche Kontrollprozesse (vgl. auch die Echt-Zeit-Variante der<br />

strukturierten Analyse [Ward / Mellor, 1985]) modelliert. Parallel und (nahezu) unabhängig<br />

von der Prozeßmodellierung erfolgt die Erstellung des Informationsstrukturmodells,<br />

das anschließend mit dem Datenflußmodell abgeglichen wird. Die Modellierung nach der<br />

modernen stukturierten Analyse erfolgt aus unterschiedlichen Blickwinkeln, die zusammengefaßt<br />

das System vollständig abbilden. Die unabhängige Entwicklung der einzelnen<br />

Teilmodelle führt jedoch leicht zu Inkonsistenzen in der Modellierung.<br />

Objektorientierte Analyse<br />

Während bei der (modernen) strukturierten Analyse die prozeßorientierte Untersuchung<br />

deutlich dominiert, stellen die objektorientierten Methoden (z. B. [Rumbaugh et al., 1991],<br />

[Booch, 1994], [Booch et al., 1999]) die Untersuchung der Daten einschließlich der hierauf<br />

auszuführenden Operationen in den Vordergrund. Zentraler Betrachtungsgegenstand sind<br />

Objekte, die sowohl durch ihre Datenstrukturen als auch durch ihr Verhalten charakterisiert<br />

sind. In den objektorientierten Ansätzen werden statische und dynamische Strukturen<br />

des Systems als Sichten auf das gleiche System aufgefaßt. So besteht z. B. eine Modellierung<br />

nach der Object Modeling Technique (OMT) [Rumbaugh et al., 1991, S. 6ff] aus<br />

einem Objektmodell, zur Beschreibung der statischen Klassen-Struktur, einem dynamischen<br />

Modell, zur Beschreibung der Veränderungen der (internen) Systemzustände und<br />

einem funktionalen Modell zur datenflußorientierten Beschreibung des nach außen sichtbaren<br />

Verhaltens. [Booch, 1994] bzw. [Booch et al., 1999] unterscheiden analog die statische<br />

bzw. die strukturelle Sicht zur Darstellung der Systemstrukturen, und die dynamische<br />

bzw. die Verhaltenssicht zur Betrachtung der Veränderungen des Systemzustands. Idealtypische<br />

objektorientierte Modellierungen beginnen mit der Erstellung des Objektmodells.


24 Organisationen und Softwaresysteme<br />

Zunächst werden die relevanten Klassen, deren Attribute und Methoden sowie die Beziehungen<br />

der Klassen untereinander erhoben und beschrieben. Diese statische Modellierung<br />

bildet gemeinsam mit Szenarien, die typisches und untypisches Systemverhalten abbilden,<br />

den Ausgangspunkt zur Beschreibung des möglichen dynamischen Verhaltens der Objekte.<br />

Erst nach Erstellung des Objektmodells und des dynamischen Modells wird nach der<br />

OMT [Rumbaugh et al., 1991, S. 179] das funktionale Modell erstellt. Hierbei werden ausgehend<br />

von den im dynamischen Modell notierten Aktivitäten und den im Objektmodell<br />

modellierten Objekten und Attributen die Daten- und Kontrollflüsse beschrieben. Vgl. hierzu<br />

auch die Vorgehensmodelle zur objektorientierten Analyse in [Balzert, 1996a, S. 359]<br />

oder in [Rumbaugh et al., 1991, S. 148ff].<br />

Sowohl die strukturierte Analyse als auch die objektorientierten Methoden benötigen zum<br />

Requirements-Engineering Beschreibungsmittel, die statische und dynamische Systemaspekte<br />

hervorheben. Beide Ansätze verwenden letztendlich die gleichen oder ähnliche <strong>visuelle</strong> Sprachen<br />

(vgl. auch [Ebert / Engels, 1994]), die sich häufig nur in ihrer konkreten Notation unterscheiden<br />

und bei unterschiedlichen Methoden zu unterschiedlichen Zeitpunkten im Modellierungsprozeß<br />

eingesetzt werden. Eine gute Übersicht über die konkreten Beschreibungsmittel, die in den<br />

verschiedenen Methoden der strukturierten Analyse oder der objektorientierten Modellierung<br />

verwendet werden, bietet auch [Wieringa, 1998].<br />

2.2.3 Visuelle <strong>Modellierungssprachen</strong> der Softwaretechnik<br />

So wie sich die <strong>visuelle</strong>n Sprachen zur Organisationsbeschreibung sowohl auf organisatorische<br />

Regeln als auch auf die Einbettung in ihr organisatorisches Umfeld beziehen, unterstützen<br />

die Sprachen des Requirements-Engineering der Softwaretechnik sowohl die Beschreibung<br />

der Strukturen und Abläufe innerhalb eines Softwaresystems als auch die Einbettung des Softwaresystems<br />

in seinen Anwendungskontext. Insbesondere unterstützen die Sprachen, die in der<br />

Analysephase eingesetzt werden, die Abgrenzung des zu beschreibenden Softwaresystems von<br />

seiner Systemumwelt, während die Beschreibungsmittel der Entwurfsphase eher auf die internen<br />

Zusammenhänge ausgerichtet sind.<br />

Visuelle <strong>Modellierungssprachen</strong> des Requirements-Engineering der Softwaretechnik<br />

dienen als Hilfsmittel zur Erhebung und Beschreibung von Softwaresystemen<br />

bezogen auf ihre statische und dynamische Struktur sowie auf das sie<br />

umgebende Anwendungssystem.<br />

Diese Sprachen dienen zur Unterstützung der Erhebung und Dokumentation von Entwurfsentscheidungen<br />

während der Softwareerstellung. Sie unterstützen darüber hinaus auch die Komm<strong>uni</strong>kation<br />

zwischen den bei der Softwareentwicklung betroffenen Personen. Die Beschreibungsmittel,<br />

die in der Analysephase eingesetzt werden, dienen hier als Komm<strong>uni</strong>kationsmittel mit<br />

den Anwendern bzw. Auftraggebern. In der Entwurfs- und Implementierungsphase werden diese<br />

Sprachen eher als Komm<strong>uni</strong>kationsmittel zwischen Systementwicklern eingesetzt. Die Beschreibungsmittel,<br />

die insbesondere in der Entwurfsphase eingesetzt werden, unterstützen den<br />

Softwareentwickler bei der Umsetzung der eher informell beschriebenen Anforderungen aus der<br />

Analysephase in formale Beschreibungen und ausführbare Progamme.


2.3 Modellierung von Organisationen und Softwaresystemen 25<br />

In Kapitel 3 werden auch die <strong>visuelle</strong>n Modellierunssprachen des Requirements-Engineerings<br />

der Softwaretechnik ausführlicher dargestellt. Überblicksdarstellungen zu diesen graphischen<br />

und textuellen Beschreibungsmitteln bieten auch [Martin / McClure, 1985a], [Ebert / Engels,<br />

1994], [Wieringa, 1998] und [Partsch, 1998].<br />

2.3 Modellierung von Organisationen und Softwaresystemen<br />

Sowohl die Modellierung von Organisationen als auch die Modellierung von Softwaresystemen<br />

beschäftigt sich mit der Gestaltung komplexer Systeme. Wie auch die groben Phasenmodelle<br />

in Abbildung 2.1 und 2.2 zeigen, werden zur Organisationsgestaltung und zur Softwareentwicklung<br />

ähnlich strukturierte Vorgehensmodelle eingesetzt, die gemeinsame Beschreibungsmittel<br />

zur Darstellung statischer und dynamischer Systemzusammenhänge im Requirements-<br />

Engineering verwenden.<br />

Die Ursprünge der Techniken zur Beschreibung statischer Aspekte der Aufgabenanalyse und zur<br />

Aufbauorganisation können eher in der Organisationslehre (insbesondere bei [Nordsieck, 1962]<br />

und [Kosiol, 1976]) gefunden werden. Die Entwicklung der Beschreibungsmittel zur Darstellung<br />

ablauforganisatorischer Zusammenhänge ist aber auch eng mit der Entwicklung in der Informatik<br />

verbunden. Zur Beschreibung von Ablaufstrukturen in Software wurden hier z. B. Programmablaufpläne<br />

[DIN 66001, 1983], Struktogramme [Nassi/Shneiderman, 1973] oder Datenflußdiagramme<br />

[Ross, 1977], [DeMarco, 1978] entwickelt, die in gleicher Form auch zur Beschreibung<br />

organisatorischer Ablaufstrukturen eingesetzt werden. Eine Vorreiterfunktion der prozeßorientierten<br />

Organisationsgestaltung weisen [Gaitanides et al., 1994a] sowohl der Fertigungstechnik<br />

als auch der Informatik zu. Die Beschreibung von Daten- bzw. Objektstrukturen durch Objekt-<br />

Beziehungsdiagramme durch [Chen, 1976] oder Klassendiagramme z. B. durch [Rumbaugh et<br />

al., 1991], [Booch, 1994] und [Booch et al., 1999] wurde ebenfalls eher durch die Informatik geprägt.<br />

Zusammenfassend kann festgestellt werden, daß die heute im Requirements-Engineering<br />

verwendeten <strong>visuelle</strong>n <strong>Modellierungssprachen</strong> ihren Ursprung sowohl in der Organisationslehre<br />

als auch in der Informatik finden (vgl. auch [Keller et al., 1992]).<br />

Darüber hinaus bedingen sich Organisationsgestaltung und Softwareentwicklung gegenseitig in<br />

der Form, daß weder die Organisationsgestaltung ohne Bezug zur Softwareentwicklung noch die<br />

Softwareentwicklung ohne Bezug zur Organisationsgestaltung gesehen werden kann.<br />

¯ Aus Sicht der Organisationstechnik kommen Organisationen heute kaum noch ohne softwaretechnische<br />

Hilfsmittel aus. Die Umsetzung und Koordination von Geschäftsprozessen<br />

erfordert die Bereitstellung entsprechender softwaretechnischer Unterstützung, die wiederum<br />

ihre Anforderung an Organisationsstrukturen und -abläufe stellt. Diese Hilfsmittel<br />

unterstützen sowohl die Erhebung, Berechnung, Weitergabe und Bereitstellung von Daten<br />

als auch die Steuerung konkreter Abläufe. Um diese Aufgaben angemessen zu unterstützen,<br />

muß in dieser Software Wissen über die Organisationsstruktur, über die Abläufe zur<br />

Aufgabenerledigung und über die einzusetzenden Hilfsmittel abgebildet sein.<br />

¯ Aus Sicht der Softwaretechnik bezieht sich die Entwicklung von Problemlösungen nicht<br />

ausschließlich auf die Programmierung von performanten Softwaresystemen. Die Problemlösungen<br />

müssen auch die Einbettung der Softwaresysteme in die ihre Anwendungs-


26 Organisationen und Softwaresysteme<br />

umgebung berücksichtigen. Da Informationssysteme mit dem Ziel erstellt werden (sollten),<br />

Hilfsmittel zur Unterstützung und Vereinfachung von Arbeitsabläufen zu sein, ist<br />

auch eine umfangreiche Erhebung der Anforderungen der Anwendungsbereiche erforderlich.<br />

Hierbei sind ebenso strukturelle Organisationszusammenhänge wie z. B. Aufgabenzerlegungen<br />

und Aufgabenverteilungen als auch dynamische Organisationsaspekte wie<br />

z. B. die zu unterstützenden Geschäftsprozesse zu beachten.<br />

Stärkere Querbezüge zwischen Informatik und Organisationstechnik wurden bereits in den 70er<br />

Jahren gefordert. Ausgehend von der Feststellung, daß Informatiker bei der Lösung von Anwendungsproblemen<br />

auch <strong>für</strong> die Einbindung der Softwarelösung in die Betriebsorganisation<br />

zuständig sind, forderte [Zemanek, 1971] eine organisationstheoretische Fundierung der Informatik.<br />

Eine stärkere Berücksichtigung sozialer und organisatorischer Zusammenhänge in der Informatik<br />

fordert auch [Coy, 1989]. Die Analyse von Arbeitsprozessen und ihre maschinelle Unterstützung,<br />

bei der nicht die Maschine, sondern die Organisation und Gestaltung der Arbeitsplätze im<br />

Vordergrund steht, sieht er als wesentliche Aufgabe der Informatik. Aus der Auffassung der Informatik<br />

als Disziplin, die sich mit der Organisation und Steuerung formal beschreibbarer und<br />

durch Prozessoren ausführbarer Prozesse beschäftigt, leitet [Kornwachs, 1997] die „Theorie der<br />

Organisation als Mutterwissenschaft“ der Theorie der Informatik ab.<br />

Kling geht noch einen Schritt weiter und führt „Organizational Informatics“ als eigenständige<br />

Disziplin ein, die sich mit der Entwicklung und Verwendung von computerbasierten<br />

Informations- und Komm<strong>uni</strong>kationssystemen in Organisationen befaßt [Kling, 1993]. Gegenüber<br />

der technisch ausgerichteten „Computer Science“ soll die „Organizational Informatics“ vor<br />

allem die Bedingungen untersuchen, unter denen der Einsatz von Computersystemen die Aufgabenunterstützung<br />

der Organisationen verbessert.<br />

Die Verbindungen zwischen Softwaretechnik und Organisationstechnik stellt auch [Rolf, 1998a,<br />

7ff], [Rolf, 1998b] in seinen Betrachtungen zur „Organisations-Informatik“ heraus. Er leitet aus<br />

diesen Querbezügen die Entwicklung von Methoden, Modellen und Werkzeugen, die sowohl<br />

organisatorische als auch softwaretechnische Perspektiven berücksichtigen, als eine Herausforderung<br />

<strong>für</strong> die (Wirtschafts-) Informatik ab.<br />

Auch bewegen sich akutelle Ansätze zur Modellierung von Organisationen und Softwaresystemen<br />

deutlich aufeinander zu. [Flatscher, 1998, S. 13] faßt beispielsweise Softwarewerkzeuge<br />

zur Aufbau- und Ablaufmodellierung unter den Begriff der CASE-Werkzeuge. Auch durch die<br />

Standardisierung der <strong>Modellierungssprachen</strong> in der Unified Modeling Language [Booch et al.,<br />

1999] wird ein Satz an Bescheibungsmitteln vorgeschlagen, der sowohl zur Organisations- als<br />

auch zur Softwaremodellierung eingesetzt werden kann. Beispielsweise beschäftigen sich [Jacobson<br />

et al., 1994], [Balzert, 1998a, s. 721ff], [Oestereich, 1998], [Versteegen, 1998] und [Rumbaugh<br />

et al., 1999] mit der Anwendung objektorientierter Techniken zur Organisationsmodellierung.<br />

Organisationsmodelle werden durch ihre Einbettung in die sie umgebende Systemumwelt<br />

und durch Geschäftsprozesse aus externer und aus interner Sicht einschließlich der benötigten<br />

Objekte dargestellt [Balzert, 1998a, S. 722]. Diese in erster Linie prozeßorientierte Organisationsmodellierung<br />

erfolgt durch Beschreibungsmittel (u. a. Anwendungsfalldiagramme und Aktivitätendiagramme),<br />

die aus objektorientierten Methoden der Softwareentwicklung entnommen<br />

wurden. Daher wird hier<strong>für</strong> auch häufig der Begriff „objektorientierte Unternehmensmodellie-


2.3 Modellierung von Organisationen und Softwaresystemen 27<br />

rung“ verwendet. Auf rein notationeller Ebene ermöglichen diese Ansätze die Integration von<br />

Organisations- und Softwaremodellierungen.<br />

Eine gemeinsame Betrachtung organisatorischer und softwaretechnischer Zusammenhänge ist<br />

heute in nahezu allen Gestaltungsbereichen der Organisations- und Softwaretechnik anzutreffen.<br />

Beispiele <strong>für</strong> die gemeinsame Betrachtung organisatorischer und softwaretechnischer Aspekte<br />

finden sich u. a. bei der Gestaltung von Informationssystemen, der Auswahl und Einführung von<br />

Standardsoftware, dem Business Reengineering und der Modellierung von Workflows.<br />

Informationssysteme<br />

Informationssysteme werden als sozio-(informations)-technische Teilsysteme von Unternehmen<br />

aufgefaßt. Diese Teilsysteme umfassen die informationsverarbeitenden Aktivitäten,<br />

die hieran beteiligten Mitarbeiter in ihrer informationsverarbeitenden Rolle und die<br />

hierzu eingesetzten Hilfsmittel [Haux et al., 1998]. Informationssysteme dienen der Beschaffung,<br />

Herstellung, Bevorratung und Verwendung von Informationen [Heinrich, 1997]<br />

und beschreiben somit einen Ausschnitt der Unternehmensmodellierung [Hoppen, 1992,<br />

S. 61], [Lehner et al., 1995, S. 104]. Neben der Betrachtung des Informationssystems,<br />

sind zur Unternehmensmodellierung auch die Unternehmensstrategie und die Organisationsstrukturen,<br />

die sowohl die Aufbau- wie die Ablauforganisation umfassen, zu beachten<br />

[Frank, 1994] [Frank, 1997a].<br />

Die Modellierung von Informationssystemen erfordert sowohl die Beschreibung der informationsverarbeitenden<br />

Aktivitäten als auch die organisatorische Einbettung dieser Systeme.<br />

Ansätze zur Modellierung von Informationssystemen (vgl. z. B. [Olle et al., 1991],<br />

[Scheer, 1992], [Frank, 1994]) fordern daher auch die Modellierung von Aufgaben und<br />

Prozessen, die durch das Informationssystem ausgeführt werden, von Objektstrukturen<br />

bzw. Daten, die durch das Informationssystem bearbeitet werden und von Organisationsstrukturen,<br />

die die Aufgabenerledigung des Informationssystems steuern.<br />

Auswahl und Einführung von Standardsoftware<br />

Das Angebot von Standardsoftware geht von der Annahme aus, daß die verschiedenen<br />

Anforderungen unterschiedlicher Organisationen noch so viele Gemeinsamkeiten aufweisen,<br />

daß es möglich ist, ein standardisiertes Softwaresystem zu erstellen, daß in vielen<br />

Organisationen eingesetzt werden kann. Im Gegensatz zu allgemeiner Standardsoftware,<br />

wie beispielsweise (weit verbreitete) Textverabeitungen, Tabellenkalkulationen, Datenbankmanagementsysteme<br />

oder Modellierungswerkzeuge, durch die in der Regel einzelne<br />

Funktion unterstützt werden, ist betriebswirtschaftliche Standardsoftware dadurch charakterisiert,<br />

daß sie die wesentlichen Geschäftsprozesse vieler Organisationen unterstützt. Die<br />

Anpassbarkeit an die individuellen Anforderung konkreter Organisationen wird dadurch<br />

erreicht, daß diese Produkte auf einem spezialisierbaren Geschäftsprozeßmodell aufsetzen<br />

(vgl. auch [Staud, 1999, S. 21ff]).<br />

Die Auswahl und Einführung von (betriebswirtschaftlicher) Standardsoftware erfordert<br />

den Vergleich der durch die Organisation geforderte und der durch die Standardsoftware<br />

angebotene Unterstützung der Geschäftsprozesse. Standardsoftware wird hierzu häufig<br />

durch Software-<strong>Referenz</strong>modelle beschrieben, die funktionale Eigenschaften, die verwendeten<br />

Objekt- und Datenstrukturen sowie die organisatorischen Voraussetzungen zur Ver-


28 Organisationen und Softwaresysteme<br />

wendung dieser Software abbilden. Wie auch <strong>für</strong> die Entwicklung von Informationssystemen<br />

sind bei der Auswahl und Einführung von Standardsoftware unterstützte Aufgaben,<br />

Geschäftsprozesse, benötigte Daten und Organisationsstrukturen zu modellieren und mit<br />

den Software-<strong>Referenz</strong>modellen abzugleichen [Dumslaff et al., 1994], [Franzke / Winter,<br />

1996].<br />

Business Reengineering<br />

Im Gegensatz zum Business Improvement, durch das die Pflege und Weiterentwicklung<br />

bestehender Unternehmen beschrieben wird, wird das Business Reengineering (alias Business<br />

Process Reengineering [Johansson et al., 1993], Process Innovation [Davenport,<br />

1993]) als „fundamentales Überdenken und radikales Redesign von Unternehmen oder<br />

wesentlichen Unternehmensprozessen“ [Hammer / Champy, 1996, S. 48] eingeführt. Ziel<br />

des Business Reengineerings 4 sind deutliche und meßbare Verbesserungen der Unternehmensparameter<br />

Kosten, Qualität, <strong>Se</strong>rvice und Aufwand.<br />

Ergebnisse solcher Business-Reengineering-Vorhaben sind zu realisierende Organisationsmodelle<br />

sowie hiermit verträgliche Informationssysteme zur informationstechnischen Unterstützung<br />

der Unternehmensprozesse [Jacobson et al., 1993, S. 21]. Wie auch zur Modellierung<br />

von Informationssystemen (s.o.) werden im Business Reengineering Organisationen<br />

durch Aufgaben (Funktionen), durch Organisationsstrukturen, durch Daten- bzw.<br />

Objektstrukturen und im besonderen durch Unternehmensprozesse beschrieben.<br />

Workflows<br />

Workflow-Management-Systeme zielen auf eine möglichst vollständige computerbasierte<br />

Koordination der Vorgangsbearbeitung innerhalb einer Organisation. Ausgangspunkt der<br />

Betrachtungen sind hierbei die Vorgänge, die das Geschehen innerhalb der Organisation<br />

abbilden. Vorgänge, deren Ablauf beschrieben ist und dessen Bearbeitung durch ein<br />

Workflow-Management-System koordiniert wird, werden Workflow genannt [Jablonski /<br />

Bussler, 1996], [Jablonski et al., 1997, S. 23ff].<br />

Die Vorgangsunterstützung durch Workflow-Management-Systeme setzt eine schematische<br />

Beschreibung der Vorgänge (Workflow-Schema) voraus, die geeignet ist, die Bearbeitung<br />

konkreter Vorgänge zu steuern. Zentraler Beschreibungsgegenstand ist hierbei die<br />

Abarbeitung dieser Workflows. Neben diesen Ablaufaspekten sind ferner auch die zur Abarbeitung<br />

benötigten bzw. erzeugten Daten sowie die Akteure, durch die Vorgänge umgesetzt<br />

werden, zu berücksichtigen [Jablonski et al., 1997, S. 98ff].<br />

Zusammenfassend kann festgestellt werden, daß in der Organisations- und der Softwaregestaltung<br />

in vielen Anwendungbereichen organisatorische und softwaretechnische Zusammenhänge<br />

gemeinsam zu modellieren sind. Die Darstellungen aus eher organisatorischer und eher softwaretechnischer<br />

Sicht bedingen sich hierbei gegenseitig.<br />

4 Der Reengineering-Begriff des Business Reengineering wird deutlich radikaler aufgefaßt als der Reengineering-<br />

Begriff der Softwaretechnik. Während Software Reengineering sowohl das Verstehen (understanding) als auch<br />

das Verändern und das eher evolutionäre Weiterenwickeln (renovation) bestehender Softwaresysteme umfaßt<br />

(vgl. z. B. [Arnold, 1993a], [Kullbach / Winter, 1999]) bezieht sich das Business Reengineering eher auf die<br />

grundlegende, revolutionäre Überarbeitung und Änderung von Organisationen.


2.4 Einordnung in die Zielsetzung dieser Arbeit 29<br />

Die Beschreibung von Organisationen und Softwaresystemen umfaßt Aufgabenstrukturen, Aufbaustrukturen,<br />

Daten- bzw. Objektstrukturen und Ablaufstrukturen. Dieses ist auch von der jeweils<br />

gewählten Modellierungsmethode unabhängig. Die Methoden der funktionsorientierten<br />

oder prozeßorientierten Organisationsgestaltung bzw. der strukturierten oder der objektorientierten<br />

Softwareentwicklung unterscheiden sich nur in der unterschiedlichen Betonung der einzelnen<br />

Strukturen. Es ist daher notwendig und sinnvoll, diese Beschreibungsmittel auch zueinander in<br />

Beziehung zu setzen, um eine durchgängige Verwendung der Ergebnisse einzelner Modellierungssichten<br />

zu gewährleisten.<br />

2.4 Einordnung in die Zielsetzung dieser Arbeit<br />

Organisationstechnik und Softwaretechnik weisen eine Reihe von Gemeinsamkeiten in bezug<br />

auf Vorgehensweisen und Beschreibungsmittel auf. Auch bedingen sich Organisationstechnik<br />

und Softwaretechnik gegenseitig, so daß heute weder die Organisationsgestaltung ohne Berücksichtigung<br />

der Softwaretechnik noch die Softwareentwicklung ohne Berücksichtigung der Organsiationsgestaltung<br />

erfolgen kann. Eine integrierte Betrachtung von Organisationstechnik und<br />

Softwaretechnik ist folglich sinnvoll.<br />

Ziel dieser Arbeit ist die Integration der in beiden Bereichen verwendeten <strong>visuelle</strong>n <strong>Modellierungssprachen</strong>,<br />

um so auf notationeller Ebene Beschreibungstechniken der Organisations- und<br />

Softwaretechnik kombinieren zu können. Das in Kapitel 6 entwickelte <strong>Referenz</strong>-<strong>Metaschema</strong> <strong>für</strong><br />

<strong>visuelle</strong> <strong>Modellierungssprachen</strong> stellt eine integrierte Darstellung der fundamentalen Konzepte<br />

der Beschreibungsmittel aus Organisationstechnik und Softwaretechnik bereit.


3 Visuelle <strong>Modellierungssprachen</strong> der<br />

Organisations- und Softwaretechnik<br />

Visuelle <strong>Modellierungssprachen</strong> <strong>für</strong> organisatorische und softwaretechnische Zusammenhänge<br />

legen unterschiedliche Schwerpunkte bei der Betrachtung von Organisationen und Softwaresystemen.<br />

Die Beschreibungsmittel der einzelnen Betrachtungssichten oder -perspektiven verfolgen<br />

verschiedene Paradigmen zur Systembeschreibung. Diese Sichten und Paradigmen bilden die<br />

Grundlage eines Klassifikationsschemas, anhand dessen die Beschreibungsmittel steckbriefartig<br />

eingeführt werden.<br />

Hierzu werden die einzelnen Sprachen entlang der Paradigmen in ihrer konkreten Syntax dargestellt.<br />

Die durch die Beschreibungsmittel der einzelnen Paradigmen abgebildeten Konzepte<br />

legen die Anforderungen an das <strong>Referenz</strong>-<strong>Metaschema</strong> <strong>für</strong> <strong>visuelle</strong> <strong>Modellierungssprachen</strong> der<br />

Organisations und Softwaretechnik in Kapitel 6 fest.<br />

3.1 Klassifikationsschema <strong>für</strong> <strong>visuelle</strong><br />

<strong>Modellierungssprachen</strong><br />

Zur Darstellung der <strong>visuelle</strong>n <strong>Modellierungssprachen</strong> des Requirements-Engineering der Organisationstechnik<br />

und der Softwaretechnik wird im folgenden ein Klassifikationsschema eingeführt,<br />

daß eine möglichst umfassende Überblicksdarstellung dieser Beschreibungsmittel erlaubt, aber<br />

auch die Entwicklung eines <strong>Referenz</strong>-<strong>Metaschema</strong>s dieser Sprachen ermöglicht. [Partsch, 1998,<br />

S. 53ff] schlägt als mögliche Ordnungskriterien die Darstellungsform, den Grad der Präzision<br />

und die jeweils betrachtete Sicht (Systemaspekt) auf das zu beschreibende System vor.<br />

Nach der Darstellungform unterscheidet man textuelle und graphische Beschreibungen. Textuelle<br />

Beschreibungen werden in freie Texte und in durch Hervorhebungen, Einrückungen oder ähnliche<br />

Strukturierungsmittel systematisierte Texte unterschieden. Zu den systematisierten Texten<br />

gehören u. a. Pseudo-Code, Listen und Tabellen. Graphische Darstellungen verwenden einfache<br />

geometrische Objekte wie z. B. Punkte, Linien, Kreise und Rechtecke, die in ihrem Zusammenhang<br />

dargestellt werden. Einige Werkzeuge (z. B. das ARIS Toolset [IDS, 1998], Bonapart Professional<br />

[Pro Ubis, 1999b], System Architect 2001 [Popkin, 1999] oder Neptun/NetCase [Marx,<br />

1998]) unterstützen verschiedene Darstellungsformen, die neben diesen abstrakten Formen auch<br />

Piktogramme zur Beschreibung verwenden. Textuelle und graphische Mittel zur Darstellung organisatorischer<br />

und softwaretechnischer Zusammenhänge beschreiben häufig gleiche Inhalte und<br />

sind ineinander überführbar. So werden Aufgabengliederungen z. B. textuell durch Aufgabenli-


32 Visuelle <strong>Modellierungssprachen</strong> der Organisations- und Softwaretechnik<br />

sten und graphisch durch Funktionsbäume äquivalent dargestellt. Textuelle und graphische Darstellungen<br />

unterscheiden sich lediglich in ihrer konkreten Notation. Das <strong>Referenz</strong>-<strong>Metaschema</strong><br />

zielt jedoch auf eine Darstellung der konzeptionellen Zusammenhänge dieser Sprachen, so daß<br />

eine Klassifikation nach Darstellungsform in diesem Kontext nicht sinnvoll erscheint.<br />

Nach dem Grad der Präzision unterscheidet man formale, semiformale und informale Beschreibungsmittel.<br />

Unter formale Sprachen werden z. B. algebraische Spezifikationen [Ehrig / Mahr,<br />

1985], VDM [Jones, 1990] oder Z [Spivey, 1992] gefaßt, die vollständig auf algebraischen,<br />

mengentheoretischen und logischen Fundamenten aufbauen. In semi-formalen und informalen<br />

Beschreibungsmitteln tritt die mathematische Fundierung in den Hintergrund. Diese Sprachen<br />

sind eher auf Komm<strong>uni</strong>kation und weniger auf exakte, mathematische Formalisierungen ausgerichtet.<br />

Die weiteren Betrachtungen beziehen sich auf diese semi-formalen und informalen Sprachen.<br />

Diese Sprachen enthalten aber auch Bezüge zu formalen Beschreibungsformen wie z. B.<br />

prädikatenlogische Annotation an Objekt-Beziehungsdiagrammen oder durch Prädikate notierte<br />

Vor-/Nachbedingungen zur Methodenbeschreibung. Die Unterscheidung nach Grad der Präzision<br />

wird aufgrund des Betrachtungsschwerpunkts auf semiformalen und informalen Beschreibungsmitteln<br />

im weiteren nicht zur Klassifikation der Sprachen verwendet.<br />

Bei der Klassifikation nach der Sicht auf das betrachtete System stehen die von einzelnen <strong>Modellierungssprachen</strong><br />

besonders betonten Systemaspekte im Vordergrund. Ausgehend von verschiedenen<br />

Ansätzen zur Beschreibung von Soft- und Hardwareystem in EPOS stellt [Göhner,<br />

1984] hier die Aspekte Funktion, Ablauf, Ereignis, Datenfluß, Datenstruktur und Gerät heraus. In<br />

[Partsch, 1998, S. 44] werden dieses Aspekte weiter abstrahiert. Er gliedert die <strong>visuelle</strong>n <strong>Modellierungssprachen</strong><br />

des Requirements-Engineering nach System und Komponentenstrukturen, nach<br />

Kontrollaspekten und Steuerung und nach Abläufen und funktionalem Verhalten. Im Klassifikationssystem<br />

von [Scheer, 1994] zur Strukturierung der Sprachen zur Modellierung von Informationssystemen<br />

wird neben der Datensicht und der Funktionssicht noch die Organisationssicht<br />

ergänzt, in der strukturelle Aspekte der Organisationsmodellierung betrachtet werden. Datenund<br />

Funktionssicht entsprechen in etwa den Sichten aus [Partsch, 1998], wobei hier die Kontrollaspekte<br />

mit dem funktionalen Verhalten zusammengefaßt wurden. Eine ähnliche Sichteneinteilung<br />

verfolgen auch [Jablonski et al., 1997, S. 98ff]. Neben der Organisationssicht und der<br />

Informationssicht (Datensicht) analog zu Scheer werden hier die eher ablauforientierten Aspekte<br />

auf eine Funktionssicht, eineVerhaltenssicht und eine gegenüber Partsch zusätzliche Operationssicht<br />

aufgeteilt.<br />

3.1.1 Beschreibungssichten<br />

Auch wenn sich diese Sichteneinteilungen in ihren Bezeichnungen und den genauen Einteilungen<br />

der Sprachen unterscheiden, bieten sie ein gutes Strukturierungsmittel <strong>für</strong> die verschiedenen<br />

Beschreibungsmittel, so daß auch im folgenden eine Klassifikation der <strong>visuelle</strong>n <strong>Modellierungssprachen</strong><br />

nach Sichten verwendet wird. Unterschiedliche Darstellungsmittel heben jeweils einige<br />

Aspekte des zu modellierenden Systems hervor und blenden andere aus. Eine vollständige<br />

Darstellung aller zu untersuchenden Zusammenhänge erlaubt nur die gemeinsame Beschreibung<br />

aller Sichten.


3.1 Klassifikationsschema <strong>für</strong> <strong>visuelle</strong> <strong>Modellierungssprachen</strong> 33<br />

Beispiel 3.1 (Beschreibung einer Krankenhaus-Organisation aus verschiedenen Sichten)<br />

Abbildung 3.1 zeigt einen Ausschnitt einer Krankenhausinformationssystem-Modellierung<br />

aus vier verschiedenen Beschreibungssichten (vgl. [Winter / Ebert, 1997]).<br />

Der Ausriß des Aufgabengliederungsplans beschreibt die Aufgaben der Pflegedienstleitung<br />

(PDL) und deren Untergliederung. Das Organigramm skizziert die Abteilungsstruktur<br />

der Aufbauorganisation des Krankenhauses. Im Objekt-Beziehungsdiagramm ist ein<br />

Teil der Datenstrukturen <strong>für</strong> Patientendaten dargestellt. Einen Einblick in die Prozesse des<br />

Labors erlaubt das Datenflußdiagramm. Es beschreibt die Teilprozesse, die zur Befunderstellung<br />

nötig sind, einschließlich deren Datenaustauschbeziehungen und Einbettung in<br />

das Gesamtsystem Krankenhaus. £<br />

Organigramm<br />

PDL<br />

Innere Chirurgie Intensiv<br />

Station<br />

Station<br />

2 2<br />

Gruppe Gruppe<br />

Verwaltungsrat<br />

Datenflußdiagramm<br />

SO2<br />

ist<br />

Patient<br />

Aufnahme<br />

Von<br />

Name<br />

Adresse<br />

Krankenkasse<br />

basiert Auf<br />

Hausarzt<br />

Befund<br />

Laborbefund<br />

Therapieeinrichtung<br />

Anforderungsbeleg<br />

med.<br />

Daten<br />

Objekt-Beziehungsdiagramm<br />

*<br />

Anforderungsbeleg<br />

lesen<br />

Anforderungs-<br />

Intensiv Röntgenbelegaufnahme Befund<br />

Pflegeanamnese<br />

Patient<br />

Anforderung<br />

Pflege-<br />

Daten<br />

Pflegebericht<br />

Befund<br />

erstellen<br />

Untersuchungsergebnis<br />

Untersuchungdurchführen<br />

Personalbedarf<br />

erheben<br />

Personaleinsatz<br />

planen<br />

Arbeitszeiten<br />

überwachen<br />

Aufgabengliederungsplan<br />

Pflegekräfte<br />

auswahlen<br />

Pflegekräfte<br />

einsetzen<br />

Aushilfen<br />

einsetzen<br />

Nachtwache<br />

einsetzen<br />

Urlaubsanträge<br />

prüfen<br />

Abbildung 3.1: Beschreibung einer Krankenhaus-Organisation aus verschiedenen Sichten<br />

Mit Hilfe der vier Diagramme in Abbildung 3.1 wird das Krankenhaus aus Blickwinkeln zur<br />

Darstellung der Aufgabenstruktur, der Aufbaustruktur, der Prozeßstrukturen und der Objektstrukturen<br />

beschrieben. Diese vier Blickwinkel liefern auch die Strukturierung zur Betrachtung<br />

der verschiedenen Beschreibungsmittel in dieser Arbeit.


34 Visuelle <strong>Modellierungssprachen</strong> der Organisations- und Softwaretechnik<br />

Zur Klassifikation der <strong>visuelle</strong>n <strong>Modellierungssprachen</strong> <strong>für</strong> Organisationen und Softwaresysteme<br />

werden<br />

¯ die Aufgabensicht,<br />

¯ die Aufbausicht,<br />

¯ die Prozeßsicht und<br />

¯ die Objektsicht<br />

verwendet. In jeder dieser Sichten wird ein Aspekt der Organisation bzw. des Softwaresystems<br />

besonders hervorgehoben. In der Aufgabensicht sind dieses die Aufgaben, die durch die Organisation<br />

bzw. das Softwaresystem zu bearbeiten bzw. zu unterstützen sind. In den zuvor skizzierten<br />

Sichtenkonzepten wird diese Sicht als Teil der Funktionssicht zur Beschreibung des funktionalen<br />

Verhaltens oder als Teil statischer Organisations- oder Struktursichten betrachtet. Die Organisationseinheiten,<br />

die diese Aufgaben erledigen bzw. deren Arbeit durch Softwaresysteme unterstützt<br />

wird, werden in der Aufbaussicht 1 untersucht. Die Aufbausicht entspricht den Organisationssichten<br />

<strong>für</strong> den Entwurf von Informationssystemen nach [Scheer, 1994] oder von Workflowsystemen<br />

nach [Jablonski et al., 1997]. Die Prozeßsicht faßt die Funktionssicht, die Verhaltenssicht, die<br />

Operationssicht nach [Scheer, 1994] und [Jablonski et al., 1997] sowie die Kontroll- und Ablaufaspekte<br />

aus [Partsch, 1998] zusammen. Diese Sicht betont zeitliche und logische Prozeßabläufe<br />

in Organisationen und Softwaresystemen. Die Objektsicht hebt die Objekte der Organisation und<br />

der Softwaresysteme hervor. Diese Sicht umfaßt die Daten- oder Informationssicht aus [Scheer,<br />

1994] oder [Jablonski et al., 1997].<br />

3.1.2 Beschreibungsparadigmen<br />

Zur Einordnung der <strong>visuelle</strong>n <strong>Modellierungssprachen</strong> reicht die Sichteneinteilung noch nicht<br />

aus, da zur Darstellung aus einer Sicht auch konzeptionell verschiedene Beschreibungsmuster<br />

verwendet werden. Zur Modellierung der Organisationseinheiten aus Aufbausicht werden<br />

z. B. Organigramme verwendet, die hierarchische Strukturbeziehungen darstellen. Ebenso finden<br />

hier auch Komm<strong>uni</strong>kationsdiagramme zur Modellierung von Komm<strong>uni</strong>kationsbeziehungen Verwendung.<br />

Modellierungen aus Prozeßsicht verwenden datenflußorientierte Beschreibungsmittel<br />

(z. B. SADT-Diagramme), zustandsübergangsorientierte Beschreibungsmittel (z. B. Statecharts)<br />

netzartige Beschreibungsmittel (z. B. Netzpläne) oder kontrollflußorientierte Beschreibungsmittel<br />

(z. B. Nassi-Shneiderman-Diagramme). Aus Objektsicht werden sowohl schematische Beschreibungen<br />

(z. B. Klassendiagramme) als auch Instanzbeschreibungen (z. B. Objektdiagramme<br />

oder Interaktionsdiagramme) zur Darstellung von Objektzusammenhängen eingesetzt.<br />

Die Beschreibungsmittel einer Sicht folgen unterschiedlichen Paradigmen. Ähnlich wie Programmiersprachen<br />

nach dem imperativen, dem funktionalen oder dem logischen Sprachparadgima<br />

klassifiziert werden können, kann dieses auch <strong>für</strong> die hier betrachteten <strong>Modellierungssprachen</strong><br />

erfolgen. Während durch die Sichten festgelegt wird, welche Konzepte hervorgehoben<br />

werden, wird durch die Paradigmen die Art der Beziehungen zwischen diesen Konzepten unterschieden.<br />

1 Der Begriff Organisationssicht, der i. allg. auf aufbauorganisatorische Zusammenhänge eingeschränkt verwendet<br />

wird, wird hier nicht genutzt, da der Organisationsbegriff dieser Arbeit weiter gefaßt ist.


3.1 Klassifikationsschema <strong>für</strong> <strong>visuelle</strong> <strong>Modellierungssprachen</strong> 35<br />

Sprachen des Softwareentwurfs werden in [Ebert / Engels, 1994] entlang des Datenflußparadigmas,desZustandsübergangsparadigmas,desKontrollflußparadigmas,desModulparadigmas<br />

und des Objekt-Beziehungsparadigmas eingeordnet. Hierbei beziehen sich die ersten drei Paradigmen<br />

auf die Beschreibungsmittel der Prozeßsicht. Beziehungen zwischen einzelnen Aktivitäten<br />

oder Prozessen 2 werden hierbei entweder durch Datenflüsse, durch Zustandsübergänge oder<br />

durch Kontrollflüsse dargestellt. Das Modulparadigma und das Objekt-Beziehungsparadigma<br />

stellen grundlegende Beschreibungsparadigmen der Objektsicht dar. Objekte werden hier einschließlich<br />

ihrer Beziehungen schematisch beschrieben. Gegenüber dem Objekt-Beziehungsparadigma<br />

kann das Modulparadigma als Spezialfall aufgefaßt werden, in dem spezielle Objektund<br />

Beziehungsklassen zur Darstellung von Modulen und hierzwischen vorliegende Benutzungsbeziehungen<br />

betrachtet werden.<br />

3.1.3 Beschreibungssichten und -paradigmen<br />

Diese Paradigmen werden auch <strong>für</strong> die feinere Einordnung der hier behandelten Sprachen innerhalb<br />

der vier Sichten übernommen. Für die Betrachtung der Sprachen zur Organisationsmodellierung<br />

und Softwareentwicklung werden Paradigmen <strong>für</strong> die Prozeß- und Objektsicht ergänzt.<br />

Ebenso werden <strong>für</strong> die in [Ebert / Engels, 1994] nicht betrachtete Aufgaben- und Aufbausicht<br />

jeweils eigene Paradigmen eingeführt:<br />

¯ Aus Aufgabensicht werden die Aufgaben einer Organisation oder eines Softwaresystems<br />

betont. Die Darstellung hierarchischer Gliederungen von Aufgaben in Teilaufgaben erfolgt<br />

entlang des Aufgabengliederungsparadigmas.<br />

¯ Bei der Beschreibung aus Aufbausicht werden Organisationseinheiten, d. h. Stellen und<br />

Abteilungen, betrachtet. Nach der Art der Beziehungen zwischen den organisatorischen<br />

Einheiten werden das Stellengliederungsparadigma und das Komm<strong>uni</strong>kationsparadigma<br />

unterschieden. Untergliederungen organisatorischer Einheiten sowie Leitungs- und Weisungsbeziehungen<br />

werden mit den Beschreibungsmitteln des Stellengliederungsparadigmas<br />

beschrieben. Komm<strong>uni</strong>kations- und Interaktionsbeziehungen zwischen Stellen oder<br />

Abteilungen werden durch die Sprachen des Komm<strong>uni</strong>kationsparadigmas notiert.<br />

¯ Neben dem Datenfluß-,demZustandsübergangs- und dem Kontrollflußparadigma ergänzt<br />

das Netzparadigma die Paradigmen der Prozeßsicht zur Beschreibung zeitlicher oder logischer<br />

Abläufe. Die Sprachen des Netzparadigmas beschreiben Prozeßzusammenhänge<br />

durch ein Netz von durch Flußbeziehungen verbundenen aktiven und/oder passiven Komponenten<br />

(Prozesse und Ereignisse).<br />

2 Im Sprachgebrauch der Softwaretechnik werden diese Aktivitäten auch als Prozesse bezeichnet. Dieser Prozeßbegriff<br />

unterscheidet sich aber deutlich vom Prozeß- oder Geschäftsprozeß-Begriff der Organisationstechnik,<br />

der ablauforientierte Zusammenfassungen von Aufgaben bezeichnet (vgl. <strong>Se</strong>ite 18). Ähnliches gilt <strong>für</strong> den Begriff<br />

Funktion. Während dieser in der Informatik als mathematische Funktion verstanden wird, durch die Werte<br />

eines Eingabewertebereichs in Werte eines Ausgabewertebereichs transformiert werden, faßt die Organisationstechnik<br />

Funktionen eher als aufbauorientierte Zusammenfassungen von Aufgaben auf. Soweit die Verwendung<br />

dieser Begriff aus dem Kontext erschließbar ist, werden sie sowohl <strong>für</strong> softwaretechnische als auch <strong>für</strong> organisationstechnische<br />

Zusammenhänge verwendet.


36 Visuelle <strong>Modellierungssprachen</strong> der Organisations- und Softwaretechnik<br />

¯ Die Objekte, die eine Organisation oder ein Softwaresystem bilden, und deren Zusammenhänge<br />

werden aus der Objektsicht beschrieben. Zur Modellierung von Objekten<br />

gibt es Darstellungsmittel sowohl auf Schema- als auch auf Instanzebene. Das<br />

Objekt-Beziehungsparadigma 3 zur Beschreibung schematischer Objektzusammenhänge<br />

wird noch um das Objekt-Instanzparadigma und das Objekt-Interaktionsparadigma ergänzt.<br />

Die Sprachen des Objekt-Instanzparadigmas werden zur exemplarischen Darstellung<br />

von konkreten Objekten und deren statischen Beziehungen verwendet. Mit den Beschreibungsmittel<br />

des Objekt-Interaktionsparadigmas wird der Nachrichtenaustausch zwischen<br />

Objekten dargestellt.<br />

Abbildung 3.2 faßt das im folgenden verwendete Schema zur Klassifikation der <strong>visuelle</strong>n <strong>Modellierungssprachen</strong><br />

<strong>für</strong> Organisationen und Softwaresysteme zusammen. Zu den vier Beschreibungssichten<br />

werden jeweils die zentralen Komponenten und ihre Beschreibungsparadigmen angegeben.<br />

Überblicksdarstellungen zu Beschreibungssichten und -paradigmen bieten auch [Ebert<br />

/ Engels, 1994], [Winter / Ebert, 1996] und [Winter, 1996].<br />

Dieses Klassifikationsschema ist nicht als starres, <strong>uni</strong>versell gültiges Raster zur Einordnung von<br />

Beschreibungsmitteln zu betrachten. Auch andere Schemata sind begründbar. So wird in [Ebert<br />

/ Engels, 1994] <strong>für</strong> netzartige Beschreibungsmittel der Prozeßsicht kein eigenes Paradigma eingeführt.<br />

Notationen wie z. B. Netzgraphen der Petri-Netze werden hier unter das Datenflußparadigma<br />

gefaßt. Diese Einordnung erfolgte aus der Anschauung heraus, daß in Netzgraphen der<br />

Stellen-Transitions-Netze eine datenflußartige Komm<strong>uni</strong>kation zwischen Petri-Netz-Stellen vorliegt.<br />

Petri-Netz-Stellen können aber auch als Zustände aufgefaßt werden, wonach eine Einordnung<br />

unter das Zustandsübergangsparadigma begründet werden kann. Ähnlich könnte auch aus<br />

den in Netzgraphen modellierten Abfolgen von Schaltvorgängen eine Zuordnung in das Kontrollflußparadigma<br />

abgeleitet werden. Da auf Prozeßbeschreibungen durch bipartite Graphen, in<br />

denen Abläufe durch die Interaktion passiver Komponenten (Zustände, Stellen etc.) und aktiver<br />

Komponenten (Prozesse, Transitionen etc.) modelliert werden, auch andere Beschreibungsmittel<br />

basieren, kann ebenfalls — wie in der hier verwendeten Klassifikation — eine eigene Sicht<br />

gerechtfertigt werden.<br />

Das Kontrollflußparadigma nach [Ebert/Engels, 1994] umfaßt auch Ablaufdarstellungen, die nahezu<br />

beliebige Prozeßfolgen erlauben. Das im folgenden verwendete Kontrollflußparadigma ist<br />

dagegen ausschließlich auf regulär strukturierte Folgedarstellungen durch <strong>Se</strong>quenzen, Verzweigungen<br />

und Iterationen beschränkt. Darstellungen beliebiger Prozeßfolgen wie beispielsweise<br />

durch Aufgabenfolgepläne oder (generelle) Programmablaufpläne werden hier unter das Netzparadigma<br />

gefaßt. Diese Beschreibungsmittel verwenden ähnliche Mittel zur Beschreibung der<br />

Folgestrukturen wie auch die Notationsformen, die aktive und passive Komponenten deutlich<br />

unterscheiden, reduzieren die Darstellung jedoch auf die aktiven Komponenten (vgl. z. B. die<br />

Grundmuster zur Darstellung von Folgestrukturen in [Schmidt, 1989, S. 301ff] und [Keller et al.,<br />

1992, Abb. 4]).<br />

Diese Entscheidungsspielräume sind nicht auf die Paradigmen einer Sicht begrenzt. Die <strong>visuelle</strong>n<br />

Sprachen beispielsweise des Objekt-Interaktionsparadigmas wurden hier der Objektsicht zugeordnet.<br />

Diese Einteilung stellt die Objekte, zwischen denen Nachrichten ausgetauscht werden, in<br />

3 Ein korrekterer Name <strong>für</strong> dieses Paradigma wäre sicherlich Objektklassen-Beziehungsklassenparadigma. Im<br />

allgemeinen Sprachgebrauch bezogen auf die Beschreibungsmittel hat sich der Hinweis auf den schematischen<br />

Beschreibungsinhalt außer bei NIAM-Informationsstruktur-Diagrammen nicht durchgesetzt.


3.1 Klassifikationsschema <strong>für</strong> <strong>visuelle</strong> <strong>Modellierungssprachen</strong> 37<br />

Aufgabensicht: (Aufgaben)<br />

¯ Aufgabengliederungsparadigma:<br />

Untergliederung von Aufgaben in Teilaufgaben<br />

Aufbausicht: (Organisationseinheiten)<br />

¯ Stellengliederungsparadigma:<br />

Untergliederung von Organisationseinheiten<br />

¯ Komm<strong>uni</strong>kationsparadigma:<br />

Interaktionsstrukturen zwischen Organisationseinheiten<br />

Prozeßsicht: (Prozesse)<br />

¯ Datenflußparadigma<br />

Prozeßdarstellungen durch Datenflüsse<br />

¯ Zustandsübergangspardigma<br />

Prozeßdarstellungen durch Zustandsveränderungen<br />

¯ Netzparadigma:<br />

Prozeßdarstellungen durch netzartige Folgestrukturen<br />

¯ Kontrollflußparadigma<br />

Prozeßdarstellungen durch reguläre Folgestrukturen<br />

Objektsicht: (Objekte)<br />

¯ Objekt-Instanzparadigma<br />

Zusammenhänge zwischen Objektinstanzen<br />

¯ Objekt-Interaktionsparadigma<br />

Interaktionsbeziehungen zwischen Objektinstanzen<br />

¯ Objekt-Beziehungsparadigma<br />

Zusammenhänge zwischen Objekt- und Beziehungsstrukturen<br />

Abbildung 3.2: Beschreibungssichten und Paradigmen<br />

den Vordergrund. In der Unified Modeling Language [Booch et al., 1999] werden die Sprachen<br />

des Objekt-Interaktionsparadigmas als Mittel zur Beschreibung der Systemdynamik eingeführt.<br />

Dieser Einordung liegt die Anschauung zugrunde, daß durch diese Beschreibungsmittel in erster<br />

Linie der Kontrollfluß des Nachrichtenaustauschs zwischen Objekten beschrieben wird.


38 Visuelle <strong>Modellierungssprachen</strong> der Organisations- und Softwaretechnik<br />

Die Festlegung der Paradigmen ist, wie auch die Definition der verwendeten Sichten, einer gewissen<br />

„Willkür“ unterworfen, die jedoch aus dem individuellen Standpunkt des Modellierers<br />

heraus begründbar ist.<br />

3.1.4 Visuelle <strong>Modellierungssprachen</strong><br />

Anstatt alle unterschiedlichen <strong>visuelle</strong>n <strong>Modellierungssprachen</strong> der Organisationsbeschreibung<br />

und des Softwareentwurfs einzeln zu beschreiben (vgl. z. B. [Grupp, 1990]) erlaubt das Klassifikationsschema<br />

aus Abbildung 3.2 eine kompaktere Betrachtung entlang der jeweils abgebildeten<br />

Konzepte. Abbildung 3.3 ordnet diese Beschreibungsmittel den einzelnen Darstellungsparadigmen<br />

zu.<br />

Gleiche Beschreibungsmittel werden häufig unterschiedlich bezeichnet. Aufgabengliederungspläne<br />

werden auch als Funktionsbäume bezeichnet, und Struktogramme sind auch als Nassi-<br />

Shneiderman-Diagramme bekannt. Manche Beschreibungsmittel können (notationell) als Erweiterungen<br />

anderer Sprachen aufgefaßt werden. So sind Statecharts allgemeinere Zustandsübergangsdiagramme,<br />

die lediglich kompakter notiert werden. Ähnlich verhält es sich mit Objekt-<br />

Beziehungsdiagrammen, die zu erweiterten Objekt-Beziehungsdiagrammen und Klassendiagrammen<br />

weiter entwickelt wurden. Andere Sprachen können als (notationelle) Einschränkungen<br />

einer Grundform betrachtet werden. Datenlexika entsprechen konzeptionell den Beschreibungen<br />

durch erweiterte Objekt-Beziehungsdiagramme, die auf die Beschreibung durch Attributierungen,<br />

Generalisierungen und Aggregationen eingeschränkt sind. Darstellungen durch<br />

Ablaufkarten oder Programmablaufpläne entsprechen in ähnlicher Weise Stimulus-Response-<br />

Darstellungen verkürzt um die Stimuli. Auch haben unterschiedliche <strong>Modellierungssprachen</strong> gelegentlich<br />

denselben Namen. Unter den Begriff „Objektdiagramm“ werden bei [Rumbaugh et<br />

al., 1991, S. 23] sowohl Darstellungen auf der Instanzebene (Instanzdiagramme) als auch auf<br />

Schemaebene (Klassendiagramme) gefaßt. [Booch, 1994, S. 208ff] verwendet „Objektdiagramme“<br />

zur Beschreibung der Interaktion zwischen Objekten. In [Booch et al., 1999] beziehen sich<br />

Objektdiagramme, wie auch in dieser Arbeit, ausschließlich auf die Darstellung des statischen<br />

Zusammenhangs von Instanzen.<br />

Nicht alle <strong>visuelle</strong>n <strong>Modellierungssprachen</strong> lassen sich eindeutig direkt einer Beschreibungssicht<br />

oder einem Paradigma zuordnen. So gibt es auch multiparadigmatische Sprachen. Vorgangskettendiagramme<br />

und erweiterte Ereignisgesteuerte Prozeßketten beschreiben Vorgangsfolgen sowohl<br />

aus Prozeßsicht, aus Objektsicht und aus Aufbausicht. Mit diesen Diagrammen werden<br />

Organisationen aus diesen Sichten in „zusammenhängender Form“ [Scheer, 1992, S. 57] abgebildet.<br />

Zentrales Element sind jedoch alternierende Folgen von Ereignissen und Vorgängen, die<br />

jeweils um Elemente aus der Objekt- und der Aufbausicht ergänzt werden. Vorgangskettendiagramme<br />

werden daher als Beschreibungsmittel des Netzparadigmas der Prozeßsicht eingestuft.<br />

Ähnlich verhält es sich mit Funktionendiagrammen. Diese stellen die Querbezüge zwischen Aufgaben<br />

und Organisationseinheiten einschließlich der jeweiligen Gliederungen dar. Funktionendiagramme<br />

erlauben somit eine übergreifende Darstellung aus Aufgaben- und Aufbausicht. Für<br />

die weiteren Betrachtungen wird diese Notationsform dem Stellengliederungsparadigma zugeordnet.


3.1 Klassifikationsschema <strong>für</strong> <strong>visuelle</strong> <strong>Modellierungssprachen</strong> 39<br />

Aufgabensicht<br />

Paradigma Beschreibungsmittel<br />

Aufgabengliederungsparadigma Aufgabengliederungspläne, Aufgabengliederungsschaubilder,<br />

Aufgabenlisten, Aufgabenstrukturbilder, Aufgabenstrukturbäume,<br />

Funktionsbäume, Funktionshierarchiediagramme,<br />

Funktionsstrukturdiagramme<br />

Aufbausicht<br />

Paradigma Beschreibungsmittel<br />

Stellengliederungsparadigma Abteilungsgliederungspläne, Funktionendiagramme, Organigramme,<br />

Organisationspläne, Organisationsschaubilder,<br />

Stellenbeschreibungen, Stellengliederungspläne, Stellenpläne,<br />

Strukturpläne<br />

Komm<strong>uni</strong>kationsparadigma Komm<strong>uni</strong>gramme, Komm<strong>uni</strong>kationsdiagramme, Komm<strong>uni</strong>kationsgraphen,<br />

Komm<strong>uni</strong>kationstabellen, Kooperationsbilder<br />

Prozeßsicht<br />

Paradigma Beschreibungsmittel<br />

Datenflußparadigma Anwendungsfalldiagramme, Bonapart Prozeßmodelle, Bubble-Charts,<br />

Datenflußdiagramme, Datenflußpläne, Funktionszuordnungsdiagramme,<br />

IDEF0-Diagramme, Kontextdiagramme,<br />

SADT-Aktivitätsdiagramme, SADT-Datendiagramme,<br />

Verkehrsschaubilder<br />

Zustandsübergangsparadigma (hierarchische) Automaten, IDEF3-Zustandsübergangsdiagramme,<br />

Statecharts, Zustandsautomaten, Zustands-(übergangs)-<br />

Diagramme, Zustands-(übergangs)-Matrizen, Zustandsübergangstabellen<br />

Netzparadigma Ablaufkarten, Aktivitätsdiagramme, Aufgabenfolgepläne, Balkendiagramme,<br />

(erweiterte) Ereignisgesteuerte Prozeßketten,<br />

Folgestrukturen, Folgepläne, IDEF3-Prozeßflußdiagramme,<br />

Netzgraphen, Netzpläne, Petri-Netze, Programmablaufpläne,<br />

Stimulus-Response-Folgen, Vorgangskettendiagramme<br />

Kontrollflußparadigma Entscheidungstabellen, Jackson-Diagramme, Nassi-Shneiderman-Diagramme,<br />

Pseudo-Code, Struktogramme, Warnier-Orr-<br />

Diagramme<br />

Objektsicht<br />

Paradigma Beschreibungsmittel<br />

Objekt-Instanzparadigma Instanzdiagramme, Objektdiagramme<br />

Objekt-Interaktionsparadigma Ereignisflußdiagramme, Ereignispfaddiagramme, Interaktionsdiagramme,<br />

Kollaborationsdiagramme, Message-<strong>Se</strong>quence-<br />

Charts, Objektdiagramme, <strong>Se</strong>quenzdiagramme<br />

Objekt-Beziehungsparadigma Datenlexika, (erweiterte) Entity-Relationship-Diagramme,<br />

(erweiterte) Objekt-Beziehungs-Diagramme, IDEF1X-<br />

Datenmodelle, Jackson-Diagramme, Klassendiagramme,<br />

NIAM-Informationsstruktur-Diagramme<br />

Abbildung 3.3: Sichten, Paradigmen und Beschreibungsmittel


40 Visuelle <strong>Modellierungssprachen</strong> der Organisations- und Softwaretechnik<br />

In den Kapiteln 3.2 bis 3.5 werden die wesentlichen <strong>visuelle</strong>n <strong>Modellierungssprachen</strong> der Aufgabensicht,<br />

der Aufbausicht, der Prozeßsicht und der Objektsicht entlang der Paradigmen vorgestellt.<br />

Ausgehend von einer heute üblichen Notation werden verschiedene notationelle Varianten<br />

der einzelnen Darstellungsparadigmen diskutiert und hieraus Forderungen an das <strong>Referenz</strong>-<br />

<strong>Metaschema</strong> abgeleitet.<br />

3.2 Visuelle Modellierungsprachen der Aufgabensicht<br />

Untersuchungsgegenstand der Aufgabensicht sind die Aufgaben (oder Funktionen), die durch<br />

Organisationen zu bearbeiten bzw. durch Softwaresysteme zu unterstützen sind. Aufgaben bezeichnen<br />

klar umrissene, zielorientierte Handlungsweisen innerhalb eines größeren Zusammenhangs<br />

[Balzert, 1996a, S. 116], die durch eine Verrichtung an einem Objekt charakterisiert sind<br />

[Nordsieck, 1962, S. 13], [Kosiol, 1976, S. 43]. Hierbei beschreibt die Verrichtung den Vorgang<br />

oder Prozeß, der zur Aufgabenerledigung durchzuführen ist. Das Objekt bezeichnet die Klasse<br />

der Gegenstände, an denen die Verrichtung durchgeführt wird.<br />

Zur Beschreibung von Aufgaben sind folglich deren Verrichtungs- und Objektkomponenten darzustellen.<br />

Eine Aufgabenbeschreibung kann optional um weitere Aufgabenaspekte ergänzt werden<br />

(vgl. [Kosiol, 1976, S. 43] und [Hub / Fischer, 1977, S. 15]). Der Aspekt Raum gibt an, wo<br />

die Aufgabenerledigung stattfindt. Zeitliche Aspekte werden unterschieden in den Zeitpunkt, zu<br />

dem die Aufgabenerfüllung stattfindet, und die Dauer, die zur Umsetzung benötigt wird. Der<br />

Umfang einer Aufgabe wird durch die Anzahl der zu bearbeitenden Objekte bestimmt. Sachund<br />

Arbeitsmittel, die zur Aufgabenerledigung benötigt oder eingesetzt werden, werden unter<br />

dem Aspekt Hilfsmittel zusammengefaßt.<br />

Zu beschreibende Aufgaben können beliebig komplex werden. Zur Bewältigung dieser Komplexität<br />

ist es üblich, diese Aufgaben in Teilaufgaben mit geringerer Komplexität zu zerlegen.<br />

Die <strong>visuelle</strong>n <strong>Modellierungssprachen</strong> des Aufgabengliederungsparadigmas dokumentieren diese<br />

Zerlegungen in Teilaufgaben.<br />

3.2.1 Visuelle Modellierungsprachen des<br />

Aufgabengliederungsparadigmas<br />

Eine Aufgabengliederung beschreibt die Zerlegung einer Aufgabe in Teilaufgaben. Diese Zerlegungen<br />

werden so lange wiederholt, bis Elementaraufgaben ermittelt sind, die nicht weiter untergliedert<br />

sind. Wird die Aufgabengliederung im Rahmen einer Aufgabenanalyse zur Vorbereitung<br />

der Stellenbildung bzw. der Prozeßgestaltung durchgeführt, sind diese Elementaraufgaben dann<br />

erreicht, wenn sie einem einzigen Aufgabenträger zugeordnet werden können [Hub / Fischer,<br />

1977, S. 18] bzw. elementare Handlungen beschreiben. Dient die Aufgabengliederung zur Zerlegung<br />

eines softwaretechnischen Problems in unabhängige Module, bricht die Gliederung bei<br />

solchen Teilaufgaben ab, die durch einzelne Methoden oder Funktionen implementiert werden<br />

können.<br />

Notiert werden diese Aufgabenzerlegungen durch Aufgabengliederungspläne, Aufgabengliederungsschaubilder,<br />

Aufgabenlisten, Aufgabenstrukturbilder und durch Funktionsbäume.


3.2 Visuelle Modellierungsprachen der Aufgabensicht 41<br />

Notationelle Grundform: Aufgabengliederungsplan<br />

Zur Darstellung von Aufgabengliederungen werden baumartige Diagrammformen verwendet,<br />

in denen die einzelnen Aufgaben als Knoten dargestellt sind. Die Verbindungen zwischen diesen<br />

Knoten beschreiben die Zerlegungsbeziehungen, die i. allg. von oben nach unten oder von<br />

links nach rechts gelesen werden. Um die Objekt- und Verrichtungskomponenten einer Aufgabe<br />

zu verdeutlichen, sollten die Aufgaben durch Verbalphrasen bezeichnet werden. Beispiel 3.4<br />

skizziert eine solche Zerlegung der Aufgaben der Radiologie eines Krankenhauses in einem Aufgabengliederungsplan<br />

(vgl. [Schumm et al., 1995]).<br />

Standards<br />

erstellen<br />

Aufnahmen<br />

ausleihen<br />

Archivanforderung<br />

bearbeiten<br />

Aufnahmen<br />

kopieren<br />

Anforderung<br />

bearbeiten<br />

Röntgenuntersuchung<br />

durchführen<br />

Untersuchung<br />

abrechnen<br />

Leistungen<br />

der Radiologie<br />

durchführen<br />

CTuntersuchung<br />

durchführen<br />

Patient<br />

anmelden<br />

Qualität und<br />

Leistung<br />

kontrollieren<br />

Untersuchungsanforderung<br />

bearbeiten<br />

MRuntersuchung<br />

durchführen<br />

Patient<br />

vorbereiten<br />

Abbildung 3.4: Aufgabengliederungsplan<br />

Angiographieuntersuchung<br />

durchführen<br />

Patient<br />

untersuchen<br />

Material<br />

beschaffen<br />

Szintigraphieuntersuchung<br />

durchführen<br />

Die Gliederung von Aufgaben in Teilaufgaben kann entlang mehrerer Grundmuster (vgl. [Nordsieck,<br />

1962, S. 14], [Kosiol, 1976, S. 49ff], [Hub / Fischer, 1977, S. 19ff]) erfolgen. Ein wesentliches<br />

Gliederungskriterium bieten die Aufgabenkomponenten Verrichtung und Objekt. Bei der<br />

Gliederung nach Verrichtungen werden einzelne Tätigkeiten unterschieden, die zur Erledigung<br />

der Gesamtaufgabe nötig sind. Analog erfolgt die Gliederung nach Objekten durch Konkretisieren<br />

der (Teil-) Objekte, die zur Aufgabenerfüllung bearbeitet werden müssen. Unabhängig<br />

von der betrachteten Komponente kann eine Aufgabe in solche Teilaufgaben zerlegt werden,<br />

die alle zur Aufgabenerledigung zu erfüllen sind (Und-Gliederung) oder die Alternativen in der<br />

Aufgabenerledigung darstellen (Oder-Gliederungen).<br />

[Kosiol, 1976, S. 52ff] schlägt als weitere Gliederungsmerkmale noch den Rang, die Phase und<br />

den Zweck vor. Hieraus resultierende Aufgabengliederungen können als Spezialfälle der Und-<br />

Verrichtungsgliederung aufgefaßt werden, bei denen die Verrichtungen Leiten, Planen, Kontrollieren,<br />

Verwalten und Ausführen unterschieden werden. Gliederungen nach Rang zerlegen Aufgaben<br />

in Teilaufgaben, die die Koordination der Gesamtaufgabe (Leitungsaufgabe) von der eigentlichen<br />

Ausführung (Ausführungsaufgabe) unterscheiden. Das Kriterium Phase gliedert Auf-


42 Visuelle <strong>Modellierungssprachen</strong> der Organisations- und Softwaretechnik<br />

gaben in Planungs-, Ausführungs- und Kontrollaufgaben. Planungsaufgaben umfassen hierbei<br />

die Aufgabenerfüllung vorbereitende und Kontrollaufgaben nachbereitende Tätigkeiten. Nach<br />

dem Kriterium des Zwecks werden Aufgaben in primäre Aufgaben (Ausführungsaufgaben) und<br />

in sekundäre Aufgaben (Verwaltungsaufgaben) zur Unterstützung der Ausführungsaufgaben unterschieden<br />

(vgl. auch [Nordsieck, 1962, S. 14f], Ausgliederung der Verwaltungsaufgaben).<br />

In der Praxis treten Aufgabengliederungen auch in Mischformen auf. Die zuvor skizzierten Gliederungskriterien<br />

liefern aber ein geeignetes Raster zur Durchführung von Aufgabengliederungen.<br />

Zur Erstellung einer Aufgabengliederung ist <strong>für</strong> jede Aufgabe zu entscheiden, nach welchem<br />

Kriterium sie geeignet zerlegt wird. Sind die zur Erfüllung einer Aufgabe nötigen Verrichtungen<br />

stärker voneinander abhängig als die zu bearbeitenden Objekte, sollte die Gliederung entlang der<br />

Verrichtung erfolgen, andernfalls entlang des Objekts [Nordsieck, 1962, S. 14]. Als grundsätzliches<br />

Vorgehen zur Aufgabengliederung schlägt [Krüger, 1981] vor, zunächst zu überprüfen,<br />

ob durch die Aufgabe unterschiedliche, selbständige Objekte alternativ zueinander bearbeitet<br />

werden. In diesem Fall bietet sich eine Oder-Objekt-Gliederung an. Besteht das Objekt aus mehreren<br />

unterschiedlichen Teilobjekten, die getrennt bearbeitet werden können, sollte die Aufgabe<br />

durch eine Und-Objekt-Gliederung strukturiert werden. Gibt es verschiedene Verfahren zur Bearbeitung<br />

des Objekts, bietet sich die Oder-Verrichtungs-Gliederung an. Andernfalls sollte eine<br />

Und-Verrichtungsgliederung vorgenommen werden.<br />

Beispiel 3.2 (Gliederung der Aufgaben der Radiologie)<br />

Die Gliederung der Aufgaben der Radiologie aus Abbildung 3.4 erfolgte entlang der zuvor<br />

skizzierten Kriterien. Die Aufgabe der Radiologie (Leistungen der Radiologie durchführen)<br />

wird zunächst entlang der Phase in die Planungsaufgabe Standards erstellen, die<br />

Ausführungsaufgabe Anforderung bearbeiten und die Kontrollaufgabe Qualität und Leistung<br />

kontrollieren unterteilt. Ergänzt wird diese Gliederung um die Verwaltungsaufgabe<br />

Material beschaffen. Diese Teilaufgaben stellen eine Und-Verrichtungs-Gliederung der<br />

Hauptaufgabe dar.<br />

Anforderungen an die Radiologie können sich sowohl auf die Aufnahmen aus dem Archiv<br />

als auch auf die durchzuführende Untersuchungen beziehen. Die Bearbeitung der<br />

Anforderungen wird daher entlang der Objekte Archivanforderung und Untersuchungsanforderung<br />

in die Teilaufgaben Archivanforderung bearbeiten und Untersuchungsanforderung<br />

bearbeiten oder-gegliedert. Archivanforderungen können unterschieden werden in<br />

die Verrichtungen Ausleihen oder Kopieren. Hiernach ergeben sich die oder-gegliederten<br />

Teilaufgaben Aufnahmen ausleihen und Aufnahmen kopieren.<br />

Nach dem Zweck wird die Bearbeitung einer Untersuchungsanforderung zunächst in die<br />

Verwaltungsaufgabe Untersuchung abrechnen und die Ausführungsaufgaben Patient anmelden,<br />

Patient vorbereiten und Patient untersuchen zerlegt. Die Gliederung der Ausführungsaufgaben<br />

erfolgt hierbei nach den Verrichtungen Anmelden, Vorbereiten und<br />

Untersuchen. Die weitere Verfeinerung der Untersuchung erfolgt entlang der benötigten<br />

Hilfsmittel. In Radiologischen Abteilungen werden hierzu u. a. Röntgenaufnahmen,<br />

Computer-Tomographen-Bilder, Magnet-Resonanz-Bilder, Angiografie-Bilder oder Szintigramme<br />

verwendet. Eine Oder-Verrichtungs-Gliederung nach diesen Hilfsmitteln ergibt<br />

die Teilaufgaben Röntgenuntersuchung durchführen, CT-Untersuchung durchführen, MR-<br />

Untersuchung durchführen, Angiographieuntersuchung durchführen und Szintigraphieuntersuchung<br />

durchführen. £


3.2 Visuelle Modellierungsprachen der Aufgabensicht 43<br />

Notationelle Varianten<br />

Zur Darstellung solcher Aufgabenzerlegungen gibt es weitere Notationsformen, die in ihrer<br />

Grundform jedoch alle der baumartigen Darstellung aus Abbildung 3.4 entsprechen. Abbildung<br />

3.5 skizzierte einige dieser notationellen Varianten anhand der Aufgabe Untersuchungsanforderung<br />

bearbeiten.<br />

Gliederung nach<br />

Verrichtung<br />

Gliederung nach<br />

Verrichtung<br />

Untersuchungs<br />

forderung<br />

bearbeiten<br />

Gliederung nach<br />

Verrichtung<br />

Ausgliederung der<br />

Verwaltungsaufgaben<br />

Patient<br />

anmelden<br />

Patient<br />

vorbereiten<br />

Patient<br />

untersuchen<br />

Untersuchung<br />

abrechnen<br />

a) Aufgabengliederungsplan<br />

in Pyramidenform<br />

Untersuchungsanforderung bearbeiten<br />

Patient anmelden<br />

Patient vorbereiten<br />

Patient untersuchen<br />

Untersuchung abrechnen<br />

c) Aufgabenliste<br />

1.3.2 / 8<br />

Untersuchungsanforderung<br />

bearbeiten<br />

1.3.2.1 - 11 1.3.2.2 - 12 1.3.2.3 - 13 1.3.2.4 - 14<br />

Patient<br />

anmelden<br />

Untersuchungsanforderung<br />

bearbeiten<br />

Patient<br />

vorbereiten<br />

Patient<br />

untersuchen<br />

Untersuchung<br />

abrechnen<br />

b) Aufgabengliederungsplan durch Rasterblatt<br />

d) Strukturbild in<br />

Terrassenform<br />

Patient<br />

anmelden<br />

Patient<br />

vorbereiten<br />

Patient<br />

untersuchen<br />

Untersuchung<br />

abrechnen<br />

Untersuchungsanforderung<br />

bearbeiten<br />

Abbildung 3.5: Aufgabengliederungspläne, notationelle Varianten<br />

Patient<br />

anmelden<br />

Patient<br />

vorbereiten<br />

Patient<br />

untersuchen<br />

Untersuchung<br />

abrechnen<br />

e) Aufgabengliederungsplan<br />

in Blockdarstellung<br />

Die baumartige Gliederung der Aufgaben erfolgt häufig auch horizontal von links nach rechts.<br />

Hierbei werden Pyramidenformen, bei der die gegliederte Aufgabe zentriert zu den Teilaufgaben<br />

dargestellt wird (vgl. Abbildung 3.5a) und Terrassenformen, bei denen die Teilaufgaben<br />

unterhalb der Aufgabe notiert sind (vgl. Abbildung 3.5d), unterschieden. Eine Aufgabengliederung<br />

mit Hilfe eines Rasterblatts zeigt Abbildung 3.5b. Die Teilaufgaben zu einer Aufgabe, die<br />

sowohl durch die Gliederung widerspiegelnde Nummer (links) als auch durch eine laufende Aufgabennummer<br />

(rechts) nummeriert sind, werden hierbei in einer Zeile des Formulars aufgeführt.<br />

Rasterblätter werden in erster Linie als Hilfsmittel bei der Erhebung von Aufgabengliederungen<br />

eingesetzt [REFA, 1992, S. 88f]. Aufgaben, die während der Erstellung bereits untergliedert<br />

wurden, werden durch „/“ und nicht weiter zerlegte Aufgaben durch „-“ markiert. Nach der Erhebung<br />

werden die Rasterblätter in Strukturbilder (Abbildung 3.5d) übertragen. Eher listenartige<br />

Darstellungen bieten Aufgabenlisten (Abbildung 3.5c) und Blockdarstellungen (Abbildung 3.5e).<br />

In einigen Notationen wird bei der Bezeichnung der Aufgaben auf die Angabe der Verrichtungsoder<br />

Objektkomponente verzichtet. Bei Verrichtungsgliederungen werden häufig nur die Verrichtungen<br />

und bei Objektgliederungen nur die Objekte genannt (vgl. z. B. [Kosiol, 1976, S. 50ff],


44 Visuelle <strong>Modellierungssprachen</strong> der Organisations- und Softwaretechnik<br />

[Schmidt, 1989, S.168ff]). Das jeweils verwendete Gliederungskriterium wird in einigen Dialekten<br />

der Aufgabengliederungsplänen (z. B. [Nordsieck, 1962, S. 16], [Kosiol, 1976, S. 50ff])<br />

ebenfalls dargestellt (vgl. auch Abbildung 3.5a).<br />

Forderungen an das <strong>Referenz</strong>-<strong>Metaschema</strong><br />

Bei Beschreibungen nach dem Aufgabengliederungsparadigma steht also die Darstellung der<br />

Aufgaben und ihrer Untergliederung, evtl. nach unterschiedlichen Aufgabentypen, im Mittelpunkt.<br />

Das <strong>Referenz</strong>-<strong>Metaschema</strong> <strong>für</strong> die Sprachen des Aufgabengliederungsparadigmas sollte<br />

somit Konzepte zur Modellierung von Aufgaben mit ihren Verrichtungs- und Objektkomponenten,<br />

von Aufgabengliederungen und von Gliederungskriterien bereitstellen.<br />

3.3 Visuelle <strong>Modellierungssprachen</strong> der Aufbausicht<br />

Aus der Aufbausicht werden die Organisationseinheiten beschrieben, die mit der Umsetzung der<br />

Aufgaben betraut sind. Organisationseinheiten fassen einen oder mehrere Aufgabenträger zusammen,<br />

die bestimmte Aufgaben zu erfüllen haben und hierzu mit den nötigen Kompetenzen<br />

ausgestattet sind. Organisationseinheiten werden in Stellen, Abteilungen und Stellenmehrheiten<br />

unterschieden. Stellen bezeichnen hierbei von konkreten Personen unabhängige Zusammenfassungen<br />

von Aufgaben, die von einer Person bewältigt werden können. Abteilungen sind Zusammenfassungen<br />

von Stellen, in denen einer Stelle besondere Leitungs- und Koordinationsaufgaben<br />

bezogen auf die restlichen Stellen übertragen werden. Zusammenfassungen gleichrangiger Stellen<br />

ohne Leitungsstelle werden als Stellenmehrheit bezeichnet. (zur Diskussion und Einordnung<br />

des Stellenbegriffs vergleiche auch [Kosiol, 1976, S.89], [Schwarz, 1980])<br />

Zur Konkretisierung von Stellen (vgl. auch [Grochla, 1982, S. 329], [Schmidt, 1989, S. 268ff],<br />

[Lehner et al., 1991, S. 264f]) sind die Stellenaufgaben und die hierzu gewährten Kompetenzen<br />

und Befugnisse festzulegen. Hinzu kommt die Einbettung der Stelle in die Aufbauorganisation<br />

durch Angabe des Stellenrangs (z. B. Gruppenleiter oder Abteilungsleiter) und der Festlegung<br />

der fachlichen und disziplinarischen Über- und Unterstellungsverhältnisse sowie der aktiven und<br />

passiven Vertretungsverhältnisse. Die Zusammenarbeit mit anderen Organisationseinheiten ist<br />

ebenfalls festzulegen. Dieses umfaßt u. a. auch die Komm<strong>uni</strong>kations- und Informationsbeziehungen<br />

zu anderen Stellen und die Mitwirkung in Ausschüssen oder Arbeitskreisen. Darüber<br />

hinaus sind auch die Anforderungen an den Stelleninhaber festzulegen.<br />

Je nach Leitungsbefugnissen werden Stellen in Ausführungsstellen, Leitungsstellen und in Stabsstellen<br />

unterschieden. Ausführungsstellen haben keine Leitungsbefugnisse, Leitungsstellen oder<br />

Instanzen sind mit Leitungs- und Weisungsbefugnissen ausgestattet. Stellen, die Leitungsstellen<br />

beraten und unterstützen, aber keine direkten Weisungsbefugnisse gegenüber den Ausführungsstellen<br />

besitzen, werden als Stabstellen bezeichnet.<br />

Die <strong>visuelle</strong>n Modellierungsprachen des Stellengliederungsparadigmas heben hierbei die Einbettung<br />

der Stellen in die Aufbauorganisation hervor. Diese bezieht sich insbesondere auf die<br />

Über- und Unterstellungsverhältnisse und die Bildung von Abteilungen. Komm<strong>uni</strong>kations- und<br />

Informationsbeziehungen zwischen Stellen und Abteilungen werden mit den Darstellungsmitteln<br />

des Komm<strong>uni</strong>kationsparadigmas beschrieben.


3.3 Visuelle <strong>Modellierungssprachen</strong> der Aufbausicht 45<br />

3.3.1 Visuelle Modellierungsprachen des Stellengliederungsparadigmas<br />

Die Einbettung der Stellen in die Aufbauorganisation erfolgt durch Festlegung der Leitungsbeziehungen<br />

zwischen den Stellen. Unterschieden werden hierbei Einlinien-Systeme, bei denen<br />

jeder Stelle höchstens eine Instanz vorgesetzt ist, und Mehrlinien-Systeme, in denen einer Stelle<br />

auch mehrere Leitungsstellen übergeordnet sein können. Das Einlinien-System beruht auf dem<br />

von [Fayol, 1919, S. 21] postulierten Prinzip der „Einheit der Auftragserteilung“, durch das<br />

Leitungs- und Weisungsbefugnisse eindeutig festgelegt werden. Das Mehrlinien-System geht<br />

auf das Funktionsmeistersystem von [Taylor, 1919, S. 132f] zurück, in dem <strong>für</strong> spezielle Teilbereiche<br />

der Aufgabenerledigung unterschiedliche Leitungsinstanzen (Spezial- oder Funktionsmeister)<br />

vorgesehen sind.<br />

Zur Beschreibung der Weisungs- und Leitungsbeziehungen zwischen Stellen werden Organigramme,<br />

Abteilungsgliederungspläne, Organisationspläne, Organisationsschaubilder, Stellenbeschreibungen,<br />

Stellengliederungspläne, Stellenpläne und Strukturpläne verwendet.<br />

Notationelle Grundform: Organigramm<br />

Zur Darstellung von Einlinien-Systemen werden ähnlich wie <strong>für</strong> Aufgabengliederungspläne<br />

baumartige Diagrammformen verwendet. Die Knoten symbolisieren hierbei die Stellen und die<br />

Kanten die Leitungsbeziehungen, die ebenfalls von oben nach unten bzw. von links nach rechts<br />

gelesen werden.<br />

Die Darstellung der Stellen erfolgt durch unterschiedliche graphische Formen <strong>für</strong> Instanzen,<br />

Stabsstellen und Ausführungsstellen. [Kosiol, 1976, S. 173ff] notiert Leitungsstellen durch<br />

Rechtecke, Ausführungsstellen durch Dreiecke und Stabsstellen durch Ovale. Stellenmehrheiten<br />

werden <strong>für</strong> alle drei Stellentypen durch Doppellinien (und optionaler Angabe der Stellenanzahl)<br />

ausgezeichnet. In der Praxis hat sich das Dreieck zur Darstellung der Ausführungsaufgaben<br />

aufgrund der begrenzten Annotationsfähigkeit nicht durchgesetzt [Blum, 1980a]. Ausführungsstellen<br />

werden daher ebenfalls durch Rechtecke notiert.<br />

Beispiel 3.3 (Organigramm eines Krankenhauses)<br />

Abbildung 3.6 stellt einen Ausschnitt eines Organigramms zur Beschreibung der Aufbauorganisation<br />

eines Krankenhauses [Schumm et al., 1995] dar. Die Gesamtleitung des Krankenhauses<br />

erfolgt durch den Verwaltungsrat, der hier als Stellenmehrheit aus fünf Stellen<br />

besteht. Diesem sind der ärztliche Direktor, derPflegedienstleiter und der Verwaltungsdirektor<br />

unterstellt.<br />

Der ärztliche Direktor koordiniert, unterstützt durch eine mehrfach besetzte Stabsstelle <strong>Se</strong>kretärin,<br />

die medizinischen Bereiche, denen jeweils Chefärzte vorstehen. Diese Bereiche<br />

bestehen aus mehreren Ärzten, wobei die Oberärzte gegenüber den Ärzten Leitungsfunktionen<br />

übernehmen. Den Chefärzten sind weiter Abteilungsleiter diverser Funktionen mit<br />

ihren Mitarbeitern unterstellt. Der Pflegedienstleiter leitet den pflegerischen Betrieb. Er<br />

wird ebenfalls durch eine mehrfach besetzte Stabsstelle <strong>Se</strong>kretärin unterstützt. Dem Pflegedienstleiter<br />

unterstehen mehrere Abteilungen, die durch Abteilungsleiter geleitet werden.<br />

Den Abteilungsleitern sind jeweils Stationsleitungen und diesen wiederum Pflegekräfte<br />

in einer Stellenmehrheit unterstellt. In ähnlicher Form ist auch der Verwaltungsbereich


46 Visuelle <strong>Modellierungssprachen</strong> der Organisations- und Softwaretechnik<br />

Ärztlicher<br />

Direktor<br />

Chefarzt<br />

Chirugie<br />

Chefarzt<br />

Radiologie<br />

Oberarzt<br />

Chirugie<br />

<strong>Se</strong>kretärin<br />

AbteilungsleiterPhysikalischeTherapie<br />

AbteilungsleiterKrankengymnastik<br />

Oberarzt<br />

Radiologie<br />

Abteilungsleiter<br />

Radiologie<br />

<strong>Se</strong>kretärin<br />

<strong>Se</strong>kretärin<br />

Arzt<br />

Chirurgie<br />

Mitarbeiter<br />

Physikalische<br />

Therapie<br />

Mitarbeiter<br />

Krankengymnastik<br />

Arzt<br />

Radiologie<br />

MTA<br />

Radiologie<br />

5<br />

Verwaltungsrat<br />

Pflegedienst<br />

Leiter<br />

Abteilungsleiter<br />

Chirurgie<br />

Abteilungsleiter<br />

Intensiv<br />

Abteilungsleiter<br />

Innere<br />

<strong>Se</strong>kretärin<br />

Stationsleiter<br />

Chirurgie 1<br />

Stationsleiter<br />

Chirurgie 2<br />

Stationsleiter<br />

Intensiv<br />

Stationsleiter<br />

Innere<br />

Pflegekraft<br />

Pflegekraft<br />

Pflegekraft<br />

Pflegekraft<br />

Abbildung 3.6: Organigramm<br />

Verwaltungsdirektor<br />

AbteilungsleiterMaterialwirtschaft<br />

AbteilungsleiterRechnungswesen<br />

<strong>Se</strong>kretärin<br />

Leiter<br />

Zentrallager<br />

Leiter<br />

Küche<br />

Leiter<br />

stationäre<br />

Abrechnung<br />

Mitarbeiter<br />

Finanzbuchhaltung<br />

Mitarbeiter<br />

Zentrallager<br />

Mitarbeiter<br />

Küche<br />

Mitarbeiter<br />

stationäre<br />

Abrechnung<br />

Mitarbeiter<br />

Aufnahme<br />

strukturiert. Dem Verwaltungsdirektor unterstehen die durch Abteilungsleiter koordinierten<br />

Verwaltungseinheiten. Auch der Verwaltungsdirektor wird durch <strong>Se</strong>kretärinnen unterstützt.<br />

Den Abteilungsleitern sind weitere Leiter und Mitarbeiter unterstellt. £<br />

Notationelle Varianten<br />

Da die Darstellung von Einlinien-Systemen durch jede baumartige Notationsform erfolgen kann,<br />

finden auch hier die schon <strong>für</strong> Aufgabengliederungspläne eingeführten Darstellungsvarianten<br />

Verwendung (vgl. Abbildung 3.5). Organigramme werden häufig in Pyramiden- oder Terrassendarstellungen<br />

notiert. Diese werden sowohl horizontal als auch vertikal ausgerichtet. Daneben<br />

werden auch Blockdarstellungen evtl. unter Verwendung von Rasterblättern oder listenartige<br />

Darstellungen verwendet.<br />

Weitere Darstellungsvarianten <strong>für</strong> Einlinien-Systeme sind in Abbildung 3.7 am Beispiel des Teilorganigramms<br />

der Chirurgie aus Abbildung 3.6 skizziert. Organigramme in Säulenformen entsprechen<br />

<strong>für</strong> die ersten Gliederungsebenen den Organigrammen in Pyramidenform. Meist ab der<br />

zweiten oder dritten Stufe werden die Stellen unterhalb ihrer überstellten Instanz angeordnet. Es<br />

entstehen dann nebeneinander liegende Spalten oder Säulen <strong>für</strong> klar identifizierbare Teilbereiche<br />

der Aufbauorganisation. Abbildung 3.7a beschreibt die Chirurgie durch eine solche Säule.


3.3 Visuelle <strong>Modellierungssprachen</strong> der Aufbausicht 47<br />

Chefarzt<br />

Chirurgie<br />

a) Organigramm in<br />

Säulenform<br />

Arzt<br />

Chirurgie<br />

Oberarzt<br />

Chirurgie<br />

Abteilungsleiter<br />

Physikalische<br />

Therapie<br />

AbteilungsleiterKrankengymnastik<br />

Oberarzt<br />

Chirurgie<br />

<strong>Se</strong>kretärin<br />

Arzt<br />

Chirurgie<br />

Mitarbeiter<br />

Physikalische<br />

Therapie<br />

Mitarbeiter<br />

Krankengymnastik<br />

<strong>Se</strong>kretärin<br />

Chefarzt<br />

Chirurgie<br />

Abteilungsleiter<br />

Physikalische<br />

Therapie<br />

Mitarbeiter<br />

Physikalische<br />

Therapie<br />

AbteilungsleiterKrankengymnastik<br />

d) Organigramm in Kreisform<br />

Mitarbeiter<br />

Krankengymnastik<br />

Arzt<br />

Chirurgie<br />

Chefarzt Chirurgie<br />

<strong>Se</strong>kretärin<br />

Oberarzt Chirurgie<br />

Arzt Chirurgie<br />

Abteilungsleiter Physikalische Therapie<br />

Mitarbeiter Physikalische Therapie<br />

Abteilungsleiter Krankengymnastik<br />

Mitarbeiter Krankengymnastik<br />

<strong>Se</strong>kretärin<br />

Oberarzt<br />

Chirurgie<br />

b) Organigramm in<br />

Blockdarstellung<br />

Chefarzt<br />

Chirurgie<br />

c) Organigramm in<br />

Satellitenform<br />

Physikalische<br />

Therapie<br />

Abteilungsleiter<br />

Mitarbeiter<br />

Abteilungsleiter<br />

Physikalische<br />

Therapie<br />

AbteilungsleiterKrankengymnastik<br />

Chirurgie<br />

Chefarzt<br />

Oberärzte<br />

Ärzte<br />

<strong>Se</strong>kretärinnen<br />

Mitarbeiter<br />

Physikalische<br />

Therapie<br />

Mitarbeiter<br />

Krankengymnastik<br />

Krankengymnastik<br />

Abteilungsleiter<br />

Mitarbeiter<br />

e) Abteilungsorganigramm<br />

Abbildung 3.7: Organigramme <strong>für</strong> Einliniensysteme, notationelle Varianten


48 Visuelle <strong>Modellierungssprachen</strong> der Organisations- und Softwaretechnik<br />

Eine listenartige Form der Blockdarstellung wird in Abbildung 3.7b verwendet. Jede Stelle wird<br />

hierbei linksbündig in einer eigenen Zeile vermerkt, wobei die Zeilen <strong>für</strong> untergeordnete Stellen<br />

immer kürzer werden. Gegenüber der reinen Blockform (vgl. Abbildung 3.5e) erlaubt diese<br />

Notationsform anhand der sich rechts ergebenden leeren Spalten einen guten Überblick über<br />

alle, einer Instanz auch indirekt unterstellten Stellen. Diese Darstellungsform tritt auch in Spaltenformen<br />

auf. Jede Stelle wird hierbei in einer Spalte dargestellt. Werden die nachgeordneten<br />

Stellen kreisförmig um die Leitungsstelle angeordnet, erhält man ein Satelliten- oder Sonnenorganigramm<br />

(vgl. Abbildung 3.7c). Anstelle rechteckiger Blöcke verwenden Organigramme in<br />

Kreisform Kreissegmente (vgl. Abbildung 3.7d).<br />

Aus Platzgründen bietet es sich bei Organigrammen an, Mischformen zu verwenden. So wird<br />

auch in Abbildung 3.6 zunächst eine vertikale Pyramidenform verwendet, die in eine säulenartige<br />

Darstellung mit „Säulen“ <strong>für</strong> die Medizin, die Pflege und die Verwaltung übergeht. Innerhalb<br />

der Säulen erfolgt die Darstellung durch horizontale Terrassendarstellungen. Überblicksdarstellungen<br />

und Bewertungen der einzelnen Organigrammformen bezüglich ihrer Ausdrucksmächtigkeit<br />

und Übersichtlichkeit finden sich z. B. in [Hub / Fischer, 1977] und in [Blum, 1980a, Blum,<br />

1980b].<br />

Abteilungsorganigramme. In den bisher beschriebenen Notationsformen von Organigrammen<br />

in Abbildung 3.6 und 3.7a-d werden Leitungsbeziehungen zwischen Stellen beschrieben.<br />

Häufig wird durch Organigramme aber auch die Gliederung von Abteilungen in Unterabteilungen<br />

herausgestellt (vgl. z. B. [Nordsieck, 1962, Abb. 81], [Kosiol, 1976, S. 175], [Jordt/Gscheidle,<br />

(o.J.), Lehrbrief 3]). Abbildung 3.7e stellt ein solches Abteilungsorganigramm <strong>für</strong> die Chirurgie<br />

dar, die sich in die Unterabteilungen physikalische Therapie und Krankengymnastik gliedert.<br />

Hier sind neben den Abteilungsnamen auch noch die in der Abteilung zusammengefaßten Stellen<br />

einschließlich der Instanz (in Fettdruck) aufgeführt. Beziehungen zwischen den Stellen werden<br />

in diesem Beispiel nicht abgebildet. Varianten der Abteilungsorganigramme notieren auch Leitungsbeziehungen<br />

zwischen den Stellen innerhalb einer Abteilung oder verzichten vollständig<br />

auf eine Darstellung der Stellen.<br />

Organigramme <strong>für</strong> Mehrliniensysteme. In Mehrliniensystemen ist die Leitung einer Stelle<br />

nicht eindeutig geregelt. Einer Stelle sind evtl. mehrere verschiedene Instanzen bezogen auf<br />

unterschiedliche Zusammenhänge [Taylor, 1919, S. 132] weisungsbefugt. Zur Beschreibung von<br />

Mehrlinien-Systemen wird auch auf die Organigrammformen <strong>für</strong> Einliniensysteme zurückgegriffen.<br />

Durch diese Einlinien-Organigramme werden häufig disziplinarische Unter- bzw. Überstellungen<br />

dargestellt. Weitere, dann eher funktionsbezogene Weisungsbeziehungen werden durch<br />

zusätzliche Beziehungsgeflechte zwischen den jeweiligen Stellen angedeutet.<br />

Beispiel 3.4 (Mehrlinien-Organigramme)<br />

Abbildung 3.8 skizziert sowohl die disziplinarischen als auch die funktionsbezogenen<br />

Weisungsbeziehungen <strong>für</strong> die Chirurgie einschließlich der Stationen. Der Abteilungsleiter<br />

Chirurgie, derStationsleiter und die Pflegekräfte sind der Pflegedienstleitung disziplinarisch<br />

unterstellt. Sie erhalten aber auch Anweisungen durch das medizinische Personal,<br />

das direkt oder indirekt dem Ärztlichen Direktor unterstellt ist. £


3.3 Visuelle <strong>Modellierungssprachen</strong> der Aufbausicht 49<br />

5<br />

Verwaltungsrat<br />

Ärztlicher<br />

Direktor<br />

5<br />

Verwaltungsrat<br />

Ärztlicher<br />

Direktor<br />

Chefarzt<br />

Chirurgie<br />

Chefarzt<br />

Chirurgie<br />

Verwaltungsrat<br />

Oberarzt<br />

Chirurgie<br />

Oberarzt<br />

Chirurgie<br />

Arzt<br />

Chirurgie<br />

Arzt<br />

Chirurgie<br />

Pflegedienst<br />

Leiter<br />

b) Säulenmatrix<br />

Ärztlicher Direktor<br />

Chefarzt Chirurgie<br />

Oberarzt Chirurgie<br />

Arzt Chirurgie<br />

Pflegedienst Leiter<br />

A<br />

d) Tabellenmatrix<br />

a) Gittermatrix<br />

Pflegedienst<br />

Leiter<br />

Abteilungsleiter Chirurgie<br />

F<br />

Abteilungsleiter<br />

Chirurgie<br />

Stationsleiter<br />

Chirurgie 1<br />

Abteilungsleiter<br />

Chirurgie<br />

Stationsleiter<br />

Chirurgie 1<br />

Pflegekraft<br />

F F<br />

F F F<br />

F F F<br />

Pflegekraft<br />

Stationsleiter<br />

Chirurgie 1<br />

von<br />

Pflegekraft<br />

nach<br />

Verwaltungsrat<br />

Ärztlicher Direktor<br />

Chefarzt Chirurgie<br />

Oberarzt Chirurgie<br />

Arzt Chirurgie<br />

Pflegedienstleiter<br />

Abteilungsleiter Chirurgie<br />

Stationsleiter<br />

Chirurgie 1<br />

Pflegekraft<br />

Verwaltungsrat<br />

Ärztlicher Direktor<br />

Chefarzt Chirurgie<br />

Oberarzt Chirurgie<br />

Arzt Chirurgie<br />

Pflegedienstleiter<br />

Abteilungsleiter Chirurgie<br />

Stationsleiter Chirurgie 1<br />

Verwaltungsrat<br />

Pflegekraft<br />

c) Dreiecksmatrix<br />

Ärztlicher Direktor<br />

Chefarzt Chirurgie<br />

Oberarzt Chirurgie<br />

Arzt Chirurgie<br />

e) symmetrische Stellentabelle<br />

Abbildung 3.8: Organigramme <strong>für</strong> Mehrlinien-Systeme<br />

A<br />

A<br />

F<br />

F F<br />

F F F<br />

F F<br />

F<br />

Pflegedienstleiter<br />

A<br />

Abteilungsleiter Chirurgie<br />

Stationsleiter<br />

Chirurgie 1<br />

Pflegekraft<br />

F F F<br />

F F F<br />

F F F


50 Visuelle <strong>Modellierungssprachen</strong> der Organisations- und Softwaretechnik<br />

Zur Darstellung von Systemen mit zwei Leitungsdimensionen werden Teilorganigramme so<br />

zueinander ausgerichtet, daß die zweite Leitungsdimension übersichtlich notiert werden kann.<br />

Durch ein horizontal ausgerichtetes Teilorganigramm des pflegerischen Bereichs und ein vertikal<br />

ausgerichtetes Teilorganigramm des medizinischen Bereichs wird in Abbildung 3.8a eine<br />

Gittermatrix aufgespannt, an deren Schnittpunkten die zusätzlichen Weisungsbeziehungen zwischen<br />

den jeweiligen Stellen notiert werden. In der Säulenmatrix in Abbildung 3.8b werden die<br />

Teilorganigramme des medizinischen und pflegerischen Bereichs parallel zueinander dargestellt.<br />

Die zweite Leitungsdimension wird hier durch zusätzliche Linien direkt eingezeichnet. Matrizenartige<br />

Darstellungen dieser beiden Leitungsdimensionen werden in Abbildung 3.8c und d<br />

dargestellt. Die jeweiligen Teilorganigramme sind hier in Blockdarstellung notiert, so daß in den<br />

Schnittpunkten der Zeilen und Spalten zu den einzelnen Stellen die Art der Weisungsbeziehung<br />

notiert werden kann. Hier können u. a. fachliche Weisungsbeziehungen (F) z. B. zwischen medizinischem<br />

und pflegerischem Personal und Abstimmungsbeziehungen (A) z. B. zwischen dem<br />

ärztlichen Direktor und dem Pflegedienstleiter unterschieden werden. Die Richtung der Weisungsbeziehungen<br />

ist in diesen Darstellungen, bezogen auf die erste Leitungsdimension, den<br />

Darstellungen der Einliniensysteme zu entnehmen. Die Richtung der zweiten Leitungsdimension<br />

ist dagegen häufig nicht eindeutig erkennbar. Eine eindeutige Ausrichtung der zweiten Leitungsdimension<br />

wird in Abbildung 3.8e sichtbar, in der zwei identische vertikal bzw. horizontal<br />

ausgerichtete Organigramme in Blockdarstellung so zu einer symmetrischen Stellentabelle überlagert<br />

sind, daß die Beziehungen zwischen den Stellen in beiden Richtungen notiert werden<br />

können.<br />

Zur Darstellung von mehr als zwei Leitungsdimensionen können insbesondere die Darstellungen<br />

als Gitter- oder Säulenmatrix um weitere Dimensionen ergänzt werden. Graphische Darstellungen<br />

<strong>für</strong> Organigramme mit mehr als zwei Dimensionen werden jedoch schnell sehr unübersichtlich<br />

(vgl. [Blum, 1980b, Bild 12ff]), so daß diese Zusammenhänge kaum graphisch dargestellt<br />

werden.<br />

Funktionendiagramme. Während in Organigrammen Leitungs- und Weisungsbeziehungen<br />

zwischen Stellen sowie hierarchische Abteilungsgliederungen dargestellt werden, beschreiben<br />

Funktionendiagramme [Menzl / Nauer, 1974], [Hub / Fischer, 1977, S. 53] die Zuordnung von<br />

Aufgaben zu diesen Stellen. Hierzu werden Organigramme und Aufgabengliederungspläne (vgl.<br />

Kapitel 3.2.1) einander gegenübergestellt. Funktionendiagramme bilden daher die jeweiligen<br />

Stellen- und Aufgabengliederungen gemeinsam ab und stellen somit ein integriertes Beschreibungsmittel<br />

der Aufgaben- und der Aufbausicht dar. Wesentlicher Beschreibungsaspekt ist jedoch<br />

die Festlegung der Zuständigkeiten zur Erledigung einzelner Aufgaben durch hierarchisch<br />

gegliederte Stellen, so daß Funktionendiagramme hier als Beschreibungsmittel der Aufbausicht<br />

und des Stellengliederungsparadigmas zugeordnet werden.<br />

Zur Darstellung von Funktionendiagrammen bieten sich jeweils orthogonal zueinander gestellte,<br />

blockartige Notationsformen der Organigramme und der Aufgabengliederungspläne an. Diese<br />

spannen dann eine Tabelle auf, in der <strong>für</strong> jede Stelle und <strong>für</strong> jede Aufgabe die Art der Aufgabenerledigung<br />

notiert werden kann (vgl. Abbildung 3.9). Die Art der Aufgabenerledigung, die in<br />

diesem Zusammenhang auch als Funktion (vgl. z. B. [Hub / Fischer, 1977, S. 58f]) bezeichnet<br />

wird, beschreibt den Anteil der Aufgabenträger an der Aufgabenerfüllung. Diese Klassifizierung<br />

erfolgt entlang der Rang- und Phasengliederungen der Aufgaben. Unterschieden werden Zustän-


3.3 Visuelle <strong>Modellierungssprachen</strong> der Aufbausicht 51<br />

digkeiten bezogen auf die Entscheidung, die Planung, die Anordnung, die Ausführung und die<br />

Kontrolle der Aufgabenausführung (vgl. z. B. [Menzl / Nauer, 1974], [Schmidt, 1989, S. 283ff],<br />

[Lehner et al., 1991, S. 269], [Jordt / Gscheidle, (o.J.), Lehrbrief 4, S. 19]. Eine übliche Klassifikation<br />

der Funktionen ist in der Legende zu Abbildung 3.9 dargestellt. In den Zeilen eines<br />

Funktionendiagramms kann dann die Zerlegung der Aufgaben in Funktionen und deren Aufteilung<br />

auf Aufgabenträger abgelesen werden. Die Spalten geben die Aufgaben und Funktionen der<br />

einzelnen Stellen an.<br />

G = Gesamtzuständigkeit<br />

EV = Entscheidungsvorbereitung<br />

E = Entscheidung<br />

EM = Mitentscheidung<br />

EK = Kollektiventscheidung<br />

EN = Entscheidung im Normalfall<br />

EG = Entscheidung in Grundsatzfragen<br />

EW = Entscheidung in wichtigen Fällen<br />

EA = Entscheidung in Ausnahmefällen<br />

P = Planung<br />

A = Ausführung<br />

AM = Mitwirkung bei der Ausführung<br />

K = Kontrolle<br />

KE = Ergebniskontrolle<br />

KV = Verfahrenskontrolle<br />

Therapie durchführen<br />

therapeutische<br />

Maßnahmen planen<br />

pflegerische Maßnahmen<br />

anordnen<br />

Medikamente anordnen<br />

OP anordnen<br />

therapeutische<br />

Maßnahmen durchführen<br />

Patient medizinisch<br />

versorgen<br />

Patient pflegen<br />

Patient <strong>für</strong> OP vorbereiten<br />

Verwaltungsrat<br />

Ärztlicher Direktor<br />

G<br />

Chefarzt Chirurgie<br />

EG<br />

EG<br />

EG<br />

Oberarzt Chriurgie<br />

EW<br />

EW<br />

EW<br />

Arzt Chriugie<br />

EN<br />

EN<br />

EN<br />

Pflegedienstleiter<br />

G G<br />

Abbildung 3.9: Funktionendiagramm<br />

Abteilungsleiter Chirurgie<br />

Stationsleiter<br />

Chriurgie 1<br />

EG EW<br />

Pflegekraft<br />

A A AM<br />

Beispiel 3.5 (Funktionendiagramm der Stationen (Ausschnitt))<br />

Die Verteilung der Aufgaben einer Station im Krankenhaus [Schumm et al., 1995] auf<br />

unterschiedliche Aufgabenträger wird im Funktionendiagramm aus Abbildung 3.9 skizziert.<br />

Entscheidungen über die Anordnung pflegerischer Maßnahmen treffen in graduellen<br />

Abstufungen Mediziner und Pflegepersonal. DieAnordnung von Medikamenten und<br />

A<br />

A<br />

P<br />

P<br />

A<br />

A


52 Visuelle <strong>Modellierungssprachen</strong> der Organisations- und Softwaretechnik<br />

Operationen ist ausschließlich dem medizinischen Personal vorbehalten. Das medizinische<br />

Personal ist ebenfalls <strong>für</strong> die medizinische Versorgung der Patienten verantwortlich, wird<br />

aber hierbei durch die Pflegekräfte unterstützt. Die Pflege der Patienten wird durch den<br />

Abteilungsleiter und den Stationsleiter geplant und durch die Pflegekräfte ausgeführt. Die<br />

Vorbereitung der Patienten <strong>für</strong> Operationen wird sowohl von Ärzten und Pflegekräften ausgeführt.<br />

Die Gesamtverantwortung <strong>für</strong> die Planung und Durchführung der Behandlungen<br />

liegt beim Ärztlichen Direktor und dem Pflegedienstleiter. £<br />

Die Darstellung der unterschiedlichen Funktionen erfolgt wie in Abbildung 3.9 zumeist durch<br />

Buchstabenkürzel. Es ist aber auch üblich, geometrische Muster zur Unterscheidung der Funktionen<br />

zu verwenden (z. B. [Nordsieck, 1962, S. 25], [Grochla, 1982, S. 310], [Jordt / Gscheidle,<br />

(o.J.), Lehrbrief 4, S. 19]), die überlagert auch Funktionskombinationen ausdrücken können.<br />

Stellenbeschreibungen. Organigramme und Funktionendiagramme stellen mit der Stellenhierarchie<br />

und der Verteilung der Aufgaben auf die Stellen jeweils nur besondere Aspekte<br />

der Aufbauorganisation dar. Eine umfassendere Beschreibung aller Aspekte erlauben Stellenbeschreibungen<br />

[Grochla, 1982, S. 328], [Schmidt, 1989, S. 267ff], [Lehner et al., 1991, S. 264].<br />

In Stellenbeschreibungen werden textuell alle wesentlichen Eigenschaften der Stellen aufgeführt.<br />

Neben den durch Stellen auszuführenden Aufgaben und der Unter- und Überstellungsbeziehungen,<br />

können in Stellenbeschreibungen u. a. auch die Kompetenzen, Befugnisse, Stellvertretungsregelungen,<br />

Komm<strong>uni</strong>kationsbeziehungen und die Anforderungen an Stelleninhaber zusammenfassend<br />

dargestellt werden. Organigramme und Funktionendiagramme ergänzen häufig diese textuellen<br />

Beschreibungen.<br />

Forderungen an das <strong>Referenz</strong>-<strong>Metaschema</strong><br />

Wesentliche Konzepte des Stellengliederungsparadigmas sind die Leitungs-, Stabs- und Ausführungsstellen,<br />

die zwischen diesen vorliegenden Weisungs- und Leitungsbeziehungen sowie<br />

die den einzelnen Stellen zugeordneten Aufgaben. Das <strong>Referenz</strong>-<strong>Metaschema</strong> <strong>für</strong> die <strong>visuelle</strong>n<br />

<strong>Modellierungssprachen</strong> des Stellengliederungsparadigmas muß somit Konzepte zur Beschreibung<br />

der verschiedenen Stellenformen, der Leitungs- und Weisungsbeziehungen und der Aufgabenzuordnungen<br />

<strong>für</strong> unterschiedliche Funktionen bereitstellen. Darüber hinaus sind auch Zusammenfassungen<br />

der Stellen zu Stellenkomplexen (Abteilungen, Ausschüssen etc.) und weitere<br />

Eigenschaften der Stellen wie z. B. Kompetenzen, Befugnisse, Vertretungsregelungen und Anforderungen<br />

zu berücksichtigen.<br />

3.3.2 Visuelle <strong>Modellierungssprachen</strong> des Komm<strong>uni</strong>kationsparadigmas<br />

Die Komm<strong>uni</strong>kation zwischen Organisationseinheiten wird mit den Beschreibungsmitteln des<br />

Komm<strong>uni</strong>kationsparadigmas modelliert. Beschreibungsgegenstand sind neben den an der Komm<strong>uni</strong>kation<br />

beteiligten Stellen und Abteilungen auch die Komm<strong>uni</strong>kationshäufigkeiten, die<br />

Komm<strong>uni</strong>kationsdauer und die verwendeten Komm<strong>uni</strong>kationsmedien (vgl. [Grochla, 1982,<br />

S. 313], [Schmidt, 1989, S. 286])


3.3 Visuelle <strong>Modellierungssprachen</strong> der Aufbausicht 53<br />

Die Beschreibung der Komm<strong>uni</strong>kationsbeziehungen zwischen Stellen und Abteilungen erfolgt<br />

durch Komm<strong>uni</strong>gramme, durch Komm<strong>uni</strong>kationsdiagramme, durch Kommunkationsgraphen,<br />

durch Komm<strong>uni</strong>kationstabellen und durch Kooperationsbilder.<br />

Notationelle Grundform: Komm<strong>uni</strong>gramm<br />

Zur Darstellung von Komm<strong>uni</strong>kationsbeziehungen werden graphbasierte Darstellungsmittel verwendet,<br />

bei denen die Knoten jeweils die Komm<strong>uni</strong>kationspartner und die Kanten die Komm<strong>uni</strong>kationsbeziehungen<br />

darstellen. Graduelle Unterschiede in der Komm<strong>uni</strong>kation, wie z. B. unterschiedliche<br />

Komm<strong>uni</strong>kationshäufigkeiten oder -dauern, werden durch Kantenattributierungen<br />

oder durch <strong>visuelle</strong> Unterscheidung der Kantendarstellung hervorgehoben.<br />

Beispiel 3.6 (Komm<strong>uni</strong>gramm)<br />

Das Komm<strong>uni</strong>gramm aus Abbildung 3.10 beschreibt die Komm<strong>uni</strong>kationsbeziehungen<br />

zwischen der Chirurgischen Station, den medizinischen Funktionen Physikalische Therapie<br />

und Krankengymnastik,denÄrzten und den Verwaltungsabteilungen Aufnahme und<br />

stationäre Abrechnung.<br />

Arzt<br />

Krankengymnastik<br />

Aufnahme<br />

Physikalische<br />

Therapie<br />

Stationäre<br />

Abrechnung<br />

Chirurgische<br />

Station<br />

Abbildung 3.10: Komm<strong>uni</strong>gramm (Komm<strong>uni</strong>kationshäufigkeit)<br />

Die unterschiedlichen Strichstärken der Kanten zwischen den einzelnen Abteilungen symbolisieren<br />

hierbei unterschiedliche Komm<strong>uni</strong>kationshäufigkeiten. Dickere Strichstärken<br />

stellen hierbei häufigere Interaktionen dar. Aus dem Komm<strong>uni</strong>gramm in Abbildung 3.10<br />

wird ersichtlich, daß z. B. mehr Interaktionen zwischen der Chirurgischen Station und den<br />

Ärzten stattfinden als zwischen der Chirurgischen Station und der Aufnahme. DieRichtung<br />

einer Informationsübermittlung wird durch diese Notation nicht abgebildet. £


54 Visuelle <strong>Modellierungssprachen</strong> der Organisations- und Softwaretechnik<br />

Notationelle Varianten<br />

Auch zur Darstellung von Komm<strong>uni</strong>kationsbeziehungen werden alternative Darstellungsformen<br />

verwendet. Aufbauend auf Organigrammen in Blockdarstellung können Komm<strong>uni</strong>gramme als<br />

Adjazenzmatrizen dargestellt werden. Abbildung 3.11 spannt eine solche Adjazenzmatrix in<br />

Dreiecksform auf. Das links dargestellte Organigramm ist hierbei auf die relevanten Abteilungen<br />

(einschließlich einer „Abteilung“ <strong>für</strong> die Ärzte) beschränkt. Ebenso werden auch symmetrische<br />

Komm<strong>uni</strong>kationsmatrizen ähnlich Abbildung 3.8e verwendet. In den Feldern solcher Matrizen<br />

oder Tabellen können dann die Komm<strong>uni</strong>kationseigenschaften notiert werden. In Abbildung<br />

3.11a wird z. B. durch Pfeilsymbole die Komm<strong>uni</strong>kationsrichtung ( Æ À : bidirektional; Æ ,<br />

À : <strong>uni</strong>direktional) dargestellt.<br />

Verwaltungsrat<br />

Ärztlicher Direktor<br />

Arzt<br />

Physikalische Therapie<br />

Krankengymnastik<br />

Pflegedienstleiter<br />

Chirurgische Station<br />

Verwaltungsdirektor<br />

Rechnungswesen<br />

Stationäre<br />

Abrechnung<br />

Aufnahme<br />

Abbildung 3.11: Komm<strong>uni</strong>kationsmatrix (Dreiecksform)<br />

Der Komm<strong>uni</strong>kationsgraph in Abbildung 3.12 beschreibt durch die gerichteten Kanten ebenfalls<br />

die Komm<strong>uni</strong>kationsrichtung. Durch die Strichstärken der Kanten werden analog zu Abbildung<br />

3.10 verschiedene Komm<strong>uni</strong>kationshäufigkeiten unterschieden. In ähnlicher Form kann<br />

auch die Komm<strong>uni</strong>kationsdauer dargestellt werden.<br />

Kooperationsbilder. Während durch die bisher skizzierten Notationsformen <strong>für</strong> Komm<strong>uni</strong>gramme<br />

die Komm<strong>uni</strong>kationhäufigkeit oder -dauer beschrieben wurde, wird durch Kooperationsbilder<br />

[Krabbel et al., 1996], [Floyd et al., 1997] das zur Komm<strong>uni</strong>kation verwendete Medium<br />

herausgestellt.<br />

Das Kooperationsbild in Abbildung 3.13 unterscheidet durch Piktogramme die Komm<strong>uni</strong>kation<br />

durch Telefon, durch übermittelte Dokumente und durch persönlich übermittelte Dokumen-


3.4 Visuelle <strong>Modellierungssprachen</strong> der Prozeßsicht 55<br />

Arzt<br />

Krankengymnastik<br />

Physikalische<br />

Therapie<br />

Chirurgische<br />

Station<br />

Abbildung 3.12: Komm<strong>uni</strong>kationsgraph<br />

Aufnahme<br />

Stationäre<br />

Abrechnung<br />

te. Gerichtete Interakionen können in Kooperationsbildern zwischen Abteilungen (Rechtecke),<br />

zwischen Stellen (Ovale) und zwischen Bereichen außerhalb des modellierten Systems (Wolken)<br />

dargestellt werden. Eingesetzt werden Kooperationsbilder sowohl zur Erarbeitung der Komm<strong>uni</strong>kationszusammenhänge<br />

als auch zur Dokumentation in der Anforderungsermittlung [Krabbel<br />

et al., 1997].<br />

Forderungen an das <strong>Referenz</strong>-<strong>Metaschema</strong><br />

Durch die <strong>visuelle</strong>n Modellierungsprachen des Komm<strong>uni</strong>kationsparadigmas wird die Interaktion<br />

zwischen verschiedenen Komm<strong>uni</strong>kationspartnern in bezug auf die Komm<strong>uni</strong>kationshäufigkeit,<br />

die Komm<strong>uni</strong>kationsdauer und die hierzu verwendeten Komm<strong>uni</strong>kationsmedien beschrieben.<br />

Das <strong>Referenz</strong>-<strong>Metaschema</strong> dieser Sprachen muß somit Konzepte zur Beschreibung der miteinander<br />

interagierenden Stellen, Abteilungen und externen Partnern, der quantitativen Komm<strong>uni</strong>kationseigenschaften<br />

und der Komm<strong>uni</strong>kationsmedien bereitstellen.<br />

3.4 Visuelle <strong>Modellierungssprachen</strong> der Prozeßsicht<br />

Beschreibungsschwerpunkt der Prozeßsicht ist die Darstellung sowohl logischer als auch zeitlicher<br />

Aspekte der Aufgabenbearbeitung.<br />

Logische Zusammenhänge in der Aufgabenbearbeitung beziehen sich auf die funktionalen Eigenschaften<br />

eines Systems. Beschrieben wird hierbei nicht, wann oder wie eine Berechnung erfolgt<br />

oder ein Prozeß ausgeführt wird, sondern was berechnet bzw. was getan wird. Funktionale<br />

Beschreibungen stellen das nach außen sichtbare Verhalten eines Systems dar. Hierzu werden die<br />

einzelnen Prozesse als Funktionen aufgefaßt, deren Eingaben in Ausgaben transformiert werden.


56 Visuelle <strong>Modellierungssprachen</strong> der Organisations- und Softwaretechnik<br />

Krankengymnastik<br />

Aufnahme<br />

Arzt<br />

Chirurgische<br />

Station<br />

stationäre<br />

Abrechnung<br />

Abbildung 3.13: Kooperationsbild<br />

Physikalische<br />

Therapie<br />

Krankenkasse<br />

Die logischen Zusammenhänge zwischen den einzelnen Prozessen werden durch die hierzwischen<br />

ausgetauschten Daten und Gegenstände beschrieben. Zur Darstellung dieser funktionalen<br />

oder logischen Systemeigenschaften werden die Beschreibungsmittel des Datenflußparadigmas<br />

verwendet.<br />

Die zeitliche Betrachtung der Aufgabenbearbeitung umfaßt die Untersuchung der Dynamik des<br />

zu beschreibenden Systems. Betrachtet wird hier das innere Verhalten eines System, d. h. wann,<br />

in welcher zeitlichen oder logischen Reihenfolge die Prozesse des Systems bearbeitet werden.<br />

Hierbei interessiert insbesondere der Kontrollfluß, d. h. die Reihenfolge in der die einzelnen Teilprozesse<br />

oder Operationen ausgeführt werden. Zur Beschreibung dieser Kontrollflußaspekte gibt<br />

es mehrere Paradigmen. Durch die <strong>visuelle</strong>n Sprachen des Zustandsübergangsparadigmas wird<br />

der Zustandswechsel eines einzelnen Objekts oder eines ganzen Systems über seine Lebenszeit<br />

beschrieben. Das dynamische Verhalten eines Systems kann auch durch Abfolgen von Prozessen<br />

und/oder Ereignissen beschrieben werden. Diese Beschreibungsmittel folgen dem Netzparadigma,<br />

das nahezu beliebige Kontrollflüsse zwischen Prozessen und Ereignissen abbildet. Die<br />

<strong>Modellierungssprachen</strong> des Kontrollflußparadigmas erlauben dagegen ausschließlich reguläre<br />

Strukturierungen der Kontrollflüsse durch <strong>Se</strong>quenzen, Iterationen und Verzweigungen.<br />

3.4.1 Visuelle <strong>Modellierungssprachen</strong> des Datenflußparadigmas<br />

Durch die <strong>visuelle</strong>n <strong>Modellierungssprachen</strong> des Datenflußparadigmas werden die funktionalen<br />

Beziehungen zwischen Daten oder Gegenständen, die von einem System benötigt und erzeugt<br />

werden, beschrieben. Das Gesamtsystem wird hierbei als eine funktionale Komponente (Akti-


3.4 Visuelle <strong>Modellierungssprachen</strong> der Prozeßsicht 57<br />

vität, Prozeß) aufgefaßt, die in weitere funktionale Komponenten zerlegt werden kann. Das von<br />

außen sichtbare Verhalten dieser funktionalen Komponenten wird durch die Angabe der Beziehungen<br />

zur Umwelt beschrieben. Mit den Beschreibungsmitteln des Datenflußparadigmas wird<br />

das zu modellierende System als ein Netz funktionaler Komponenten dargestellt, die über den<br />

Austausch von Daten oder Gegenständen miteinander interagieren. Diese Darstellungsmittel beschreiben<br />

den potentiell möglichen Daten- oder Materialfluß durch das System. Hierbei wird der<br />

Kontrollfluß in der Regel nicht modelliert.<br />

Zur Beschreibung dieser funktionalen Eigenschaften einer Organisation oder eines Softwaresystems<br />

werden Datenflußdiagramme, Bonapart Prozeßmodelle, Bubble-Charts, Datenflußpläne,<br />

Funktionszuordnungsdiagramme, SADT-Aktivitätsdiagramme, SADT-Datendiagramme und<br />

Verkehrsschaubilder verwendet. Datenflußdiagramme, die einen ersten Blick auf das zu modellierende<br />

System erlauben, werden auch als Kontextdiagramme oder Anwendungsfalldiagramme<br />

(Use-Case-Diagramme) bezeichnet.<br />

Notationelle Grundform: Datenflußdiagramm<br />

Die Darstellung von Datenflußdiagrammen erfolgt durch Graphen, bei denen die funktionalen<br />

Systemelemente durch Knoten und die Datenflüsse durch Kanten dargestellt werden. In den heute<br />

gebräuchlichen Datenflußdiagrammen der (modernen) strukturierten Analyse [DeMarco, 1978],<br />

[Yourdon, 1989] werden neben den Prozessen und Datenflüssen auch Datenspeicher aufgeführt.<br />

Diese Speicher dienen zur Modellierung von persistenten Daten oder zwischengelagerten Gegenständen.<br />

Der Einstieg in eine Datenflußmodellierung erfolgt häufig über ein spezielles Datenflußdiagramm,<br />

das als Kontextdiagramm bezeichnet wird. Kontextdiagramme beschreiben die Einbettung<br />

des zu modellierenden Systems in die Systemumgebung. Hierzu wird das gesamte System<br />

als ein Prozeß aufgefaßt, der mit externen Prozessen über Datenflüsse interagiert. Diese externen<br />

Prozesse, die wieder eigene, hier nicht weiter betrachtete, Systeme sind, stellen die Schnittstelle<br />

des zu modellierenden Systems zu einer Umwelt dar.<br />

Für die weitere Modellierung werden Prozesse verfeinert. Sie werden hierzu z. B. analog zur<br />

Aufgabengliederung (vgl. Kapitel 3.2.1) oder entlang der inzidenten Datenflüsse (vgl. [Yourdon,<br />

1989, S. 375]) wiederholt in Teilprozesse zerlegt. Das Zusammenspiel dieser Prozesse wird dann<br />

in einem neuen Datenflußdiagramm beschrieben. In Anlehnung an [Miller, 1956] fordern [Ross,<br />

1977] und [Yourdon, 1989, S. 160], daß ein Prozeß in drei bis sechs Unterprozesse zerlegt werden<br />

soll. Diese Zerlegungen werden solange durchgeführt, bis Elementarprozesse erreicht sind,<br />

die durch wenige Zeilen Text ausreichend beschrieben werden können [Yourdon, 1989, S. 168].<br />

Weitere Konkretisierungen der Prozesse, die dann konkretes Vorgehen und nicht das nach außen<br />

sichtbare Verhalten der Elementarprozesse beschreiben, erfolgen in der (modernen) strukturierten<br />

Analyse z. B. durch Entscheidungstabellen, Nassi-Shneiderman-Diagramme oder Pseudocode<br />

entlang des Kontrollflußparadigmas (vgl. Kapitel 3.4.4). In der Unified Modeling Language<br />

(UML) [Rumbaugh et al., 1999, S. 64] erfolgt die Konkretisierung von Anwendungsfällen, die<br />

als Prozesse aufgefaßt werden können, z. B. durch Statecharts des Zustandsübergangsparadigmas<br />

(vgl. Kapitel 3.4.2), durch Aktivitätsdiagramme des Netzparadigmas (vgl. Kapitel 3.4.3), durch<br />

<strong>Se</strong>quenzdiagramme und Kollaborationsdiagramme des Objekt-Interaktionsparadigmas (vgl. Kapitel<br />

3.5.2) oder durch informale, textuelle Beschreibungen.


58 Visuelle <strong>Modellierungssprachen</strong> der Organisations- und Softwaretechnik<br />

Bei der Verfeinerung eines Prozesses durch weitere Datenflußdiagramme ist sicherzustellen, daß<br />

alle in den verfeinerten Prozeß eingehenden bzw. alle aus ihm ausgehenden Datenflüsse mit den<br />

in die Verfeinerung eingehenden bzw. mit den aus ihr ausgehenden korrespondieren. Ebenso darf<br />

die Verfeinerung keine weiteren ein- bzw. ausgehenden Datenflüsse besitzen. Zur Verfeinerung<br />

der Datenflüsse können diese in weitere Teildatenflüsse verzweigt werden. Die weitere Konkretisierung<br />

der Datenflüsse erfolgt durch die Beschreibungsmittel des Objekt-Beziehungsparadigma<br />

(vgl. Kapitel 3.5.3).<br />

externe<br />

Anforderer<br />

Station/<br />

Ambulanz<br />

Radiologietermin,<br />

Radiologiebefund,<br />

Vorbereitungsstandard<br />

Radiologieanforderung<br />

Aufnahme<br />

Radiologietermin,<br />

Radiologiebefund,<br />

Vorbereitungsstandard<br />

Aufnahme,<br />

Krankenakte<br />

Radiologieanforderung<br />

Ärztliche<br />

Stelle<br />

Kontrolldaten<br />

Laborbefund<br />

radiologische<br />

Leistung<br />

erbringen<br />

Laboranforderung<br />

Labor<br />

Kontrolldatenanforderung<br />

Statistik<br />

Narkoseanforderung<br />

Abbildung 3.14: Kontextdiagramm<br />

Rechnungswesen<br />

Leistungsbeleg<br />

Materialanforderung<br />

Materialliste,<br />

Materiallieferung,<br />

Verbrauchsanalyse<br />

Anästhesietermin<br />

Anästhesie<br />

Materialwirtschaft<br />

Zur Unterscheidung von Prozessen, Speichern, Schnittstellen und Datenflüssen werden in konkreten<br />

Notationen unterschiedliche graphische Formen verwendet. Prozesse werden in Anlehnung<br />

an [DeMarco, 1978] meist durch Ellipsen, Speicher durch zwei parallele Linien, Schnittstellen<br />

durch Rechtecke und Datenflüsse durch Pfeile dargestellt, die jeweils durch einen Bezeichner<br />

annotiert sind. Zur Bezeichnung der Datenflüsse, Speicher und Schnittstellen werden<br />

hierzu meist Substantive im Singular und <strong>für</strong> Prozesse Verbalphrasen verwendet. In Beispiel 3.7<br />

ist die Radiologie eines Krankenhauses (in Ausschnitten) als Datenflußdiagramm [Schumm et<br />

al., 1995], [Winter / Ebert, 1997] modelliert.<br />

Beispiel 3.7 (Datenflußmodellierung der Radiologie)<br />

Abbildung 3.14 beschreibt das Kontextdiagramm der radiologischen Abteilung eines<br />

Krankenhauses. Die Radiologie wird hierbei als Prozeß radiologische Leistung erbrin-


3.4 Visuelle <strong>Modellierungssprachen</strong> der Prozeßsicht 59<br />

gen aufgefaßt, der von unterschiedlichen Schnittstellen (Abteilungen, externe Partner<br />

etc.) Daten und Gegenstände erhält bzw. an diese gibt. Datenflußbeziehungen bestehen<br />

zu den Verwaltungsabteilungen (Rechnungswesen und Materialwirtschaft) und zu medizinisch/pflegerischen<br />

Abteilungen (Anästhesie, Labor, Station/Ambulanz) innerhalb des<br />

Krankenhauses sowie zu Partnern außerhalb des Krankenhauses (externe Anforderer und<br />

Ärztliche Stelle).<br />

Radiologieanforderung<br />

Anästhesietermin<br />

Laborbefund<br />

Krankenakte<br />

Aufnahme<br />

Kontrolldatenanforderung<br />

Statistik<br />

Materialliste<br />

Materiallieferung<br />

Verbrauchsanalyse<br />

Anforderung<br />

bearbeiten<br />

Verbrauch<br />

Untersuchungsstandard<br />

Untersuchungsdokumentation<br />

Hauptbuch<br />

Abbildung 3.15: Datenflußdiagramm<br />

Standards<br />

erstellen<br />

Qualität und<br />

Leistung<br />

kontrollieren<br />

Material<br />

beschaffen<br />

Radiologiebefund<br />

Narkoseanforderung<br />

Laboranforderung<br />

Krankenakte<br />

Aufnahme<br />

Radiologietermin<br />

Vorbereitungsstandard<br />

Kontrolldaten<br />

Leistungsbeleg<br />

Materialanforderung<br />

Der Prozeß radiologische Leistung erbringen wird in Abbildung 3.15 durch die Prozesse<br />

Standards erstellen, Anforderung bearbeiten, Qualität und Leistung kontrollieren und<br />

Material beschaffen konkretisiert (vgl. auch die Aufgabengliederung in Beispiel 3.2). Die<br />

in den Prozeß radiologische Leistung erbringen eingehenden bzw. die aus ihm ausgehenden<br />

Datenflüsse finden sich auch in der Verfeinerung als ein- und ausgehende Datenflüsse<br />

wieder, so daß dieser Prozeß und die Zusammenfassung seiner Teilprozesse nach außen<br />

dasselbe Verhalten aufweisen.<br />

Im Prozeß radiologische Leistung erbringen werden im Speicher Hauptbuch die diversen<br />

radiologischen Untersuchungen protokolliert. Diese Aufzeichnungen bilden die Grundlage<br />

zur Festlegung von Standards im Prozeß Standards erstellen und zur Qualitätskontrolle<br />

im Prozeß Qualität und Leistung kontrollieren. Ein Beispiel <strong>für</strong> eine Datenflußbeziehung<br />

ist der Datenfluß Verbrauch zwischen den Prozessen Anforderung bearbeiten und Material<br />

beschaffen. Hierdurch wird der Materialverbrauch der einzelnen Untersuchungen an<br />

die interne Beschaffung übermittelt, die z. B. neue Materialanforderungen an die Materialwirtschaft<br />

stellen kann. £


60 Visuelle <strong>Modellierungssprachen</strong> der Organisations- und Softwaretechnik<br />

Notationelle Varianten<br />

Datenflußorientierte Beschreibungsmittel sind schon sehr lange zur Modellierung von funktionalem<br />

Systemverhalten im Einsatz, so daß sich über die Zeit auch hier mehrere Darstellungsformen<br />

herausgebildet haben. Einige auf den ersten Blick verschiedene Beschreibungsmittel aus unterschiedlichen<br />

Modellierungsepochen sind in den Abbildungen 3.16 bis 3.18 skizziert.<br />

Die verschiedenen Beschreibungsmittel des Datenflußparadigmas unterscheiden sich lediglich<br />

durch ihre konkrete Notation. So werden in der Datenflußmodellierung nach [Gane / Sarson,<br />

1979], [Gane, 1990] Prozesse durch Rechtecke mit abgerundeten Ecken und Speicher durch<br />

rechts offene Rechtecke dargestellt. In SADT-Aktivitätsdiagrammen [Ross, 1977] oder in Datenflußplänen<br />

[Chapin, 1970], [DIN 66001, 1983] werden Prozesse durch Rechtecke beschrieben.<br />

Datenflüsse werden sowohl durch Kurven als auch durch rechtwinklige (evtl. abgerundete)<br />

Linienzüge notiert.<br />

Die Darstellungsvarianten nach [Ross, 1977] und [Gane / Sarson, 1979] erlauben gegenüber der<br />

notationellen Grundform nach [DeMarco, 1978] auch die Beschreibung der menschlichen oder<br />

technischen Handlungsträger eines Prozesses. In der Notation nach [Gane / Sarson, 1979] werden<br />

diese direkt in den Prozeßdarstellungen notiert. SADT beschreibt die Handlungsträger (Mechanismen)<br />

durch Substantive, die mit der Prozeßdarstellung durch einen Pfeil verbunden sind.<br />

In Bonapart Prozeßmodellen [Pro Ubis, 1999b, S. 37ff] können Prozesse ebenfalls um Handlungsträger<br />

ergänzt werden. Werden die Handlungsträger auf Stellen innerhalb der Organisation<br />

bezogen, lassen sich hierdurch Querbezüge zur Aufbausicht (vgl. Kapitel 3.3) herstellen.<br />

Echtzeit-Datenflußdiagramme. Eine Erweiterung der Grundform der Datenflußdiagramme<br />

um Mittel zur Beschreibung von Echtzeitsystemen nehmen [Ward / Mellor, 1985, S. 47ff] vor.<br />

Hierbei werden zusätzlich zu den Datenflüssen, Prozessen und Speichern noch Ereignisflüsse,<br />

Kontrollprozesse und Ereignisspeicher eingeführt. Ereignisflüsse zwischen Prozessen steuern<br />

deren Ausführung. Kontrollprozesse sind ausschließlich zu Kontrolldatenflüssen inzident und<br />

dienen zur Modellierung von Steuerungskomponenten. Diese Kontrollprozesse werden durch<br />

die Mittel des Zustandsübergangsparadigmas (vgl. Kapitel 3.4.2) weiter konkretisiert. Ereignisspeicher<br />

dienen ausschließlich zur Zwischenspeicherung von Ereignissen. Die Darstellung dieser<br />

Kontrollelemente erfolgt durch unterbrochene Linien.<br />

Datenflußpläne. Datenflußpläne nach DIN 66001 [DIN 66001, 1983], die auch als Verkehrsschaubilder<br />

(vgl. z. B. [Grochla, 1982, S. 315]) bezeichnet werden, können als eine frühe Form<br />

der Beschreibungsmittel des Datenflußparadigmas aufgefaßt werden. In diesen Diagrammen<br />

werden die Daten neben Prozessen und Speichern als eigenständige Dinge dargestellt. Datenflußkanten<br />

verbinden dann Prozeßdarstellungen mit Datendarstellungen in der jeweiligen Datenflußrichtung.<br />

Gegenüber den heute gebräuchlichen Datenflußdiagrammen werden in Datenflußplänen verschiedene<br />

Arten der Trägermedien <strong>für</strong> Daten (z. B. Dokumente, allgemeine Datenträger), verschiedene<br />

Arten der Speicherung (Lochkarte, Lochstreifen, Magnetband, Trommelspeicher,<br />

Hauptspeicher) und verschiedene Arten der Verarbeitung (allgemeine Verarbeitung, manuelle<br />

Verarbeitung) unterschieden. Für diese Konzepte werden jeweils unterschiedliche Piktogramme<br />

(vgl. [DIN 66001, 1983], [Schmidt, 1989, S. 323]) verwendet.


3.4 Visuelle <strong>Modellierungssprachen</strong> der Prozeßsicht 61<br />

Labor<br />

Anästhesie<br />

Rechnungswesen<br />

Laboranforderung<br />

Anästhesieanforderung<br />

Ärztliche<br />

Stelle<br />

Krankenakte<br />

Statistik KontrolldatenanforderungH<br />

Kontrolldaten<br />

Ärztliche<br />

Stelle<br />

Qualität und<br />

Leistung<br />

kontrollieren<br />

Station/<br />

Ambulanz<br />

Leistungsbeleg<br />

Rechnungswesen<br />

Radiologieanforderung<br />

Hauptbuch<br />

externe<br />

Anforderer<br />

Station/<br />

Ambulanz<br />

Aufnahme<br />

Anforderung<br />

bearbeiten<br />

Untersuchungsstandard<br />

Standards<br />

erstellen<br />

Vorbereitungsstandard<br />

externe<br />

Anforderer<br />

Anästhesie Labor<br />

Anästhesietermin<br />

Verbrauch<br />

Abbildung 3.16: Datenflußplan<br />

Laborbefund<br />

Krankenakte<br />

Aufnahme<br />

Radiologietermin<br />

Radiologiebefund<br />

Materialliste<br />

Material<br />

beschaffen<br />

Materialanforderung<br />

Materialwirtschaft<br />

Materialwirtschaft<br />

Verbrauchsanalyse<br />

allgemeine<br />

Verarbeitung<br />

Beleggebundene<br />

Daten<br />

allgemeine<br />

Daten<br />

Speicher mit<br />

direktem<br />

Zugriff<br />

Schnittstelle<br />

zur Umwelt<br />

Station/<br />

Ambulanz<br />

externe<br />

Anforderer<br />

Materiallieferung<br />

Abbildung 3.16 beschreibt den Prozeß radiologische Leistung erbringen als Datenflußplan. Hierbei<br />

werden die Teilaktivitäten als allgemeine Verarbeitungsschritte aufgefaßt, die durch Rechtecke<br />

notiert werden. Daten, die zwischen diesen ausgetauscht werden, sind i. allg. Dokumente<br />

(z. B. Krankenakte oder Radiologieanforderung). Diese werden durch Piktogramme, die einen<br />

Ausriß aus einem Papierdokument symbolisieren, beschrieben. Allgemeine bzw. nicht weiter<br />

konkretisierte Datenträger werden durch Rauten (z. B. Aufnahme) notiert. In Datenflußplänen<br />

wird der Fluß dieser Datenträger durch das System modelliert. Gerichtete Kanten symbolisieren<br />

die Erzeugung bzw. Verwendung der Daten. Schnittstellen zur Systemumwelt werden in Datenflußplänen<br />

durch Ovale notiert. Da Datenflußpläne i. allg. von oben nach unten oder von links<br />

nach rechts gelesen werden, sind z. B. die Schnittstellen Station/Ambulanz oder Materialwirtschaft<br />

jeweils getrennt als Daten liefernde und Daten erhaltene Interaktionspartner modelliert.


62 Visuelle <strong>Modellierungssprachen</strong> der Organisations- und Softwaretechnik<br />

SADT-Diagramme. Eine Variante der Datenflußdiagramme der (modernen) strukturierten<br />

Analyse stellen SADT-Aktivitätsdiagramme dar. Gegenüber den Notationen von [DeMarco,<br />

1978], [Gane / Sarson, 1979] und [Yourdon, 1989] werden in SADT umfangreiche Vorgaben<br />

zur übersichtlichen Darstellung der Datenflußdiagramme gemacht (vgl. [Ross, 1977], [Marca /<br />

McGowan, 1988]). Die Prozesse eines Datenflußdiagramms sind hierbei z. B. treppenartig von<br />

links oben nach rechts unten anzuordnen und Datenflußbeziehungen sind durch rechtwinklige<br />

Linienzüge zu beschreiben. Für die Modellierung von SADT-Diagrammen ist es wesentlich,<br />

an welcher Stelle der Prozeßdarstellung Kanten inzident sind. Eingehende Datenflüsse werden<br />

grundsätzlich an der linken <strong>Se</strong>ite und ausgehende Datenflüsse an der rechten <strong>Se</strong>ite einer Prozeßdarstellung<br />

notiert. Kontrolldaten, die in der Prozeßbearbeitung nicht verändert werden und nur<br />

steuernden Charakter haben, gehen von oben und Verbindungen zu Handlungsträgern von unten<br />

in die Prozeßdarstellung ein. Speicher werden in SADT nicht verwendet. Wie auch die Datenflußdiagramme<br />

der (modernen) strukturierten Analyse erlaubt auch SADT die Verfeinerung der<br />

Datenflußdiagramme.<br />

1<br />

2<br />

Radiologieanforderung,<br />

Krankenakte,<br />

Aufnahme<br />

Kontrolldatenanforderung,<br />

Statistik<br />

Materialliste,<br />

Verbrauchsanalyse<br />

Materiallieferung<br />

Arzt<br />

Radiologie<br />

Laborbefund,<br />

Anästhesietermin<br />

4<br />

Anforderung<br />

bearbeiten<br />

MTA<br />

Radiologie<br />

3<br />

Untersuchungsstandard<br />

Untersuchungsdokumentation<br />

Verbrauch<br />

Oberarzt<br />

Radiologie<br />

Standards<br />

erstellen<br />

Qualität und<br />

Leistung<br />

kontrollieren<br />

Abteilungsleiter Radiologie<br />

Abbildung 3.17: SADT-Aktivitätsdiagramm<br />

Material<br />

beschaffen<br />

5 Radiologiebefund,<br />

Narkoseanforderung,<br />

Laboranforderung,<br />

6 Krankenakte,<br />

7 Aufnahme,<br />

Radiologietermin<br />

Vorbereitungsstandard<br />

Kontrolldaten,<br />

Leistungsbeleg<br />

Materialanforderung<br />

In Abbildung 3.17 ist der Prozeß radiologische Leistung erbringen als SADT-Aktivitätsdiagramm<br />

beschrieben. Für die eingehenden Datenflüsse ist hierbei erkennbar, ob sie durch den<br />

Prozeß umgewandelt werden oder ob sie lediglich steuernden Charakter haben. So kontrollieren<br />

beispielsweise Laborbefund, Anästhesietermin und Untersuchungsstandard den Prozeß Anforderung<br />

bearbeiten, während Radiologieanforderung, Krankenakte und Aufnahme weiter bearbeitet


3.4 Visuelle <strong>Modellierungssprachen</strong> der Prozeßsicht 63<br />

werden. In diesem Diagramm ist auch erkennbar, durch welche Mitarbeiter die einzelnen Aktivitäten<br />

ausgeführt werden.<br />

Beschreibungsmittel des Datenflußparadigmas modellieren üblicherweise keine Kontrollflußstrukturen.<br />

SADT erlaubt aber durch <strong>Se</strong>quentialisierungen [Balzert, 1988, S. 120] Ablauffolgen<br />

herauszustellen. Diese <strong>Se</strong>quenzen, die durch Markieren von Datenflüssen und Prozessen mit<br />

Zahlen notiert werden, beschreiben Szenarien von Aktivierungen einzelner Aktivitäten in Abhängigkeit<br />

der ein- und ausgehenden Datenflüsse. Die in Abbildung 3.17 herausgestellte <strong>Se</strong>quenz<br />

1. Radiologieanforderung,<br />

2. Krankenakte,<br />

3. Untersuchungsstandard,<br />

4. Anforderung bearbeiten,<br />

5. Radiologiebefund,<br />

6. Krankenakte,<br />

7. Aufnahme<br />

beschreibt ein Standardszenario zur Durchführung einer radiologischen Untersuchung.<br />

Neben den Aktivitätsdiagrammen, die die Prozesse in den Vordergrund stellen, werden in SADT<br />

auch Datendiagramme eingeführt, in denen funktional zusammenhängende Daten durch Knoten<br />

notiert werden. Die Prozesse, die diese Daten verändern oder erzeugen, werden als von links<br />

in den Datenknoten eingehende Kanten gezeichnet. Steuernde Aktivtäten (z. B. Änderungsdienste)<br />

werden analog zu den Aktivtätendiagrammen als von oben eingehende Kanten dargestellt.<br />

Aus den Datenknoten ausgehende Kanten beschreiben die lesenden Aktivitäten. Der von unten<br />

eingehende Mechanismuspfeil wird zur Darstellung des Speichermediums verwendet. SADT-<br />

Datendiagramme stellen eine zu den SADT-Aktivitätsdiagrammen komplementäre Notation bereit.<br />

Anwendungsfalldiagramme. Auch in den objektorientierten Methoden zur Systemanalyse<br />

werden Beschreibungsmittel des Datenflußparadigmas verwendet. So setzt die Object Modeling<br />

Technique (OMT) [Rumbaugh et al., 1991] Datenflußdiagramme der strukturierten Analyse zur<br />

Beschreibung der Systemdynamik ein. In der Unified Modeling Language (UML) [Booch et al.,<br />

1999, S. 266] können Aktivitätsdiagramme (vgl. die Beschreibungsmittel des Netzparadigmas<br />

in Kapitel 3.4.3) um datenflußähnliche Objektflüsse ergänzt werden. Anwendungsfalldiagramme<br />

der UML, die aus Object-Oriented Software Engineering (OOSE) [Jacobson et al., 1993, S. 126]<br />

übernommen wurden, betrachten ebenfalls das zu modellierende System in seinem Systemkontext.<br />

In Anwendungsfällen ist die nach außen sichtbare Funktionalität des Systems zusammengefaßt<br />

[Rumbaugh et al., 1999, S. 488], so daß Anwendungsfälle als Systemprozesse betrachtet<br />

werden können. Im Mittelpunkt der Beschreibung durch Anwendungsfalldiagramme stehen die<br />

wesentlichen Prozesse und deren Interaktionsbeziehungen zur Systemumwelt, die durch Akteure<br />

repräsentiert werden. Die Anwendungfälle bzw. die hiermit assozierten Prozesse werden in<br />

Aktivtätsdiagrammen des Netzparadigmas (vgl. Kapitel 3.4.3) näher beschrieben.<br />

Im Gegensatz zu den Kontext- und Datenflußdiagrammen der (modernen) strukturierten Analyse<br />

werden in Anwendungsfalldiagrammen die zwischen der Systemumwelt und den Anwendungsfällen<br />

ausgetauschten Daten nicht beschrieben. Anwendungsfalldiagramme stellen nur das Vorhandensein<br />

einer (Interaktions-) Beziehungen zwischen Akteuren und Anwendungsfällen heraus.


64 Visuelle <strong>Modellierungssprachen</strong> der Organisations- und Softwaretechnik<br />

externe<br />

Anforderer<br />

Station/<br />

Ambulanz<br />

MTA-R<br />

Arzt<br />

Anforderer<br />

Mitarbeiter<br />

Radiologie<br />

Anforderung<br />

bearbeiten<br />

Standards<br />

erstellen<br />

Qualität und<br />

Leistung<br />

kontrollieren<br />

Material<br />

beschaffen<br />

Abbildung 3.18: Anwendungsfalldiagramm<br />

Labor<br />

Anästhesie<br />

Rechnungswesen<br />

Ärztliche<br />

Stelle<br />

Material-<br />

Wirtschaft<br />

In Anwendungsfalldiagrammen werden vier Beziehungsarten unterschieden [Rumbaugh et al.,<br />

1999, S. 65]. Das Vorliegen einer Interaktionsbeziehung zwischen einem Akteur und einem Prozeß<br />

wird durch Assoziationen beschrieben. Assoziationen können auch durch Kardinalitäten<br />

annotiert sein [OMG, 1999, S. 3-88]. Sowohl zwischen Akteuren als auch zwischen Anwendungsfällen<br />

erlaubt die UML Generalisierungsbeziehungen. Extend-Beziehungen zwischen Anwendungsfällen<br />

stellen eine implementationsnähere Variante der Generalisierung auf Basis der<br />

Delegation dar. Include-Beziehungen sind ebenfalls nur zwischen Anwendungsfällen zugelassen.<br />

Sie werden verwendet, um Teilfunktionalität mehreren Anwendungsfällen bereitzustellen.<br />

Extend- und Include-Beziehungen werden durch gestrichelte Pfeile dargestellt, die jeweils durch<br />

„extend“ oder „include“ markiert sind. Anwendungsfalldiagramme beschreiben voneinander<br />

unabhängige, zentrale Prozesse eines Systems, so daß zwischen diesen keine Assoziationen erlaubt<br />

sind [Rumbaugh et al., 1999, S. 489].<br />

Ein Anwendungsfalldiagramm <strong>für</strong> die Radiologie ist in Abbildung 3.18 skizziert. Die Akteure<br />

zur Darstellung der Schnittstellen zur Systemumwelt werden durch Strichmännchen notiert.<br />

Hierbei wurden externe Anforderer und Station/Ambulanz zu Anforderer generalisiert. Die Mitarbeiter<br />

(MTA-R und Ärzte)), durch die Anwendungsfälle bearbeitet werden, sind hier ebenfalls


3.4 Visuelle <strong>Modellierungssprachen</strong> der Prozeßsicht 65<br />

als Akteure modelliert. Mögliche Interaktionsbeziehungen zwischen den Akteuren und den durch<br />

Ellipsen dargestellten Anwendungsfällen werden durch Linien notiert.<br />

Forderungen an das <strong>Referenz</strong>-<strong>Metaschema</strong><br />

Die <strong>visuelle</strong>n <strong>Modellierungssprachen</strong> des Datenflußparadigmas beschreiben das von außen sichtbare<br />

Verhalten eines Systems. Hierzu wird das System durch Prozesse modelliert, die mit<br />

der Systemumwelt interagieren. Querbezüge zwischen Prozessen und Schnittstellen werden<br />

sowohl durch Datenflüsse als auch durch Interaktionsbeziehungen hergestellt. Das <strong>Referenz</strong>-<br />

<strong>Metaschema</strong> muß daher Konzepte zur Darstellung der funktionalen Systembestandteile, zur Darstellung<br />

der Daten- und Interaktionsbeziehungen und zur Darstellung der Schnittstellen zur Systemumwelt<br />

abbilden.<br />

Neben der Einbettung eines Systems in seine Umwelt erlauben die Beschreibungsmittel des Datenflußparadigmas<br />

auch die Konkretisierung des funktionalen Verhaltens durch Verfeinerungen.<br />

Hierzu muß das <strong>Referenz</strong>-<strong>Metaschema</strong> auch Konzepte zur Verfeinerung von Prozessen durch<br />

weitere Datenflußbeschreibungen bereitstellen. Diese Verfeinerungskonzepte erfordern auch eine<br />

Berücksichtigung der Strukturierung der durch die Datenflüsse ausgetauschten Daten. Daneben<br />

sollten auch Konzepte aus Ergänzungen und Erweiterungen der Datenflußbeschreibungen<br />

wie z. B. Speicher, Mechanismen oder Szenarien abgebildet werden.<br />

3.4.2 Visuelle <strong>Modellierungssprachen</strong> des Zustandsübergangsparadigmas<br />

Zur Beschreibung reaktiver Systeme werden die <strong>Modellierungssprachen</strong> des Zustandsübergangsparadigmas<br />

verwendet. Die Darstellung des Systemverhaltens erfolgt hierbei entlang der<br />

Zustände, die Objekte oder Systeme einnehmen können. Übergänge zwischen diesen Zuständen<br />

werden durch Ereignisse ausgelöst, die entweder außerhalb des Systems oder im modellierten<br />

System selbst eintreten können. Sowohl Zuständen als auch Zustandsübergängen können Aktionen<br />

zugeordnet werden, die vom System in den entsprechenden Situationen ausgeführt werden.<br />

Darstellungen des Zustandsübergangsparadigmas dienen somit zur zustandsübergangsorientierten<br />

Kontrollflußmodellierung.<br />

Der Modellierung entlang des Zustandsübergangsparadigmas liegt die Betrachtung des Systems<br />

durch endliche, deterministische Automaten mit Ausgabe [Hopcroft / Ullmann, 1979, S. 42]<br />

zugrunde. Notiert werden diese Automaten durch Statecharts, durch (hierarchische) Automaten,<br />

durch Zustandsautomaten, durch Zustands-(übergangs)-Diagramme, durch Zustands-(übergangs)-Matrizen<br />

und durch Zustandsübergangstabellen.<br />

Notationelle Grundform: Statecharts<br />

Modellierungen reaktiver Systeme durch Automaten werden durch Graphen dargestellt. Die<br />

Knoten beschreiben die Systemzustände und die Kanten die Zustandsübergänge. Hierbei sind<br />

die Knoten durch einen Zustandsbezeichner und die Kanten durch das den Übergang auslösende<br />

Ereignis markiert. Beschreibungen durch solche Zustandsübergangsgraphen werden aufgrund<br />

der modellierten Komplexität jedoch schnell sehr unübersichtlich, so daß Zustandsübergangsgraphen<br />

um zusätzliche Strukturierungsmittel zu Statecharts ergänzt wurden [Harel, 1987], [Harel,


66 Visuelle <strong>Modellierungssprachen</strong> der Organisations- und Softwaretechnik<br />

1988]. Diese Strukturierungsmittel erlauben die Zusammenfassung und Verfeinerung von Zuständen<br />

(Depth), die Beschreibung von Parallelabläufen (Orthogonality) und die Synchronisation<br />

von Teilsystemen durch Nachrichtenaustausch (Broadcast). Zur Darstellung der Statecharts<br />

werden Hypergraphen verwendet, die Venn-Diagramm-ähnlich notiert werden. Abbildung 3.19<br />

skizziert exemplarisch ein Statechart zur Modellierung eines Dialysesystems.<br />

Durch die Verwendung der zusätzlichen Strukturierungsmittel erfolgt die Modellierung eines reaktiven<br />

Systems durch mehrere Teilautomaten. Der Zustand des Gesamtsystems ergibt sich hierbei<br />

aus der Summe der Zustände der jeweiligen Teilautomaten. Um die strukturierten Zustände<br />

der einzelnen Teilautomaten begrifflich vom Zustand des Gesamtsystems zu trennen, werden die<br />

strukturierten Zustände im folgenden als Blob bezeichnet. Zustandsübergänge beschreiben daher<br />

auch den Übergang zwischen Blobs. Diese Übergänge werden durch Pfeile notiert, die mit den<br />

die Übergänge auslösenden Ereignissen annotiert sind. Übergänge können zusätzlich zum Eintreffen<br />

des Ereignisses noch von Prädikaten abhängig gemacht werden. Diese „Guards“ werden<br />

in eckigen Klammern den Ereignissen vorangestellt.<br />

Statecharts verwenden atomare und zusammengesetzte Blobs, die durch Ovale dargestellt werden<br />

und mit einem Bezeichner markiert sind. Bei den zusammengesetzten Blobs werden Xor-<br />

Blobs (sequential substates), die, zu einem Teilautomaten zusammengefaßte Blobs enthalten,<br />

und And-Blobs (concurrent substates) unterschieden, die sich aus mindestens zwei zueinander<br />

orthogonal stehenden Teilautomaten zusammensetzen. Die Teilautomaten der And-Blobs werden<br />

durch unterbrochene Linien voneinander getrennt.<br />

Xor-Blobs ermöglichen die Zusammenfassung mehrerer Blobs zu einem Teilautomaten. Wie<br />

auch Automaten können Xor-Blobs einen Start-Blob besitzen, der durch einen unmarkierten<br />

Pfeil dargestellt wird, der von einem schwarzen Punkt ausgeht. Die Unified Modeling Language<br />

[Booch et al., 1999, S. 331] verwendet daneben noch optionale End-Blobs, die durch einen von<br />

einem Kreis umgebenen schwarzen Punkt notiert werden. Der Zustand des Gesamtsystems wird<br />

jeweils durch genau einen dieser Blobs beeinflußt. Zustandsübergänge in einen Xor-Blob können<br />

sich sowohl auf den Gesamtblob als auch auf die in ihm enthaltenen Komponenten beziehen.<br />

Nach einem Übergang in einen Xor-Blob befindet sich der Teilautomat entweder im Start-Blob<br />

des Xor-Blobs oder bei Verwendung eines „History“-Mechanismus (durch ein „H“ markiert) im<br />

zuletzt besuchten Blob. Bei Zustandsübergängen in eine Komponente des Xor-Blobs befindet<br />

sich der Teilautomat in dieser Komponente. Zustandsübergänge aus einem Xor-Blob können<br />

ebenfalls sowohl von dem Xor-Blob selbst als auch von den Komponenten-Blobs ausgehen. In<br />

beiden Fällen trägt der Xor-Blob nicht mehr zum Gesamtzustand des Systems bei.<br />

And-Blobs dienen zur Modellierung von parallelem Systemverhalten. Zustandsübergänge sind<br />

hier grundsätzlich ebenfalls zu und aus dem And-Blob sowie zu und aus seinen Komponenten-<br />

Blobs erlaubt. Hierbei ist aber sicherzustellen, daß keine Konflikte auftreten und der Automat<br />

deterministisch bleibt. Ausführliche Diskussionen und Lösungstrategien <strong>für</strong> diese Konflikte finden<br />

sich in [Harel, 1987] und [Ebert, 1993]. Zustandsübergänge zwischen zueinander parallel<br />

liegenden Teilautomaten sind generell nicht erlaubt. Der Systemzustand eines And-Blobs bestimmt<br />

sich aus der Kombination der jeweiligen Zustände der Teilautomaten.<br />

Wird das Statechart als Moore-Automat aufgefaßt, können den Blobs auch Aktionen zugeordnet<br />

werden. [Booch et al., 1999, S. 295ff] erlaubt hierbei Aktionen, die bei Eintritt in den Blob, während<br />

des Aufenthalts im Blob und bei Verlassen des Blobs ausgeführt werden. Diese Aktionen<br />

werden durch die Schlüsselworte „entry“, „do“ und „exit“ unterschieden. Die Betrachtung des


3.4 Visuelle <strong>Modellierungssprachen</strong> der Prozeßsicht 67<br />

Dialysesystem<br />

Dialyse<br />

Entwässern<br />

Ultrafiltration<br />

Programmwahl Blutseite Wasserseite<br />

UF1<br />

entry /<br />

d=setDur()<br />

UF4<br />

entry /<br />

d1=setDur()<br />

d2=setDur()<br />

after(d) Fehler<br />

Bypass<br />

[ in Bypass]<br />

Programmwechsel<br />

[ in Bypass]<br />

Programmwechsel<br />

[ in UF1 or UF4<br />

and BlutflußOK<br />

and TemperaturOK]<br />

Start<br />

[ in UF4] after(d1) /<br />

d=d2<br />

[ in Bypass]<br />

Programmwechsel<br />

[ in Bypass]<br />

Programmwechsel<br />

Entwässern<br />

und<br />

Entgiften<br />

UF2<br />

entry /<br />

d=setDur()<br />

UF3<br />

entry /<br />

d=setDur()<br />

[ in UF3<br />

[ in UF2<br />

and BlutflußOK<br />

and BlutflußOK and TemperaturOK]<br />

and TemperaturOK] Start<br />

Start<br />

Störung<br />

behoben<br />

Abbildung 3.19: Statechart<br />

Blutfluß<br />

gestört<br />

Blutfluß<br />

OK<br />

Störung/<br />

Fehler<br />

Entgiften<br />

Temperaturproblem<br />

Temperaturfehler<br />

behoben<br />

Temperaturfehler/Fehler<br />

Temperatur<br />

OK<br />

Statecharts als Mealy-Automat ermöglicht Aktionen an den Zustandsübergängen. Diese werden<br />

durch einen „/“ von der Ereignisdarstellung getrennt. Zur Synchronisation von parallelen Automaten<br />

können diese Ereignisse auch weitere Ereignisse auslösen (Broadcast), auf die das System<br />

zeitgleich reagiert. Die Unified Modeling Language [Booch et al., 1999, S. 287ff] verwendet<br />

sowohl Moore- und Mealy-Automaten als auch Kombinationen aus beiden.<br />

Beispiel 3.8 (Statechart eines Dialysesystems)<br />

Abbildung 3.19 enthält ein Statechart zur Modellierung eines Dialysesystems. Dieses (extrem<br />

vereinfachte) Dialysesystem basiert auf vier Xor-Blobs, die in dem And-Blob Dialysesystem<br />

zusammengefaßt sind. Der Blob Dialyse stellt die Grundfunktionalität des Systems<br />

mit Ultrafiltrationsmodi zum Entwässern, zumEntwässern und Entgiften und zum<br />

Entgiften sowie einem Bypass-Modus bereit. Im Blob Programmauswahl erfolgt die Vorwahl<br />

von vier Dialyseprogrammen (je eines <strong>für</strong> die drei Ultrafiltrationsverfahren und eines


68 Visuelle <strong>Modellierungssprachen</strong> der Organisations- und Softwaretechnik<br />

<strong>für</strong> eine Kombinationsbehandlung mit den Teilphasen Entwässern und Entwässern und<br />

Entgiften). Die beiden restlichen Automaten skizzieren am Blutfluß und an der Temperatursteuerung<br />

exemplarisch Überwachungseinrichtungen auf der Blutseite und der Wasserseite.<br />

Der Zustand des Systems bestimmt sich aus den jeweiligen Zuständen dieser Teilsysteme.<br />

Bei Aktivierung des Dialysesystems befinden sich diese in ihren Startblobs. Durch das<br />

Ereignis Programmwechsel können verschiedene Dialyseprogramme ausgewählt werden.<br />

Diese Auswahl ist jedoch nur möglich, falls sich der Dialyse-Automat im Bypass-Blob<br />

befindet. Dieses wird durch das Prädikat [in Bypass] modelliert. Mit Eintreten in einen<br />

der vier Programmblobs (UF1-4) wird auch die Dauer <strong>für</strong> die jeweilige Behandlung durch<br />

die „entry“-Aktion d=setDur() gesetzt.<br />

Ausgehend von dem Bypass-Blob wechselt der Dialyse-Blob, nach dem Ereignis Start in<br />

das durch den Zustand des Programmauswahl-Systems angegebene Ultrafiltrationsverfahren.<br />

Diese Übergänge sind nur zugelassen, falls auch die Überwachungsautomaten keine<br />

Probleme signalisieren. Ist das Programm UF4 vorgewählt, wird nach der Beendigung<br />

der Entwässerung (after(d1))indenBlobEntwässern und Entgiften gewechselt. Dieser<br />

Übergang löst gleichzeitig auch eine Aktion d=d2 zum <strong>Se</strong>tzen der Behandlungsdauer<br />

<strong>für</strong> die zweite Phase der Behandlung aus. Aus dem Xor-Blob Ultrafiltration erfolgt<br />

der Rücksprung zum Bypass-Blob, falls die voreingestellte Behandlungsdauer abgelaufen<br />

(after(d)) oder das Fehler-Ereignis eingetreten ist.<br />

Die beiden Blobs Blutseite und Wasserseite befinden sich während der Durchführung einer<br />

Dialyse in den Blobs BlutflußOK bzw. TemperaturOK. Im Fehlerfall wird hier jeweils<br />

in einen Fehler-Blob gewechselt. Dieses Fehler-Ereignis wird durch den Broadcast-<br />

Mechanismus an den hierzu parallelen Dialyse-Xor-Blob gemeldet, wodurch eine Behandungsunterbrechung<br />

ausgelöst wird. £<br />

Notationelle Varianten<br />

Konkrete Notationen zur Visualisierung von Statecharts oder hierarchischen Automaten unterscheiden<br />

sich nur geringfügig. Mit Ausnahme weniger Erweiterungen wie z. B. die Ergänzung<br />

um Endzustände und die Zuordnung verschiedener Aktionen an Blobs, verwendet die Unified<br />

Modeling Language [Booch et al., 1999, S. 287] die gleiche Notation wie sie auch bereits in<br />

[Rumbaugh et al., 1991, S. 87ff] genutzt wurde. Kleinere semantische Unterschiede zwischen<br />

den Dialekten von [Harel, 1987] und der UML werden in [OMG, 1999, S. 2-150] herausgestellt.<br />

Eingeschränkt werden Statecharts im Dialekt nach Booch verwendet. Hier werden nur<br />

And-Blobs, aber keine Xor-Blobs unterstützt [Booch, 1994, S. 208]. Alternative Notationen unterscheiden<br />

sich hiervon i. allg. nur in ihrer Ausdrucksmächtigkeit. In Abbildung 3.20 sind einige<br />

dieser Varianten aufgeführt.<br />

Zustandsautomaten. Im Gegensatz zu Statecharts werden unter Zustandsautomaten oder Zustandsübergangsdiagrammen<br />

flache Automaten, ohne Verwendung zusammengesetzter Blobs<br />

verstanden. Abbildung 3.20a skizziert das Zustandsübergangsdiagramm, das den Blobs Dialyse<br />

und Programmauswahl aus Abbildung 3.19 entspricht. Statecharts können generell in „flache“


3.4 Visuelle <strong>Modellierungssprachen</strong> der Prozeßsicht 69<br />

Bypass<br />

UF1<br />

Entwässern<br />

UF1<br />

Programmwechsel<br />

Bypass<br />

UF2<br />

Entwässern<br />

und Entgiften<br />

UF2<br />

b) Zustandsübergangsmatrix<br />

Programmwechsel<br />

Programmwechsel<br />

after(d)<br />

Fehler Fehler Fehler<br />

Start<br />

Programmwahl<br />

Ereignis<br />

Programm-<br />

Zustand<br />

wechsel<br />

UF1 UF2<br />

UF2 UF3<br />

UF3 UF4<br />

UF4 UF1<br />

Blutseite<br />

Ereignis<br />

Störung Störung<br />

Zustand<br />

behoben<br />

Blutfluß gestört BlutflußOK<br />

BlutflußOK Blutfluß<br />

gestört<br />

after(d)<br />

Start<br />

Wasserseite<br />

Ereignis<br />

TemperaturTemperatur- Zustand<br />

fehlerfehler behoben<br />

Temperaturproblem TemperaturOK<br />

TemperaturOK Temperaturproblem<br />

Bypass<br />

UF3<br />

after(d)<br />

Start<br />

Entgiften<br />

UF4<br />

Programmwechsel<br />

a) Zustandsübergangsdiagramm<br />

Dialyse<br />

Zustand Ereigniss Aktion Folgezustand<br />

Bypass [(in UF1 or UF4)<br />

and BlutdruckOK and<br />

TemperaturOK] Start<br />

Entwässern<br />

Bypass [in UF2 and BlutdruckOK<br />

and TemperaturOK]<br />

Start<br />

Bypass [in UF3 and BlutdruckOK<br />

and TemperaturOK]<br />

Start<br />

Fehler<br />

Fehler<br />

Bypass<br />

UF4<br />

Start<br />

Entwässern<br />

UF4<br />

Entwässern<br />

und Entgiften<br />

UF4<br />

Entwässern<br />

und Entgiften<br />

Entgiften<br />

Entwässern [in UF4] after(d) d = d2 Entwässern<br />

und Entgiften<br />

Ultrafiltration Fehler Bypass<br />

c) Zustandsübergangstabelle<br />

Abbildung 3.20: Statecharts, notationelle Varianten<br />

after(d1)<br />

after(d)<br />

Zustandsübergangsdiagramme übertragen werden. Die (maximale) Anzahl der Zustände eines<br />

Zustandsübergangsdiagramms ergibt sich hierbei aus dem Produkt der Anzahl der Zustände der<br />

parallel auszuführenden Teilautomaten. Inzidente Übergänge an einem And-Blob sind auf alle<br />

in diesem enthaltenen Zustände zu übertragen. Wie in Abbildung 3.20a können aber bei Berück-


70 Visuelle <strong>Modellierungssprachen</strong> der Organisations- und Softwaretechnik<br />

sichtung der die Übergänge überwachenden Prädikate nicht mögliche Zustandsübergänge und<br />

Zustände eingespart werden.<br />

Zustandsübergangsmatrizen und -tabellen. Neben den graphischen Graph- oder Hypergraph<br />

basierten Darstellungsformen werden auch tabellarische Notationen (z. B. [Partsch, 1998,<br />

S. 103ff]) verwendet. Zustandsübergangsmatrizen spannen eine Matrix aus Zuständen und Ereignissen<br />

auf und notieren in den Matrixfeldern die Folgezustände des Systems. Diese Form der<br />

Darstellung beschreibt lediglich die Beziehungen zwischen Zuständen und Ereignissen. Prädikate<br />

und Aktionen werden in dieser Notationform nicht berücksichtigt. Erweiterungen durch zusätzliche<br />

bzw. umfangreichere Matrizen sind denkbar, werden aber ebenfalls sehr schnell unübersichtlich.<br />

Abbildung 3.20b faßt die Zustandsübergangsmatrizen der Teilautomaten Programmauswahl,<br />

Blutseite und Wasserseite zusammen. In Zustandsübergangstabellen kann das Zusammenspiel<br />

von Zuständen, Ereignissen, Aktionen und Folgezuständen tabellarisch beschrieben<br />

werden. In Abbildung 3.20c ist eine solche Zustandsübergangstabelle <strong>für</strong> den Automaten des<br />

Dialyse-Blobs aus Abbildung 3.19 dargestellt, in dem auch die Prädikate berücksichtigt sind.<br />

Forderungen an das <strong>Referenz</strong>-<strong>Metaschema</strong><br />

Die Beschreibung reaktiver Systeme durch die <strong>visuelle</strong>n <strong>Modellierungssprachen</strong> des Zustandsübergangsparadigmas<br />

basiert auf der Darstellung der System- bzw. Teilsystemzustände und den<br />

hierzwischen möglichen Zustandsübergängen. Übergänge werden durch Ereignisse ausgelöst,<br />

die evtl. durch Prädikate überwacht werden. Sowohl Zuständen als auch Übergängen können<br />

Aktionen zugeordnet sein. Das <strong>Referenz</strong>-<strong>Metaschema</strong> muß daher Konzepte zur Abbildung von<br />

Zuständen, Zustandsübergängen, Ereignissen, Prädikaten, Aktionen und deren Querbezüge bereitstellen.<br />

Daneben muß es Hilfsmittel zur Strukturierung von Zustandsautomaten durch Kompositionen<br />

und Parallelbearbeitung enthalten.<br />

3.4.3 Visuelle <strong>Modellierungssprachen</strong> des Netzparadigmas<br />

Zur Modellierung dynamischer Organisations- und Softwareaspekte stellen die Sprachen des<br />

Netzparadigmas das Aufeinanderfolgen von Prozessen und/oder Ereignissen heraus. Zu bearbeitende<br />

Prozesse 4 werden hierbei durch ein Netz von Teilprozessen und Ereignissen und den hierzwischen<br />

vorliegenden Folgebeziehungen beschrieben. Prozesse werden hierbei als zeitverbrauchende<br />

Geschehnisse verstanden, während Ereignisse zeitpunktbezogene Zustände beschreiben<br />

(vgl. auch [DIN 69900, 1987]).<br />

4 Insbesondere in der Terminologie der Geschäftsprozeßmodellierung wird der Begriff „Prozeß“ oder „Prozeßkette“<br />

(vgl. z. B. [Scheer, 1992], [Langer et al., 1997]) <strong>für</strong> eine in sich geschlossene Abfolge mehrerer Teilaktivitäten<br />

verwendet. Diese Teilaktivitäten werden auch als „Funktion“ bezeichnet (vgl. z. B. [Scheer, 1994, S. 19]).<br />

Funktionen können weiterverfeinert werden und nehmen dann die Rolle der Prozesse auf einer tieferen Modellierungsstufe<br />

ein. In den folgenden Betrachtungen wird diese (künstliche) Unterscheidung nicht gemacht.<br />

Prozesse, Funktionen, Vorgänge, Aktivitäten, Transitionen etc. werden unter den Begriff „Prozeß“ zusammengefaßt.


3.4 Visuelle <strong>Modellierungssprachen</strong> der Prozeßsicht 71<br />

Die graphische Darstellung der Sprachen des Netzparadigmas basiert auf Graphen, in denen die<br />

Knoten Ereignisse oder Prozesse beschreiben, die durch Kontrollflußkanten miteinander verbunden<br />

sind. Ergänzt werden diese in einigen Dialekten um zusätzliche Knoten, die Operatoren über<br />

den Kontrollflüssen abbilden.<br />

Wesentliches Modellierungselement ist die direkte Aufeinanderfolge von Prozessen und/oder Ereignissen.<br />

Daneben können mittels Operatoren Kontrollflüsse verzweigt bzw. parallelisiert und<br />

wieder vereinigt werden. Die Grundbausteine zur Kontrollflußverzweigung und -vereinigung<br />

sind in Abbildung 3.21 zusammengefaßt (vgl. auch [Schmidt, 1989, S. 301ff], [Keller et al.,<br />

1992, S. 14], [Scheer, 1994, S. 50f]).<br />

a<br />

and<br />

x<br />

and<br />

y<br />

x y<br />

b c z<br />

b c z<br />

Ereignis<br />

Fork Join<br />

Branch Merge<br />

Ereignisverküpfung<br />

a<br />

xor<br />

xor<br />

Abbildung 3.21: Grundbausteine zur Kontrollflußverknüpfung<br />

Die Modellierung von Parallelabläufen wird durch and-Verzweigungen (ÓÖ) eingeleitet.<br />

Auf die Verzweigung folgen dann voneinander unabhängige Prozeßfolgen, die durch Ò-<br />

Vereinigungen (ÂÓÒ) wieder zusammengeführt werden. Analog werden durch ÜÓÖ-Verzweigungen<br />

(ÖÒ ) exklusive, alternative Prozeßfolgen eingeleitet, die durch ÜÓÖ-Vereinigungen<br />

(ÅÖ) wieder zusammengeführt werden können. Iterationen von Prozeßfolgen werden in den<br />

Sprachen des Netzparadigmas ebenfalls auf die Grundformen der ÜÓÖ-Verzweigungen und -Vereinigung<br />

zurückgeführt.<br />

Vielfach wird in den <strong>Modellierungssprachen</strong> des Netzparadigmas, die diese Ereignis-Verknüpfungen<br />

verwenden, nicht explizit gefordert, daß Verzweigungen und Vereinigungen zueinander<br />

balanciert sein müssen (z. B. [DIN 66001, 1983], [Scheer, 1994]). Solche Modellierungen führen<br />

unweigerlich zu „Spaghetti“-Modellierungen, deren <strong>Se</strong>mantik kaum noch faßbar ist. Aus diesem<br />

Grund wird in moderneren Modellierungsansätzen die Balancierung als besserer Modellierungstil<br />

empfohlen (z. B. [Booch et al., 1999, S. 264]), oder es werden balancierte Verzweigungs-<br />

Vereinigungs-Paare als eigenständige Modellierungskonstrukte (z. B. [Schmidt, 1989, S. 305])<br />

eingeführt.<br />

Die <strong>visuelle</strong>n <strong>Modellierungssprachen</strong>, die dem Netzparadigma folgen, können in vier Gruppen<br />

eingeteilt werden. Aktivitätsdiagramme, Aufgabenfolgepläne, Ablaufkarten, Folgestrukturen,<br />

Folgepläne und Programmablaufpläne dienen in erster Linie zur Darstellung von Prozeßfolgen<br />

ohne (<strong>visuelle</strong>) Berücksichtigung der Ereignisse. Ereignisgesteuerte Prozeßketten, Stimulus-<br />

Response-Folgen und Vorgangskettendiagramme ergänzen diese Notationsformen u. a. um die<br />

obligatorische Darstellung der die Prozesse auslösenden bzw. der durch die Prozesse verursachten<br />

Ereignisse. Aufgrund ihrer formalen Basis ermöglichen Petri-Netze (S/T-Netze, B/E-<br />

Netze, Pr/T-Netze, gefärbte Netze etc.) umfangreiche Analysen der auf aktiven und passiven Ele-


72 Visuelle <strong>Modellierungssprachen</strong> der Organisations- und Softwaretechnik<br />

menten basierenden Modelle. Unterstützung bei der zeitlichen Einplanung von Prozeßabläufen<br />

bieten Netzpläne (Vorgangsknotennetzpläne, Vorgangspfeilnetzpläne, Ereignisknotennetzpläne,<br />

Balkendiagramme).<br />

Notationelle Grundform: Aktivitätsdiagramm 5<br />

Zur Beschreibung des Kontrollflusses zwischen Prozessen (hier Aktivitäten) verwendet die Unified<br />

Modeling Language (UML) [Booch et al., 1999] Aktivitätsdiagramme.<br />

Die betrachteten Prozesse werden in Ovalen notiert, die durch Pfeile zur Beschreibung des Kontrollflusses<br />

miteinander verbunden sind. Der Startpunkt einer solchen Prozeßfolge wird durch<br />

ein Startereignis und das Ende durch ein oder mehrere Endereignisse angezeigt. Diese Ereignisse<br />

werden analog zu den Start- und Endzuständen der Statecharts durch einen schwarzen Punkt<br />

bzw. einen schwarzen Punkt mit Kreis (vgl. Kapitel 3.4.2) notiert. Zur Strukturierung von Prozeßmodellierungen<br />

können Prozesse in Aktivitätsdiagrammen auch verfeinert werden [Booch et<br />

al., 1999, S. 261].<br />

Zur Interaktion mit Objekten außerhalb des betrachteten Prozesses werden in Aktivitätsdiagrammen<br />

spezielle Prozesse zum Auslösen und zum Empfangen von externen Ereignissen (Nachrichten)<br />

verwendet. Prozesse zum <strong>Se</strong>nden von Ereignissen werden durch Rechtecke mit einer aus<br />

dem Rechteck zeigenden Spitze und Prozesse zum Empfangen von Ereignissen werden durch<br />

Rechtecke mit einer in das Rechteck zeigenden Spitze notiert. In diesen Symbolen sind die jeweiligen<br />

Ereignisse vermerkt [Rumbaugh et al., 1999, S. 240], [OMG, 1999, S. 3-147].<br />

Aktivitätsdiagramme unterstützen die Modellierung von Parallelabläufen und von Verzweigungen.<br />

Parallele Prozeßabläufe werden durch dicke, horizontale Linien (Synchronisationsbalken)<br />

voneinander getrennt (ÓÖ) und wieder zusammengeführt (ÂÓÒ). Die Verzweigung des Kontrollflusses<br />

in exklusive Alternativen (ÖÒ ) und deren Zusammenführung (ÅÖ) wird durch<br />

Rauten beschrieben. In die Symbole <strong>für</strong> ÓÖ und ÖÒ geht jeweils ein Kontrollflußpfeil ein<br />

und mindestens zwei Kontrollflußpfeile aus. ÂÓÒ- und ÅÖ-Symbole verhalten sich entsprechend<br />

umgekehrt. An die Raute zur Beschreibung der Verzweigung kann das Entscheidungskriterium<br />

angetragen werden; die ausgehenden Kontrollflußkanten werden mit den jeweiligen<br />

Alternativen annotiert. Nach [Rumbaugh et al., 1999, S. 240] kann auch auf die Darstellung<br />

durch Rauten verzichtet werden. Die Kontrollfluß-Pfeile verbinden dann direkt die Prozeßdarstellungen.<br />

Die Zuordnung von Prozessen zu Organisationseinheiten oder zu prototypischen Objekten wird<br />

durch Aktivitätsdiagramme ebenfalls unterstützt. Hierdurch ermöglichen Aktivitätsdiagramme<br />

auch die Darstellung von Querbezügen zu den Beschreibungsmitteln des Stellengliederungsparadigmas<br />

(vgl. Kapitel 3.3.1) und des Objekt-Instanzparadigmas (vgl. Kapitel 3.5.1). Das Aktivitätsdiagramm<br />

wird hierzu in Spalten (engl. swimlanes) untergliedert, die jeweils die Prozesse<br />

der einzelnen Leistungserbringer (Organisationseinheiten oder Objekte) enthalten.<br />

5 Als notationelle Grundform des Netzparadigmas sind auch die Ereignisgesteuerten Prozeßketten, die in der<br />

Geschäftsprozeßmodellierung weit verbreitet sind, oder auch Petri-Netz-Varianten, z. B. Prädikat/Transitions-<br />

Netze denkbar. Die Entscheidung wurde zugunsten der Aktivitätsdiagramme getroffen, weil sie das entsprechende<br />

Beschreibungsmittel des kommenden Quasi-Modellierungsstandards UML sind.


3.4 Visuelle <strong>Modellierungssprachen</strong> der Prozeßsicht 73<br />

Neben der Darstellung des Kontrollflusses bieten die Aktivitätsdiagramme der UML auch die<br />

Möglichkeit Objektflußbeziehungen zu beschreiben. Objekte werden auch hier durch Rechtecke<br />

dargestellt, die den unterstrichenen Objektbezeichner enthalten. Diese sind durch unterbrochen<br />

gezeichnete Pfeile, die in Objektflußrichtung gerichtet sind, mit den erzeugenden und verbrauchenden<br />

Prozessen verbunden.<br />

Rechnungswesen MTA-R<br />

Arzt<br />

: Leistungsbeleg<br />

Untersuchung<br />

abrechnen<br />

Termin vereinbaren<br />

Anforderung<br />

entgegennehmen<br />

Krankenakte<br />

beschaffen<br />

Untersuchung ?<br />

Röntgen Angio CT Szinti MR<br />

Röntgenuntersuchung<br />

durchführen<br />

Angio-Untersuchung<br />

durchführen<br />

CT-Untersuchung<br />

durchführen<br />

Szinti-Untersuchung<br />

durchführen<br />

MR-Untersuchung<br />

durchführen<br />

Abbildung 3.22: Aktivitätsdiagramm<br />

Patient<br />

eingetroffen<br />

Patient aufklären<br />

Untersuchung<br />

befunden<br />

weitere<br />

Untersuchung<br />

notwendig?<br />

ja<br />

nein


74 Visuelle <strong>Modellierungssprachen</strong> der Organisations- und Softwaretechnik<br />

Beispiel 3.9 (Aktivitätsdiagramm einer radiologischen Untersuchung)<br />

An der Durchführung radiologischer Untersuchungen sind Medizinisch-Technische Assistenten<br />

der Radiologie (MTA-R), Ärzte und zur Abrechnung das Rechnungswesen beteiligt.<br />

Im Aktivitätsdiagramm in Abbildung 3.22 sind die Teilprozesse der radiologischen<br />

Untersuchung auf die entsprechenden Aufgabenträger aufgeteilt.<br />

Nachdem die Untersuchungsanforderung vorliegt (Anforderung entgegennehmen), ist ein<br />

Untersuchungstermin zu vereinbaren und die Krankenakte des Patienten anzufordern. Die<br />

Prozesse Termin vereinbaren und Krankenakte beschaffen können nebenläufig bearbeitet<br />

werden. Trifft der Patient zur Untersuchung ein (vgl. Ereignis Patient eingetroffen), erfolgt<br />

durch den Arzt die Information des Patienten über die vorgesehene Untersuchung (Patient<br />

aufklären). Nach Auswahl der Untersuchungsmethode wird durch den Medizinisch-<br />

Technischen Assistenten die Untersuchung durchgeführt. Anschließend wird durch den<br />

Arzt der Befund erstellt (Untersuchung befunden). Ist die Untersuchung abgeschlossen,<br />

wird durch das Rechnungswesen die Untersuchung abgerechnet. Hierzu wird vom Arzt<br />

ein Leistungsbeleg an das Rechnungswesen gegeben. Sind zusätzliche Untersuchungen<br />

nötig, wird mit der Aktivität Patient aufklären eine weitere Maßnahme eingeleitet. £<br />

Notationelle Varianten<br />

Wie die datenflußorientierten Beschreibungsmittel sind auch die Sprachen zur Beschreibung der<br />

Kontrollflußabhängigkeiten zwischen Prozessen seit langem bewährte Beschreibungsmittel zur<br />

Organisations- und Softwaremodellierung. Entsprechend haben sich auch hier verschiedene Notationsformen<br />

herausgebildet. Programmablaufpläne, Blockschaubilder oder Verkehrsschaubilder<br />

[Chapin, 1970], [Grochla, 1982, S. 315ff], [DIN 66001, 1983] modellieren Prozesse durch<br />

Folgen, Verzweigungen, Zusammenführung und Parallelbearbeitungen von Kontrollflüssen. Zur<br />

Vermeidung von Spaghetti-Modellierungen in Programmablaufplänen werden Programmablaufpläne<br />

gelegentlich auch auf ausschließlich reguläre Kontrollstrukturen (vgl. das Kontrollflußparadigma<br />

in Kapitel 3.4.4) eingeschränkt. Hierzu wurde z. B. ein eigenständiges Beschreibungsmittel<br />

<strong>für</strong> Schleifen eingeführt, das die Konstruktion aus Verzweigung und Zusammenführung<br />

ersetzt.<br />

Ähnlich wie in Aktivitätsdiagrammen werden in Rasterdarstellungen [Schmidt, 1989, S. 306ff],<br />

[Lehner et al., 1991, S. 270] Prozesse in vorgefertigte Tabellen eingetragen, bei denen in Spalten<br />

die Aufgaben der verschiedenen Leistungsträger chronologisch notiert sind. Von der sequenziellen<br />

Kontrollflußabfolge abweichende Strukturen lassen sich in diesen Tabellen jedoch nur sehr<br />

unübersichtlich durch Pfeile zwischen einzelnen Tabellenfeldern notieren. Ebenfalls ausschließlich<br />

auf die Beschreibung sequenzieller Ablauffolgen beschränkt sind (moderne) Ablaufkarten<br />

[Schmidt, 1989, S. 308ff], [Lehner et al., 1991, S. 270] oder Arbeitsablaufschaubilder [Grochla,<br />

1982, S. 320]. Prozeßfolgen werden hier in einer Liste notiert, bei der die Prozesse noch<br />

zusätzlich nach den Verrichtungskomponenten „Bearbeitung“, „Transport“, „Kontrolle“, „Verzögerung“,<br />

und „Lagerung“ durch graphische Symbole oder Kennbuchstaben klassifiziert sind.<br />

In diesen tabellarischen Notationsformen können den einzelnen Prozessen auch die Handlungsträger<br />

zugewiesen werden (vgl. [Nordsieck, 1962, S. 133]).


3.4 Visuelle <strong>Modellierungssprachen</strong> der Prozeßsicht 75<br />

Zur Untersuchung von Prozeßstrukturen auf der Basis von aktiven und passiven Komponenten<br />

haben sich weitere, nahezu eigenständige Beschreibungs- und Analysemittel herausgebildet, die<br />

daher eine eigene Betrachtung sinnvoll machen. Ereignisgesteuerte-Prozeßketten, Petri-Netze<br />

und Netzpläne werden in den folgenden Abschnitten kurz skizziert.<br />

Ereignisgesteuerte Prozeßketten. Zentrales Beschreibungsmittel der Geschäftsprozeßmodellierung<br />

nach dem Ansatz der Architektur integrierter Informationssysteme (ARIS) [Scheer, 1992]<br />

sind Ereignisgesteuerte Prozeßketten (EPK) [Keller et al., 1992], [Staud, 1999]. Im Gegensatz<br />

zu Aktivitätsdiagrammen werden in Ereignisgesteuerten Prozeßketten Ereignisse im Prozeßablauf<br />

explizit herausgestellt. Sowohl Ereignisse als auch Prozesse können in Ereignisgesteuerten<br />

Prozeßketten verfeinert werden. Zur Modellierung von Verzweigungen bieten sie ÖÒ - und<br />

ÅÖ-Operatoren sowohl <strong>für</strong> die exklusive (ÜÓÖ) als auch die nicht-ausschließende Alternativenbildung<br />

(ÓÖ) an. Ebenso wird die Modellierung paralleler Kontrollflüsse durch ÓÖ- und<br />

ÂÓÒ-Operatoren unterstützt. Als weitere Kontrollflußoperatoren verwenden Ereignisgesteuerte<br />

Prozeßketten auch Kombinationen von Vereinigungen bzw. Parallelisierungen und deren Zusammenführungen.<br />

In der Einführung der Ereignisgesteuerten Prozeßketten [Keller et al., 1992] werden durch diese<br />

Operatoren jeweils Ereignisse mit Prozessen oder Prozesse mit Ereignissen verknüpft. In den<br />

grundlegenden Arbeiten [Keller et al., 1992], [Scheer, 1994] zu den Ereignisgesteuerten Prozeßketten<br />

und zum ARIS-Ansatz [Scheer, 1992] wird deren Syntax nicht eindeutig eingeführt.<br />

[Scheer, 1994, S. 50] gibt lediglich wenige Beispiele möglicher Ablaufstrukturen an. Aus diesen<br />

Beispielen kann abgeleitet werden, daß Ereignisgesteuerte Prozeßketten als gerichtete, bipartite<br />

Hypergraphen von Ereignissen und Prozessen notiert werden, deren binäre Hyperkanten sequenziellen<br />

Kontrollfluß und deren nicht-binäre Hyperkanten Kontrollfluß-Operatoren beschreiben.<br />

Notiert werden die Ereignisse durch <strong>Se</strong>chsecke und die Prozesse durch Ovale, die jeweils mit einem<br />

Bezeichner annotiert sind. Die Operatoren zur Kontrollflußverknüpfung werden durch einen<br />

horizontal in der Mitte geteilten Kreis dargestellt. Durch die logischen Operatoren , , und <br />

(ÜÓÖ) wird im oberen Halbkreis angezeigt, wie die eingehenden Kontrollflüsse vereinigt werden<br />

und im unteren Halbkreis, wie sie verzweigt werden. Die Kontrollflüsse zwischen Ereignissen,<br />

Prozessen und Operatoren werden durch Pfeile beschrieben. Verzweigungskriterien sind an den<br />

Operatoren zur Kontrollflußverzweigung nicht vorgesehen. Eine Forderung nach Balancierung<br />

der Kontrollflußoperatoren wird in den Arbeiten zu Ereignisgesteuerten Prozeßketten nicht aufgestellt.<br />

Abbildung 3.23 zeigt die dem Aktivitätsdiagramm aus Abbildung 3.22 entsprechende<br />

Modellierung einer radiologischen Untersuchung durch eine Ereignisgesteuerte Prozeßkette.<br />

Eine alternative Darstellung der Ereignisgesteuerten Prozeßketten erlauben Vorgangskettendiagramme<br />

[Brombacher, 1991], [Scheer, 1994, S. 59] und erweiterte Ereignisgesteuerte Prozeßketten.<br />

Diese Beschreibungsmittel ermöglichen die integrierte Darstellung der Prozeßmodelle mit<br />

den benötigten und erzeugten Daten und ihrer Einbettung in die jeweilige Organisationsstruktur.<br />

Hierzu werden in Vorgangskettendiagrammen Tabellen u. a. mit Spalten <strong>für</strong> Ereignisse, Funktionen,<br />

Daten und Organisationseinheiten verwendet, in die entsprechende graphische Symbole<br />

eingetragen werden. Kontrollflüsse, Datenflüsse und organisatorische Zusammenhangsbeziehungen<br />

werden durch zusätzliche Pfeile in diesen Tabellen notiert. Darstellungen dieser Art erlauben<br />

zwar ein umfassendes Bild der betrachteten Prozeßkette, werden jedoch durch die Einschränkung<br />

auf tabellarische Darstellungen und die Überfrachtung mit Modellierungskonstrukten schnell


76 Visuelle <strong>Modellierungssprachen</strong> der Organisations- und Softwaretechnik<br />

Röntgen<br />

Röntgenuntersuchung<br />

durchführen<br />

Angio<br />

Angio-Untersuchung<br />

durchführen<br />

Termin vereinbaren<br />

Anforderung liegt vor<br />

Anforderung<br />

entgegennehmen<br />

Anforderung entgegengenommen<br />

<br />

<br />

Patient<br />

eingetroffen<br />

<br />

Patient aufklären<br />

<br />

CT<br />

CT-Untersuchung<br />

durchführen<br />

<br />

Untersuchungsergebnis<br />

liegt vor<br />

Untersuchung<br />

befunden<br />

<br />

Leistungsbeleg<br />

erstellt<br />

Untersuchung<br />

abrechnen<br />

Untersuchung<br />

abgeschlossen<br />

Krankenakte<br />

beschaffen<br />

Szinti MR<br />

Szinti-Untersuchung<br />

durchführen<br />

Abbildung 3.23: Ereignisgesteuerte Prozeßkette<br />

MR-Untersuchung<br />

durchführen


3.4 Visuelle <strong>Modellierungssprachen</strong> der Prozeßsicht 77<br />

sehr unübersichtlich. Im Gegensatz zu Vorgangskettendiagrammen erfolgt daher die Prozeßdarstellung<br />

in erweiterten Ereignisgesteuerten Prozeßketten (vgl. z. B. [Staud, 1999, S. 45ff]) durch<br />

Graphen, deren Knoten nicht auf Tabellenspalten aufgeteilt sind. In beiden Notationsformen werden<br />

Daten durch Rechtecke und Organisationseinheiten durch Ellipsen notiert.<br />

Petri-Netze. Petri-Netze [Petri, 1962], [Reisig, 1992], [Baumgarten, 1996] wurden zur Beschreibung<br />

und Analyse von nebenläufigen und nicht-deterministischen Prozessen entwickelt.<br />

Die Modellierung durch Petri-Netze erfolgt durch aktive und passive Komponenten, zwischen<br />

denen ein Fluß notiert wird. Durch Stellen6 werden passive Komponenten wie z. B. Zustände<br />

oder Bedingungen modelliert. Aktive Komponenten, die Zustandsveränderungen bewirken, werden<br />

als Transitionen7 bezeichnet. Stellen und Transitionen werden in Petri-Netzen als gleichgewichtige<br />

Modellierungskonzepte aufgefaßt.<br />

Die graphische Darstellung von Petri-Netzen basiert auf bipartiten Graphen, bei denen die Knoten<br />

entweder Transitionen oder Stellen modellieren (Netzgraphen). Transitionen werden durch<br />

Rechtecke und Stellen durch Kreise notiert, die jeweils um Bezeichner außerhalb oder innerhalb<br />

der geometrischen Symbole ergänzt werden können. Der Fluß zwischen Stellen und Transitionen<br />

wird in Netzgraphen durch gerichtete Kanten beschrieben. Der Modellierung mit Petri-Netzen<br />

liegt die Anschauung zugrunde, daß Transitionen neue Objekte erzeugen und diese auf Stellen<br />

ablegen. Die klassische Petri-Netz-Theorie abstrahiert von konkreten Objekten. Stellen enthalten<br />

nicht unterscheidbare Marken, die von den Transitionen erzeugt oder verbraucht werden. Hierbei<br />

kann modelliert werden, daß Stellen nur eine begrenzte Anzahl von Marken besitzen dürfen, und<br />

daß von Transitionen eine feste Anzahl von Marken entnommen bzw. erzeugt werden kann. Zur<br />

Darstellung dieser Kapazitätsangaben werden Stellen mit Stellenkapazitäten und Flußbeziehungen<br />

mit Kantengewichten annotiert. Der Systemzustand eines Petri-Netzes ergibt sich aus den<br />

Markierungen seiner Stellen. Zustandsänderungen werden durch Schaltvorgänge der Transitionen<br />

ausgelöst. Eine Transition ist dann aktiv, wenn ihre vorgelagerten Stellen gemäß der Kantengewichte<br />

ausreichend Marken bereitstellen und die nachgelagerten Stellen ausreichend Kapazität<br />

zur Aufnahme der erzeugten Marken bieten. Ob eine Transition aktiv ist, wird ausschließlich von<br />

der direkten Umgebung der Transition bestimmt (Lokalität). Sind mehrere Transitionen gleichzeitig<br />

aktiv, können sie nebenläufig schalten.<br />

In Petri-Netzen können zur Strukturierung sowohl Stellen als auch Transitionen verfeinert werden<br />

(vgl. [Baumgarten, 1996, S. 59ff]). Stellen werden hierbei durch stellenberandete Teilnetze<br />

und Transitionen durch transitionenberandete Teilnetze verfeinert.<br />

Während durch Netzgraphen lediglich die statischen Zusammenhänge zwischen Prozessen<br />

(Transitionen) und Ereignissen (Stellen) beschrieben werden, kann durch die Ergänzung um eine<br />

Anfangsmarkierung und die Berücksichtigung des Schaltverhaltens des Netzes auch das Verhalten<br />

des Prozeßmodells untersucht werden. Die Petri-Netz-Theorie stellt hierzu eine Vielzahl<br />

6 Der Stellenbegriff der Petri-Netze darf nicht verwechselt werden mit dem Stellenbegriff der Aufbausicht. Soweit<br />

die Bedeutung aus dem Kontext ersichtlich ist, wird der Begriff „Stelle“ <strong>für</strong> beide Zusammenhänge verwendet.<br />

7 Da in den Grundformen der Petri-Netze von zeitliche Aspekten abstrahiert wird, erfordert die Bearbeitung<br />

innerhalb einer Transition keine Zeit. Transitionen werden z. B. in den eher zustandsorientiert aufgefaßten<br />

Bedingungs/Ereignis-Netzen als Ereignisse bezeichnet, deren Eintreffen eine Zustandsveränderung auslöst. Betrachtet<br />

man Petri-Netze jedoch prozeßorientiert und vergleicht sie mit den anderen Beschreibungsmitteln des<br />

Netzparadigmas, entsprechen Transitionen jedoch den Prozessen während die Stellen den Ereignissen der Aktivitätsdiagramme<br />

oder der Ereignisgesteuerten Prozeßketten entsprechen.


78 Visuelle <strong>Modellierungssprachen</strong> der Organisations- und Softwaretechnik<br />

Termin<br />

vereinbaren<br />

loop<br />

S1<br />

Anforderung<br />

entgegennehmen<br />

Fork<br />

Join<br />

Patient<br />

aufklären<br />

[Untersuchung=CT]<br />

[Untersuchung=Röntgen] [Untersuchung=Angio] [Untersuchung=Szinti] [Untersuchung=MR]<br />

Röntgenuntersuchung<br />

durchführen<br />

Angio-<br />

Untersuchung<br />

durchführen<br />

CT-<br />

Untersuchung<br />

durchführen<br />

Szinti-<br />

Untersuchung<br />

durchführen<br />

MR-<br />

Untersuchung<br />

durchführen<br />

Untersuchung<br />

befunden<br />

Untersuchung<br />

abrechnen<br />

Krankenakte<br />

beschaffen<br />

Abbildung 3.24: Bedingungs/Ereignis-Netz<br />

S2


3.4 Visuelle <strong>Modellierungssprachen</strong> der Prozeßsicht 79<br />

von Analysen (u. a. auf Termination, Lebendigkeit, Verklemmung, Erreichbarkeit) [Baumgarten,<br />

1996, S. 129ff] bereit und erlaubt auch eine Simulation des Prozeßablaufs.<br />

Zur Modellierung mit Petri-Netzen wurden viele verschiedene Petri-Netz-Typen eingeführt, die<br />

sich in den Typen der Stellenmarkierungen, in den Anforderungen an die Kantengewichte und<br />

in den Schaltregeln der Transitionen unterscheiden. In Bedingung/Ereignis-Netzen (B/E-Netze)<br />

[Petri, 1962], [Baumgarten, 1996, S. 111] wird <strong>für</strong> die Stellen generell eine Stellenkapazität<br />

von 1 gefordert. Anonyme, untypisierte Marken zeigen die Gültigkeit einer durch Stellen modellierten<br />

Bedingung an. Stellen/Transitions-Netze (S/T-Netze) [Baumgarten, 1996, S. 77] verwenden<br />

ebenfalls anonyme Marken. Sie gestatten aber beliebige Stellenkapazitäten und Kantengewichte.<br />

Höhere Petrinetze wie Prädikat/Transitions-Netze [Genrich / Lautenbach, 1981],<br />

[Marx, 1998, S. 21ff] oder die hieraus abgeleiteten Gefärbten Petri-Netze [Jensen, 1998] verwenden<br />

unterschiedlich typisierte, individuelle Marken. Transitionen dieser Netztypen können<br />

nur dann schalten, wenn auf den adjazenten Stellen entsprechende Marken liegen bzw. Platz <strong>für</strong><br />

erzeugte Marken bereit steht. An den Transitionen werden Schaltregeln über Variablen notiert,<br />

die durch Kantenanschriften an die Marken der Stellen gebunden werden. Die Schaltregeln bestehen<br />

aus Schaltbedingungen, die der Vorbedingung der Transition entsprechen (Guards) und<br />

Schaltwirkungen, durch die die Nachbedingungen beschrieben werden. Einen Überblick über<br />

grundlegenden Petri-Netzvarianten sowie über weitere Netzvarianten gibt auch [Baumgarten,<br />

1996, S. 256ff].<br />

In Abbildung 3.24 ist der Prozeß der radiologischen Untersuchung aus Beispiel 3.9 durch ein<br />

(erweitertes) Bedingungs/Ereignis-Netz, einschließlich seiner Startmarkierung beschrieben. Die<br />

Parallelbearbeitung der Prozesse Termin vereinbaren und Krankenakte beschaffen wird durch<br />

Einführung der zusätzlichen Transitionen Join und Fork modelliert. Die Verzweigung zur Durchführung<br />

der ausgewählten Untersuchungen wird durch Wächter (Guards) überwacht. Diese stellen<br />

sicher, daß nur genau eine der fünf Untersuchungs-Transitionen schalten kann. Zur Modellierung<br />

des Zusammenflusses der abweisenden Schleife ist sicherzustellen, daß die Transition loop<br />

sowohl beim ersten Durchlaufen, als auch bei den Iterationen schalten kann. Hierzu ist die Stelle<br />

S2 in der Anfangsmarkierung bereits mit einer Marke belegt. Verbrauchte Marken werden nach<br />

Schalten von loop auf Stelle S1 zurückgelegt.<br />

Netzpläne. Die Planung, Steuerung und Überwachung von Abläufen kann ebenfalls auf Beschreibungsmittel<br />

des Netzparadigmas zurückgeführt werden. Auch die Verfahren der Netzplantechnik<br />

[DIN 69900, 1987], [Schwarze, 1994] basieren auf der Modellierung von zeitverbrauchenden<br />

Prozessen (in der Netzplan-Literatur i. allg. als Vorgänge bezeichnet), Ereignissen und<br />

den hierzwischen vorliegenden, ausschließlich schleifenfreien, Folgebeziehungen.<br />

Bei der Projektplanung mit Netzplänen werden vorgangsorientierte Netzpläne, bei denen Prozesse<br />

und deren Folgebeziehungen betrachtet werden und ereignisorientierte Netzpläne, diedie<br />

Ereignisse und deren Folgebeziehungen in den Vordergrund stellen, unterschieden. Vorgangsorientierte<br />

Netzpläne werden je nach der Darstellung der Prozesse weiter in Vorgangsknotennetze<br />

und in Vorgangspfeilnetze unterteilt.<br />

Prozesse werden in Vorgangsknotennetzen durch Knoten beschrieben; die gerichteten Kanten<br />

modellieren deren Aufeinanderfolgen. Die Verwendung von Vorgangsknotennetzen geht auf die<br />

Metra-Potential-Method (MPM) [Roy, 1962], [DIVO, 1966] zurück, die zunächst zur Terminplanung<br />

und Überwachung beim Bau von Kernkraftwerken eingesetzt wurde.


80 Visuelle <strong>Modellierungssprachen</strong> der Organisations- und Softwaretechnik<br />

In Vorgangspfeilnetzen werden Prozesse durch gerichtete Kanten modelliert, die zwischen Knoten<br />

verlaufen, die nicht näher betrachtete Anfangs- und Endereignisse der Prozesse beschreiben.<br />

Die Abbildung der Prozesse durch Kanten erfordert zur Modellierung nebenläufiger Prozesse<br />

und deren Synchronisation die Verwendung zusätzlicher Scheinprozesse, deren Bearbeitung keine<br />

Zeit erfordert. Diese Scheinprozesse erschweren sowohl die Erstellung wie auch das Verstehen<br />

dieser Netzplanvarianten. Vorgangspfeilnetze wurden im Rahmen der Entwicklung der<br />

Critical-Path-Method (CPM) [Kelley, 1961] als Planungs- und Überwachungsinstrument <strong>für</strong> das<br />

Chemie-Unternehmen Du Pont de Nemour & Co. eingeführt.<br />

In ereignisorientierten Netzplänen werden Ereignisse als Knoten modelliert (Ereignisknotennetze),<br />

die Kanten beschreiben lediglich das Aufeinanderfolgen von Ereignissen und betrachten die<br />

Prozesse nicht. Ereignisknotennetze sind das Modellierungsmittel der Program Evaluation and<br />

Review-Technique (PERT) [PERT, 1958], [Malcolm et al., 1959], die im Auftrag der U. S.-Navy<br />

zur Koordination der Entwicklung von Waffensystemen entwickelt wurden.<br />

Notiert werden Netzpläne durch gerichtete Graphen, bei denen die Knoten mit dem Ereignisoder<br />

Prozeßbezeichner markiert werden. Die Folgebeziehungen werden durch gerichtete Kanten<br />

beschrieben. Prozeßknoten bzw. Prozeßpfeile werden häufig noch mit ihrer Dauer attributiert.<br />

Durch die Folgebeziehungen können in Vorgangsknoten- und Ereignisknotennetzen auch (zeitliche)<br />

Abstände zwischen den Prozessen bzw. Ereignissen z. B. zur Modellierung von Warte- und<br />

Liegezeiten beschrieben werden. Hierzu werden die Kanten entsprechend mit der Wartezeit attributiert.<br />

In Vorgangsknotennetzen können sich diese Wartezeiten jeweils auf den Beginn oder<br />

das Ende der beiden adjazenten Prozesse beziehen. Normalfolgen beschreiben den zeitlichen Abstand<br />

zwischen dem Ende des ersten und dem Anfang des zweiten Vorgangs. Anfangsfolgen und<br />

Endfolgen modellieren jeweils die Abstände zwischen den Prozeßanfängen und -enden. Die Folgebeziehung<br />

zwischen Anfang des ersten und Ende des zweiten Prozesses wird als Sprungfolge<br />

bezeichnet.<br />

Anforderung<br />

entgegennehmen<br />

0 2 2<br />

0 0 2<br />

Termin vereinbaren<br />

2 3 5<br />

19 17 22<br />

Krankenakte<br />

beschaffen<br />

2 20 22<br />

2 0 22<br />

Patient aufklären<br />

22 15 37<br />

22 0 37<br />

Untersuchung<br />

durchführen<br />

37 30 67<br />

37 0 67<br />

Abbildung 3.25: Vorgangsknotennetzplan<br />

Untersuchung<br />

befunden<br />

67 10 77<br />

67 0 77<br />

Untersuchung<br />

abrechnen<br />

77 5 82<br />

77 0 82<br />

Process<br />

ES D EF<br />

LS TF LF<br />

Abbildung 3.25 zeigt den Vorgangsknotennetzplan zur Durchführung der Radiologischen Untersuchung<br />

aus Beispiel 3.9, bei dem alle Prozesse zueinander in Normalfolge stehen. Da durch die<br />

Netzplantechnik lediglich sequenzielle und parallele Prozeßfolgen beschrieben (und analysiert)<br />

werden können, mü’s hier die Schleife zur Durchführung einer weiteren Untersuchung und die<br />

Untersuchungsalternativen entfallen.


3.4 Visuelle <strong>Modellierungssprachen</strong> der Prozeßsicht 81<br />

Die Netzplantechnik erlaubt es, Aussagen über das zeitliche Verhalten eines Prozesses zu machen.<br />

Aus der Zeitdauer (duration, D) der einzelnen Prozesse, der Folgebeziehungen und deren<br />

Verzögerung kann u. a. der zeitliche Aufwand des Gesamtprozesses oder die zeitliche Einordnung<br />

der Prozesse und Ereignisse errechnet werden. Für Prozesse kann bestimmt werden, zu<br />

welchem Zeitpunkt sie frühestens beginnen (earliest start time, ES) oder enden (earliest finish<br />

time, EF). In ähnlicher Weise können auch, ausgehend von einem Endzeitpunkt des Gesamtprozesses,<br />

<strong>für</strong> jeden Prozeß der späteste Zeitpunkt an dem die Prozeßbearbeitung beginnen (latest<br />

start time, LS) oder enden (latest finish time, LF) muß, errechnet werden um diesen Endtermin<br />

zu erreichen. Für Ereignisse können analog früheste (earliest time, ET) und späteste (latest time,<br />

LT) Zeitpunkte <strong>für</strong> deren Eintreffen bestimmt werden. Aus diesen Zeitpunkten kann weiter errechnet<br />

werden, um welchen Zeitraum ein Prozeß oder das Eintreffen eines Ereignis verzögert<br />

werden kann, ohne den angestrebten Endtermin zu gefährden. Diese Pufferzeit (total float, TF)<br />

berechnet sich aus der Differenz der jeweiligen spätesten und frühesten Zeitpunkte. Prozesse,<br />

deren Pufferzeit gleich 0 ist, werden kritische Prozesse genannt, weil ihre Verzögerung auch den<br />

Gesamtprozeß verzögert. Ein Pfad zwischen Anfang und Ende des Gesamtprozesses, der ausschließlich<br />

kritische Vorgänge enthält, wird als kritischer Pfad bezeichnet. Weitere Maße und<br />

Analysemöglichkeiten werden z. B. in [Zimmermann, 1971], [Schwarze, 1994] definiert.<br />

Für den einfachen Netzplan aus Abbildung 3.25 wurden die frühesten und spätesten Zeitpunkte<br />

sowie die Pufferzeiten bestimmt und in den Prozeßdarstellungen notiert. Hierzu wurde davon<br />

ausgegangen, daß der Gesamtprozeß zum Zeitpunkt 0 beginnt und zum frühest möglichen Zeitpunkt<br />

(82) endet. In diesem Beispiel müssen außer dem Prozeß Termin vereinbaren alle anderen<br />

Prozesse genau zu ihren geplanten Zeitpunkten begonnen bzw. beendet werden. Diese bilden den<br />

kritischen Pfad.<br />

Neben den graphbasierten Darstellungsformen der Vorgangs-Knoten-, der Vorgangs-Pfeil und<br />

der Ereignisknotennetzpläne werden in der Netzplantechnik auch tabellenartige Beschreibungsmittel<br />

verwendet. In Balkendiagramme oder Ganttcharts werden die Prozesse in einer Spalte<br />

untereinander geschrieben. In einer weiteren Spalte wird zu jedem Prozeß ein Balken, dessen<br />

Länge der Prozeßdauer entspricht, in ein Zeitraster eingetragen. Ergänzt werden können weitere<br />

Spalten z. B. zur Festlegung der beteiligten Stellen oder der benötigten Maschinen. In klassischen<br />

Balkendiagrammen werden die Folgebeziehungen zwischen den Prozessen nicht notiert,<br />

so daß die Abhängigkeiten der Teilprozesse nicht veranschaulicht werden können. Werkzeuge<br />

zur Unterstützung des Projektmanagement verwenden daher erweiterte Balkendiagramme, bei<br />

denen vom Balkenende Verbindungslinien zum Beginn der Balken direkt abhängiger Prozesse<br />

gezogen werden können.<br />

Forderungen an das <strong>Referenz</strong>-<strong>Metaschema</strong><br />

Wesentliche Modellierungskonstrukte der Sprachen des Netzparadigmas sind Prozesse, Ereignisse<br />

und Folgebeziehungen zwischen diesen. Das <strong>Referenz</strong>-<strong>Metaschema</strong> muß daher Möglichkeiten<br />

zur Abbildung dieser Konzepte bereitstellen. Für die Folgebeziehungen sind auch die<br />

verschiedenen Möglichkeiten der Verzweigung und Zusammenführung der Kontrollflüsse zu berücksichtigen.<br />

Modellierungen in den Sprachen des Netzparadigmas nehmen häufig auch Bezug<br />

auf Konzepte anderer Paradigmen (z. B. Aufgabenträger oder Datenbezüge). Daher sind auch im<br />

<strong>Referenz</strong>-<strong>Metaschema</strong> entsprechende Querbezüge vorzusehen.


82 Visuelle <strong>Modellierungssprachen</strong> der Organisations- und Softwaretechnik<br />

3.4.4 Visuelle <strong>Modellierungssprachen</strong> des Kontrollflußparadigmas<br />

Die Beschreibungsmittel des Kontrollflußparadigmas verfolgen ebenso wie die Sprachen des<br />

Netzparadigmas (vgl. Kapitel 3.4.3) die Darstellung der Ablaufstrukturen in Organisationen und<br />

Softwaresystemen. Im Gegensatz zu den Sprachen des Netzparadigmas, die nahezu beliebige<br />

Folgestrukturen zulassen, erlauben die <strong>visuelle</strong>n <strong>Modellierungssprachen</strong> des Kontrollflußparadigmas<br />

ausschließlich die Beschreibung regulär strukturierte Abläufe.<br />

In den Diskussionen um die strukturierte Programmierung (vgl. u. a. [Dijkstra, 1968], [Knuth,<br />

1974]) stellte sich heraus, daß die Programmentwicklung bis auf wenige Ausnahmen ausschließlich<br />

auf den regulären Kontrollstrukturen der <strong>Se</strong>quenz, der Iteration und der Verzweigung aufsetzen<br />

sollte. Für die <strong>visuelle</strong>n Sprachen zur Ablaufmodellierung ergab sich hieraus die Forderung<br />

nach Beschreibungsmitteln, die ausschließlich diese Modellierungsmittel unterstützen und insbesondere<br />

schwer nachvollziehbare, beliebige Folgestrukturen verbieten.<br />

Im Mittelpunkt der Beschreibung durch die Sprachen des Kontrollflußparadigmas stehen auch<br />

hier Aktivitäten (Aktionen, Anweisungen, Prozesse etc.) die mittels <strong>Se</strong>quenzenbildung, Verzweigungen<br />

und Iterationen zu komplexeren Aktivitäten zusammengefaßt werden. Einige Sprachvarianten<br />

erlauben darüber hinaus noch die Komposition von Aktivitäten durch Parallelbearbeitung<br />

und bieten Möglichkeiten zur Verfeinerung von Aktivitäten. Diese Konzepte werden<br />

durch Nassi-Shneiderman-Diagramme alias Struktogramme, durch Entscheidungstabellen,<br />

durch Jackson-Diagramme, durch Pseudo Code oder durch Warnier-Orr-Diagramme unterstützt.<br />

keine weiteren Untersuchungen notwendig<br />

Anforderung entgegennehmen<br />

Termin vereinbaren Krankenakte beschaffen<br />

Patient aufklären<br />

Untersuchung ?<br />

Röntgen CT MR<br />

Angio Szinti<br />

Röntgenuntersuchung<br />

durchführen<br />

CT-<br />

Untersuchung<br />

durchführen<br />

MR-<br />

Untersuchung<br />

durchführen<br />

Untersuchung befunden<br />

Untersuchung abrechnen<br />

Angio-<br />

Untersuchung<br />

durchführen<br />

Abbildung 3.26: Nassi-Shneiderman-Diagramm<br />

Szinti-<br />

Untersuchung<br />

durchführen


3.4 Visuelle <strong>Modellierungssprachen</strong> der Prozeßsicht 83<br />

Notationelle Grundform: Nassi-Shneiderman-Diagramm<br />

Zur Modellierung regulärer Strukturen durch Nassi-Shneiderman-Diagramme [Nassi / Shneiderman,<br />

1973], [DIN 66261, 1985] werden elementare Aktivitäten in mit dem Aktivitätenbezeichner<br />

attributierten Rechtecken notiert. Die Komposition von Aktivitäten erfolgt in weiteren<br />

Rechtecken, so daß durch die Ineinanderschachtelung der Rechtecke die Blockstrukturierung<br />

der atomaren und zusammengesetzten Aktivitäten sichtbar wird. Zur Darstellung der <strong>Se</strong>quenzen<br />

werden die Rechtecke direkt untereinander angeordnet. In Verzweigungen wird das Auswahlkriterium<br />

in einem Dreieck notiert unter dem die Alternativen nebeneinander gestellt werden.<br />

Iterationen werden durch ein die iterierte Aktivität umgebendes Rechteck dargestellt, das zusätzlich<br />

das Iterationskriterium enthält. Parallel zu bearbeitende Aktivitäten werden ebenfalls<br />

nebeneinander aufgeführt. Die Parallelbearbeitung wird durch umgebende Trapeze kenntlich gemacht.<br />

Abbildung 3.26 zeigt die Modellierung der radiologischen Untersuchung aus Beispiel 3.9<br />

als Nassi-Shneiderman-Diagramm.<br />

Notationelle Varianten<br />

Alternative Darstellungen zur Beschreibung regulär strukturierter Folgebeziehungen, die die<br />

baumartige Struktur der Zerlegung der Gesamtaktivität in <strong>Se</strong>quenzen, Verzweigungen, Iterationen,<br />

Parallelbearbeitungen und atomare Aktivitäten auch optisch herausstellen, bieten auch<br />

Jackson-Diagramme [Jackson, 1975], [Balzert, 1996a, S. 127] und Warnier-Orr-Diagramme<br />

[Warnier, 1974] [Schulz, 1988, S. 137].<br />

Anforderung<br />

entgegennehmen<br />

O<br />

Röntgenuntersuchung<br />

durchführen<br />

Termin<br />

vereinbaren und<br />

Krankenakte<br />

beschaffen<br />

Patient<br />

aufklären<br />

CT-<br />

Untersuchung<br />

durchführen<br />

Radiologische<br />

Untersuchung<br />

durchführen<br />

Untersuchungen<br />

durchführen<br />

und befunden<br />

*<br />

Einzel-<br />

Untersuchung<br />

durchführen<br />

und befunden<br />

Untersuchung<br />

durchführen<br />

Untersuchung<br />

abrechnen<br />

Untersuchung<br />

befunden<br />

O O O O<br />

MR-<br />

Untersuchung<br />

durchführen<br />

Angio-<br />

Untersuchung<br />

durchführen<br />

Abbildung 3.27: Jackson-Diagramm<br />

Szinti-<br />

Untersuchung<br />

durchführen


84 Visuelle <strong>Modellierungssprachen</strong> der Organisations- und Softwaretechnik<br />

Sowohl in Jackson-Diagrammen (vgl. Abbildung 3.27) als auch in Warnier-Orr-Diagrammen<br />

(vgl. Abbildung 3.28) werden <strong>für</strong> zusammengesetzte Aktivitäten eigene graphische Repräsentationen<br />

verwendet, die mit ihren Komponenten durch Kanten bzw. geschweifte Klammern verbunden<br />

sind. Die verschiedenen Arten der Komposition von Aktivitäten werden durch Annotationen<br />

in den Knoten der Jackson-Diagramme („Ç“ <strong>für</strong> Alternativen und „£“ <strong>für</strong> Iterationen)<br />

herausgestellt. Iterationshäufigkeiten werden an den Klammern der Warnier-Orr-Diagramme und<br />

Alternativen durch „¨“ zwischen den Aktivitäten notiert. Beide Darstellungsformen bieten keine<br />

Mittel zur Modellierung von Parallelabläufen. Jackson- und Warnier-Orr-Diagramme wurden sowohl<br />

zur Beschreibung regulär strukturierter Prozeßabläufe als auch zur Modellierung regulärer<br />

Datenstrukturen entwickelt. Als Mittel zur Datenbeschreibung sind sie daher auch dem Objekt-<br />

Beziehungsparadigma (vgl. Kapitel 3.5.3) zuzuordnen.<br />

Radiologische<br />

Untersuchung<br />

durchführen<br />

Anforderung<br />

entgegennehmen<br />

Termin<br />

vereinbaren und<br />

Krankenakte<br />

beschaffen<br />

Untersuchungen<br />

durchführen<br />

und befunden<br />

Untersuchung<br />

abrechnen<br />

n > 0<br />

Einzel-<br />

Untersuchung<br />

durchführen<br />

und befunden<br />

Patient<br />

aufklären<br />

Untersuchung<br />

durchführen<br />

Untersuchung<br />

befunden<br />

Abbildung 3.28: Warnier-Orr-Diagramm<br />

Röntgenuntersuchung<br />

durchführen<br />

CT-<br />

Untersuchung<br />

durchführen<br />

MR-<br />

Untersuchung<br />

durchführen<br />

Angio-<br />

Untersuchung<br />

durchführen<br />

Szinti-<br />

Untersuchung<br />

durchführen<br />

Neben graphischen Darstellungen werden auch textuelle Notationen zur regulären Ablaufbeschreibung<br />

verwendet. Ein an imperative Programmiersprachen angelehnter Pseudo-Code mit<br />

blockstrukturierenden Sprachmitteln <strong>für</strong> <strong>Se</strong>quenzen, Iterationen, Verzweigungen und Parallelbearbeitungen<br />

wird in Abbildung 3.29a verwendet. Entscheidungstabellen [Schmidt, 1989,<br />

S. 327ff], [Balzert, 1996a, S. 222ff] können als tabellarische Darstellungen des Kontrollflußparadigmas<br />

aufgefaßt werden, die ausschließlich die Alternativenbildung abbilden. Eine Entscheidungstabelle<br />

zur Auswahl der Untersuchungsalternativen der radiologischen Untersuchungen ist<br />

in Abbildung 3.29b aufgeführt. Hierin ist auch angezeigt, daß eine angiographische Untersuchung8<br />

auch eine Röntgen-Untersuchung umfaßt.<br />

Zur Unterstützung der regulär strukturierten Ablaufmodellierung können auch Programmablaufpläne<br />

[Chapin, 1970], [DIN 66001, 1983] eingesetzt werden. Diese stellen u. a. auch Mittel zur<br />

8 Röntgenographische Darstellung von Blutgefäßen mit Hilfe injizierter Kontrastmittel.


3.5 Visuelle <strong>Modellierungssprachen</strong> der Objektsicht 85<br />

begin<br />

Anforderung entgegennehmen;<br />

beginPar<br />

Termin vereinbaren || Krankenakte beschaffen<br />

endPar;<br />

repeat<br />

Patient aufklären ;<br />

case Untersuchung<br />

Röntgen :<br />

Röntgenuntersuchung durchführen;<br />

Angio :<br />

Angio-Untersuchung durchführen;<br />

CT :<br />

CT-Untersuchung durchführen;<br />

Szinti :<br />

Szinti-Untersuchung durchführen;<br />

MR :<br />

MR-Untersuchung durchführen;<br />

endcase;<br />

Untersuchung befunden;<br />

until alle notwendigen Untersuchungen durchgeführt;<br />

Untersuchung abrechnen;<br />

end<br />

Röntgen<br />

Röntgenuntersuchung<br />

durchführen<br />

CT-Untersuchung<br />

durchführen<br />

MR-Untersuchung<br />

durchführen<br />

Angio-Untersuchung<br />

durchführen<br />

Szinti-Untersuchung<br />

durchführen<br />

a) PseudoCode b) Entscheidungstabelle<br />

R1<br />

X<br />

R2 R3 R4 R5<br />

J N N N N<br />

CT N J N N N<br />

MR N N J N N<br />

Angio N N N J N<br />

Szinti N N N N J<br />

Abbildung 3.29: Pseudo-Code und Entscheidungstabelle<br />

regulären Ablaufstrukturierung bereit, fordern deren Verwendung jedoch nicht und lassen beliebige<br />

Folgestrukturen zu, so daß dieses Beschreibungsmittel unter das Netzparadigma (vgl.<br />

Kapitel 3.4.3) eingeordnet wurde.<br />

Forderungen an das <strong>Referenz</strong>-<strong>Metaschema</strong><br />

Die Beschreibung von Ablaufstrukturen durch die Sprachen des Kontrollflußparadigmas erfolgt<br />

entlang der Teilaktivitäten, die mittels <strong>Se</strong>quenzen, Alternativen, Iterationen und Parallelbearbeitung<br />

regulär strukturiert werden. Diese Konzepte muß das <strong>Referenz</strong>-<strong>Metaschema</strong> bereitstellen.<br />

3.5 Visuelle <strong>Modellierungssprachen</strong> der Objektsicht<br />

In der Objektsicht werden die statischen Systemaspekte betrachtet. Hierzu werden Organisationen<br />

oder Softwaresysteme ausgehend von den Objekten beschrieben, die dieses System bilden.<br />

Objekte (oder Entities) [Chen, 1976], [Rumbaugh et al., 1999] stellen wesentliche, unterscheidbare<br />

Dinge innerhalb des Systems dar, die eine eigenständige Identität aufweisen. Neben der<br />

Objektidentität können Objekte weiter durch Attribute und Operationen charakterisiert werden.<br />

Attribute fassen Informationen über Objekte zusammen und definieren hierüber deren Zustand.<br />

Operationen beschreiben Handlungen oder Transformationen, die Objekte ausführen können. Sie<br />

charakterisieren das nach außen sichtbare Verhalten der Objekte. Das Zusammenspiel der Objekte<br />

wird durch hierzwischen vorliegende strukturelle Beziehungen oder Interaktionsbeziehungen<br />

herausgestellt. Strukturelle Beziehungen können durch Attribute konkretisiert werden.<br />

Die Beschreibung eines Systems kann sowohl entlang konkreter Objekte und deren strukturellen<br />

Beziehungen bzw. deren Interaktionsbeziehungen auf Instanzenebene als auch auf einer schematischen<br />

Ebene erfolgen. Bei der Betrachtung auf schematischer Ebene werden Mengen gleichar-<br />

X<br />

X<br />

X<br />

X<br />

X


86 Visuelle <strong>Modellierungssprachen</strong> der Organisations- und Softwaretechnik<br />

tiger Objekte bzw. gleichartiger Beziehungen zu Klassen zusammengefaßt. Die Systembeschreibung<br />

abstrahiert dann von konkreten Objekten und Beziehungen und stellt die Zusammenhänge<br />

generell <strong>für</strong> alle möglichen Instanzen der modellierten Klassen heraus.<br />

Die Darstellung statischer, struktureller Objektzusammenhänge auf Instanzenebene erfolgt<br />

durch die Sprachen des Objekt-Instanzparadigmas. Durch die Beschreibungsmittel des Objekt-<br />

Interaktionsparadigmas werden die Interaktionsbeziehungen entlang der zwischen Objekten ausgetauschten<br />

Nachrichten dargestellt. Visuellen <strong>Modellierungssprachen</strong> zur Beschreibung von<br />

Objektstrukturen auf Schemaebene stellen die Sprachen des Objekt-Beziehungsparadigmas bereit.<br />

3.5.1 Visuelle <strong>Modellierungssprachen</strong> des Objekt-Instanzparadigmas<br />

Zur Modellierung der statischen Sicht eines Systems entlang konkreter oder anonymer Systembestandteile<br />

werden die Sprachen des Objekt-Instanzparadigmas verwendet. Im Gegensatz zu<br />

den Beschreibungsmitteln des Objekt-Interaktionsparadigmas (vgl. Kapitel 3.5.2), mit denen die<br />

Interaktionen zwischen den Objekten des Systems dargestellt werden, beschreiben die Sprachen<br />

des Objekt-Instanzparadigmas einen möglichen Zustand des Systems zu einem festen Zeitpunkt.<br />

Hierzu werden die Objekte des Systems mit ihren Attribut-Eigenschaften und ihren Beziehungen<br />

skizziert.<br />

Die Beschreibung struktureller Systemzusammenhänge entlang konkreter oder anonymer Objekte<br />

und Beziehungen erfolgt durch Objektdiagramme oder Instanzdiagramme.<br />

Eingesetzt werden diese Sprachen auch als Grundlage zur Erstellung von Beschreibungen des<br />

Objekt-Beziehungsparadigmas (vgl. Kapitel 3.5.3) oder zur Darstellung und Erklärung solcher<br />

Modellierungen. Die Sprachen des Objekt-Instanzparadigmas beschreiben hierzu exemplarische<br />

Zusammenhänge, die mit den Beschreibungsmitteln des Objekt-Beziehungsparadigmas schematisch<br />

beschrieben werden.<br />

Notationelle Grundform: Objektdiagramm<br />

Die Darstellung von Modellierungen nach dem Objekt-Instanzparadigma erfolgt durch attributierte<br />

und typisierte Graphen. Knoten beschreiben hierbei konkrete oder anonyme Objekte und<br />

Kanten stellen die strukturellen Beziehungen zwischen den Objekten heraus. Zur Darstellung<br />

ähnlicher Objekte bzw. Beziehungen können diese typisiert werden. Attributeigenschaften der<br />

Objekte und Beziehungen werden in Attribut-Wertpaaren notiert.<br />

Der zur Modellierung des <strong>Referenz</strong>-<strong>Metaschema</strong>s in Kapitel 6 verwendete EER/GRAL-Ansatz<br />

zur graphbasierten Konzeptmodellierung stellt auch ein <strong>visuelle</strong> Beschreibungsmittel zur Darstellung<br />

struktureller Instanzzusammenhänge bereit. Dieses Beschreibungsmittel wird im folgenden<br />

als notationelle Grundform des Objekt-Instanzparadigmas vorgestellt. Eine Einführung<br />

in die Formalisierung dieses Ansatzes findet sich in Kapitel 5.2.1.<br />

Objekte werden durch Rechtecke mit abgerundeten Ecken dargestellt. Im oberen Teil des Rechtecks<br />

können optional Objektbezeichner und Objekttyp notiert werden. Im unteren Teil können<br />

Attribut-Wertpaare zur näheren Charakterisierung des Objekts aufgeführt werden. Die Beziehungen<br />

zwischen den Objekten werden durch Pfeile notiert, die ebenfalls mit einem Bezeich-


3.5 Visuelle <strong>Modellierungssprachen</strong> der Objektsicht 87<br />

v4 Einweisung<br />

Datum = 1704,3<br />

Art = "Notfall-<br />

Einweisung"<br />

e3:istUntersuchungZu<br />

e4:führtDurch<br />

e2:istEinweisungZu<br />

v3<br />

e1:gehörtZu<br />

Fall e16:istEntlassungZu<br />

e13:istOPZu<br />

e6:löstAus e11:löstAus<br />

v2 Arzt<br />

Name =<br />

"Dr. Leonard McCoy"<br />

Adresse =<br />

"USS Enterprise"<br />

e14:führtDurch<br />

e18:erstellt<br />

v5 Untersuchung v6<br />

Radiologische<br />

Untersuchung<br />

v7 Operation v8 Entlassung<br />

Datum = 1704,7<br />

e9:führtDurch<br />

Art = "auf eigenen<br />

Wunsch entlassen"<br />

e5:dokumentiert e7:fordertAn<br />

e10:dokumentiert e12:fordertAn e15:dokumentiert<br />

v9 Befund<br />

Text=<br />

"Verdacht auf<br />

Bandscheibenvorfall"<br />

1<br />

v10 Anforderung<br />

Text =<br />

"MR-Untersuchung<br />

auf Bandscheibenvorfall"<br />

v1 Patient<br />

Name =<br />

"James Tiberius Kirk"<br />

Adresse =<br />

"USS Enterprise"<br />

2<br />

e8:istUntersuchungZu<br />

v11 Befund<br />

Text =<br />

"Verdacht auf<br />

Bandscheibenvorfall<br />

bestätigt"<br />

v12 Anforderung<br />

Text =<br />

"Bandscheiben-<br />

Operation"<br />

Abbildung 3.30: Objektdiagramm<br />

v13<br />

OP-<br />

Dokumentation<br />

Text =<br />

"Bandscheiben-OP<br />

erfolgreich"<br />

e17:dokumentiert<br />

Fall<br />

v14 Arztbrief<br />

Text =<br />

"Bandscheiben-OP<br />

durchgeführt"<br />

ner, ihrer Typangabe und einer Attributierung versehen sein können. Attribute zu Beziehungen<br />

werden in einem Oval notiert. Ist die Reihenfolge der inzidenten Kanten zu einem Knoten von<br />

Bedeutung, so kann diese Anordung durch Nummerierung der Kanten notiert werden. Schlingen<br />

treten in solchen Reihenfolgen zweimal auf, nämlich zum einen als aus dem Knoten ausgehende<br />

und zum anderen als in den Knoten eingehende Kante.<br />

Beispiel 3.10 (Objektdiagramm eines medizinischen Falls)<br />

In Abbildung 3.30 ist ein EER/GRAL-Objektdiagramm zu Beschreibung eines konkreten<br />

medizinischen Falls dargestellt, der einen Krankenhausaufenthalt eines Patienten zwischen<br />

Aufnahme und Entlassung zusammenfassend dokumentiert (vgl. [Haines, 1996]). Der hier<br />

modellierte Fall (v3) bezieht sich auf den Patienten „James Tiberius Kirk“ (v1) und umfaßt<br />

zwei Untersuchungen (v5, v6) und eine Operation (v7) der Bandscheibe. Die Reihenfolge<br />

der beiden Untersuchungen ist hier durch Anordnung der IstUntersuchungZu-Kanten ausgedrückt.<br />

Die Untersuchungen werden durch Befunde Verdacht auf Bandscheibenvorfall<br />

(v9) und dessen Bestätigung (v11) nach einer Radiologischen Untersuchung dokumentiert.<br />

Diese Befunde lösen die ebenfalls dokumentierte Operation der Bandscheibe aus. Durchgeführt<br />

werden diese Behandlungen von dem Arzt „Dr. Leonard McCoy“ (v2). £


88 Visuelle <strong>Modellierungssprachen</strong> der Organisations- und Softwaretechnik<br />

Notationelle Varianten<br />

Objektdiagramme, wie sie beispielsweise in der Objekt Modeling Technique (OMT) [Rumbaugh<br />

et al., 1991, S. 21ff] oder in der Unified Modeling Language (UML) [Booch et al., 1999, S. 195ff]<br />

eingeführt werden, unterscheiden sich von der Darstellung in Abbildung 3.30 nur geringfügig.<br />

In OMT werden die Objekte ebenfalls durch Rechtecke mit abgerundeten Ecken dargestellt, die<br />

den jeweiligen Objekttyp (fettgedruckt, in Klammern) und die Attributwerte enthalten. Beziehungen<br />

werden in OMT-Instanzdiagrammen durch ungerichtete Linien notiert, die aber ebenfalls<br />

mit dem Beziehungstyp annotiert sein können. Gegenüber EER/GRAL-Objektdiagrammen,<br />

die ausschließlich binäre Beziehungen zwischen Objekten erlauben, unterstützen sowohl OMT-<br />

Instanzdiagramme wie auch UML-Objektdiagramme die Darstellung von Beziehungsinstanzen<br />

beliebiger Arität. Diese werden durch Hyperkanten notiert, die durch eine Raute ausgezeichnet<br />

sind. In UML-Objektdiagrammen werden Objekte durch Rechtecke notiert, in dem<br />

die Objekttypen unterstrichen dargestellt werden (vgl. auch die Notation der Interaktionsdiagramme,<br />

Kapitel 3.5.2). Attribute werden in UML-Objektdiagrammen analog zu EER/GRAL-<br />

Objektdiagrammen durch Attribut-Wertepaare beschrieben. Die Beschreibung von Beziehungsinstanzen<br />

erfolgt analog zu OMT durch ungerichtete Linien, die jedoch i. allg. nicht bezeichnet<br />

sind.<br />

Forderungen an das <strong>Referenz</strong>-<strong>Metaschema</strong><br />

Mit den <strong>visuelle</strong>n Sprachen des Objekt-Instanzparadigmas werden mögliche strukturelle Zusammenhänge<br />

der ein System ausmachenden Objekte und deren Beziehungen beschrieben. Das<br />

<strong>Referenz</strong>-<strong>Metaschema</strong> muß zur Abbildung dieser Beschreibungsmittel die Konzepte zur Modellierung<br />

von Objekten, Beziehungen und deren Typ- und Attributeigenschaften bereitstellen. Da<br />

durch die <strong>Modellierungssprachen</strong> des Objekt-Instanzparadigmas auch die Typen der modellierten<br />

Objekte und Beziehungen notiert werden können, muß das <strong>Referenz</strong>-<strong>Metaschema</strong> auch diese<br />

Querbezüge zur Schema-Ebene abbilden.<br />

3.5.2 Visuelle <strong>Modellierungssprachen</strong> des<br />

Objekt-Interaktionsparadigmas<br />

Die <strong>Modellierungssprachen</strong> des Objekt-Interaktionsparadigmas dienen zur Beschreibung vonn<br />

Interaktionen zwischen Objekten. Objekte, die konkrete oder anonyme Instanzen von Klassen,<br />

Schnittstellen oder Komponenten beschreiben, interagieren miteinander durch den Austausch<br />

von Nachrichten [Booch et al., 1999, S. 243].<br />

Eingesetzt werden diese Beschreibungsmittel zur Konkretisierung von Anwendungsfällen und<br />

zur Beschreibung der Ablauffolge von Methodenaufrufen. Während durch die Anwendungsfalldiagramme<br />

des Datenflußparadigmas (vgl. Kapitel 3.4.1) die Einbettung eines Anwendungsfalls<br />

in seine Systemumgebung beschrieben wird, wird der Anwendungsfall durch die Beschreibungsmittel<br />

des Objekt-Interaktionsparadigmas exemplarisch in seinem inneren Verhalten modelliert.<br />

Hierzu wird das System aus der Sicht der Instanzen der Systemkomponenten dargestellt. Gegenüber<br />

den Sprachen des Objekt-Instanzparadigmas (vgl. Kapitel 3.5.1), die mögliche statische


3.5 Visuelle <strong>Modellierungssprachen</strong> der Objektsicht 89<br />

Zusammenhänge beschreiben, betonen die Beschreibungsmittel des Interaktionsparadigmas das<br />

dynamische Verhalten der Objekte. Dieses wird durch Folgen von Nachrichten, die zwischen den<br />

Objekten ausgetauscht werden, szenarioartig beschreiben.<br />

Zur Darstellung dieser Zusammenhänge werden <strong>Se</strong>quenzdiagramme, Ereignisflußdiagramme,<br />

Ereignispfaddiagramme, Interaktionsdiagramme, Kollaborationsdiagramme, Message <strong>Se</strong>quence<br />

Charts und Objektdiagramme verwendet. Interaktionsdiagramme werden insbesondere in objektorientierten<br />

Modellierungsansätzen ([Rumbaugh et al., 1991, S. 173ff], [Booch, 1994], [Booch et<br />

al., 1999, S. 243ff]) eingesetzt. Sie gehen auf die Beschreibung von Szenarien in Object-Oriented<br />

Software-Engineering (OOSE) [Jacobson et al., 1993, S. 215ff] zurück. Der Begriff Interaktionsdiagramm<br />

wird in der Unified Modeling Language (UML) als Oberbegriff <strong>für</strong> Kollaborationsdiagramme<br />

und <strong>Se</strong>quenzdiagramme verwendet. [Booch, 1994, S. 217ff] bezieht diesen Begriff<br />

ausschließlich auf <strong>Se</strong>quenzdiagramme. Als Message <strong>Se</strong>quence Charts [ITU, 1996], [Rudolph et<br />

al., 1996] werden diese Diagrammformen im Rahmen der SDL (Specification and Design Language)<br />

[ITU, 1988], [Braek / Haugen, 1993] zur Beschreibung verteilter Systeme verwendet.<br />

Notationelle Grundform: <strong>Se</strong>quenzdiagramm<br />

Durch <strong>Se</strong>quenzdiagramme, die bei [Rumbaugh et al., 1991] als Ereignispfaddiagramme (Event-<br />

Trace) bezeichnet werden, wird die zeitliche Abfolge der Interaktionen zwischen Objekten tabellenartig<br />

beschrieben. Die <strong>für</strong> den modellierten Anwendungsfall relevanten Objekte werden ähnlich<br />

zu Tabellenüberschriften oberhalb einer vertikalen Linie notiert. Diese Linie symbolisiert<br />

die Lebenslinie des Objekts und repräsentiert die Existenz des Objekts in der Zeit. Nachrichten,<br />

die zwischen zwei Objekten ausgetauscht werden, werden durch Pfeile zwischen den jeweiligen<br />

Lebenslinien notiert. Die Reihenfolge, in der die Nachrichten ausgesendet bzw. empfangen werden,<br />

ist an den Positionen auf den Lebenslinien abzulesen, die hierzu als Zeitachsen aufgefaßt<br />

werden.<br />

Objekte werden durch Rechtecke visualisiert. Zur Unterscheidung der Objektdarstellungen von<br />

Klassendarstellungen werden in <strong>Se</strong>quenzdiagrammen die Objektnamen unterstrichen. Objektnamen<br />

bestehen aus einem optionalen Objektbezeichner und dem Objekttyp. Wird auf den Objektbezeichner<br />

verzichtet, wird durch das Objektsymbol ein anonymes Objekt beschrieben.<br />

Die Pfeile zur Darstellung der ausgetauschten Nachrichten sind durch den Namen der Nachricht<br />

und optionaler Übergabeparameter markiert. [Rumbaugh et al., 1999, S. 336] unterscheidet<br />

vier verschiedene Nachrichtentypen: Pfeile mit einem Winkelsymbol als Pfeilspitze beschreiben<br />

einen einfachen Kontrollfluß, der Aktivierungsfolgen der einzelnen Objekte modelliert. Aufrufe<br />

von Methoden werden durch Pfeile mit gefüllten Spitzen beschrieben. Methodenaufrufe können<br />

hierbei auch hintereinander an mehrere Objekte gesendet werden. Weitere (synchrone) Methodenaufrufe<br />

eines Objekts sind aber erst nach vollständiger Bearbeitung dieser Folgen von Methodenaufrufe<br />

erlaubt. Spezielle Nachrichten werden <strong>für</strong> Konstruktoren und Destruktoren verwendet.<br />

Hierzu werden die Stereotypen „create“ und „destroy“ verwendet. Nachrichten zum<br />

Methodenaufruf korrespondieren mit Rückgabe-Nachrichten, die durch gestrichelte Pfeile dargestellt<br />

werden. Je nach Modellierungskontext kann durch eine Rückgabe auch das wertliefernde<br />

Objekt zerstört werden. Das Zerstören eines Objekts wird jeweils durch ein „X“ auf der Lebenslinie<br />

modelliert. Asynchrone Nachrichtenbeziehungen werden durch Pfeile mit einseitiger<br />

Pfeilspitze dargestellt.


90 Visuelle <strong>Modellierungssprachen</strong> der Organisations- und Softwaretechnik<br />

Die Übermittlung von Nachrichten kann auch von Bedingungen (Guards) abhängig gemacht<br />

werden. Ebenso werden auch Iterationen von Nachrichten unterstützt. Die hierzu nötigen Bedingungen<br />

werden vor dem Bezeichner der jeweiligen Nachricht notiert9 .<br />

Ein Beispiel <strong>für</strong> ein <strong>Se</strong>quenzdiagramm, das eine radiologische Untersuchung beschreibt, ist in<br />

Abbildung 3.31 dargestellt.<br />

s : Station/Ambulanz : Radiologie : MTA-R : Arzt<br />

terminAnfordern<br />

(Radiologieanforderung)<br />

Termin<br />

patientVorbereiten()<br />

[aktuellerZeitpunkt = Termin]<br />

untersuchen(Patient, Krankenakte)<br />

Befund<br />

Abbildung 3.31: <strong>Se</strong>quenzdiagramm<br />

befunden<br />

(Untersuchungsergebnis,<br />

Krankenakte)<br />

Beispiel 3.11 (<strong>Se</strong>quenzdiagramm einer radiologischen Untersuchung)<br />

Das <strong>Se</strong>quenzdiagramm in Abbildung 3.31 skizziert den Anwendungsfall Anforderung bearbeiten<br />

bezogen auf eine radiologische Untersuchung aus Abbildung 3.18. Hierzu interagieren<br />

die Station/Ambulanz ×, sowie die anonymen Objekte Radiologie, MTA-R und<br />

Arzt. DasObjekt× fordert bei der Radiologie zunächst einen Termin an. Anschließend ist<br />

der Patient vorzubereiten. Hierzu schickt sich × selbst die Nachricht patientVorbereiten().<br />

Ist der zuvor ermittelte Untersuchungszeitpunkt eingetroffen, wird die Untersuchung des<br />

Patienten ausgelöst. Das Absenden der Nachricht untersuchen(Patient, Krankenakte) wird<br />

über das Prädikat [aktuellerZeitpunkt=Termin] überwacht. Nach Erstellen der Röntgenaufnahmen<br />

werden diese durch einen Arzt befundet und der Befund an die anfordernde<br />

Station/Ambulanz übermittelt. £<br />

Notationelle Varianten<br />

Darstellungsvarianten <strong>für</strong> <strong>Se</strong>quenzdiagramme unterscheiden sich auch hier lediglich in ihrer konkreten<br />

Syntax und in ihrer Ausdrucksfähigkeit. So notiert [Fowler / Scott, 1998, S. 108] asynchrone<br />

Nachrichtenübermittlungen durch Pfeile mit halbausgefüllten Pfeilspitzen. [Rumbaugh<br />

9 Eine konkrete Notation hier<strong>für</strong> wird in UML nicht vorgesehen [Rumbaugh et al., 1999, S. 338], Prädikate <strong>für</strong><br />

Guards und Iterationen können hier durch beliebige Textfragmente angegeben werden.


3.5 Visuelle <strong>Modellierungssprachen</strong> der Objektsicht 91<br />

et al., 1991, S. 174] verwendet in den Ereignispfaddiagrammen der Object Modeling Technique<br />

(OMT) ausschließlich einfache Nachrichten zur Beschreibung der Aktivierungsfolgen von<br />

Objekten. Auch kennt OMT keine Guards und Iterationen.<br />

Kollaborationsdiagramme. Während bei der Modellierung mit Hilfe von <strong>Se</strong>quenzdiagrammen<br />

die zeitliche Reihenfolge des Nachrichtenaustauschs zwischen den Objekten besonders<br />

hervorgehoben wird, stellen Kollaborationsdiagramme [Rumbaugh et al., 1999, S. 203ff], Ereignisflußdiagramme<br />

[Rumbaugh et al., 1991, S. 175ff] und Objektdiagramme [Booch, 1994,<br />

S. 208ff]) eher die strukturellen Zusammenhänge zwischen den interagierenden Objekten in den<br />

Mittelpunkt der Betrachtung.<br />

In Kollaborationsdiagrammen wird der Interaktionszusammenhang zwischen Objekten durch ungerichtete<br />

Graphen beschrieben, in denen die Objekte die Knoten bilden. Zwei Objekte sind dann<br />

zueinander adjazent, wenn zwischen ihnen eine Interaktionsbeziehung besteht. Zur Darstellung<br />

der jeweils ausgetauschten Nachrichten werden die Kanten durch in Datenflußrichtung ausgerichtete<br />

Pfeile, die analog zu den <strong>Se</strong>quenzdiagrammen mit den Nachrichten markiert sind, annotiert.<br />

Die Modellierung der Aktivierungssequenzen der Nachrichten erfolgt analog zur <strong>Se</strong>quenzialisierung<br />

der SADT-Aktivitätendiagramme (vgl. <strong>Se</strong>ite 62) durch Nummerierung der Nachrichten.<br />

Kollaborationsdiagramme und <strong>Se</strong>quenzdiagramme beschreiben semantisch äquivalente Informationen.<br />

Durch die graphische Anordnung wird jedoch in <strong>Se</strong>quenzdiagrammen der zeitliche Ablauf<br />

und in Kollaborationsdiagrammen der strukturelle Zusammenhang zwischen den Objekten<br />

deutlicher herausgestellt. Das Kollaborationsdiagramm, das dem <strong>Se</strong>quenzdiagramm aus Abbildung<br />

3.31 entspricht, ist in Abbildung 3.32 dargestellt.<br />

3 : patientVorbereiten()<br />

4 : [aktuellerZeitpunkt = Termin]<br />

untersuchen(Patient, Krankenakte)<br />

s : Station/Ambulanz<br />

1 : terminAnfordern(Radiologieanforderung)<br />

2 : Termin<br />

6 : Befund<br />

: Radiologie<br />

5 : befunden(Untersuchungsergebnis,<br />

Krankenakte)<br />

: MTA-R : Arzt<br />

Abbildung 3.32: Kollaborationsdiagramm<br />

Wie auch <strong>für</strong> Ereignispfaddiagramme der OMT unterscheidet sich die konkrete Notation der<br />

Ereignisflußdiagramme [Rumbaugh et al., 1991, S. 175] geringfügig von der Darstellung der<br />

Kollaborationsdiagramme. In Ereignisflußdiagrammen werden die Nachrichten durch gemäß ihrer<br />

Datenflußrichtung gerichtete Kanten beschrieben. Diese sind aber auch hier auf einfache,<br />

kontrollflußartige Nachrichtenbeziehungen eingeschränkt. Anstelle von Rechtecken zur Darstel-


92 Visuelle <strong>Modellierungssprachen</strong> der Organisations- und Softwaretechnik<br />

lung der Objekte werden in Objektdiagrammen nach [Booch, 1994] Wolkensymbole verwendet.<br />

Dieser Dialekt unterstützt ferner die graphische Unterscheidung verschiedener Synchronisationen<br />

(einfach, synchron, asynchron, Abbruch im Fehlerfall) der ausgetauschten Nachrichten und<br />

Sichtbarkeiten der interagierenden Objekte (global, lokal, als Parameter).<br />

Forderungen an das <strong>Referenz</strong>-<strong>Metaschema</strong><br />

Beschreibungsinhalt der <strong>visuelle</strong>n <strong>Modellierungssprachen</strong> des Objekt-Interaktionsparadigmas ist<br />

die Darstellung von Interaktionsszenarien. Diese Interaktionsszenarien beziehen sich auf den<br />

Austausch von Nachrichten zwischen Objekten. Das <strong>Referenz</strong>-<strong>Metaschema</strong> muß daher <strong>für</strong> diese<br />

Modellierungsmittel Konzepte zur Beschreibung der Szenarien und der hieran beteiligten Objekte<br />

und Nachrichten bereitstellen. Ebenfalls sind auch verschiedene Nachrichtentypen zu berücksichtigen.<br />

3.5.3 Visuelle <strong>Modellierungssprachen</strong> des Objekt-Beziehungsparadigmas<br />

Im Gegensatz zum Objekt-Instanzparadigma (vgl. Kapitel 3.5.1) wird durch die Sprachen des<br />

Objekt-Beziehungsparadigmas die statische Struktur eines Systems auf schematischer Ebene beschrieben.<br />

Die <strong>visuelle</strong>n Sprachen des Objekt-Beziehungsparadigmas gehen auf die Arbeiten von [Chen,<br />

1976] zur Datenmodellierung zurück. Wesentliche Modellierungskonstrukte dieses Ansatzes<br />

sind Objekt- und Beziehungsklassen. Objektklassen (Entitätstypen) beschreiben Mengen ähnlicher<br />

Dinge, die im zu modellierenden System existieren. Gleichartige Beziehungen zwischen<br />

Objekten werden in Beziehungsklassen (Beziehungstypen) zusammengefaßt. Kardinalitäten geben<br />

an, wie viele Objekte einer Klasse mit Objekten anderer Klassen in Beziehung stehen können<br />

bzw. dürfen. Weitere Eigenschaften von Objekt- und Beziehungsklassen werden durch Attributschemata<br />

beschrieben.<br />

Im Rahmen der semantischen Datenmodellierung (vgl. z. B. [Hull / King, 1987], [Smith / Smith,<br />

1977]) wurden diese Modellierungskonstrukte um Mittel zur regulären Strukturierung der Modelle<br />

zu erweiterten Objekt-Beziehungsdiagrammen ergänzt. Diese Erweiterungen umfaßten<br />

Konstrukte zur Spezialisierung bzw. Generalisierung von Objekt- und Beziehungsklassen, zur<br />

Aggregation und zur Gruppierung. Aggregationen dienen zur Beschreibung von „besteht-aus-“<br />

oder „Teil-Ganzes“-Beziehungen, die als eigenständige Objektklassen betrachtet werden können.<br />

Gruppierungen beschreiben Zusammenfassungen von Objekten derselben Objektklasse in<br />

einer eigenständigen Klasse. Solche Zusammenfassungen werden heute meist als spezielle, durch<br />

Kardinalitäten eingeschränkte, Aggregationen aufgefaßt.<br />

Die Ansätze der objektorientierten Modellierung (vgl. z. B. [Rumbaugh et al., 1991], [Booch,<br />

1994], [Booch et al., 1999]) erweiterten die Beschreibungsmittel des Objekt-Beziehungsparadigmas<br />

um Operationen. Operationen beschreiben das nach außen sichtbare Verhalten von<br />

Objekten und können als Dienste, die die Objekte bereitstellen, aufgefaßt werden. Die Operationen,<br />

die die Objekte einer Klasse besitzen, werden durch ihre Signaturen beschrieben, die das<br />

Ein- und Ausgabeverhalten dokumentieren.


3.5 Visuelle <strong>Modellierungssprachen</strong> der Objektsicht 93<br />

Notiert werden statische Systemstrukturen entlang des Objekt-Beziehungsparadigmas u. a.<br />

durch Klassendiagramme, (erweiterte) Entity-Relationship-Diagramme, (erweiterte) Objekt-Beziehungsdiagramme,<br />

IDEF1X-Datenmodelle und NIAM-Informationsstrukturdiagramme. Verkürzte<br />

Darstellungen erfolgen durch Datenlexika und Jackson-Diagramme. Zusätzliche Anforderungen<br />

an statische Systemstrukturen können häufig nicht mit den graphischen Mitteln der<br />

Sprachen des Objekt-Beziehungsparadigmas ausgedrückt werden. Hierzu werden diese Sprachen<br />

um Zusicherungssprachen wie z. B. die Graph Specification Language (GRAL) [Franzke,<br />

1997] oder die Object Constraint Language (OCL) [OMG, 1999, S. 6-1ff] ergänzt.<br />

Notationelle Grundform: Klassendiagramme<br />

Auch die Darstellungsmittel des Objekt-Beziehungsparadigmas basieren auf Graphen bzw. Hypergraphen.<br />

Durch Knoten dieser Graphen werden die Objektklassen und durch Kanten die Beziehungsklassen<br />

modelliert. Modellierungsansätze, die Beziehungsklassen beliebiger Arität zulassen,<br />

notieren diese durch Hyperkanten. Die Modellierung von beliebigen Beziehungsstrukturen<br />

kann ohne Informationsverlust in Modelle mit ausschließlich binären Beziehungsklassen<br />

transformiert werden. Hierzu werden Ò-äre Beziehungsklassen durch eine Kett-Objektklasse und<br />

Ò binäre Beziehungsklassen dargestellt. Modellierungen, die nur binäre Beziehungsklassen verwenden,<br />

und daher durch einfache Linien notiert werden können, werden als übersichtlicher eingestuft<br />

[Ebert/Engels, 1994], so daß beispielsweise in NIAM-Informationsstruktur-Diagrammen<br />

[Verheijen / van Bekkum, 1982] und in EER/GRAL-Klassendiagrammen [Ebert et al., 1996b] nur<br />

die Modellierung binärer Beziehungen unterstützt wird.<br />

Als notationelle Grundform des Objekt-Beziehungsparadigmas wird der in dieser Arbeit verwendete<br />

EER/GRAL-Dialekt vorgestellt. Eine ausführliche Einführung in die formale Grundlage und<br />

die Beschreibungsmittel von EER/GRAL findet sich in Kapitel 5.2.<br />

Objektklassen werden in EER/GRAL-Klassendiagrammen durch Rechtecke beschrieben, die<br />

durch Klassenbezeichner annotiert sind. Binäre Beziehungsklassen werden durch Linien zwischen<br />

den in Beziehung gesetzten Objektklassen dargestellt, die ebenfalls durch Klassenbezeichner<br />

ausgezeichnet sind. Die Leserichtung dieser Beziehungen wird durch ein Winkelsymbol auf<br />

der Beziehungslinie angezeigt.<br />

Minimum/Maximum<br />

(0,1)<br />

(0, )<br />

(1,1)<br />

(1, )<br />

Klassendiagramme nach<br />

[Martin/McClure, 1985]<br />

A<br />

A<br />

A<br />

A<br />

B<br />

B<br />

B<br />

B<br />

OMT-Klassendiagramme<br />

[Rumbaugh et al., 1991]<br />

A<br />

A<br />

A<br />

A<br />

EER/GRAL-Klassendiagramme<br />

[Ebert et al., 1996b]<br />

Abbildung 3.33: Notation <strong>für</strong> Kardinalitäten<br />

B<br />

B<br />

B<br />

B<br />

A<br />

A<br />

A<br />

A<br />

B<br />

B<br />

B<br />

B<br />

UML-Klassendiagramme<br />

[Booch et al., 1999]<br />

Die Angabe von Kardinalitäten erfolgt heute üblicherweise durch Minimum-Maximum-Paare,<br />

die die Mindest- und die Maximalanzahl der Beziehungen angeben, die ein Objekt der entsprechenden<br />

Klasse eingehen kann. Zur Darstellung häufig vorkommender Kardinalitäten wer-<br />

A<br />

A<br />

A<br />

A<br />

0 .. 1<br />

*<br />

1<br />

1 .. *<br />

B<br />

B<br />

B<br />

B


94 Visuelle <strong>Modellierungssprachen</strong> der Organisations- und Softwaretechnik<br />

den in einigen Sprachen des Objekt-Beziehungsparadigmas graphische Notationen verwendet,<br />

die in Abbildung 3.33 (bezogen auf ausschließlich binäre Relationen) zusammengefaßt sind. In<br />

EER/GRAL wird zur Modellierung der Kardinalitäten eine Pfeilnotation verwendet.<br />

Attributschemata zu Objekt- und Beziehungsklassen werden durch Angabe der Attributbezeichner<br />

und -wertebereiche in Ovalen notiert, die mit den Klassendarstellungen verbunden sind. Alternativ<br />

können Attributschemata zu Objektklassen auch direkt in den Rechtecken notiert werden.<br />

Generalisierungen von Objektklassen werden in EER/GRAL durch Ineinanderschachteln<br />

der Objektklassen beschrieben. Eine generalisierte Objektklasse enthält hierbei ihre Spezialisierungen.<br />

Diese Notationsform erlaubt eine kompakte und übersichtliche Beschreibung von Systemstrukturen,<br />

die durch tiefe Generalisierungshierarchien geprägt sind. Abstrakte Objekt- bzw.<br />

Beziehungsklassen, d. h. Klassen zu denen keine direkten Instanzen existieren, werden durch<br />

Schraffuren bzw. unterbrochen gezeichnete Linien notiert. Die Darstellung von Aggregationen<br />

erfolgt durch auf der Spitze stehende Quadrate an den Repräsentationen der Aggregate. Die<br />

Komponenten der Aggregation sind mit diesen Quadraten durch Linien, die die Aggregationsbeziehung<br />

notieren, verbunden. Wie auch Beziehungstypen sind diese Aggregationsbeziehungen<br />

mit einem Bezeichner versehen, können ausgerichtet und durch Kardinalitäten eingeschränkt<br />

werden.<br />

rechnetAb<br />

IstAnamnese<br />

Zu<br />

istEinweisungZu<br />

istVisiteZu<br />

Fall<br />

Anamnese<br />

Einweisung<br />

Datum:date<br />

Art : string<br />

Visite<br />

gehörtZu<br />

Person<br />

istUntersuchungZu<br />

dokumentiert<br />

Name: string<br />

Adresse : string<br />

Patient<br />

Krankenkasse:<br />

string<br />

Untersuchung<br />

Konsil<br />

RadiologischeUntersuchung<br />

Labor<br />

Untersuchung<br />

Befund<br />

Text: string<br />

führtDurch<br />

Mitarbeiter<br />

führtDurch<br />

führtDurch<br />

führtDurch<br />

istOPZu istPflegeZu<br />

dokumentiertOPDokumentation<br />

Text: string<br />

fordertAn<br />

löstAus<br />

Arzt Pflegekraft<br />

Operation Pflege<br />

fordertAn<br />

Anforderung<br />

Text: string<br />

dokumentiertPflegeDokumentation<br />

Text: string<br />

fordertAn<br />

fordertAn<br />

Verwaltungsangestellter<br />

Behandlungspflege<br />

Dialyse<br />

Physikalische<br />

Therapie<br />

Krankengymnastik<br />

istBehandlungspflegeZu<br />

dokumentiert<br />

BehandlungspflegeDokumentation<br />

Text: string<br />

Abbildung 3.34: Objekt-Beziehungsdiagramm<br />

Entlassung<br />

Datum:date<br />

Art : string<br />

Arztbrief<br />

erstellt<br />

istEntlasungZu<br />

dokumentiert<br />

Fall<br />

Text: string


3.5 Visuelle <strong>Modellierungssprachen</strong> der Objektsicht 95<br />

Beispiel 3.12 (Klassendiagramm <strong>für</strong> medizinische Fälle)<br />

In Beispiel 3.10 wurde ein Objektdiagramm zur Beschreibung eines konkreten medizinischen<br />

Falls dargestellt. Dieses Diagramm ist eine mögliche Instanz des EER/GRAL-<br />

Klassendiagramm aus Abbildung 3.34.<br />

Ein Fall, der den Aufenthalt eines Patienten im Krankenhaus beschreibt [Haines, 1996], ist<br />

hier als Aggregation von einer Einweisung, einer optionalen Anamnese, beliebig vielen Visiten,<br />

Untersuchungen, Operationen, Pflegen und Behandlungspflegen sowie einer Entlassung<br />

modelliert. Untersuchungen, Operationen, Pflegen und Behandlungspflegen werden<br />

jeweils durch Anforderungen ausgelöst und durch unterschiedliche Dokumentationen bzw.<br />

Befunde dokumentiert. Untersuchungen und Behandlungspflegen sind weiter spezialisiert.<br />

An Fällen sind mehrere Personen beteiligt. Durch eine Generalisierung werden hier Patienten,<br />

Krankenhaus-Mitarbeiter und weitere nicht näher klassifizierte Personen unterschieden.<br />

Mitarbeiter sind hierbei als abstrakte Klasse modelliert, die in Ärzte, Pflegekraft<br />

und Verwaltungsangestellte zerfällt. Je nach Beteiligung am Fall stehen diese Personen in<br />

unterschiedlichen Beziehungen zu den Komponenten des Falls. £<br />

Notationelle Varianten<br />

Zur Beschreibung nach dem Objekt-Beziehungsparadigma existieren ebenfalls mehrere <strong>visuelle</strong><br />

Sprachen, die sich sowohl in ihrer Modellierungsmächtigkeit als auch in ihren konkreten Darstellungsformen<br />

unterscheiden. Die folgenden Abschnitte geben einen kurzen Überblick über weitere<br />

Beschreibungsmittel des Objekt-Beziehungsparadigmas, die die Entwicklung dieser Sprachen<br />

zu den heute verwendeten Klassendiagrammen wesentlich geprägt haben.<br />

Datenlexika. Datenlexika (vgl. [Yourdon, 1989, S. 188f]) oder Jackson-Bäume [Jackson,<br />

1975] und Warnier-Orr-Diagramme [Warnier, 1974] zur Datenmodellierung (vgl. auch die Beschreibungsmittel<br />

des Kontrollparadigmas in Kapitel 3.4.4), in denen ausschließlich reguläre<br />

Strukturen zur Beschreibung von Datenstrukturen verwendet werden, werden ebenfalls dem<br />

Objekt-Beziehungsparadigma zugeordnet. Die Modellierung der Datenstrukturen durch Alternativen<br />

entspricht der Generalisierung, die durch <strong>Se</strong>quenzen der Aggregation und die Modellierung<br />

durch Iterationen der Gruppierung. Beziehungsartige Zusammenhänge der Datenstrukturen<br />

werden mit diesen Mitteln jedoch nicht beschrieben.<br />

Entity-Relationship-Diagramme. Die klassische <strong>visuelle</strong> Notation zur Beschreibung von<br />

Entity-Relationship-Diagrammen nach [Chen, 1976] unterstützt lediglich die Darstellung von<br />

Objektklassen durch Rechtecke und von Beziehungsklassen durch Rauten. Graphische Formen<br />

zur Darstellung von Attributierungen, Aggregationen und Generalisierungen werden nicht angeboten.<br />

Folglich wird in Abbildung 3.35, die einen Ausschnitt der Modellierung zu Beispiel 3.12<br />

zeigt, auch auf die Darstellung von Attributen verzichtet. Die Aggregationsbeziehungen sind<br />

durch „normale“ Beziehungstypen modelliert. In Erweiterungen dieser Notation (vgl. z. B. [Vossen,<br />

1994, S. 70ff], [Elmasri / Navathe, 2000]) wurden Ovale zur Darstellung von Attributschemata<br />

und durch „ISA“ markierte Rauten zur Darstellung von Generalisierungen eingeführt.


96 Visuelle <strong>Modellierungssprachen</strong> der Organisations- und Softwaretechnik<br />

N<br />

dokumentiert<br />

1<br />

Befund<br />

N<br />

löst<br />

aus<br />

N<br />

ist<br />

Untersuchung<br />

Zu<br />

1<br />

Untersuchung<br />

M<br />

N<br />

fordert<br />

an<br />

1<br />

1<br />

dokumentiert<br />

1<br />

OPDokumentation<br />

N<br />

1<br />

1<br />

1<br />

Fall<br />

isOPZu istPflegeZu<br />

Operation Pflege<br />

fordert<br />

an<br />

Anforderung<br />

1<br />

dokumentiert<br />

1<br />

PflegeDokumentation<br />

N<br />

1<br />

1<br />

fordert<br />

an<br />

Abbildung 3.35: Entity-Relationship-Diagramm<br />

1<br />

1<br />

dokumentiert<br />

1<br />

BehandlungspflegeDokumentation<br />

N<br />

ist<br />

BehandlungsPflege<br />

Zu<br />

1<br />

Behandlungspflege<br />

Kardinalitäten werden in der Notation nach [Chen, 1976] nur in den Formen 1 : Æ , Å : Æ und<br />

1 : 1 notiert. Die Zeichen 1 bzw. Æ oder Å an einer Objektklasse zeigen an, daß dieses Objekt<br />

in höchstens einer bzw. in beliebig vielen Instanzen der adjazenten Beziehungsklasse enthalten<br />

sein kann.<br />

NIAM-Informationsstruktur-Diagramme. Informations-Struktur-Diagramme der Nijssens<br />

Information Analysis Method (NIAM) [Verheijen / van Bekkum, 1982], [Laender / Flynn, 1993]<br />

verwenden ausschließlich binäre Beziehungsklassen, in denen die Beziehungen jeweils aus Sicht<br />

der beteiligten Objektklassen benannt werden. Die Beziehungsklassen werden hierzu durch zwei<br />

nebeneinander plazierte Rechtecke notiert, die mit den jeweiligen Objektklassen verbunden sind<br />

und die Rolle dieser Objekte in der Beziehung modellieren. Zur Darstellung von Objektklassen<br />

werden in NIAM Kreise verwendet, die mit dem Klassenbezeichner versehen sind. Ein eigenständiges<br />

Konstrukt zur Modellierung von Attributen existiert in NIAM nicht. Die Attributwertebereiche<br />

werden hier ebenfalls durch Objektklassen modelliert, die mit der attritutierten Klasse<br />

über Beziehungen verbunden sind. Sind die Attributwertebereiche druckbare Standardtypen<br />

(lexikalische Objekte) wird der Kreis unterbrochen gezeichnet. NIAM erlaubt auch die Modellierung<br />

von Generalisierungen der Objektklassen durch gerichtete Pfeile zur Oberklasse.<br />

Die Kardinalitäten der Beziehungstypen werden in NIAM durch Doppelpfeile über den Beziehungstypdarstellungen<br />

notiert. Ein über beiden Rollensymbolen notierter Doppelpfeil zeigt eine<br />

Å : Æ -Beziehung, Doppelpfeile über jedem Rollensymbol modellieren eine 1 : 1- und ein einzelner<br />

Doppelpfeil über einem Rollensymbol beschreibt eine 1 : Æ -Beziehung. Neben diesen<br />

1<br />

fordert<br />

an<br />

1


3.5 Visuelle <strong>Modellierungssprachen</strong> der Objektsicht 97<br />

Invarianten stellt NIAM auch graphische Konstrukte zur Beschreibung von Einschränkungen an<br />

die Objektmengen, die an einer Beziehung beteiligt sind, bereit. Hierzu werden die entsprechenden<br />

Rollensymbole miteinander verbunden und in einem Kreis mit der Art der Einschränkung<br />

markiert. In Abbildung 3.36, die einen Ausschnitt des Klassendiagramms aus Beispiel 3.12 in<br />

NIAM zeigt, wird dieser Mechanismus zur Modellierung der Aggregation ausgenutzt. Die Objektklasse<br />

Fall besteht aus Zusammenfassungen von Untersuchungen, Operationen, Pflegen und<br />

Behandlungspflegen.<br />

Person<br />

Patient<br />

hatAlsName istNameVon<br />

hatAlsAdresse istAdresseVon<br />

hatAls<br />

ist<br />

Krankenkasse<br />

Krankenkasse<br />

Von<br />

hatAlsFall istFallZu<br />

String<br />

Fall<br />

hatAls<br />

Untersuchung<br />

ist<br />

Untersuchung<br />

zu<br />

U<br />

hatAlsOP istOPZu<br />

U<br />

hatAlsPflege istPflegeZu<br />

hatAls<br />

Behandlungspflege<br />

U<br />

ist<br />

BehandlungspflegeZu<br />

Abbildung 3.36: NIAM-Informationsstruktur-Diagramm<br />

Untersuchung<br />

Operation<br />

Pflege<br />

Behandlungspflege<br />

Generische <strong>Se</strong>mantische Modelle. Generische <strong>Se</strong>mantische Modelle (GSM) [Hull / King,<br />

1987] erweitern die klassischen Entity-Relationship-Diagramme um Konstruktoren <strong>für</strong> Objektklassen.<br />

Diese Konstruktoren basieren ebenfalls auf regulären Strukturen. Zusammengesetzte<br />

Objektklassen werden in GSM durch Kreise modelliert, die zur Darstellung von Aggregationen<br />

durch ein Kreuz und zur Darstellung von Gruppierungen durch einen Stern markiert sind. Von<br />

diesen Objektklassen zeigt eine gerichtete, unterbrochene Linie zu den jeweiligen Komponenten,<br />

die ebenfalls durch zusammengesetzte Objektklassen, aber auch atomare, nicht weiter zerlegte<br />

Objektklassen beschrieben sein können. Atomare Objektklassen werden durch Dreiecke symbolisiert.<br />

Wie auch in NIAM werden in GSM Attribute ebenfalls durch Objektklassen modelliert.<br />

Die Darstellung von lexikalischen Objektklassen, die als dritte Art der Objektklassen aufgefaßt<br />

wird, erfolgt in GSM durch Ovale. Generalisierungen werden durch einen Doppelpfeil, der zur<br />

Generalisierung hin ausgerichtet ist, notiert. Die Spezialisierungen werden hierbei ebenfalls als<br />

konstruierte Objektklassen eingeordnet und durch Kreise beschrieben.<br />

Sowohl die Darstellung von Attributzuordnungen als auch die Beschreibung von Beziehungen<br />

erfolgt in GSM durch gerichtete (Hyper-) Kanten. Diese Bezüge zwischen zwei Objektklassen<br />

werden hierbei jeweils als Attribute einer Objektklasse aufgefaßt, die durch lexikalische, durch<br />

atomare oder auch durch komplexe Objektklassen beschrieben sein können. Die Kanten sind<br />

jeweils zu den Attributen hin ausgerichtet.


98 Visuelle <strong>Modellierungssprachen</strong> der Organisations- und Softwaretechnik<br />

Untersuchungen<br />

Untersuchung<br />

Operationen<br />

Fall<br />

hatFall<br />

Operation Pflege<br />

Pflegen<br />

Patient<br />

Person<br />

Behandlungspflege<br />

Abbildung 3.37: Generisches <strong>Se</strong>mantisches Modell<br />

istVersichert<br />

beiKrankenkasse<br />

hatName<br />

hatAdresse<br />

Behandlungspflegen<br />

Der Ausschnitt der Modellierung des medizinischen Falls aus Abbildung 3.36 ist in Abbildung<br />

3.37 mit den Mitteln der generischen semantischen Modelle dargestellt. Die deutliche Unterscheidung<br />

von Aggregationen und Gruppierungen erfordert bei der GSM-Modellierung des<br />

Falls zunächst Gruppierungen der Untersuchung, derOperation, derPflege und der Behandlungspflege,<br />

die erst anschließend aggregiert werden können. Zur Beschreibung mengenwertiger<br />

Attribute stellt GSM noch ein weiteres, der Gruppierung entsprechendes Sprachkonstrukt durch<br />

eine doppelte Pfeilspitze bereit. So wird dem Patient eine Menge von Fall-Attributen zugeordnet.<br />

Über die Gegenrichtung dieser Beziehung wird jedoch keine Aussage gemacht.<br />

UML-Klassendiagramme. Objektorientierte Modellierungsmethoden (z. B. [Rumbaugh et<br />

al., 1991] [Booch, 1994]) stellen die Beschreibungsmittel des Objekt-Beziehungsparadigmas als<br />

zentrales Modellierungswerkzeug heraus. Klassendiagramme objektorientierter <strong>Modellierungssprachen</strong><br />

unterstützen wie die bisher betrachteten Sprachen die Beschreibung von Objektklassen<br />

und deren Beziehungen sowie die Konzepterweiterungen durch Generalisierung, Gruppierung<br />

und Aggregation. Darüber hinaus stellen Klassendiagramme Darstellungsmittel zur Modellierung<br />

des nach außen sichtbaren Verhaltens der Objektklassen bereit. Klassendiagramme sind somit<br />

eine Verallgemeinerung der in erster Linie auf die Datenbeschreibung ausgerichteten Entity-<br />

Relationship-Diagramme um die Berücksichtigung von Verhaltensaspekten (vgl. [Booch et al.,<br />

1999, S. 110]).<br />

In Abbildung 3.38 ist der medizinische Fall aus Beispiel 3.34 als Klassendiagramme der Unified<br />

Modeling Language (UML) [Booch et al., 1999], [Rumbaugh et al., 1999] modelliert.<br />

String<br />

String<br />

String


3.5 Visuelle <strong>Modellierungssprachen</strong> der Objektsicht 99<br />

1<br />

0..1<br />

1<br />

1<br />

1<br />

*<br />

Anamnese<br />

Einweisung<br />

Datum : date<br />

Art : string<br />

1 ..*<br />

Fall<br />

1<br />

Patient<br />

Krankenkasse:<br />

string<br />

gehörtZu Arzt<br />

Pflegekraft<br />

Verwaltungsangestellter<br />

0 .. 1<br />

untersuche<br />

(Untersuchung)<br />

operiere(Operation)<br />

schreibe(Arztbrief)<br />

1 ..*<br />

1 1<br />

Befund<br />

Text: string * löstAus<br />

OPDokumentation<br />

Text: string<br />

PflegeDokumentation<br />

Text: string<br />

1 1 1<br />

0 .. 1 0 .. 1<br />

Visite Konsil Radiologische Labor<br />

Untersuchung Untersuchung<br />

Person<br />

Name:string<br />

Adresse:string<br />

Mitarbeiter<br />

pflege(Pflege)<br />

behandle<br />

(Behandlungspflege)<br />

1 1 1 1<br />

* * * *<br />

Untersuchung Operation Pflege<br />

Behandlungspflege<br />

1 1<br />

Anforderung<br />

* Text: string<br />

0 .. 1<br />

1<br />

Dialyse Physikalische<br />

Therapie<br />

Abbildung 3.38: UML-Klassendiagramm<br />

0 .. 1<br />

1<br />

BehandlungspflegeDokumentation<br />

Text: string<br />

Krankengymnastik<br />

rechneAb(Fall)<br />

1<br />

1<br />

Entlassung<br />

Datum : date<br />

Art : string<br />

doku- 0 .. 1<br />

mentiert<br />

Fall 1<br />

Arztbrief<br />

Text: string<br />

Wie auch in EER/GRAL-Klassendiagrammen und in klassischen Entity-Relationship-Diagrammen<br />

werden in UML-Klassendiagrammen die Objektklassen durch Rechtecke notiert, die neben<br />

Bezeichnern und Attributschemata auch die nach außen sichbaren Operationen enthalten. Diese<br />

Operationen werden durch Angabe ihrer Signatur einschließlich evtl. benötigter Modifikatoren<br />

beschrieben. In Abbildung 3.38 sind die Dienste notiert, die von Ärzten, Pflegekräften und Verwaltungsangestellten<br />

angeboten werden. Zur Durchführung von Untersuchungen besitzen Ärzte<br />

u. a. die Methode untersuche(Untersuchung), die mit der durchzuführenden Untersuchung parametrisiert<br />

ist.<br />

Binäre Beziehungstypen werden auch hier durch Linien notiert, die optional mit einem Bezeichner<br />

versehen sein können. Beziehungstypen beliebiger Arität werden in Anlehnung an die Notation<br />

von [Chen, 1976] durch Hyperkanten, die mit einer kleinen Raute markiert sind, dargestellt.<br />

UML-Klassendiagramme unterscheiden mehrere Arten von Beziehungsklassen (vgl. hierzu<br />

[Booch et al., 1999, S. 137ff]). Strukturelle Zusammenhänge zwischen Objektklassen werden<br />

durch Assoziationen (Associations) modelliert, die durch Linien notiert werden. Die Leserichtung<br />

der Bezeichner von Assoziationen kann ähnlich zur EER/GRAL-Klassendiagrammen durch<br />

ein ausgefülltes Dreieck neben dem Bezeichner festgelegt werden. Abhängigkeitsbeziehungen<br />

oder Nutzt-Beziehungen (Dependencies) zwischen zwei Klassen, die z. B. anzeigen, daß Operationen<br />

einer Klasse Objekte der anderen als Parameter benötigen, werden durch gerichtete,<br />

unterbrochene Linien dargestellt. Diese sind jeweils zu der benötigten Objektklasse hin ausge-


100 Visuelle <strong>Modellierungssprachen</strong> der Organisations- und Softwaretechnik<br />

richtet. Aufgrund der Methode untersuche(Untersuchung) ist z. B. die Klasse Arzt von der Klasse<br />

Untersuchung abhängig. Dieser Bezug ist durch eine Abhängigkeitsbeziehung in Abbildung 3.38<br />

dargestellt. Weitere Arten von Beziehungen werden durch textuelle Annotationen unterschieden.<br />

Die UML-Klassendiagramme stellen kein eigenständiges graphisches Element zur Beschreibung<br />

von Attributschemata zu Beziehungsklassen bereit. Attributschemata zu Beziehungsklassen sind<br />

durch eigene Objektklassen-Symbole zu beschreiben, die mit den Beziehungsklassen verbunden<br />

sind.<br />

Aggregationen werden analog zu EER/GRAL durch auf der Spitze stehende Quadrate notiert.<br />

Bei der Aggregation unterscheidet UML zwei Varianten. Nicht ausgefüllte Quadrate beschreiben<br />

beliebige Zusammenfassungen von Komponenten zu einem Ganzen. Hierbei können die<br />

Komponenten jedoch auch als eigenständige Objekte existieren. Ist die Existenz einer Komponente<br />

an die Existenz des Aggregats gekoppelt (Komposition), wird dieses durch ein ausgefülltes<br />

Quadrat notiert. Alternativ kann die Komposition auch durch Schachtelung der Komponenten in<br />

der Aggregat-Darstellung notiert werden.<br />

Kardinalitäten zu Beziehungstypen und Aggregationen werden durch Minimum-Maximum-<br />

Paare notiert. Die konkrete Darstellungsform kann Abbildung 3.33 entnommen werden. Die an<br />

Beziehungen oder Aggregationen beteiligten Objekte können auch ähnlich wie in NIAM durch<br />

ihre Rollen beschrieben werden. Hierzu werden die Rollenbezeichner an die Enden der Linien<br />

zur Beschreibung des Beziehungszusammenhangs notiert. Wie auch <strong>für</strong> Assoziationen kann<br />

auch <strong>für</strong> Aggregationen und Kompositionen die Leserichtung angegeben werden.<br />

Generalisierungsbeziehungen sowohl zwischen Objektklassen als auch zwischen Beziehungsklassen<br />

werden durch (Hyper-) Kanten beschrieben. Durch nicht ausgefüllte Dreiecke, die zur<br />

Generalisierung zeigen, werden die Generalisierungen von den Spezialisierungen unterschieden.<br />

Die verschiedenen objektorientierten Methoden verwenden unterschiedliche graphische Symbole<br />

zur Beschreibung von Klassendiagrammen. Im Rahmen der Vereinheitlichung der Notation<br />

zur Unified Modeling Language hat sich hier die Notation der Object Modeling Language<br />

(OMT) [Rumbaugh et al., 1991] durchgesetzt. Wesentliche Sprachbestandteile der UML-<br />

Klassendiagramme wurden aus OMT übernommen. Lediglich die Darstellung der Kardinalitäten<br />

wurde gegenüber OMT verändert (vgl. Abbildung 3.33) und die Dreiecke zur Beschreibung der<br />

Generalisierungsbeziehungen sind zur Generalisierung „gerutscht“.<br />

Forderungen an das <strong>Referenz</strong>-<strong>Metaschema</strong><br />

Die Darstellung statischer Systemzusammenhänge entlang des Objekt-Beziehungsparadigmas<br />

basiert auf der Modellierung von Objekt- und Beziehungsklassen. Im <strong>Referenz</strong>-<strong>Metaschema</strong> sind<br />

daher Konzepte zur Beschreibung dieser Klassen einschließlich deren Attributschemata bereitzustellen.<br />

Zur weiteren Konkretisierung der Beziehungsklassen muß das <strong>Referenz</strong>-<strong>Metaschema</strong><br />

auch die Darstellung von Kardinalitäten erlauben. Die Strukturierung der Modellierungen des<br />

Objekt-Beziehungsparadigmas kann durch Generalisierungen von Objekt- und Beziehungsklassen<br />

und Aggregationen bzw. Gruppierungen unterstützt werden. Diese Modellierungskonstrukte<br />

sind ebenfalls durch das <strong>Referenz</strong>-<strong>Metaschema</strong> abzubilden.


3.6 Einordnung in die Zielsetzung dieser Arbeit 101<br />

3.6 Einordnung in die Zielsetzung dieser Arbeit<br />

Die Betrachtung organisatorischer und softwaretechnischer Systeme kann aus der Aufgabensicht,<br />

der Aufbausicht, der Prozeßsicht und der Objektsicht erfolgen. Innerhalb dieser Sichten<br />

folgt die Modellierung organisatorischer und softwaretechnischer Sachverhalte verschiedenen<br />

Darstellungsparadigmen. Ausgehend von diesen Sichten und Paradigmen wurde in Kapitel 3.1<br />

ein Klassifikationsschema zur Einordnung der <strong>visuelle</strong>n Sprachen der Organisations- und Softwaretechnik<br />

entwickelt.<br />

Dieses Klassifikationsschema stellt ein umfassendes Hilfsmittel zur Untersuchung der u. a. in<br />

funktions- oder prozeßorientierten Methoden zur Organisationsmodellierung oder in strukturierten<br />

oder objektorientierten Methoden zur Softwareentwicklung eingesetzten <strong>visuelle</strong>n <strong>Modellierungssprachen</strong><br />

zur Verfügung. In den vorangegangenen Kapiteln wurden die konkreten<br />

Notationsformen der wesentlichen Beschreibungsmittel des Requirements-Engineerings der<br />

Organisations- und Softwaretechnik entlang der in diesem Klassinfikationsschema festgelegten<br />

Beschreibungsparadigmen vorgestellt. Das in Abbildung 3.2 auf <strong>Se</strong>ite 37 zusammenfassend dargestellte<br />

Klassifikationsschema hat sich hierbei als valides und ausreichendes Instrument zur<br />

Einordnung der Beschreibungsmittel erwiesen.<br />

Zentrales Ziel dieser Arbeit ist die integrierte Darstellung der verschiedenen viuellen <strong>Modellierungssprachen</strong><br />

in einem <strong>Referenz</strong>-<strong>Metaschema</strong>. Die Beschreibungsmittel eines Paradigmas unterscheiden<br />

sich lediglich in ihren konkreten Darstellungsformen. Konzeptionell werden durch<br />

die Sprachen eines Paradigmas jeweils gleiche Sachverhalte dargestellt. Zur Entwicklung des<br />

<strong>Referenz</strong>-<strong>Metaschema</strong>s kann folglich von konkreten Notationen abstrahiert werden. Zur integrierten<br />

Darstellung der Beschreibungssmittel aus Organisations- und Softwaretechnik ist es<br />

ausreichend, im <strong>Referenz</strong>-<strong>Metaschema</strong> nur die wesentlichen Konzepte der einzelnen Paradigmen<br />

abzubilden. Ausgehend von den in den Kapiteln 3.2 bis 3.5 erarbeiteten Anforderungen<br />

erfolgt die Entwicklung des <strong>Referenz</strong>-<strong>Metaschema</strong>s <strong>für</strong> <strong>visuelle</strong> <strong>Modellierungssprachen</strong> in Kapitel<br />

6 ebenfalls entlang des hier eingeführten Klassifikationsschemas.


4 Modelle, <strong>Referenz</strong>modelle und<br />

Metamodelle<br />

Betrachtungsgegenstand dieser Arbeit ist die konzeptionelle Modellierung der in Kapitel 3 eingeführten<br />

<strong>visuelle</strong>n Sprachen zur Darstellung von Organisationen und Softwaresystemen. Hierzu<br />

wird ein Modell dieser Sprachen erstellt, durch das die jeweils dargestellten Modellierungskonzepte<br />

und deren Beziehungen abbildet. Im folgenden wird dieses Modell in den Kontext der<br />

Modellbildung (Kapitel 4.1), der <strong>Referenz</strong>modellierung (Kapitel 4.2) und der Metamodellierung<br />

(Kapitel 4.3) eingeordnet.<br />

4.1 Modelle<br />

Modelle können als Darstellungen von Zusammenhängen einer Diskurswelt aufgefaßt werden,<br />

die wesentliche Bestandteile in den Vordergrund stellen und von unwesentlichen abstrahieren.<br />

Als Hilfmittel zur Darstellung und zum Nachvollziehen vielfältiger Zusammenhänge werden<br />

Modelle in den unterschiedlichsten Bereichen eingesetzt.<br />

Modelle der Mathematik und Logik repräsentieren Strukturen zu einer Theorie, durch die diese<br />

interpretiert wird und die die formulierten Axiome erfüllen. Die Menge der ganzen Zahlen mit<br />

der Addition stellt ein solches Modell <strong>für</strong> die Gruppentheorie dar. Unter dem in der Mathematik<br />

verwendeten Modellbegriff werden also Repräsentanten einer Theorie verstanden. In den Natur-,<br />

Ingenieurs- und Geisteswissenschaften wird der Modellbegriff eher auf evtl. vorweggenommene<br />

Replikationen von Realitätsausschnitten [Dörner, 1993, S. 337] bezogen:<br />

¯ In der Architektur stellen Modelle in Form von Bauplänen Arbeitsanweisungen zur Erstellung<br />

von Bauwerken dar. Zeichnungen oder Darstellungen aus Holz, Plastik und Ähnlichem<br />

modellieren Bauwerke mit dem Ziel, das spätere Aussehen eines Gebäudes frühzeitig<br />

zu visualisieren.<br />

¯ In der Physik werden Modelle entwickelt, um beobachtbare Naturerscheinungen zu beschreiben,<br />

um ermittelte physikalische Gesetze zu deuten und um Voraussagen über den<br />

Ablauf neuer Experimente (u.a. auch zur Modellvalidierung) zu machen. Als Beispiele<br />

hier<strong>für</strong> können die Atommodelle angesehen werden, die jeweils das zum Zeitpunkt der<br />

Erstellung bekannte Wissen über Aufbau und Zusammenhang von Atomen darlegen.<br />

¯ Modelle in den Sozialwissenschaften befassen sich mit den Reaktionen eines Realitätsausschnitts<br />

auf bestimmte Außeneinflüsse und mit seinem Verhalten in der Zeit. Solche


104 Modelle, <strong>Referenz</strong>modelle und Metamodelle<br />

Modelle finden ihre Anwendung z. B. zur Vorhersage der Bevölkerungsentwicklung oder<br />

zur Beurteilung möglicher Folgen von Gesetzesvorlagen.<br />

¯ Durch die in Kapitel 3 eingeführten <strong>visuelle</strong>n <strong>Modellierungssprachen</strong> werden Modelle der<br />

Organisationstheorie und der Softwaretechnik notiert. Diese Modelle abstrahieren von —<br />

im jeweiligen Problemkontext — unwesentlichen Aspekten und werden zur Komm<strong>uni</strong>kation<br />

über die modellierten Zusammenhänge z. B. bei der Organisationsgestaltung oder<br />

bei der Entwicklung von Softwaresystemen verwendet. Hierbei werden Modelle auch zur<br />

Schaffung eines gemeinsamen Begriffsverstehens eingesetzt.<br />

Modelle im Sinn der Natur-, Ingenieurs- und Geisteswissenschaften finden ihre Anwendung im<br />

Zusammenhang mit Systemen aus einer realen oder abstrakten Diskurswelt, die durch diese Modelle<br />

veranschaulicht werden. Ein Modell wird jedoch nicht nur von dem modellierten System<br />

selbst geprägt; seine Ausgestaltung und Interpretation wird auch von der Zielsetzung des Modellerstellers<br />

bzw. des Modellanwenders beeinflußt [Apostel, 1960], [Schütte / Rotthowe, 1998].<br />

Hieraus wird in [Apostel, 1960] eine allgemeine Definition des Modellbegriffs abgeleitet. Ein<br />

System , welches weder direkt noch indirekt mit einem System interagiert und von einem<br />

Subjekt Ë verwendet wird, um Erkenntnisse über das System zu gewinnen, ist hiernach <strong>für</strong><br />

dieses Subjekt unter einer festgelegten Zielsetzung ein Modell des Systems . [Becker / Vossen,<br />

1996a] fassen — hieran angelehnt — ein Modell <strong>für</strong> Geschäftsprozesse als „ein immaterielles<br />

und abstraktes Abbild der Realwelt <strong>für</strong> die Zwecke des Subjekts“ auf. Eine Diskussion des<br />

Modellbegriffs, bei der u. a. auch noch der Kenntnisstand des Modellanwenders in die Modellinterpretation<br />

einfließt, findet sich auch in [Troitzsch, 1990].<br />

Ein Modell ist ein zielgerichtetes Abbild eines Systems, das zum einen ähnliche<br />

Beobachtungen und Aussagen ermöglicht wie dieses System und zum anderen<br />

diese Realität durch Abstraktion auf die jeweils problembezogen relevanten<br />

Aspekte vereinfacht.<br />

Modelle erlauben eine deutliche und strukturierte Beschreibung der Konzepte eines Systems<br />

durch Einschränkung auf die wesentlichen Problemaspekte. Hierdurch kann u. a. auch das Verstehen<br />

und Nachvollziehen komplexer Zusammenhänge unterstützt werden.<br />

Modell-Taxonomie<br />

Abhängig von Modellierungszusammenhängen, Modellierungsaspekten und Modellverwendung<br />

werden verschiedene Modelltypen unterschieden (vgl. hierzu auch [Lehner, 1995]). Eine ausführliche<br />

Klassifikation von Modelltypen vor dem Hintergrund der sozialwissenschaftlichen Modellbildung,<br />

die auch auf das im folgenden entwickelte Modell der <strong>visuelle</strong>n <strong>Modellierungssprachen</strong><br />

<strong>für</strong> Organisationen und Softwaresysteme angewandt werden kann, findet sich in [Troitzsch,<br />

1990, S. 12ff].<br />

Nach dem Bildbereich können konkrete und symbolische Modelle unterschieden werden [Brinkkemper,<br />

1990], [Gigch, 1991]. Konkrete Modelle zeichnen sich dadurch aus, daß Dinge aus der<br />

modellierten Welt direkt (Realmodelle) oder nach Konstruktion (ikonische Modelle) als Modell


4.2 <strong>Referenz</strong>modelle 105<br />

übernommen werden. Symbolische Modelle, die in einer symbolischen Form beschrieben werden,<br />

werden weiter in Verbalmodelle, bei denen Modelle in natürlicher Sprache dargestellt werden<br />

und in formale Modelle unterschieden, die durch formale (mathematische) Sprachen notiert<br />

werden [Troitzsch, 1990].<br />

Nach Art der Zusammenhänge zwischen den modellierten Objekten unterscheidet [Troitzsch,<br />

1990, S. 15] statische Modelle, bei denen sich die Merkmale der modellierten Objekte und Beziehungen<br />

im Verlauf der Zeit nicht ändern und Prozeßmodelle, bei denen zeitliche Änderungen<br />

einbezogen werden.<br />

Die Unterscheidung nach dem Modellierungszweck bietet ein weiteres aussagekräftiges Unterscheidungsmerkmal.<br />

Hierbei ist zu beachten, daß mit einer Modellierung nur selten genau ein<br />

Ziel verfolgt wird. Konkrete Modelle können durchaus auch mehreren der folgenden Modellklassen<br />

zugehörig sein. Mit Deskriptionsmodellen soll in erster Linie eine Unterstützung bei<br />

der Komm<strong>uni</strong>kation über modellierte Sachzusammenhänge geboten werden. In diese Modellklasse<br />

fallen auch solche Modelle, die im Rahmen der Softwareerstellung (Implementationsmodelle)<br />

sowohl zur Komm<strong>uni</strong>kation zwischen den hieran beteiligten Personen, als auch als<br />

Implementations-Hilfsmittel verwendet werden. Didaktische oder tutorielle Modelle werden vor<br />

dem Hintergrund der Vermittlung der Modellinhalte erstellt. Simulationen werden Simulationsmodelle<br />

zu Grunde gelegt. Sie haben auch einen sehr engen Bezug zu formalen Modellen, da<br />

Simulationsmodelle in der Regel auch formal zu beschreiben sind.<br />

4.2 <strong>Referenz</strong>modelle<br />

Eine ausgewiesene Form von Modellen bilden <strong>Referenz</strong>modelle. Der Begriff „<strong>Referenz</strong>“ leitet<br />

sich vom lateinischen „refero“: auf etwas zurückführen, beziehen auf, nach etwas beurteilen, ab.<br />

Mit dem Zusatz „<strong>Referenz</strong>“ werden solche Dinge ausgezeichnet, die als Bezug oder Empfehlung<br />

geeignet sind. <strong>Referenz</strong>modelle bezeichnen folglich solche Modelle, die als Bezug i. w. S.<br />

dienen.<br />

In Begriffsklärungen aus der Literatur wird dieser Bezug häufig auf die Verwendung von <strong>Referenz</strong>modellen<br />

als Modellierungsmittel zur Erstellung spezieller Modelle bezogen. So versteht<br />

[Scheer, 1997] unter einem <strong>Referenz</strong>modell ein Modell, „das als Ausgangspunkt <strong>für</strong> die Entwicklung<br />

auf konkrete Aufgabenstellungen bezogener Problemlösungen dienen kann.“ [<strong>Se</strong>ubert,<br />

1997] beschreibt <strong>Referenz</strong>modelle als „vorgefertigte Lösungsrahmen“, die eine Basis <strong>für</strong> den<br />

„gezielten und ökonomischen Aufbau von [...]Konzeptionen“ bieten. Ähnliche Begriffsbildungen<br />

nehmen [Raue, 1996], [Hars, 1994] und [Schütte, 1996] vor. Auch hier steht die Verwendung<br />

von <strong>Referenz</strong>modellen als Bezug <strong>für</strong> den Entwurf anderer Modelle im Vordergrund.<br />

Neben dieser Eigenschaft stellen u.a. [Marent, 1995], [Becker / Schütte, 1997] und [Rosemann<br />

/ Schütte, 1997] den Empfehlungscharakter von <strong>Referenz</strong>modellen heraus. <strong>Referenz</strong>modellen<br />

wird hier ein „normativer Charakter“ zugesprochen, da durch sie <strong>für</strong> eine „abgebildete Klasse<br />

von Problemstellungen“ Gestaltungsempfehlungen gegeben werden.<br />

Auch das <strong>Referenz</strong>modell <strong>für</strong> Workflow-Managementsysteme [Hollingsworth, 1994] wurde als<br />

Grundlage zur Erstellung spezieller Modelle entwickelt. Zusätzlich wurden jedoch Anforderungen<br />

an den Bildbereich des <strong>Referenz</strong>modells formuliert. So soll das <strong>Referenz</strong>modell <strong>für</strong>


106 Modelle, <strong>Referenz</strong>modelle und Metamodelle<br />

Workflow-Managementsysteme deren „charakteristischen Merkmale, deren Terminologie und<br />

deren Komponenten“ beschreiben. Ebenfalls auf die Beschreibung wesentlicher Konzepte bezieht<br />

[ECMA, 1991] den Begriff <strong>Referenz</strong>modell. <strong>Referenz</strong>modelle sind hiernach „konzeptionelle<br />

und funktionale Rahmen“ zur Beschreibung und zum Vergleich komplexer Systeme.<br />

Ausgehend von Fragestellungen der Unternehmensmodellierung versteht [Marent, 1995] unabhängig<br />

vom Verwendungszweck unter einem <strong>Referenz</strong>modell ein „konzeptionelles Geschäftsbereichsmodell<br />

<strong>für</strong> ein idealtypisches Unternehmen“. Ähnlich allgemein faßt auch [Scholz-Reiter,<br />

1990] den <strong>Referenz</strong>modellbegriff. <strong>Referenz</strong>modelle werden hier als Modelle verstanden, deren<br />

wesentliche Ausprägungen „generell gültig“ und „von individuellen Besonderheiten freigehalten“<br />

sind.<br />

Gemeinsam ist diesen Begriffsbildungen eine Abgrenzung zwischen dem <strong>Referenz</strong>modell und<br />

den hierzu in bezug gesetzten speziellen Modellen. Spezielle Modelle beschreiben einen Sachzusammenhang<br />

aus einer auf ein konkretes Modellierungsziel hin ausgerichteten Sicht. Sie sind<br />

in ihrem Detaillierungsgrad ebenfalls speziell auf den zu beschreibenden Problemkontext hin<br />

zugeschnitten. <strong>Referenz</strong>modelle sind dagegen nicht auf ein konkretes Problem bezogen, sondern<br />

werden als problemübergreifende Modellierung verstanden. Sie beschreiben die wesentlichen<br />

Merkmale des Modellierungskontexts eher allgemeingültig.<br />

Ein <strong>Referenz</strong>modell ist ein ausgewiesenes Modell, das charakteristische Eigenschaften<br />

einer Klasse gleichartiger Systeme beschreibt und als Bezugspunkt <strong>für</strong><br />

spezielle Modelle dient.<br />

In dieser Begriffsbildung wird lediglich gefordert, daß <strong>Referenz</strong>modelle als Bezugspunkte <strong>für</strong><br />

spezielle Modelle dienen. Über die Qualität der <strong>Referenz</strong>modelle wird keine Aussage gemacht.<br />

Im Gegensatz zu den zuvor genannten Begriffsbildungen wird nicht gefordert, daß ein <strong>Referenz</strong>modell<br />

eine idealtypische oder normative Modellierung mit Empfehlungscharakter ist. Hierdurch<br />

wird erreicht, daß grundsätzlich jedes Modell als <strong>Referenz</strong>modell aufgefaßt werden kann<br />

(vgl. auch [Lehner, 1995, S. 126]). Ein Modell kann jedoch erst im Zusammenspiel mit einem<br />

speziellen Modell zum <strong>Referenz</strong>modell werden. Nach dieser Auffassung können auch weniger<br />

gelungene und schlechte Modelle als <strong>Referenz</strong>, z. B. zur Darstellung von ungeeigneten Modellierungsansätzen,<br />

die in einer neuen Modellierung nicht wieder verfolgt werden sollen, betrachtet<br />

werden.<br />

Der <strong>Referenz</strong>modellbegriff ist den Begriffen Standard, Norm und Entwurfsmuster gegenüberzustellen<br />

[Winter / Ebert, 1997]. Standards legen durch allgemeine Akzeptanz Begriffe und Eigenschaften<br />

von Systemen fest und liefern so eine allgemeine Richtschnur. Standards (oder de<br />

facto-Normen) entstehen in der Regel ohne vorgegebenen Plan [Tanenbaum, 1990], werden aber<br />

in ihrem Anwendungsbereich weitgehend akzeptiert. Eine planmäßig durchgeführte Festlegung<br />

von Begriffen und Eigenschaften durch autorisierte Normierungsinstitute (z. B. DIN, ANSI, ISO)<br />

wird als Norm (oder de jure-Norm) bezeichnet. Standards und Normen können somit auch als<br />

<strong>Referenz</strong>modelle aufgefaßt werden, die sich jedoch in ihrem Verbindlichkeitsgrad unterscheiden.<br />

Als eine besondere Form von <strong>Referenz</strong>modellen können auch Entwurfsmuster oder Design<br />

Pattern aufgefaßt werden. Während <strong>Referenz</strong>modelle durch nahezu vollständige Modelle eines<br />

Anwendungsbereichs eher etabliertes Modellwissen im Großen widerspiegeln, beschreiben Design<br />

Patterns [Gamma et al., 1994] Modellwissen im Kleinen. Sie beschreiben einfache und


4.2 <strong>Referenz</strong>modelle 107<br />

elegante Lösungen <strong>für</strong> wiederkehrende Probleme, die sich in der Entwurfspraxis bewährt haben.<br />

Diese <strong>Referenz</strong>en dienen nicht als genereller Bezugspunkt zur Modellierung eines vollständigen<br />

Problembereichs, sondern sind vielmehr als <strong>Referenz</strong>bausteine zur Modellierung aufzufassen.<br />

[Gamma, 1996] ordnet Entwurfsmuster auch als „Mikroarchitektur“ ein, die zur Gesamtarchitektur<br />

eines Systems beiträgt.<br />

4.2.1 Anforderungen an <strong>Referenz</strong>modelle<br />

Da <strong>Referenz</strong>modelle auch Modelle sind, können auch Anforderungen, die <strong>für</strong> die Qualität von<br />

Modellen formuliert wurden, auf <strong>Referenz</strong>modelle übertragen werden. Eine solche Übertragung<br />

zeigen beispielsweise [Becker / Schütte, 1997] und [Rosemann / Schütte, 1997], die die generellen<br />

Modellierungsgrundsätze aus [Becker et al., 1995] auf <strong>Referenz</strong>modelle anwenden. Qualitätsanforderungen<br />

an Konzeptmodelle diskutieren [Lindland et al., 1994] unter syntaktischen,<br />

semantischen und pragmatischen Aspekten. In [Krogstie et al., 1995] wird dieser Ansatz erweitert.<br />

Qualitätsmerkmale von Modellen werden hier ausgehend von Beziehungen zwischen<br />

der Modelldomäne, der Modellinterpretation durch die Modellverwender, dem Kenntnisstand<br />

der Modellverwender, den Modellierungsmitteln und dem Modell selbst klassifiziert und durch<br />

Metriken beschrieben. Zu einigen Merkmalen werden Mittel zur Qualitätverbesserung kurz skizziert.<br />

Einen Überblick über Anforderungen an Datenmodelle geben [Moody/Shanks, 1994]. Hier<br />

sind auch Hinweise zur Bestimmung einer qualitativen Bewertung dieser Kriterien genannt. Generelle<br />

Eigenschaften von Modellierungen werden in [Brinkkemper, 1990, S. 42ff] diskutiert.<br />

Die in diesen Arbeiten aufgeführten Anforderungen an Modelle können in ähnlicher Form auch<br />

auf <strong>Referenz</strong>modelle übertragen werden (vgl. auch [Heym, 1995, S. 107ff]).<br />

Anforderungen an (spezielle) Modelle sind noch um solche zu ergänzen, die den <strong>Referenz</strong>charakter<br />

einer Modellierung unterstreichen. Nicht alle Qualitätsanforderungen, die an spezielle<br />

Modellierungen gestellt werden, sind direkt auf <strong>Referenz</strong>modelle übertragbar. Anforderungen<br />

an spezielle Modelle können durchaus im Konflikt zu Anforderungen an <strong>Referenz</strong>modelle stehen.<br />

Auch andere Anforderungen an Eigenschaften von <strong>Referenz</strong>modellen sind untereinander<br />

nicht notwendig widerspruchsfrei. Zur Einschätzung eines <strong>Referenz</strong>modells ist ein geeigneter<br />

Mix an Merkmalsausprägungen heranzuziehen. Eine Übersicht zu den Abhängigkeiten zwischen<br />

den Ausprägungen unterschiedlicher Qualitätskriterien findet sich ebenfalls in [Moody / Shanks,<br />

1994].<br />

In den nachfolgenden Abschnitten werden Anforderungen an <strong>Referenz</strong>modelle hinsichtlich der<br />

Kriterien Allgemeingültigkeit, Korrektheit, Vollständigkeit, Anwendbarkeit und Erweiterbarkeit<br />

diskutiert.<br />

Allgemeingültigkeit<br />

Eine wesentliche Eigenschaft, die <strong>Referenz</strong>modelle von speziellen Modellen unterscheidet, ist<br />

der Anspruch der <strong>Referenz</strong>modelle allgemeiner und umfassender zu sein, so daß sie auch in<br />

verschiedenen speziellen Modellierungskontexten eingesetzt werden können. Hiermit eng verbunden<br />

ist die Wahl des geeigneten Detaillierungsgrades der <strong>Referenz</strong>modellierung. Der Detaillierungsgrad<br />

einer <strong>Referenz</strong>modellierung sollte nicht zu konkret gewählt sein, da sie dann nicht<br />

mehr auf vielfältige Problemstellungen anwendbar ist und somit der Forderung nach Allgemeingültigkeit<br />

nicht mehr entsprochen wird. Der Detaillierungsgrad eines <strong>Referenz</strong>modells sollte aber


108 Modelle, <strong>Referenz</strong>modelle und Metamodelle<br />

auch nicht zu abstrakt sein, da zu allgemeine Modelle die Anwendung auf konkrete Anwendungsbereiche<br />

kaum unterstützen (vgl. auch [Marent, 1995]). Die Forderung von [Scheer, 1997],<br />

wonach ein <strong>Referenz</strong>modell soweit spezifiziert sein soll, daß es ohne Veränderung als spezielles<br />

Modell verwendbar ist, sollte nur als ein möglicher Spezialfall <strong>für</strong> <strong>Referenz</strong>modelle aufgefaßt<br />

werden. Eine <strong>Referenz</strong>modellierung sollte vielmehr so bemessen sein, daß sie durch einfache<br />

Spezialisierungen und wenige Ergänzungen und Änderungen auf spezielle Probleme angewandt<br />

werden kann. Dieses kann durchaus auch durch die Angabe von Modellierungsvarianten [Raue,<br />

1996] unterstützt werden.<br />

Korrektheit<br />

Wie auch Modelle sollten <strong>Referenz</strong>modelle korrekt sein. Bei der Korrektheit von Modellen<br />

wird die syntaktische und die semantische Korrektheit unterschieden [Zamperoni / Löhr-Richter,<br />

1993], [Becker et al., 1995]. Ein Modell ist syntaktisch korrekt, wenn seine Beschreibung den<br />

syntaktischen Regeln des verwendeten Beschreibungsmittels entspricht. Die syntaktische Korrektheit<br />

kann entlang eines Metamodells (vgl. Kapitel 4.3) nachgewiesen werden. Die semantische<br />

Korrektheit eines Modells ist im Zusammenhang mit dem zu modellierenden Gegenstandsbereich<br />

zu untersuchen. Ein Modell gilt dann als semantisch korrekt, wenn es unter Berücksichtigung<br />

des Modellierungsziels mit der modellierten Realität „übereinstimmt“. Eine Validierung<br />

der semantischen Korrektheit einer <strong>Referenz</strong>modellierung kann nur durch Akzeptanz des Modells<br />

durch die Anwender vor dem Hintergrund ihrer Anwendungsziele erfolgen.<br />

Vollständigkeit<br />

Für Modelle wird neben der Korrektheit auch die Vollständigkeit gefordert. Ein Modell gilt als<br />

vollständig, wenn alle <strong>für</strong> die Zielsetzung der Modellierung relevanten Elemente im Modell enthalten<br />

sind. Gleichzeitig sollte ein Modell auch ausschließlich relevante Objekte enthalten (vgl.<br />

das Kriterium der Relevanz in [Becker et al., 1995]). Auf <strong>Referenz</strong>modelle läßt sich die Forderung<br />

nach Vollständigkeit und Relevanz nur eingeschränkt übertragen. Da <strong>Referenz</strong>modelle<br />

eher problemübergreifend und allgemein angelegt sind, kann ein <strong>Referenz</strong>modell kaum vollständig<br />

sein und alle relevanten Modellaspekte abbilden. Ein vollständiges <strong>Referenz</strong>modell, das<br />

ausschließlich problemrelevante Dinge abbildet, ist in der Regel zu speziell, um als Bezugspunkt<br />

<strong>für</strong> verschiedene problembezogene Modellverwendungen zu dienen. Die Forderung aus<br />

[Scheer, 1997], wonach ein <strong>Referenz</strong>modell soweit vollständig sein muß, daß mindestens ein Anwendungsfall<br />

denkbar ist, <strong>für</strong> das es unverändert als spezielles Modell eingesetzt werden kann,<br />

steht daher in deutlichem Widerspruch zur Forderung nach Allgemeingültigkeit. [Hars, 1994]<br />

überträgt die Forderung nach Vollständigkeit <strong>für</strong> <strong>Referenz</strong>modelle daher in die Forderung nach<br />

Nützlichkeit. Ein <strong>Referenz</strong>modell muß hierbei mindestens potentiell <strong>für</strong> die Erstellung mehrerer<br />

Modelle verwendbar sein. Überträgt man die Betrachtungen zur Allgemeingültigkeit auch auf<br />

die Vollständigkeit, sollte ein <strong>Referenz</strong>modell soweit vollständig sein, daß möglichst wenige Ergänzungen<br />

zur Verwendung des <strong>Referenz</strong>modells zur Lösung konkreter Probleme nötig sind. Die<br />

Ableitung problembezogener Modelle aus einem <strong>Referenz</strong>modell sollte nach festen Regeln erfolgen.<br />

<strong>Referenz</strong>modelle sollten daher auch um Regeln zur Ableitung ergänzt werden (vgl. [Hars,<br />

1994]). Auch wenn die Forderung nach Vollständigkeit <strong>für</strong> <strong>Referenz</strong>modelle nur teilweise erfüllt<br />

werden kann, sollte durch Anwendung dieser Regeln die Ableitung vollständiger, spezieller Modelle<br />

ermöglicht werden.


4.2 <strong>Referenz</strong>modelle 109<br />

Anwendbarkeit<br />

<strong>Referenz</strong>modelle sollten auch einfach anwendbar sein. Hierzu sollten sie leicht vermittelbar und<br />

nachvollziehbar sein (vgl. auch den Grundsatz der Klarheit in [Rosemann / Schütte, 1997]). Die<br />

Einfachheit eines Modells ist geprägt von seiner Komplexität, d. h. von der Anzahl der modellierten<br />

Objekte und deren Beziehungen [Moody/Shanks, 1994]. Durch geeignete Strukturierung<br />

und systematischen Modellaufbau kann diese Komplexität reduziert werden. Insbesondere sollten<br />

ähnliche Zusammenhänge auch ähnlich modelliert werden. Unterstützt wird die Nachvollziehbarkeit<br />

von komplexen Modellen auch dadurch, daß gut abgrenzbare Teilbereiche separat<br />

und unabhängig beschrieben und genutzt werden können.<br />

Die Anwendbarkeit eines <strong>Referenz</strong>modells hängt im besonderen Maß auch von seinem Anwendungskontext<br />

ab. Während ein <strong>Referenz</strong>modell bei der Verwendung als Hilfsmittel zum Vergleich<br />

eher (genau) eine idealtypische Modellierung darstellen sollte, kann ein <strong>Referenz</strong>modell,<br />

das eher als Ausgangspunkt zur Erstellung spezieller Modelle Anwendung findet, auch mehrere<br />

Modellalternativen <strong>für</strong> unterschiedliche Anwendungszusammenhänge bereitstellen [Rosemann,<br />

1996, S. 35]. Die Bereitstellung von Modellvarianten erhöht einerseits die Anwendbarkeit des<br />

<strong>Referenz</strong>modell auf unterschiedliche Problemstellungen [Raue, 1996], erschwert anderseits aber<br />

auch dessen Anwendung, da mehrere Alternativen zu berücksichtigen sind. Daher sollte ein <strong>Referenz</strong>modell<br />

eher wenige Alternativen bereitstellen. Zur Beurteilung der Güte eines <strong>Referenz</strong>modells<br />

unter dem Anwendbarkeitsaspekt ist folglich auch die Adaption des <strong>Referenz</strong>modells an<br />

die spezielle Aufgabenstellung zu beachten [Becker / Schütte, 1997].<br />

Auch sollte die Anwendbarkeit des <strong>Referenz</strong>modells nachgewiesen werden. Der Vorschlag, bei<br />

der Beschreibung von Design Patterns mindestens zwei unterschiedliche Verwendungen aus verschiedenen<br />

Anwendungskontexten zu nennen [Gamma et al., 1994, S. 7], sollte auch <strong>für</strong> <strong>Referenz</strong>modelle<br />

übernommen werden.<br />

Erweiterbarkeit<br />

<strong>Referenz</strong>modelle spiegeln den aktuellen Stand innerhalb ihres Modellierungskontexts wider. Da<br />

dieser einer dynamischen Entwicklung unterworfen ist, müssen <strong>Referenz</strong>modelle auch die Anpassung<br />

an zukünftige Entwicklungen und Erkenntnisse erlauben. <strong>Referenz</strong>modelle sollten daher<br />

offen und flexibel [Moody / Shanks, 1994] angelegt sein, um sie leicht an geänderte Anforderungen<br />

anpassen zu können. Dem gegenüber steht die Forderung, daß ein <strong>Referenz</strong>modell auch in<br />

einem gewissen Maß robust [Rosemann / Schütte, 1997] sein sollte, so daß nicht jede Änderung<br />

der Rahmenbedingungen zu einer Überarbeitung des <strong>Referenz</strong>modells führt.<br />

Eng mit der Erweiterbarkeit eines Modells ist auch das Zusammenspiel mit anderen Modellen<br />

in benachbarten Kontexten zu sehen. So sollte auch ein <strong>Referenz</strong>modell soweit integrationsfähig<br />

[Moody/Shanks, 1994] sein, daß es mit <strong>Referenz</strong>modellen angrenzender Bereiche kombinierbar<br />

ist.<br />

Die skizzierten Eigenschaften von <strong>Referenz</strong>modellen sind wesentlich von der Akzeptanz<br />

und Einschätzung durch die Modellanwender geprägt. Diese Eigenschaften<br />

müssen <strong>für</strong> <strong>Referenz</strong>modelle durch die Verwendung ständig nachgewiesen<br />

werden.


110 Modelle, <strong>Referenz</strong>modelle und Metamodelle<br />

4.2.2 Beispiele <strong>für</strong> <strong>Referenz</strong>modelle<br />

Für eine Vielzahl von Systemen unterschiedlicher Art wurden Modelle entwickelt, denen<br />

<strong>Referenz</strong>eigenschaften zugesprochen werden. Hierunter fallen z. B. Modelle, die <strong>Referenz</strong>-<br />

Architekturen beschreiben. Im besonderen Maß werden <strong>Referenz</strong>modelle auch im Bereich der<br />

Modellierung und Untersuchung von Informationssystemen verwendet. In den folgenden Abschnitten<br />

werden daher einige Beispiele <strong>für</strong> <strong>Referenz</strong>-Architekturen und <strong>für</strong> <strong>Referenz</strong>modelle<br />

<strong>für</strong> Informationssysteme skizziert, um generelle Anwendungsbereiche <strong>für</strong> <strong>Referenz</strong>modelle aufzuzeigen.<br />

<strong>Referenz</strong>-Architekturen<br />

<strong>Referenz</strong>-Architekturen beschreiben Systeme durch Angabe ihrer wesentlichen Komponenten<br />

und deren Zusammenhänge. Beispiele <strong>für</strong> <strong>Referenz</strong>-Architekturen sind das OSI-<strong>Referenz</strong>modell,<br />

das ECMA-<strong>Referenz</strong>modell und das Workflow-<strong>Referenz</strong>modell.<br />

OSI-<strong>Referenz</strong>modell<br />

Das OSI-<strong>Referenz</strong>modell [Day / Zimmermann, 1983] beschreibt die Komm<strong>uni</strong>kation zwischen<br />

offenen Rechnersystemen (open systems interconnection). In diesem Modell wird<br />

in sieben Schichten die Verbindung zwischen Rechnersystemen von der Übertragung einzelner<br />

Bits bis zum Transfer von Dateien und der Komm<strong>uni</strong>kation zwischen unterschiedlichen<br />

Terminaltypen festgelegt. Hierbei wird jedoch nur der Leistungsumfang jeder einzelnen<br />

Schicht definiert. Diese Schichten bilden die Hauptkomponenten einer Architektur<br />

<strong>für</strong> die Komm<strong>uni</strong>kation offener Rechnersysteme. Das Grundmodell wurde als ISO-Norm<br />

ISO 7498 festgeschrieben und bildet den Ausgangspunkt <strong>für</strong> die Entwicklung spezieller<br />

Normen <strong>für</strong> die einzelnen Schichten. Daher sollte das OSI-<strong>Referenz</strong>modell auch als Norm<br />

aufgefaßt werden.<br />

Neben der Verwendung als Grundlage eines Normierungsprozesses und der Festlegung<br />

grundsätzlicher Konzepte der Komm<strong>uni</strong>kation zwischen Rechnersystemen dient das OSI-<br />

<strong>Referenz</strong>modell auch als Grundlage zur Schulung. So ist beispielsweise das Lehrbuch zu<br />

Computernetzwerken [Tanenbaum, 1990], welches auch eine ausführliche Beschreibung<br />

des OSI-<strong>Referenz</strong>modells enthält, nach dieser <strong>Referenz</strong> gegliedert.<br />

ECMA-<strong>Referenz</strong>modell<br />

Ein <strong>Referenz</strong>modell <strong>für</strong> Software-Entwicklungsumgebungen liefert das ECMA-<strong>Referenz</strong>modell<br />

[ECMA, 1991] der European Computer Manufacturers Association. In diesem<br />

Modell werden die Komponenten eines erweiterungsfähigen Rahmens <strong>für</strong> eine Software-<br />

Entwicklungsumgebung und die von ihnen bereitgestellten Dienste beschrieben. Dieser<br />

Rahmen enthält Komponenten zur Datenhaltung, zur Datenintegration, zur Task-<br />

Verwaltung, zur Komm<strong>uni</strong>kation mit dem Anwender und zur Komm<strong>uni</strong>kation zwischen<br />

den Komponenten. Innerhalb einer Softwareentwicklungsumgebung können die Dienste<br />

dieser Komponenten durch eingebundene Werkzeuge genutzt werden. Durch das <strong>Referenz</strong>modell<br />

wird die Software-Entwicklungsumgebung in unabhängige Komponenten zerlegt,


4.2 <strong>Referenz</strong>modelle 111<br />

die durch festgelegte Dienste miteinander und mit weiteren Werkzeug-Komponenten interagieren.<br />

Daher sollte auch hier eher von einer <strong>Referenz</strong>-Architektur gesprochen werden<br />

(vgl. auch [Kelter, 1988]).<br />

Das ECMA-<strong>Referenz</strong>modell wurde im Rahmen des Standardisierungsverfahrens <strong>für</strong> PCTE<br />

(Portable Common Tool Environment, vgl. [Kelter, 1989]) entwickelt, stellt aber ein von<br />

PCTE unabhängiges Modell dar, das auch <strong>für</strong> weitere Standardisierungsvorhaben genutzt<br />

werden soll. Entlang dieses Modells wurde PCTE, das eine Schnittstellenspezifikation von<br />

Basisfunktionen zur Konstruktion von Software-Entwicklungsumgebungen darstellt, mit<br />

anderen Standards gleicher Zielsetzung verglichen. Neben der Unterstützung bei der Standardisierung<br />

und Einordnung von PCTE und der Ableitung anderer Softwarearchitekturen<br />

soll das ECMA-<strong>Referenz</strong>modell auch zur Ausbildung von Systementwicklern im Umgang<br />

mit Softwareentwicklungsrahmen eingesetzt werden.<br />

Workflow-<strong>Referenz</strong>modell<br />

Die Workflow Management Coalition [Hollingsworth, 1994] definierte das Workflow-<br />

<strong>Referenz</strong>modell. Dieses legt die Terminologie der Workflow Management Coalition fest<br />

(ein ausführliches Glossar befindet sich in [WfMC, 1996]) und beschreibt eine Architektur<br />

<strong>für</strong> Workflow-Managementsysteme. Ähnlich zum ECMA-<strong>Referenz</strong>modell wird diese<br />

Architektur durch Angabe der wesentlichen Komponenten zur Verwaltung und Ausführung<br />

von Workflows, zur Modellierung von Workflows, zur Interaktion mit Benutzern, zum<br />

Auslösen externer Anwendungen ohne Benutzerinteraktion und zur Systemadministration<br />

durch Angabe ihrer Eigenschaften und Schnittstellen beschrieben. Ebenfalls umfaßt diese<br />

Architektur eine Schnittstelle zu anderen Workflow-Managementsystemen. Das Workflow<br />

<strong>Referenz</strong>modell ist somit als <strong>Referenz</strong>-Architektur inklusive einer <strong>Referenz</strong>-Terminologie<br />

aufzufassen.<br />

Ausgangspunkt <strong>für</strong> die Erstellung dieses <strong>Referenz</strong>modells war die Feststellung, daß bereits<br />

viele Produkte mit teilweise unterschiedlicher Schwerpunktsetzung im Workflow-<br />

Kontext verfügbar waren, diese jedoch nicht oder nur sehr schwer kombiniert werden<br />

konnten. Wesentliche Anforderung war es daher, die Interoperabilität zwischen Workflow-<br />

Managementsystemen und zwischen hierbei verwendeten Anwendungssystemen zu ermöglichen.<br />

Aus diesem Grund gibt das <strong>Referenz</strong>modell auch einen groben Überblick über<br />

eine solche Schnittstelle (workflow application programme interface). Details wurden in<br />

weiteren Berichten der Workflow Management Coalition veröffentlicht 1 . Das hier vorgestellte<br />

<strong>Referenz</strong>modell dient somit auch als Ausgangspunkt <strong>für</strong> weitere Standardisierungsvorhaben<br />

innerhalb der Workflow Management Coalition.<br />

<strong>Referenz</strong>modelle <strong>für</strong> Informationssysteme<br />

Im Bereich der Informationssysteme werden <strong>Referenz</strong>modelle sowohl <strong>für</strong> verschiedene Branchen<br />

und <strong>für</strong> verschiedene Geschäftsprozesse als auch vor dem Hintergrund unterschiedlicher<br />

Anwendungskontexte erstellt. Hierzu werden in der Regel <strong>visuelle</strong> <strong>Modellierungssprachen</strong>, wie<br />

sie in Kapitel 3 skizziert wurden, eingesetzt.<br />

1 Siehe hierzu http://www.wfmc.org (17.09.1999).


112 Modelle, <strong>Referenz</strong>modelle und Metamodelle<br />

Im folgenden werden überblicksartig Ansätze und Anwendungsbereiche der <strong>Referenz</strong>modellierung<br />

von Informationssystemen beschrieben. Diese beziehen sich auf betriebliche Informationssysteme<br />

generell, <strong>für</strong> die bereits in den 60er Jahren erste <strong>Referenz</strong>modelle entwickelt wurden,<br />

und auf aktuelle Schwerpunkte der <strong>Referenz</strong>modellierung in der öffentlichen Verwaltung und im<br />

Gesundheitswesen.<br />

<strong>Referenz</strong>modelle <strong>für</strong> betriebliche Informationssysteme<br />

Ein erster Ansatz zur <strong>Referenz</strong>modellierung betrieblicher Informationssysteme wurde mit<br />

dem Kölner Integrationsmodell (KIM) [Grochla, 1974] bereits 1965 begonnen. Hierin wurden<br />

die wichtigsten betrieblichen Aufgaben im Kontext der Informationsverarbeitung erfaßt<br />

und abstrahiert von individuellen betrieblichen Eigenschaften beschrieben.<br />

Dieses Grundmodell war auch als Basis <strong>für</strong> die Ableitung weiterer Modelle <strong>für</strong> andere<br />

Wirtschaftszweige und zur Erstellung branchenspezifischer Modelle und deren Verfeinerungen<br />

konzipiert. Das Kölner Integrationsmodells ist datenflußorientiert durch Aufgabenlisten,<br />

Kanallisten (zur Datenbeschreibung) und Datenflußdiagramme beschrieben.<br />

Ein heute weit verbreiteter Ansatz zur Modellierung von <strong>Referenz</strong>modellen <strong>für</strong> Informationssysteme<br />

basiert auf der Architektur integrierter Informationssysteme (ARIS) [Scheer,<br />

1992] (vgl. auch <strong>Se</strong>ite 121). <strong>Referenz</strong>modelle <strong>für</strong> industrielle Unternehmensprozesse wie<br />

z. B. der Logistik, der Produktentwicklung, des Rechnungswesens und der Personalwesen<br />

sind in [Scheer, 1994] beschrieben. In ähnlicher Form liegen auch <strong>Referenz</strong>modelle<br />

<strong>für</strong> unterschiedliche Branchen u. a. <strong>für</strong> die Papierindustrie, die chemische Industrie und<br />

den Maschinenbau vor2 . Ein auf die Prozesse in Handelsunternehmen bezogenes <strong>Referenz</strong>modell<br />

wird in [Schütte, 1996] vorgestellt. Dominierendes Beschreibungsmittel der<br />

ARIS-<strong>Referenz</strong>modelle sind Ereignisgesteuerte Prozeßketten, die durch Funktionsbäume,<br />

Objekt-Beziehungsdiagramme und Organigramme ergänzt werden und somit diese Informationssysteme<br />

aus Aufgaben-, Aufbau-, Prozeß- und Objektsicht beschreiben.<br />

Anwendung finden auf ARIS aufbauende <strong>Referenz</strong>modelle sowohl als Ausgangspunkt zur<br />

Erstellung spezieller Modelle als auch als Vergleichsmaßstab <strong>für</strong> vorliegende Modellierungen<br />

z. B. zur Restrukturierung des Informationssystems oder zur Auswahl von Software-<br />

Unterstützungsmitteln.<br />

Einen Überblick über betriebliche <strong>Referenz</strong>modelle vor dem Hintergrund des Computer<br />

Integrated Manufacturing gibt auch [Scholz-Reiter, 1990, S. 109ff]. Einige Beispiele <strong>für</strong><br />

Modellierungen, denen (von den jeweiligen Autoren) <strong>Referenz</strong>eigenschaften zugesprochen<br />

werden, sind in [Lehner, 1995, S. 126] genannt. Verschiedene Unternehmensmodelle<br />

und Ansätz zur Unternehmensmodellierung werden auch in [Frank, 1994, S. 135ff] überblicksartig<br />

dargestellt.<br />

<strong>Referenz</strong>modelle <strong>für</strong> die öffentliche Verwaltung<br />

Für die kommunale Verwaltung wurde 1994 durch die Städte Mannheim und Mainz mit<br />

dem Kommunalen Rechenzentrum Niederrhein (KRZN) in Moers das Kommunale Informationsmodell<br />

KIM [KGSt, 1995] als Grundlage zur Entwicklung einer Übersicht über das<br />

2 Einen groben Überblick über (kommerzielle) auf ARIS basierende <strong>Referenz</strong>modelle bietet auch http://www.<br />

ids-scheer.de/produkte/toolset/refmod.htm (17.09.1999).


4.2 <strong>Referenz</strong>modelle 113<br />

in den Kommunalverwaltungen vorhandene Informationspotential erstellt. In diesem Datenmodell<br />

werden die Daten, die <strong>für</strong> alle Kommunalverwaltungen gleichermaßen von Bedeutung<br />

sind, erfaßt und strukturiert. Hierzu wurde zunächst ein verwaltungsübergreifendes<br />

„Kommunales Top-Informationsmodell“ auf hohem Abstraktionsniveau erstellt, das<br />

dann zu fachbereichsbezogenen bzw. anwendungsbezogenen Informationsmodellen verfeinert<br />

wurde. Das Kommunale Informationsmodell ISMONE - Mainz/Mannheim, das<br />

[KGSt, 1995] als Anhang beigefügt ist, stellt das Ergebnis der Modellkonsolidierung<br />

des Top-Informationsmodells mit weiteren kommunalen Datenverarbeitungszentralen dar.<br />

Dieses sehr grobgranulare Datenmodell wird durch ein Objekt-Beziehungsdiagramm beschrieben.<br />

Jeder Objekttyp ist glossarartig durch eine Definition und kleinere Beispiele<br />

näher charakterisiert.<br />

Dieses Modell kann als <strong>Referenz</strong>-Datenmodell aufgefaßt werden, da aufgrund der Konsolidierung<br />

durch mehrere Kommunale Rechenzentren auch seine Anwendbarkeit in weiteren<br />

Kommunalverwaltungen nachgewiesen ist. Darüber hinaus dient es auch als Grundlage<br />

zur Erstellung weiterer, dann verfeinerter Datenmodelle <strong>für</strong> einzelne Fachbereiche und<br />

Anwendungen.<br />

Die Kommunale Gemeinschaftsstelle empfiehlt das Kommunale Informationsmodell als<br />

Grundlage zur Entwicklung der speziellen Datenmodelle der einzelnen Kommunalverwaltungen<br />

[KGSt, 1995, S. 13]. Neben der strukturierten Beschreibung der Informationsstrukturen<br />

in der kommunalen Verwaltung dient das Modell auch zur Begriffsvereinheitlichung<br />

und zur besseren Koordination des Datenaustauschs zwischen einzelnen Kommunalverwaltungen.<br />

Gemeinsam mit Funktions- und Verfahrensmodellen bietet es auch eine Entscheidungsgrundlage<br />

zur Auswahl von Anwendungssoftware.<br />

Ein <strong>Referenz</strong>modell zur IT-gestützten Vorgangsbearbeitung [Engel, 1996] [KoopA ADV,<br />

1997, Kapitel 4] wurde im Rahmen des Handlungsleitfadens „IT-gestützte Vorgangsbearbeitung“<br />

der gleichnamigen Arbeitsgruppe des Kooperationssausschuß ADV Bund/Länder/Kommunaler<br />

Bereich entwickelt. Es stellt die organisatorischen Zusammenhänge im<br />

Rahmen der Vorgangsbearbeitung innerhalb der öffentlichen Verwaltung idealtypisch dar.<br />

Zur Einordnung und Definition der hier verwendeten Begriffe enthält der Handlungsleitfaden<br />

ein ausführliches Glossar [KoopA ADV, 1997, Kapitel 2]. Den Hauptteil bildet<br />

ein Funktionenmodell, in dem die Phasen und Teilprozesse typischer Prozeßverläufe der<br />

Vorgangsbearbeitung dargestellt werden. Die Darstellung erfolgt durch Ereignisgesteuerte<br />

Prozeßketten. Das <strong>Referenz</strong>modell wird anhand von zwei hieraus abgeleiteten Modellierungen<br />

von Verwaltungsvorgängen validiert. Ergänzt wird das <strong>Referenz</strong>modell noch durch<br />

eine hiermit verträgliche Ziel- oder <strong>Referenz</strong>architektur zur IT-gestützten Vorgangsbearbeitung<br />

[KoopA ADV, 1997, Kapitel 5]. Diese umfaßt Komponenten zur Bürokomm<strong>uni</strong>kation,<br />

zum Schriftgutmanagement und zur Vorgangssteuerung, die durch ihre Grundfunktionalität<br />

und partiell durch ihre Schnittstellen näher erklärt sind. Die Komponente<br />

zur Vorgangssteuerung wurde entlang der Architektur <strong>für</strong> Workflow-Managementsysteme<br />

des Workflow-<strong>Referenz</strong>modells erstellt.<br />

Das Funktionenmodell des <strong>Referenz</strong>modells zur IT-gestützten Vorgangsbearbeitung beschreibt<br />

einen idealtypischen Vorgang der öffentlichen Verwaltung durch Abstraktion auf<br />

wesentliche Teilvorgänge. <strong>Se</strong>ine Anwendbarkeit wurde sowohl anhand von abgeleiteten,<br />

speziellen Modellen als auch durch die abgeleitete Architektur nachgewiesen. Gemein-


114 Modelle, <strong>Referenz</strong>modelle und Metamodelle<br />

sam mit dem Glossar kann es daher als ein <strong>Referenz</strong>modell eingeordnet werden, daß auch<br />

den in Kapitel 4.2.1 angesprochenen Anforderungen genügt. Das <strong>Referenz</strong>modell enthält<br />

zusätzlich ein objektorientiertes Datenmodell (<strong>Referenz</strong>-Schema) [Engel, 1995], in dem<br />

die grundlegenden Konzepte zur Beschreibung der Vorgangsbearbeitung wie z. B. Vorgänge,<br />

Dokumente und organisatorische Einheiten sowie die hierzwischen möglichen Beziehungen<br />

eingeführt werden. Dieses Schema stellt im Sinn der in Kapitel 4.3 eingeführten<br />

Terminologie ein Meta-Datenmodell zur Beschreibung von Verwaltungsvorgängen dar.<br />

Anwendung findet das <strong>Referenz</strong>modell als theoretische Grundlage des Leitfadens. Ebenfalls<br />

dient es durch das Glossar zur Schaffung einer terminologischen Basis. Darüber hinaus<br />

soll es auch die Präzisierung von Anforderungen an informationstechnische Umgebungen<br />

<strong>für</strong> die Vorgangsbearbeitung unterstützen. Hierbei wird es einerseits zur Formulierung<br />

dieser Anforderungen aber auch zum Vergleich angebotener Lösungen eingesetzt. Die Verwendung<br />

des <strong>Referenz</strong>modells <strong>für</strong> die Vorgangsunterstützung zur Schwachtellenanalyse<br />

und Verwaltungsreorganisation wird in [Engel, 1996] beschrieben.<br />

<strong>Referenz</strong>modelle im Gesundheitswesen<br />

Neben der öffentlichen Verwaltung bietet auch das Gesundheitswesen ein aktuelles Betätigungsfeld<br />

der <strong>Referenz</strong>modellierung. Hier beschäftigen sich sowohl Wissenschaftler<br />

als auch Softwareersteller, Unternehmensberater und Praktiker in Krankenhäusern mit der<br />

Erstellung von <strong>Referenz</strong>modellen <strong>für</strong> Krankenhausinformationssysteme [Winter / Ebert,<br />

1997], [Winter et al., 1999]. Diese Arbeiten beziehen sich sowohl auf <strong>Referenz</strong>modelle <strong>für</strong><br />

krankenhausweite Datenmodelle als auch auf <strong>Referenz</strong>modelle <strong>für</strong> Abläufe in Krankenhäusern.<br />

Ein <strong>Referenz</strong>datenmodell <strong>für</strong> Krankenhäuser wird in [Bihr / <strong>Se</strong>elos, 1997] vorgestellt. Notiert<br />

wird dieses Datenmodell durch Objekt-Beziehungsdiagramme. Anwendung soll dieses<br />

krankenhausweite Datenmodell bei der Integration verschiedener, heterogener Anwendungskomponenten<br />

<strong>für</strong> den administrativen, medizinischen und pflegerischen Bereich finden.<br />

Ebenfalls soll es als Grundlage zur Datenmigration aus Altsystemen dienen.<br />

Das Datenmodell Bundeswehrkrankenhaus [Imhoff et al., 1996] [Imhoff / Paczkowski,<br />

1997] wurde als <strong>Referenz</strong> und Rahmenkonzept <strong>für</strong> die Krankenhäuser der Bundeswehr<br />

erstellt. Trotz des Namens, der historisch bedingt ist, war es das Ziel dieser Studie, ein<br />

Informations- und Prozeßmodell der unmittelbar patientenbezogenen Informationsprozesse<br />

zu erstellen. Dieses Modell basiert auf der zuvor skizzierten ARIS-Architektur und wird<br />

aus der Aufgabensicht durch Funktionsbäume, aus der Prozeßsicht durch Prozeßketten und<br />

aus der Objektsicht durch Objekt-Beziehungsdiagramme beschrieben. Das Modell umfaßt<br />

neben dem Datenmodell auch Prozeßmodelle <strong>für</strong> elf Krankenhausbereiche sowie ein verfeinertes<br />

Modell der Orthopädie. Ebenfalls enthält es ein umfangreichen Glossar. Wesentliche<br />

Zielsetzung zur Erstellung dieses Modells war neben der Erhebung und Dokumentation<br />

und der hieraus resultierenden Konzeption eines optimierten Sollmodells auch die<br />

Entwicklung einer Basis zur Ableitung fachlicher Feinkonzepte. Das Modell wurde zunächst<br />

im Bundeswehrkrankenhaus Koblenz erstellt und anschließend als <strong>Referenz</strong>modell<br />

<strong>für</strong> die Bundeswehr in zwei weiteren Häusern validiert und festgeschrieben.


4.2 <strong>Referenz</strong>modelle 115<br />

4.2.3 Zusammenfassung: Anwendungsbereiche von <strong>Referenz</strong>modellen<br />

Aus diesen Beispielen lassen sich die wesentlichen Anwendungsbereiche <strong>für</strong> <strong>Referenz</strong>modelle,<br />

die in ähnlicher Form auch <strong>für</strong> das in Teil II entwickelte Modell der <strong>visuelle</strong>n Sprachen gelten,<br />

ableiten.<br />

Wie auch spezielle Modelle, dienen <strong>Referenz</strong>modelle zunächst als ein generelles Beschreibungsmittel,<br />

durch das wesentliche Konzepte des Modellierungskontextes verdeutlicht werden.<br />

<strong>Referenz</strong>modelle liefern einen Beitrag zur Terminologiebildung, da hierdurch nicht nur wesentliche<br />

Konzepte benannt sondern diese Konzepte auch näher erklärt und in ihren Kontext eingeordnet<br />

werden. Hierdurch eignen sie sich auch als Schulungsmittel, da mit ihrer Hilfe eine<br />

einheitliche Begriffswelt vermittelt werden kann. Aufgrund des Normierungscharakters von <strong>Referenz</strong>modellen<br />

kann auch ein gemeinsames Verstehen der modellierten Zusammenhänge z. B.<br />

in Diskussionsrunden heterogener Gruppen erreicht werden.<br />

Durch <strong>Referenz</strong>modelle werden auch Rahmen beschrieben, die Ausgangspunkt von Standardisierungs-<br />

oder Normungsvorhaben sind. Komponenten dieser <strong>Referenz</strong>modelle oder <strong>Referenz</strong>architekturen<br />

beschreiben zu standardisierende Bereiche und deren Schnittstellen.<br />

Ein wesentlicher Anwendungsbereich von <strong>Referenz</strong>modellen liegt in ihrem Zusammenspiel mit<br />

speziellen Modellen. Als Modellierungsmittel dienen <strong>Referenz</strong>modelle als Grundlage zum Entwurf<br />

und zur Weiterentwicklung spezieller Modelle. Die Erhebung und Dokumentation eines<br />

speziellen Modells erfolgt dann durch Abgleich mit dem <strong>Referenz</strong>modell. Zu modellieren sind<br />

dann nur noch die Abweichungen zum <strong>Referenz</strong>modell.<br />

Als Vergleichsmaßstab dienen sie auch zur Beurteilung vorhandener Modelle. Im Vergleich mit<br />

einem <strong>Referenz</strong>modell, das <strong>für</strong> einen Aspekt als besonders geeignet erscheint, können so beispielsweise<br />

Ansätze <strong>für</strong> Modelloptimierungen ermittelt werden.<br />

Anforderungen an Softwaresysteme können ebenfalls aufgrund von <strong>Referenz</strong>modellen <strong>für</strong> den<br />

zu unterstützenden Bereich erstellt und präzisiert werden. Solche Modelle dienen dann auch als<br />

Grundlage zur Auswahl der in Frage kommenden Softwaresysteme. Hierbei wird dann das Organisationsmodell<br />

mit dem Softwaremodell verglichen. Software-<strong>Referenz</strong>modelle dienen darüber<br />

hinaus auch als Hilfsmittel zur Konfiguration der einzuführenden Software, indem diese Software<br />

entlang des <strong>Referenz</strong>modells an die konkreten Anforderungen angepaßt wird.<br />

Einen zusammenfassenden Überblick über die Anwendungsbereiche von <strong>Referenz</strong>modellen bietet<br />

Abbildung 4.1.<br />

¯ Beschreibung<br />

¯ Terminologiebildung<br />

¯ Schulung und Ausbildung<br />

¯ Normierung und Standardisierung<br />

¯ Modellierung<br />

¯ Vergleich<br />

¯ Anforderungsdefinition<br />

¯ Auswahl und Konfiguration<br />

Abbildung 4.1: Anwendungsbereiche von <strong>Referenz</strong>modellen


116 Modelle, <strong>Referenz</strong>modelle und Metamodelle<br />

4.3 Metamodelle<br />

Betrachtungsgegenstand dieser Arbeit sind die in Kapitel 3 vorgestellen <strong>visuelle</strong>n Sprachen zur<br />

Modellierung organisatorischer Zusammenhänge. Es wird ein Modell der Beschreibungsmittel<br />

dieser Methoden erstellt. Während bei der Organisationsmodellierung im Sinn der Modelldefinition<br />

nach [Apostel, 1960] die betrachtete Organisation die Rolle des modellierten Systems und<br />

die Darstellungen durch die Beschreibungsmittel die Rolle des Modells einnehmen, treten nun<br />

diese Darstellungen in die Rolle des modellierten Systems. Modellierungsziel ist folglich ein<br />

Modell von Modellen.<br />

Durch solche Modelle werden Eigenschaften und Anforderungen an die Modelle einer Realität<br />

beschrieben. Im bezug zur modellierten Realität, wird dieses Modell der Modellierung als Metamodell<br />

bezeichnet. Metamodellierung kann folglich als eine Modellbildung aufgefaßt werden,<br />

die eine Abstraktionsebene höher als die „normale“ Modellierung angesiedelt ist [Gigch, 1991].<br />

In ähnlicher Form können auch Metamodelle wieder Betrachtungsgegenstand einer Modellierung<br />

sein. Meta-Metamodelle beschreiben dann Abstraktionen von Metamodellen.<br />

Nach einer eher sprachbezogenen Auffassung des Metamodell-Begriffs (vgl. [Strahringer, 1996])<br />

werden durch Metamodelle die <strong>Modellierungssprachen</strong>, die zur Notation der Modelle verwendet<br />

werden, näher charakterisiert. Ähnlich beziehen auch [Frank, 1994, S. 171f] und [Frank, 1997b]<br />

Metamodelle auf die Beschreibung der zur Modellierung verwendeten Sprachen. [Blaha, 1992]<br />

und [Rumbaugh, 1995] verstehen Metamodelle generell als Modelle zur Beschreibung anderer<br />

Modelle. Im Speziellen beziehen sich Metamodelle <strong>für</strong> Modellierungsmethoden auch hier auf die<br />

zur Modellierung verwendeten Konzepte und die konkrete Notation des Modellierungsmittels.<br />

Ein umfassenderer Metamodellbegriff wird im Method-Engineering verwendet. Metamodellierung<br />

ist hier ein wesentliches Hilfsmittel sowohl bei der Entwicklung als auch bei der Bewertung<br />

von Beschreibungs- und Entwicklungsmethoden wie sie z. B. <strong>für</strong> den Entwurf von Informationssystemen<br />

oder <strong>für</strong> die Analyse von Organisationsstrukturen eingesetzt werden. Hierbei sind die<br />

Methoden, die hierbei verwendeten Techniken und die zur Unterstützung eingesetzten Werkzeuge<br />

zu entwerfen und anzupassen [Brinkkemper, 1996].<br />

Im Gegensatz zu der eher sprachbezogenen Verwendung des Metamodellbegriffs umfaßt der Metamodellbegriff<br />

hier auch Aspekte des Modellierungsvorgehens. In diesen Metamodellen werden<br />

die charakteristischen Eigenschaften der Methoden und Techniken durch die hierbei verwendeten<br />

Modellierungskonzepte, deren Repräsentation und ihre Verwendung [Tolvanen et al., 1996]<br />

beschrieben. Metamodelle legen hier sowohl das Vorgehen bei der Erstellung einer Modellierung<br />

als auch die Darstellung der Modellierungsergebnisse (vgl. [Brinkkemper et al., 1989], [Rosemann,<br />

1996]) fest.<br />

[Brinkkemper, 1990], [Brinkkemper, 1996] und [Tolvanen, 1998, S. 66ff] geben einen guten<br />

Überblick über die Metamodell-Terminologie aus Sicht des Method-Engineerings. Eine ausführliche<br />

Diskussion des Metamodell-Begriffs sowohl aus Sicht der <strong>Modellierungssprachen</strong> als auch<br />

aus Sicht des Modellierungsprozesses findet sich auch in [Strahringer, 1996, S. 9ff].<br />

Ein Metamodell ist die konzeptionelle Beschreibung einer Modellierung, die sowohl<br />

die verwendeten Modellierungskonzepte als auch ihre Verwendung verdeutlicht.


4.3 Metamodelle 117<br />

Nach dieser Begriffsbildung beschreiben Metamodelle zwei Modellierungsaspekte. Bei der<br />

Betrachtung der dynamischen Aspekte einer Modellierungsmethode steht das Vorgehen zur<br />

Erhebung und Dokumentation eines Modells im Vordergrund. Dieses wird in einem Meta-<br />

Aktivitätsmodell durch Beschreibungsmittel der Prozeßsicht dargestellt.<br />

Ein Meta-Aktivitätsmodell ist der Teil eines Metamodells, durch den das Modellierungsvorgehen<br />

beschrieben wird.<br />

Die Methodenbetrachtung aus statischer Sicht stellt die bei der Modellierung erstellten Dokumente<br />

in den Mittelpunkt. Die zur Modellierung verwendeten Sprachmittel werden hierbei unabhängig<br />

von der konkreten Notation durch ihr abstrakte Syntax beschrieben. Hierzu werden<br />

die zu modellierenden Konzepte und deren Beziehungen in einem Datenmodell oder Schema<br />

der Methode dargestellt. Folglich wird eine solche Modellierung auch <strong>Metaschema</strong> oder Meta-<br />

Datenmodell genannt. Als Beschreibungsmittel bieten sich hier die Mittel zur Konzeptmodellierung<br />

der Objektsicht an. Die sprachbasierte Auffassung des Metamodellbegriffs verkürzt Metamodelle<br />

auf diese statischen Aspekte.<br />

Ein <strong>Metaschema</strong> (Meta-Datenmodell) ist der Teil eines Metamodells, durch den<br />

die zur Modellierung verwendeten Sprachmittel, unabhängig von ihrer konkreten<br />

Notation, durch ihre abstrakte Syntax beschrieben werden.<br />

Die Verbindung zwischen Meta-Aktivitätenmodell und <strong>Metaschema</strong> wird durch Dokumente hergestellt.<br />

Diese beschreiben einerseits die Ergebnisse der Modellierungsaktivitäten des Meta-<br />

Aktivitätenmodells und werden andererseits durch die Objekte und Beziehungen des <strong>Metaschema</strong>s<br />

strukturell beschrieben [Brinkkemper et al., 1989].<br />

Metamodelle, denen die in Kapitel 4.2 skizzierten Eigenschaften von <strong>Referenz</strong>modellen zugesprochen<br />

werden, werden als <strong>Referenz</strong>-Metamodelle bezeichnet (vgl. z. B. auch [Österle / Gutzwiller,<br />

1992] und [Rosemann / zur Mühlen, 1995]). Solche <strong>Referenz</strong>-Metamodelle beschreiben<br />

die charakteristischen Konzepte sowie deren Repräsentation und Verwendung <strong>für</strong> Modellierungssysteme.<br />

4.3.1 Beispiele <strong>für</strong> Metamodelle<br />

Als Ausgangspunkt <strong>für</strong> Diskussionen und Beschreibungen von Modellierungsmethoden in unterschiedlichen<br />

Bereichen wurden Metamodelle entwickelt. So existieren Metamodelle als Grundlage<br />

<strong>für</strong> die Beschreibung von Informationssystemen und hierauf aufbauende Analysen. Entwurfsmethoden<br />

<strong>für</strong> die Entwicklung von Softwaresystemen und zur Organisationsmodellierung werden<br />

ebenfalls durch Metamodelle beschrieben und verglichen.<br />

Die folgenden Abschnitte geben einen Überblick über verschiedene Ansätze zur Metamodellierung<br />

in diesen Bereichen. Hieraus werden anschließend generelle Anwendungsbereiche <strong>für</strong><br />

Metamodelle abgeleitet.


118 Modelle, <strong>Referenz</strong>modelle und Metamodelle<br />

Metamodelle <strong>für</strong> die Beschreibung von Informationssystemen<br />

Metamodelle <strong>für</strong> die Beschreibung von Informationssystemen setzen auf zwei Beschreibungsdimensionen<br />

auf. Neben Sichten auf organisatorische Zusammenhänge werden auch die Phasen<br />

des Software-Lebenszyklus (vgl. Abbildung 2.2) berücksichtigt. Beispiele solcher Metamodelle<br />

sind das IFIP WG 8.1-Metamodell, dasCC-RIM-<strong>Referenz</strong>modell, dieArchitektur integrierter<br />

Informationssysteme (ARIS) und das Metamodell der Multi-Perspektivischen Unternehmensmodellierung<br />

(MEMO), die sich neben ihren Modellierungszielen auch in der Definition der Phasen<br />

und Sichten zur Bestimmung des Koordinatensystems leicht unterscheiden.<br />

IFIP WG 8.1-Metamodell<br />

Das IFIP WG 8.1-Metamodell [Olle et al., 1991] basiert auf Überlegungen der Arbeitsgruppe<br />

„Design and Evaluation of Informationsystems“ der „International Federation for<br />

Information Processing“, die im Rahmen mehrerer Konferenzen zum Thema „Information<br />

Systems Design Methodologies“ (z. B. [Olle et al., 1987]) zwischen 1985 und 1987<br />

erarbeitet wurden. Informationssysteme werden im IFIP-Metamodell während der Analysephase<br />

und der Entwurfsphase betrachtet. Für diese Phasen werden Informationssysteme<br />

aus einer Daten-, einer Prozeß- und einer Verhaltenssicht konzeptionell untersucht.<br />

Für die Analysephase werden aus der Datensicht die Komponenten zur Modellierung<br />

von Objekten und ihrer Beziehungen innerhalb eines Informationssystems betrachtet.<br />

Die Prozeßsicht bezieht sich im wesentlichen auf die abstrakte Syntax zur Modellierung<br />

von Geschäftsprozessen, von Komm<strong>uni</strong>kationsbeziehungen zwischen den Prozessen<br />

und von organisatorischen Zuständigkeiten. Eine eigene Sicht zur Beschreibung Aufbauorganisatorischer<br />

Aspekte existiert in diesem Ansatz nicht. Konzepte zur Darstellung von<br />

Ereignissen und von Ereignisabfolgen sind die Betrachtungsschwerpunkte aus Verhaltenssicht.<br />

In der Entwurfsphase werden eher implementationstechnische Aspekte betont. Aus Datensicht<br />

werden hier Datenhaltungskonzepte betrachtet, die auch in bezug zu den Konzepten<br />

der Analysephase gesetzt werden. Zentrales Konzept aus Prozeßsicht sind die Mittel zur<br />

Unterstützung der Geschäftsprozesse aus der Analysephase. Die Verhaltenssicht der Entwurfsphase<br />

betrachtet Systemereignisse und ihre Auswirkungen auf Konzepte der Datenund<br />

Prozeßsicht.<br />

Daneben werden generelle Querbezüge zwischen den Sichten jeder Phase durch zusätzliche<br />

Integrationssichten beschrieben. Die Integration zwischen Analyse- und Entwurfsphase<br />

erfolgt bei der Beschreibung der Konzeptmodellierungen der Entwurfsphase<br />

durch Rückgriff auf Konzepte der Analysephase. Die einzelnen Konzeptmodelle werden<br />

jeweils durch eine Liste der modellierten Konzepte (Objekt-Typen), einem Objekt-<br />

Beziehungsdiagramm und einer glossarartigen Beschreibung der Objekttypen notiert. Jedes<br />

Konzeptmodell wird darüber hinaus noch durch ein umfangreiches Beispiel erklärt.<br />

Als Beschreibungsmittel werden hier neben Objekt-Beziehungsdiagrammen ausschließlich<br />

tabellenartige Notationen verwendet.<br />

Schwerpunkt der Betrachtung des IFIP-Modells sind in erster Linie die Konzepte zur Modellierung<br />

von Informationssystemen. Beziehungen zwischen diesen werden als Bestandteil<br />

der Konzepte betrachtet. Dynamische Modellierungsaspekte werden im IFIP-Modell,


4.3 Metamodelle 119<br />

außer durch die Gliederung nach den Phasen des Software-Lebenszyklus, nicht beschrieben.<br />

Das IFIP-Modell sollte daher eher als <strong>Metaschema</strong> aufgefaßt werden.<br />

Intendiertes Ziel bei der Entwicklung des IFIP-<strong>Metaschema</strong>s war es, einen Rahmen zu<br />

schaffen, der das Nachvollziehen und Verstehen unterschiedlicher Ansätze zur Modellierung<br />

und softwaretechnischen Unterstützung von Informationssystemen ermöglicht und<br />

die konzeptionellen Querbezüge zwischen den verwendeten Techniken aufdeckt. In [Olle<br />

et al., 1991, Kapitel 6] werden hierzu vier exemplarische Modellierungsmethoden entlang<br />

der Konzepte des <strong>Metaschema</strong>s charakterisiert. Diese Modellierungsmethoden werden<br />

durch Folgen von Modellierungsschritten eingeführt. Die Ergebnisse der einzelnen<br />

Schritte werden jeweils durch die betrachteten Konzepte des <strong>Metaschema</strong>s näher beschrieben.<br />

Zur Einordnung dieser exemplarischen Modellierungsmethoden werden ihre (sehr<br />

einfachen) Meta-Aktivitätsmodelle mit dem <strong>Metaschema</strong> in Beziehung gesetzt. Die im<br />

IFIP-<strong>Metaschema</strong> notierten Konzepte zur Beschreibung von Informationssystemen bilden<br />

somit ein <strong>Referenz</strong>-<strong>Metaschema</strong> zur Untersuchung von Modellierungsmethoden.<br />

CC-RIM-<strong>Referenz</strong>modell<br />

Im Rahmen des „Kompetenzzentrums Rechnergestütztes Informationsmanagement“ (CC-<br />

RIM) im Forschungsprogramm „Informationsmanagement 2000“ entstand zwischen 1989<br />

und 1992 unter Federführung des Instituts <strong>für</strong> Wirtschaftsinformatik der Hochschule St.<br />

Gallen das CC-RIM-<strong>Referenz</strong>modell <strong>für</strong> den Entwurf von betrieblichen, transaktionsorientierten<br />

Informationssystemen [Österle/Gutzwiller, 1992], [Gutzwiller, 1994]. Während im<br />

IFIP-Metamodell die statischen Aspekte der Modellierung von Informationssystemen im<br />

Vordergrund standen, werden im CC-RIM-<strong>Referenz</strong>modell auch die dynamischen Aspekte<br />

von Modellierungsmethoden betrachtet. Als Bezugsrahmen dienen auch hier die Phasen<br />

des Software-Lebenszyklus und die Betrachtungssichten auf Informationssysteme. Entlang<br />

der Phasen werden Modelle <strong>für</strong> die Voruntersuchung, <strong>für</strong> den Entwurf eines Soll-<br />

Modells (Analysephase) und <strong>für</strong> die Erstellung der logischen Systemspezifikation (Entwurfsphase)<br />

erstellt. Diese Modelle bestehen aus Metadatenmodellen, die die abstrakte<br />

Syntax der Entwurfsdaten beschreiben, aus Dokumentationsmodellen, die die während des<br />

Entwurfsprozesses erzeugten Dokumente konzeptionell darstellen und aus Vorgehensmodellen,<br />

die die einzelnen Entwurfstätigkeiten im Ablauf modellieren.<br />

In den Metadatenmodellen werden <strong>für</strong> die drei betrachteten Entwurfsphasen unterschiedliche<br />

Sichtenbildungen vorgenommen. Je nach Phase werden mehrere Sichten auf Prozesse,<br />

auf Daten und auf Organisationsstrukturen gebildet. Daneben existieren zusätzliche Sichten<br />

zur Integration dieser Teilsichten. Für die Phase der Voruntersuchung wird ein grobes<br />

Konzeptmodell zur Beschreibung der Geschäftsfunktionen und ihrer Komm<strong>uni</strong>kationsund<br />

Datenflußbeziehungen aus Prozeßsicht und ein sehr grobes Konzeptmodell zur Beschreibung<br />

der zentralen Objekttypen aus Datensicht definiert. Diese Konzeptmodelle werden<br />

<strong>für</strong> die Phase der Sollmodellierung verfeinert und um Konzeptmodelle <strong>für</strong> eine eher<br />

kontrollflußorientierte Prozeßsicht und <strong>für</strong> eine Organisationssicht ergänzt. Wie auch im<br />

IFIP-Modell werden <strong>für</strong> die logische Systemspezifikation bzw. Entwurfsphase eher implementationsnähere<br />

Modellierungskonzepte untersucht. In den Prozeßsichten stehen Konzepte<br />

zur Modellierung von Systemapplikationen und des Dialogablaufs im Vordergrund.<br />

Aus Datensicht werden Datenbankkonzeptionen betrachtet. Neben einer Sicht zur Bildschirmgestaltung<br />

werden organisatorische Aspekte zur Stellenbildung, zur Verteilung der


120 Modelle, <strong>Referenz</strong>modelle und Metamodelle<br />

Systemkomponenten und zur Sicherheit in weiteren Sichten konzeptionell abgebildet. Die<br />

Metadatenmodelle werden durch eine Liste der modellierten Konzepte, einem Objekt-<br />

Beziehungsdiagramm und einer glossarartigen Beschreibung der Konzepte notiert.<br />

Objektstrukturen einzelner Dokumentarten, die Ergebnisse der Modellierung von Informationssystemen<br />

beschreiben, werden in Dokumentationsmodellen zusammengefaßt. Dieses<br />

erfolgt <strong>für</strong> jede Dokumentenart und Modellierungsphase durch Sichtenbildung auf<br />

die Metadatenmodelle. Für die Voruntersuchung werden z. B. Sichten <strong>für</strong> Kontextdiagramme,<br />

Datenflußdiagramme, grobe Objekt-Beziehungsdiagramme und Sichten <strong>für</strong> diverse<br />

Listen von Geschäftsfunktionen, Objekttypen und Datenbanken definiert. Sichten<br />

u. a. <strong>für</strong> Objekt-Beziehungsdiagramme, hierarchische Funktionsgliederungspläne, Datenflußdiagramme,<br />

Organigramme, textuelle Integritätsbedingungen, Zustandsübergangsdiagramme<br />

und <strong>für</strong> textuelle Beschreibungen von Geschäftsfunktionen, Objekttypen und Datenspeichern<br />

beschreiben mögliche Darstellungstechniken der Analysephase. Dokumentarten<br />

wie z. B. Datenbankstrukturdiagramme, Listen der Datenbanktabellen, Tabellenbeschreibungen,<br />

textuelle Integritätsbedingungen und Aufgaben-Stellen-Zuordnungen werden<br />

durch entsprechende Sichten <strong>für</strong> die Entwurfsphase aus dem Metadatenmodell abgeleitet.<br />

Den dritten Teil der CC-RIM-<strong>Referenz</strong>modelle bilden Vorgehensmodelle. Jede Phase wird<br />

hierzu in mehrere Unteraktivitäten hierarchisch gegliedert. Als Beschreibungsmittel dienen<br />

Ablaufdarstellungen, die neben den üblichen regulären Kontrollstrukturen (<strong>Se</strong>quenz,<br />

Verzweigung und Iteration) auch Parallelbearbeitungen verwenden. Zu jeder Aktivität werden<br />

neben einer textuellen Erklärung auch die benötigten Eingabe- und die erzeugten bzw.<br />

überarbeiteten Ergebnisdokumente angegeben. Diese Dokumenttypen sind in den Dokumentationsmodellen<br />

näher beschrieben und bilden somit die Verbindung zwischen dem<br />

Metadatenmodell und dem Vorgehensmodell.<br />

Durch das CC-RIM-<strong>Referenz</strong>modell wird eine konzeptionelle Grundlage zur Modellierung<br />

von Informationssystemen geschaffen. Modelle <strong>für</strong> Informationssysteme können <strong>für</strong><br />

verschiedene Erstellungsphasen als Instanzen dieses Modells dargestellt werden. Ebenfalls<br />

wird das Vorgehen zur Erstellung dieser Modellinstanzen beschrieben. Die Metadatenmodelle<br />

und die Vorgehensmodelle des CC-RIM-<strong>Referenz</strong>modells sind daher im Sinn der<br />

Begriffsbildung von <strong>Se</strong>ite 116 als <strong>Metaschema</strong>ta und Meta-Aktivitätsmodelle aufzufassen.<br />

Das CC-RIM-<strong>Referenz</strong>modell ist folglich nicht als <strong>Referenz</strong>modell sondern als Metamodell<br />

<strong>für</strong> die Modellierung von Informationssystemen zu betrachten.<br />

Ausgehend von Beobachtungen, daß vorhandene Methoden und Werkzeuge <strong>für</strong> den Entwurf<br />

von Informationssystemen in der Praxis nicht <strong>für</strong> alle Problemzusammenhänge<br />

ausreichende Unterstützung anbieten, und daß auch vergleichende Beurteilungen und<br />

Einschätzungen vorhandener Methoden aufgrund der unterschiedlichen Terminologien<br />

und dem unterschiedlichen Aufbau nur sehr schwer möglich sind, wurde das CC-RIM-<br />

<strong>Referenz</strong>modell im Verbund mehrerer Schweizer Unternehmen mit der Hochschule St.<br />

Gallen erstellt. Zielsetzung der Erstellung des CC-RIM-<strong>Referenz</strong>modells war es, eine einheitliche,<br />

vollständige und widerspruchsfreie Beschreibung vorhandener Modellierungsmethoden<br />

zu schaffen. Hierdurch sollte eine Vereinheitlichung der Terminologie der Modellierungmethoden<br />

ermöglicht werden, auf deren Basis auch methoden- und werkzeugunabhängige<br />

Schulungen <strong>für</strong> Entwickler von Informationssystemen konzipiert werden kön-


4.3 Metamodelle 121<br />

nen. Das Modell sollte auch als Ausgangspunkt eines systematischen Methodenvergleichs<br />

dienen. Auf Basis von Metadatenmodellen zu diesem Modell wurden in [Färberböck et<br />

al., 1991] fünf Methoden zur Modellierung von Informationssystemen (Structured Analysis<br />

(SA) nach [DeMarco, 1978] und [Gane / Sarson, 1979], Integrierte Software Technologie<br />

(ISOTEC), Information Engineering Method (IEM/EY) nach [Ernst and Young, 1990],<br />

Information Engineering Method (IEM/JMA) nach [James Martin Associates, 1987] und<br />

[James Martin Associates, 1989] und Structured Systems Analysis and Design Method<br />

(SSADM) nach [Longworth/Nicholls, 1986]) miteinander verglichen. Hierzu wurden <strong>Metaschema</strong>ta<br />

dieser Methoden aus dem CC-RIM-Metadatenmodell abgeleitet. Hiermit wurde<br />

auch die <strong>Referenz</strong>eigenschaft des CC-RIM-Metamodells nachgewiesen, so daß es in<br />

diesem Kontext als <strong>Referenz</strong>-Metamodell eingestuft werden kann.<br />

Mit dem <strong>für</strong> das CC-RIM-<strong>Referenz</strong>modell entwickelten Beschreibungsansatz wurden daneben<br />

weitere Metamodelle erstellt. So liegt beispielsweise in [Hess et al., 1995] ein <strong>Metaschema</strong><br />

<strong>für</strong> den Prozeßentwurf und in [Derungs et al., 1996] ein Workflow <strong>Metaschema</strong><br />

vor.<br />

Architektur integrierter Informationssysteme<br />

Die in [Scheer, 1992] und [Scheer, 1994, Teil A] eingeführte Architektur <strong>für</strong> integrierte<br />

Informationssysteme (ARIS) umfaßt ein umfangreiches Informationsmodell, durch<br />

das Techniken zur Entwicklung von Informationssystemen durch ihre abstrakte Syntax<br />

beschrieben werden. Analog zu den Ansätzen im IFIP-Metamodell und im CC-RIM-<br />

<strong>Referenz</strong>modell werden auch nach dem ARIS-Ansatz Informationssysteme aus der Datensicht,<br />

derFunktionssicht (oder Prozeßsicht) und aus der Organisationssicht beschrieben.<br />

In Anlehnung an die Phasen des Softwarelebenszyklus der Erstellung von Informationssystemen,<br />

die hier durch ihre Ergebnisdokumente benannt werden, werden <strong>für</strong> jede Sicht<br />

Modelle auf Fachkonzeptebene, auf DV-Konzeptebene und auf Implementierungsebene<br />

erstellt. Das Fachkonzept entspricht hierbei im wesentlichen dem Ergebnis der Analysephase.<br />

Die Designphase ist bei [Scheer, 1992] in die Erstellung eines DV-Konzepts und in<br />

die Erstellung der technischen Implementierung unterteilt. Ergänzt wird auch hier eine Integrationssicht<br />

(Steuerungssicht), durch die Daten-, Funktions- und Organisationssichten<br />

der einzelnen Ebenen zu einem Gesamtmodell zusammengefaßt werden.<br />

Die hieraus resultierende ARIS-Architektur legt einerseits die Sichten und Ebenen zur Beschreibung<br />

von Informationssystemen fest, bildet andererseits den konzeptionellen Rahmen<br />

zur Beschreibung des Informationsmodells, das dem ARIS-Ansatz zu Grunde liegt.<br />

Für jeden Baustein der Architektur werden die dort betrachteten Konzepte und Beziehungen<br />

einheitlich durch Objekt-Beziehungsdiagramme modelliert. In [Scheer, 1994, S. 17ff]<br />

werden die zur Darstellung dieser Zusammenhänge verwendeten Beschreibungstechniken<br />

ausführlicher beschrieben.<br />

Auf Fachkonzeptebene beschreibt das ARIS-Informationsmodell aus Funktionssicht Unternehmensziele<br />

und Funktionen sowie deren Gliederungs- und Ablaufbeziehungen. Zur<br />

Beschreibung von Informationssystemen aus der Funktionssicht der Fachkonzeptebene<br />

werden u. a. Aufgabengliederungspläne (Funktionsbäume) und Ablauffolgediagramme<br />

eingesetzt. Die Organisationssicht der Fachkonzeptebene bezieht sich auf Organisationseinheiten<br />

(Stellen, Abteilungen) und deren Beziehungen. Als Beschreibungstechnik


122 Modelle, <strong>Referenz</strong>modelle und Metamodelle<br />

<strong>für</strong> die Dokumentation eines Informationssystems werden hier Organigramme und Stellenbeschreibungen<br />

vorgeschlagen. Das Informationsmodell der Datensicht des Fachkonzepts<br />

beschreibt die Konzepte zur Darstellung der Objekte und deren Beziehungen in einem<br />

Informationssystem. Zur Modellierung solcher Strukturen wird auch hier ein Dialekt<br />

der Objekt-Beziehungsdiagramme verwendet. Das Konzeptmodell der Steuerungssicht des<br />

Fachkonzepts faßt die zunächst isoliert beschriebenen Teilmodelle der drei Teilsichten zusammen.<br />

Hierzu werden zwischen den wesentlichen Konzepten der Funktionssicht, der Organisationssicht<br />

und der Datensicht zusätzliche Beziehungen modelliert. Zur Darstellung<br />

der sichtenübergreifenden Zusammenhänge eines Informationssystems auf Fachkonzeptebene<br />

können u.a. Zuordnungsdiagramme zur Darstellung der Zusammenhänge zwischen<br />

organisatorischen Strukturen und Funktionen bzw. Daten, Funktionszuordnungsmatrizen,<br />

Datenflußdiagramme und Vorgangskettendiagramme genutzt werden.<br />

Vor der Umsetzung des Fachkonzepts in die Implementierung sieht der ARIS-Ansatz die<br />

Ebene des DV-Konzepts vor, die das Fachkonzept des Informationssystems um implementationstechnische<br />

Aspekte, unabhängig von der konkreten Realisierung, ergänzt. Auf der<br />

Ebene des DV-Konzepts stehen aus Funktionssicht die Konzepte zur Beschreibung von<br />

Softwaremodulen, von Kontrollstrukturen und von Bildschirmmasken und Ausgabeformaten<br />

im Vordergrund. Zur Beschreibung dieser Aspekte eines Informationssystems sieht der<br />

ARIS-Ansatz ausschließlich semi-formale Beschreibungsmittel wie z. B. Strukturdiagramme,<br />

Nassi-Shneiderman-Diagramme, Entscheidungstabellen und Pseudo-Code vor; formale<br />

Spezifikationsmittel werden nicht berücksichtigt. Konzepte des Rechnernetzes, das die<br />

technische Plattform des Informationssystem bildet, sind der Betrachtungsschwerpunkt<br />

aus der Organisationssicht des DV-Konzepts. Hierbei werden sowohl einzelne Komponenten<br />

im Netz wie auch dessen Topologie berücksichtigt. Zur Darstellung der Netztopologie<br />

werden hierzu graphbasierte Darstellungen verwendet. Die Datensicht des DV-Konzepts<br />

bezieht sich auf die Umsetzung des Fachkonzepts in Datenbank-Managementsystemen.<br />

Im Konzeptmodell finden sich daher die Konzepte der Datendefintionssprachen. In der<br />

Steuerungsicht werden auch <strong>für</strong> das DV-Konzept die Modelle der Einzelsichten integriert.<br />

Das Informationsmodell der Steuerungssicht umfaßt daher u.a. Konzepte zur Beschreibung<br />

der Zugriffsrechte von Organisationseinheiten auf Programm-Module, zur Definition von<br />

Sichten auf das Datenmodell und zur Definition von Zugriffsmöglichkeiten sowohl von<br />

Modulen wie von Organisationseinheiten auf diese Sichten.<br />

Das Implementationsmodell eines Informationssystems beschreibt dessen softwaretechnische<br />

Realisierung. In der Funktionssicht des Informationsmodells werden hierzu Konzepte<br />

zur Darstellung ausführbarer Programme und deren Zusammenfassung zu Programmbibliotheken<br />

modelliert. In der ARIS-Architektur umfaßt diese Sicht auch Konzepte <strong>für</strong><br />

Software-Erstellungswerkzeuge wie Compiler und Programmgeneratoren. Die Organisationssicht<br />

des Implementationsmodells stellt Konzepte zur Modellierung der Zuordnung<br />

zwischen einzelnen Hard- und Software-Komponenten bereit. Als Darstellungsmittel dieser<br />

Zusammenhänge wird auch hier eine graphbasierte Darstellung verwendet. Aus Datensicht<br />

des Implementationsmodells wird die konkrete Realisierung der Datenstrukturen beschrieben.<br />

Im Informationsmodell werden hierzu Konzepte zur Modellierung von Datensätzen,<br />

Speichermedien und Zugriffspfade auf Daten bereitgestellt. In der Steuerungssicht<br />

werden auch <strong>für</strong> das Implementationsmodell die drei anderen Sichten integriert. Dieses<br />

erfolgt durch das Konzept der Reservierung, das Dateien, Programme und die Hardware-


4.3 Metamodelle 123<br />

Komponenten, auf denen die Dateien gespeichert, bzw. auf denen die Programme ausgeführt<br />

werden, zusammenfaßt.<br />

Die Integration der Konzeptmodelle zum Fachkonzept, zum DV-Konzept und zur Implementierung<br />

erfolgt jeweils durch Rückbezug auf Konzepte, die bereits bei der Modellierung<br />

des jeweils abstrakteren Informationsmodells eingeführt wurden Das resultierende<br />

Informationsmodell wird in [Scheer, 1992, Abb. B.V.] in einem Diagramm abgebildet.<br />

Die Erstellung der Modelle <strong>für</strong> Informationssysteme wird <strong>für</strong> die Fachkonzeptebene aus<br />

Funktionssicht, aus Organisationssicht, aus Datensicht und aus Steuerungssicht kurz diskutiert.<br />

Für den Ablauf der Modellerstellung <strong>für</strong> die Funktions- und Datensicht wird dieses<br />

durch einfache Aufgabengliederungen und Prozeßketten skizziert. Das Vorgehen zur Modellerstellung<br />

<strong>für</strong> das DV-Konzept und die Implementierung wird nicht näher betrachtet.<br />

Das resultierende Informationsmodell der ARIS-Architektur beschreibt Konzepte und ihre<br />

Beziehungen, die der Modellierung von Informationssystemen zu Grunde gelegt werden<br />

können. Dieses Informationsmodell kann somit als <strong>Metaschema</strong> zur Beschreibung von<br />

Informationssystemen nach der ARIS-Methode aufgefaßt werden. Mit Ausnahme der rudimentären<br />

Vorgehensbeschreibung zur Modellierung des Fachkonzepts enthält die ARIS-<br />

Architektur kein Meta-Aktivitätsmodell.<br />

Eingesetzt wird dieses <strong>Metaschema</strong> als theoretische Grundlage der auf ARIS basierenden<br />

Methode zur Modellierung von Informationssystemen. Daneben dient es auch als konzeptionelles<br />

Datenbankschema. Das ARIS-Informationsmodell beschreibt die Datenbankkonzeption<br />

des ARIS-Toolsets [IDS, 1995] zur Erstellung, Verwaltung und Analyse von<br />

Modellen <strong>für</strong> Informationssysteme nach der ARIS-Methode.<br />

Multi-Perspektivische Unternehmensmodellierung<br />

Ein Ansatz zur objektorientierten Unternehmesmodellierung wird mit MEMO (Multi Perspective<br />

Enterprise Modeling) in [Frank, 1994] vorgestellt und u.a. in [Frank, 1997a]) weiterentwickelt.<br />

In MEMO werden Unternehmen aus drei Sichten oder Perspektiven betrachtet.<br />

Während die Sichten bei den zuvor vorgestellten Ansätzen eher durch die Unterscheidung<br />

von statischen und dynamischen Aspekten der Unternehmen geprägt waren, sind die<br />

hier verwendeten Perspektiven entlang der Rollen der Beteiligten bestimmt. [Frank, 1994]<br />

unterscheidet hierbei die strategische Perspektive, die organisatorische Perspektive und die<br />

Informationssystem-Perspektive. Für jede dieser Perspektiven werden aber auch dynamische<br />

Aspekte (Prozeß) und statische Aspekte (Struktur) sowie die benötigten Resourcen<br />

und die jeweils verfolgten Ziele näher charakterisiert.<br />

Aus der Sicht hochrangiger Führungskräfte werden in der strategischen Perspektive Unternehmensziele<br />

und -strategien modelliert. Unternehmen werden aus dieser Sicht, die in den<br />

bisher skizzierten Methoden keine Entsprechung hatte, in Anlehnung an den Wertketten-<br />

Ansatz nach [Porter, 1985] modelliert. Zur Beschreibung werden Primäraktivitäten einschließlich<br />

der sie unterstützenden Aktivitäten in einfachen Folgedarstellungen notiert<br />

(vgl. [Frank, 1997a, Fig. 2]). Die organisatorische Perspektive beschreibt die Sicht der <strong>für</strong><br />

das operative Geschäft Verantwortlichen. Hier stehen insbesondere die aufbau- und ablauforganisatorischen<br />

Regelungen des Zusammenarbeitens im Unternehmen im Vordergrund.<br />

Zur Darstellung der dynamischen Aspekte wird die Sprache MEMO Process Modeling


124 Modelle, <strong>Referenz</strong>modelle und Metamodelle<br />

Language (M-PML) [Frank, 1997a] verwendet, bei der Geschäftsprozesse durch ihre Aktivitäten<br />

und die hiervon generierten bzw. benötigten Dokumente in bipartiten Graphen<br />

beschrieben werden. Zur Darstellung der Aufbauorganisation werden auch hier Organigramme<br />

verwendet, die neben Leitungsbeziehungen auch Komm<strong>uni</strong>kationsbeziehungen<br />

enthalten. Die Sicht der Entwickler und Betreiber von Informationssystemen wird in der<br />

Informationssystem-Perspektive behandelt. Dynamische Aspekte der Informationssystem-<br />

Perspekive werden durch eine Erweiterung von M-PML beschrieben, wobei die hier<br />

dargestellten Workflows als Verfeinerung der in der organisatorischen Perspektive beschriebenen<br />

Geschäftsprozesse aufgefaßt werden. Zu Beschreibung der Objektstrukturen<br />

wird die MEMO Object Modeling Language (M-OML) [Frank, 1998] des Objekt-<br />

Beziehungsparadigmas verwendet. Die enthält hierzu getrennte Darstellungsformen zur<br />

Beschreibung von Generalisierungen und zur Beschreibung von Beziehungsklassen zwischen<br />

Objektklassen.<br />

Jede der drei Perspektiven ist durch ein in M-OML notiertes Metamodell konzeptionell<br />

beschrieben. Zur Integration der Teilmodelle (vgl. die Skizze in [Frank, 1997a, S. 12f])<br />

werden zwischen den Objektklassen der Metamodelle der einzelnen Perspektiven zusätzliche<br />

Beziehungstypen definiert, eine Zusammenfassung gleicher bzw. ähnlicher Konzepte<br />

erfolgt jedoch nicht.<br />

Zur Unterstützung der Unternehmensmodellierung mit MEMO existiert ein Werkzeug<br />

(MEMO-Center), bei dem die einzelnen Teilmodelle in aus dem MEMO-Metamodell abgeleiteten<br />

Masken textuell erfaßt werden. Darüber hinaus erlaubt MEMO-Center eine graphische<br />

Darstellung der Teilmodelle.<br />

Schwerpunkt der Arbeiten an MEMO war die Erstellung eines Metamodells zur durchgängig<br />

objektorientierten und perspektivenübergreifenden Unternehmensmodellierung. Hierzu<br />

wurden in [Frank, 1994] umfassend motivierte Meta-Objektmodelle <strong>für</strong> die einzelnen<br />

Perspektiven definiert und zu einem integrierten Meta-Objektmodell zusammengefaßt.<br />

Dieses beschreibt die durch MEMO-Modelle abbildbaren Objekte einschließlich deren Beziehungen<br />

und stellt damit im Sinn der Begriffsfindung von <strong>Se</strong>ite 116 ein Metadatenmodell<br />

dar. Das Vorgehen zur Erstellung einer MEMO-Modellierung wird in [Frank, 1994,<br />

S. 338ff] und in [Frank, 1997a, S. 14f] kurz durch Angabe der auch wiederholt ausführbaren,<br />

wesentlichen Modellierungsschritte skizziert.<br />

Überblicksdarstellungen zu weiteren Ansätzen zur Metamodellierung von Informationssystemen<br />

finden sich auch in [Scheer, 1994, S. 29ff], [Gutzwiller, 1994, S. 15ff] und [Frank, 1994,<br />

S. 139ff].<br />

Metamodelle <strong>für</strong> Entwurfsmethoden<br />

Metamodelle dienen auch als Grundlage zur Beschreibung und Einordnung von Methoden und<br />

Techniken zum Softwareentwurf. In den folgenden Abschnitten zu SOCRATES-Metamodellen,<br />

zu CDIF-Metamodellen, zu EER/GRAL-Metamodellen, zu KOGGE-Metamodellen und zum<br />

UML-Metamodell werden verschiedene Ansätze zur Metamodellierung von Entwurfsmethoden<br />

und deren Anwendung skizziert.


4.3 Metamodelle 125<br />

SOCRATES-Metamodelle<br />

Zielsetzung des SOCRATES-Projektes [Verhoef et al., 1991] war die Erstellung einer Architektur<br />

<strong>für</strong> CASE-Werkzeuge, die sowohl den Modellierungsprozeß (way of working)<br />

als auch die modellierten Dokumente (way of modelling) berücksichtigt. Hierzu wird in<br />

[Wijers et al., 1992] eine Modellierungstechnik entwickelt und formal beschrieben. Zur<br />

Beschreibung des „way of modelling“ werden die statischen Aspekte der Modellierungstechniken<br />

durch Objekt-Beziehungsdiagramme im NIAM-Dialekt [Verheijen / van Bekkum,<br />

1982], ergänzt um zusätzliche Integritätsbedingungen in Prädikatenlogik, notiert. Der<br />

„way of working“ wird durch Ablaufdarstellungen der einzelnen Aktivitäten beschrieben.<br />

Diese Ablaufdarstellungen werden in [Wijers et al., 1992] formal eingeführt und u.a. auch<br />

durch ein NIAM-<strong>Metaschema</strong> charakterisiert. Methoden werden nach der SOCRATES-<br />

Modellierungstechnik somit sowohl durch ein <strong>Metaschema</strong>ta als auch durch ein Meta-<br />

Aktivitätsmodell beschrieben. Daher können diese Modelle auch als Metamodelle betrachtet<br />

werden.<br />

Entlang des SOCRATES-Ansatzes zur Metamodellierung werden in verschiedenen Arbeiten<br />

Modellierungsmethoden beschrieben und verglichen. Die SOCRATES-Metamodellierungsmethode<br />

wird in [Wijers et al., 1992] am Beispiel eines Metamodells <strong>für</strong> Jackson<br />

Structured Development (JSD) [Jackson, 1983] erläutert. Ein Metamodell der modernen<br />

strukturierten Analyse nach [Yourdon, 1989] wird in [Verhoef et al., 1991] diskutiert.<br />

SOCRATES-Metamodelle zu den drei Planungsansätzen <strong>für</strong> Informationssysteme Information<br />

Systems Planning (ISP) [Arthur Young International, 1988], Information Planning<br />

[Raet BV, 1988] und Strategic Data Planning [Martin, 1982] werden in [Brinkkemper et al.,<br />

1989] kurz skizziert. Diese Modelle wurden ausgehend von den Methodenbeschreibungen<br />

erstellt und miteinander verglichen. Die Ähnlichkeiten und Differenzen dieser Methodenbeschreibungen<br />

dienten als Ausgangspunkt zur Ableitung einer allgemeinen, verbesserten<br />

Methode, die als Vergleichsmaßstab <strong>für</strong> die drei Ausgangsmethoden genutzt wurde.<br />

Ein ähnliches Vorgehen wird auch bei einem Vergleich von sechs objektorientierten<br />

Analyse- und Design Methoden [Goor et al., 1992] verfolgt. Ziel dieser Studie ist es, die<br />

Methoden Object-Oriented Analysis and Design (OOA/OOD) [Coad / Yourdon, 1991],<br />

Designing Object-Oriented Software (DOOS) [Wirfs-Brock et al., 1990], Object Modeling<br />

Technique (OMT) [Rumbaugh et al., 1991], Object-Oriented Design (OOD) [Booch,<br />

1994], Object-Oriented Systems Analysis (OOSA) [Shlaer / Mellor, 1988] und Object-<br />

Oriented Systems Analysis and Design (OOAD) [Martin / Odell, 1992] nach einem festen<br />

Raster formal zu beschreiben.<br />

Hierzu werden zunächst alle sechs Methoden u.a. durch die Hauptaktivitäten, eine glossarartige<br />

Beschreibung der Modellierungskonzepte und ihrer graphischen Notation charakterisiert.<br />

Die Modellierungsaktivitäten der Methoden werden durch sequentiell zu durchlaufende<br />

Modellierungsschritte beschrieben. Ergänzt werden die einzelnen Modellierungsschritte<br />

um die hierbei benötigten bzw. erzeugten Dokumente. Zur Beschreibung der<br />

abstrakten Syntax der Methoden werden auch hier Objekt-Beziehungsdiagramme nach<br />

NIAM, ergänzt um wenige, hier textuell notierte Einschränkungen, verwendet. Entlang<br />

dieser Metamodelle wurden die sechs Methoden entlang eines durchgehenden Beispiels<br />

und einer „Supermethode“ die durch eine hierarchisch gegliederte Aktivtätenliste und eine<br />

Liste der verwendeten Konzepte beschrieben wurde, miteinander verglichen. Diese “Su-


126 Modelle, <strong>Referenz</strong>modelle und Metamodelle<br />

permethode“ wurde analog zu [Brinkkemper et al., 1989] aus den Metamodellen der Einzelmethoden<br />

abgeleitet, indem die allen Methoden gemeinsamen Aktivitäten und Konzepte<br />

zunächst übernommen und anschließend „optimiert“ wurden.<br />

In [Brinkkemper et al., 1990] wird darüber hinaus gezeigt, wie mit Hilfe von SOCRATES-<br />

Modellen Modellierungsmethoden mit der Modellierungsunterstützung durch Werkzeuge<br />

abgeglichen werden können. Für die Methode System Development Methodology (SDM)<br />

[Turner et al., 1987] und die Information Engineering Workbench (IEW) [KnowledgeWare,<br />

1987] wurden hierzu Metamodelle erstellt und miteinander verglichen.<br />

Für den Methodenvergleich in [Brinkkemper et al., 1989] und [Goor et al., 1992] dienen<br />

die „Supermethoden“ als <strong>Referenz</strong>-Metamodelle. Im Gegensatz zum Vergleich der Methoden<br />

zur Modellierung betrieblicher Informationssysteme aus [Färberböck et al., 1991],<br />

bei dem die <strong>Metaschema</strong>ta der untersuchten Methoden entlang des CC-RIM-<strong>Referenz</strong>-<br />

<strong>Metaschema</strong>s abgeleitet werden, werden in [Brinkkemper et al., 1989] und [Goor et al.,<br />

1992] die <strong>Referenz</strong>-Metamodelle aus den Modellen der untersuchten Methoden entwickelt.<br />

Bezogen auf die Erstellung der Metamodelle der „Supermethoden“ können in diesem Fall<br />

die Metamodelle der untersuchten Methoden als <strong>Referenz</strong>-Metamodelle aufgefaßt werden.<br />

CDIF-Metamodelle<br />

Das CASE Data Interchange Format (CDIF) [Ernst, 1997] [Flatscher, 1998] wurde 1987<br />

und 1994 durch eine Standardisierungsgruppe der „Electronic Industries Alliance (EIA)“<br />

entwickelt und durch die ISO als internationaler Standard [ISO/IEC DIS 15474, 1998],<br />

[ISO/IEC DIS 15475, 1998], [ISO/IEC DIS 15476, 1998] verabschiedet. Ausgangspunkt<br />

der Überlegungen zu CDIF war die Feststellung, daß CASE-Werkzeuge zwar ähnliche Modellierungsmethoden<br />

unterstützen, die erstellten Modelle jedoch nicht austauschbar waren.<br />

Mit CDIF sollte ein von Herstellern unabhängiges Austauschformat <strong>für</strong> Modelldaten zwischen<br />

CASE-Werkzeugen geschaffen werden.<br />

Hierzu wurde in [EIA/IS-107, 1994] 3 ein auf den Konzepten der Objekt-Beziehungsmodellierung<br />

basierendendes Meta-Metamodell zur Definitition von Metamodellen zur Beschreibung<br />

der auszutauschenden Daten definiert. Dieses wurde um eine Notation zum<br />

konkreten Austausch der Modelldaten ergänzt [EIA/IS-108, 1994], [EIA/IS-109, 1994],<br />

[EIA/IS-110, 1994].<br />

Zur Erstellung der Metamodelle <strong>für</strong> CASE-Tool-Modelle wurden zwei grundlegenden<br />

Metamodelle vereinbart [EIA/IS-111, 1994], [EIA/IS-112, 1995], die in [EIA/IS-113,<br />

1994] zur Beschreibung von Datenmodellen und in [EIA/IS-115, 1995] zur Beschreibung<br />

von Datenflußmodellen konkretisiert wurden. Weitere Metamodelle u. a. zur Beschreibung<br />

von Geschäftsprozeßmodellen, Modellen der objektorientierten Analyse oder von<br />

Zustandsübergangs-Modellen wurden erstellt [Flatscher, 1996].<br />

Die Beschreibung der Metamodelle erfolgt durch einfache Objekt-Beziehungsdiagramme,<br />

die um umfangreiche Listen zur Darstellung der Generalisierungshierarchien und der Attributstrukturen<br />

der Objekt und Beziehungsklassen ergänzt werden. Die CDIF-Metamodelle<br />

3 Einen groben Überblick über die Famile der CDIF-Standards einschließlich Auszüge der einzelnen Standards<br />

finden sich auf http://www.eigroup.org/cdif/online.html (20.08.1999).


4.3 Metamodelle 127<br />

beschreiben somit CASE-Modelle entlang ihrer Konzepte und Beziehungen. Vorgehensaspekte<br />

der einzelnen Modellierungsansätze werden nicht betrachtet. Die CDIF-<br />

<strong>Metaschema</strong>ta wurden mit dem Ziel entwickelt die jeweils betrachteten Modellierungsparadigmen<br />

möglichst vollständig abzubilden. Zur Anwendung dieser Modelle in konkreten<br />

CASE-Werkzeugen sieht CDIF Erweiterungsmöglichkeiten auf Basis des CDIF-Meta-<br />

Metamodells vor. Mit diesen Erweiterungsmöglichkeiten sind die CDIF-Modelle daher als<br />

<strong>Referenz</strong>-<strong>Metaschema</strong>ta einzustufen.<br />

Der in erster Linie durch ein Industrie-Konsortium entwickelte CDIF Standard zum Austausch<br />

von Modelldaten wird in einigen kommerziellen CASE-Werkzeugen eingesetzt. Bereits<br />

1992 unterstützte der ORACLE-Designer/2000 den Austausch von Datenlexika mit<br />

Fremdwerkzeugen. Pardigm Plus unterstützt ebenfalls den Austausch von Modelldaten auf<br />

CDIF-Basis (vgl. auch [Flatscher, 1998, S. 15ff]).<br />

EER/GRAL-Metamodelle<br />

Der dieser Arbeit zu Grunde gelegte EER/GRAL-Ansatz [Ebert et al., 1996b] bildet<br />

u. a. auch die Basis zur Metamodellierung von Analyse- und Entwurfsmethoden. Mit<br />

EER/GRAL-Modellen wird die abstrakte Syntax der Modellierungsmittel durch erweiterte<br />

Objekt-Beziehungsdiagramme dargestellt. Zusätzliche Integritätsbedingungen werden in<br />

der auf der Spezifikationssprache Z [Spivey, 1992] basierenden Sprache GRAL [Franzke,<br />

1997] formuliert (vgl. zum EER/GRAL-Ansatz auch Kapitel 5.2). Da mit EER/GRAL-<br />

Modellen Modellierungsmethoden nur durch ihre statischen Aspekte beschrieben werden,<br />

werden diese Modelle als <strong>Metaschema</strong>ta eingeordnet.<br />

Ausgangspunkt <strong>für</strong> die Erstellung der EER/GRAL-Modelle <strong>für</strong> objektorientierte Analyseund<br />

Entwurfsmethoden war die Feststellung, daß diese Methoden in der Regel nur anhand<br />

ihrer graphischen Symbole und durch Beispielmodellierungen eingeführt werden. Eine formale<br />

Basis, die z. B. die Überprüfung einer vorliegenden Modellierung auf syntaktische<br />

Korrektheit erlaubt, existiert häufig nicht. Durch Modellierungsmethoden werden Systeme<br />

multiperspektivisch, aus unterschiedlichen Sichten beschrieben. Auch die Integration der<br />

hierbei verwendeten Techniken wird nur beispielhaft skizziert, so daß eine vollständige<br />

Beschreibung der Konzepte, einschließlich der Querbezüge über die einzelnen Modellierungstechniken<br />

hinaus, ebenfalls fehlt.<br />

In [Ebert / Süttenbach, 1997a] und [Süttenbach / Ebert, 1997] werden EER/GRAL-<strong>Metaschema</strong>ta<br />

<strong>für</strong> die Object Modeling Technique (OMT) nach [Rumbaugh et al., 1991] und<br />

<strong>für</strong> Object-Oriented Design with Applications (OOD) nach [Booch, 1994] definiert. Ausgehend<br />

von den graphischen Symbolen der in den Methoden verwendeten Beschreibungstechniken<br />

werden die einzelnen Modellierungsichten konzeptionell beschrieben. Diese<br />

Teilmodelle werden anschließend zu Gesamtmodellen der jeweiligen Methoden zusammengefaßt.<br />

Ergebnis dieser Modellierungen sind <strong>Metaschema</strong>ta, die die abstrakte Syntax der in beiden<br />

Methoden verwendeten <strong>visuelle</strong>n Beschreibungstechniken über die jeweiligen Modellierungssichten<br />

integriert. Diese formalen Beschreibungen geben einen vollständigen<br />

Überblick über die in den Methoden verwendeten Konzepte und ihrer Zusammenhänge.<br />

Im Gegensatz zu den SOCRATES-Metamodellen zu OMT und OOD [Goor et al.,


128 Modelle, <strong>Referenz</strong>modelle und Metamodelle<br />

1992], bei denen der Vergleich der Methoden im Vordergrund stand, bieten die EER/GRAL-<br />

<strong>Metaschema</strong>ta aus [Ebert / Süttenbach, 1997a] und [Süttenbach / Ebert, 1997] auch aufgrund<br />

ihres Detaillierungsgrades eine formale Grundlage, gegen die konkrete Modellierungen<br />

nach diesen Ansätzen auf (syntaktische) Korrektheit überprüft werden können. Bei<br />

der Erstellung der EER/GRAL-<strong>Metaschema</strong>ta konnten nicht alle Eigenschaften der modellierten<br />

Konzepte eindeutig aus den Methodenbeschreibungen abgeleitet werden. In diesen<br />

Fällen wurde in den Metamodellen eine mögliche, sinnvolle Interpretation vorgeschlagen.<br />

Diese EER/GRAL-Modelle sind daher auch als <strong>Referenz</strong>-<strong>Metaschema</strong>ta in Diskussionen<br />

zur Schaffung einer allgemein akzeptierten Interpretation der Modellierungskonstrukte<br />

verwendbar.<br />

Wie auch der CDIF-Ansatz basiert EER/GRAL auf einem Metamodell, das in EER/GRAL<br />

selbst formalisiert ist. Das <strong>Metaschema</strong> des EER-Anteils zur Modellierung nach dem<br />

Objekt-Beziehungsparadigma wird in [Ebert et al., 1999a] und das <strong>Metaschema</strong> des GRAL-<br />

Anteils zur Darstellung von Integritätsbedingungen wird in [Ebert et al., 1997a] beschrieben.<br />

Varianten dieses <strong>Metaschema</strong>s in [Ebert et al., 1997a] beschreiben die abstrakte Syntax<br />

der Spezifikationssprache Z [Spivey, 1992] und der Graph-Anfragesprache GReQL<br />

[Kamp, 1998]. Weiter dient es als Grundlage zur Festlegung der <strong>Se</strong>mantik von EER/GRAL-<br />

Modellen in [Dahm et al., 1998b].<br />

KOGGE Metamodelle<br />

Zur Erstellung von Werkzeugen zur Modellierung nach einer vorgegebenen Methode wird<br />

eine Beschreibung dieser Methode benötigt. Methoden und Techniken, die durch das<br />

Werkzeug unterstützt werden sollen, werden hierzu durch Metamodelle beschrieben. Diese<br />

Werkzeugerstellung kann direkt durch Entwicklung auf Basis eines Metamodells erfolgen.<br />

Größere Flexibilität und Adaptivität bei der Werkzeugerstellung erlaubt die Verwendung<br />

von Meta-CASE-Werkzeugen, also von Werkzeugen zur Erstellung von Modellierungswerkzeugen.<br />

Während direkt erstellte Modellierungswerkzeuge i. allg. auf die Unterstützung<br />

der fest implementierten Methode eingeschränkt sind, erlauben Meta-CASE-<br />

Werkzeuge durch Änderung der Metamodelle, die hierzu als Werkzeugbeschreibungen<br />

aufgefaßt werden können, die Anpassung des Modellierungswerkzeugs an die (sich ändernden)<br />

spezifischen Anforderungen der Benutzer [Ebert, 1997]. Der Koblenzer Generator<br />

<strong>für</strong> Graphische Entwurfsumgebungen (KOGGE) ist ein solches Meta-CASE-Werkzeug<br />

[Ebert et al., 1997b], [Ebert et al., 1999b].<br />

Mit KOGGE wird das Ziel verfolgt, Editoren <strong>für</strong> <strong>visuelle</strong> Sprachen und Methoden zu generieren.<br />

Hierzu wird <strong>für</strong> die in einer Modellierungsmethode verwendeten Techniken eine<br />

Werkzeugbeschreibung erstellt. Konkrete Modellierungswerkzeuge (KOGGE-Werkzeuge)<br />

entstehen durch Interpretieren der jeweiligen Werkzeugbeschreibungen durch ein statisches<br />

Basissystem. Eine KOGGE-Werkzeugbeschreibung besteht aus der Definition der<br />

Konzepte der Methode, der Definition der Menüstruktur des Werkzeugs und der Definition<br />

der Interaktionen mit dem Benutzer. In der Konzeptbeschreibung wird die abstrakte Syntax<br />

der in der Methode verwendeten Techniken, d. h. deren Sprachkonzepte und ihre Beziehungen<br />

notiert. Hierzu werden EER/GRAL-Modelle verwendet. Dieser Teil der Werkzeugbeschreibung<br />

umfaßt somit das <strong>Metaschema</strong> der Methode. Die Menüstruktur wird durch<br />

einen azyklischen Menügraphen beschrieben. Das Werkzeugverhalten, d. h. die Interaktion<br />

mit dem Benutzer wird durch Statecharts und eine Makrosprache definiert. Dynamische


4.3 Metamodelle 129<br />

Aspekte einer Modellierungsmethode sind in KOGGE-Werkzeugbeschreibungen nicht enthalten.<br />

Zur Erstellung von Werkzeugbeschreibungen existiert ein eigenes KOGGE-Werkzeug (Ur-<br />

KOGGE), welches Editoren zur Erfassung und Manipulation von EER/GRAL-Modellen,<br />

Menügraphen, Statecharts und Programmtexten der Makrosprache bereitstellt. Die Ur-<br />

KOGGE basiert selbst auf einer KOGGE-Werkzeugbeschreibung, deren <strong>Metaschema</strong>-<br />

Anteil auf [Carstensen, 1996] zurückgeht. Dieses <strong>Metaschema</strong> integriert die Konzepte aller<br />

zur Erstellung von Werkzeugbeschreibungen verwendeten Modellierungstechniken. Darüber<br />

hinaus enthält das <strong>Metaschema</strong> aus [Carstensen, 1996] auch Konzeptmodellierungen<br />

<strong>für</strong> weitere Beschreibungsparadigmen, die jedoch in Werkzeug UrKOGGE keine Verwendung<br />

finden. Diese Modellierungen können jedoch als <strong>Referenz</strong>en <strong>für</strong> <strong>Metaschema</strong>ta zu<br />

diesen Entwurfssprachen angesehen werden und flossen in dieser Funktion auch in die in<br />

Teil II beschriebenen Metamodelle ein.<br />

KOGGE-Werkzeuge und somit auch <strong>Metaschema</strong>ta existieren neben der UrKOGGE <strong>für</strong><br />

Datenflußdiagramme [Drüke, 1996], <strong>für</strong> die objektorientierte Methoden BON [Ebert et al.,<br />

1997b], [Kölzer / Uhe, 1997] und die Unified Modeling Language. In Kapitel 9 wird skizziert,<br />

wie ein KOGGE-Werkzeug zur Organisationsmodellierung [Löcher / Pühler, 1997]<br />

entlang des in Teil II hergeleiteten <strong>Referenz</strong>-<strong>Metaschema</strong>s erstellt wurde.<br />

UML Metamodell<br />

Mit der Definition der Unified Modeling Language (UML), [Booch et al., 1999], [Rumbaugh<br />

et al., 1999] wird das Ziel verfolgt, eine allgemeine, <strong>visuelle</strong> Sprache als Standard<br />

zur Beschreibung, Visualisierung und Konstruktion von objektorientierten Systemen<br />

bereitzustellen. Eine Ausschreibung <strong>für</strong> Vorschläge zur Standardisierung objektorientierter<br />

<strong>Modellierungssprachen</strong> erfolgte im J<strong>uni</strong> 1996 durch die Object Management Group<br />

(OMG).<br />

Ausgehend von Erweiterungen zur Object Modeling Technique (OMT) [Rumbaugh et al.,<br />

1991] und zu Object-Oriented Design (OOD) [Booch, 1994] wurde seit Ende 1994 gemeinsam<br />

von G. Booch und J. Rumbaugh der erste UML-Entwurf (Unified Method) erstellt<br />

und 1995 präsentiert. Mit der Mitarbeit von I. Jacobson seit Herbst 1995 flossen<br />

auch die Use-Cases von aus Object-Oriented Software Engineering (OOSE) [Jacobson et<br />

al., 1993] in die Sprachentwicklung ein [Booch, 1996], [Booch et al., 1999]. Der resultierende<br />

Sprachentwurf wurde Ende 1996 der interessierten Öffentlichkeit zur Diskussion<br />

vorgelegt und gemeinsam mit den im UML Partner Consortium zusammengeschlossenen<br />

Firmen überarbeitet. Im Januar 1997 wurde die Version 1.0 mit fünf weiteren Vorschlägen,<br />

die zum Teil lediglich Ergänzungen zu UML darstellen [Frank / Prasse, 1997b], bei der<br />

OMG eingereicht. Die aus der Ergänzung um einige dieser Vorschläge hervorgegangene<br />

Sprachbeschreibung (Version 1.1) wurde am 14. November 1997 durch die Object Management<br />

Group akzeptiert. UML kann folglich als eine Weiterentwicklung und Verschmelzung<br />

von OMT, OOD, OOSE und weiteren Ansätzen verstanden werden, die bereits durch<br />

eine große Zahl von Anwendern im UML Partner Consortium getragen wird. Eine kritische<br />

Würdigung dieses Standardisierungsverfahrens zur Schaffung einer einheitlichen, allgemein<br />

akzeptierten, objektorientierten Modellierungssprache findet sich in [Frank / Prasse,<br />

1997b].


130 Modelle, <strong>Referenz</strong>modelle und Metamodelle<br />

Zur Beschreibung objektorientierter Systeme stellt auch die UML mehrere <strong>visuelle</strong> Sprachen<br />

[Booch et al., 1999], [OMG, 1999, S. 3-1ff] bereit4 . Neben Use-Case-Diagrammen<br />

und Objekt-Beziehungsdiagrammen (Klassendiagrammen) werden u. a. Statecharts, Aktivitätsdiagramme<br />

und Interaktionsdiagramme als <strong>visuelle</strong> Darstellungsmittel verwendet.<br />

Wie generell <strong>für</strong> objektorientierte Modellierungsmethoden sind auch in UML Objekt-<br />

Beziehungsdiagramme eine wesentliche Modellierungstechnik, die auch zur Modellierung<br />

von Metamodellen eingesetzt werden kann. Für die Standardisierung von UML ist es daher<br />

naheliegend, die Methode auch mit UML-Mitteln zu beschreiben.<br />

Die UML-Beschreibungen in [OMG, 1999, S. 2-1ff] umfassen sowohl die Festlegung der<br />

abstrakten Syntax als auch die Darstellung der Bedeutung dieser Sprachelemente. Zur Festlegung<br />

der abstrakten Syntax werden die Sprachkonstrukte der UML und ihre Beziehungen<br />

durch UML-Klassendiagramme definiert und glossarartig näher beschrieben. Zusätzliche<br />

Integritätsbedingungen an diese Konzeptmodellierung werden natürlichsprachlich und formal<br />

in der Object Constraint Language (OCL) [OMG, 1999, 6-1ff] formuliert. OCL entstammt<br />

der Modellierungsmethode Syntropy [Cook / Daniels, 1994] und wurde von IBM<br />

und ObjecTime als „leicht les- und schreibbare“ [OMG, 1999, S. 6-3ff] formale Sprache<br />

zur Geschäftsmodellierung entwickelt und ist seit Version 1.1 auch Bestandteil der UML.<br />

Während durch dieses Modell die Modellierungskonzepte der UML und die Zusammenhänge<br />

zwischen diesen beschrieben werden, ist das Vorgehen zur Erstellung einer UML-<br />

Modellierung nicht in der Dokumentation der Sprache enthalten. Dieses Modell beschreibt<br />

somit das <strong>Metaschema</strong> <strong>für</strong> UML, das aufgrund der verwendeten Modellierungssprache<br />

auch ein <strong>Metaschema</strong> in UML ist. Verwendung findet dieses <strong>Metaschema</strong> als Grundlage<br />

zur Festlegung der <strong>Se</strong>mantik von UML. Die Bedeutung der einzelnen Sprachkonstrukte<br />

wird durch einen entsprechenden Ausschnitt des <strong>Metaschema</strong>s eingeleitet und natürlichsprachlich<br />

beschrieben. Das so entstandene Dokument zur <strong>Se</strong>mantikbeschreibung [OMG,<br />

1999, S. 2-1ff] stellt gemeinsam mit der Festlegung der konkreten Syntax in [OMG, 1999,<br />

S. 3-1ff] die wesentliche Beschreibung der Modellierungsmethode zur Diskussion der Unified<br />

Modeling Language im Rahmen des Standardisierungsverfahrens dar.<br />

Weitere <strong>Metaschema</strong>ta <strong>für</strong> objektorientierte Entwurfsmethoden als Grundlage zur Beurteilung<br />

dieser Methoden werden auch in [Strahringer, 1996, S. 121ff] vorgestellt. Ausschnitte aus <strong>Metaschema</strong>ta<br />

zu Methoden, die im Rahmen der Standardisierung objektorientierter Methoden eingereicht<br />

wurden, finden sich in [Frank, 1997b].<br />

4.3.2 Zusammenfassung: Anwendungsbereiche von Metamodellen<br />

Wie die zuvor skizzierten Beispiele <strong>für</strong> Metamodelle zeigen, werden Metamodelle sowohl in<br />

ihrer Rolle als spezielle Modelle als auch in der Rolle als <strong>Referenz</strong>modelle verwendet.<br />

In ihrer Funktion als spezielle Modelle dienen Metamodelle als generelles Mittel zur Beschreibung<br />

und Untersuchung von Methoden und Techniken zur Modellierung. Durch die Darstellung<br />

der abstrakten Syntax der Methoden in <strong>Metaschema</strong>ta und durch die Beschreibung des<br />

Modellierungsvorgehens in Meta-Aktivitätsmodellen eignen sie sich auch zur Schulung dieser<br />

4 Die jeweils aktuellen Sprachbeschreibungen zu UML sind über http://www.rational.com/uml/ (14.09.<br />

1999) abrufbar.


4.3 Metamodelle 131<br />

Modellierungsmethoden. Die <strong>Metaschema</strong>ta bieten darüber hinaus auch die Grundlage zur Festlegung<br />

der innerhalb der Methode verwendeten Terminologie. Für den Bau von Werkzeugen zur<br />

Unterstützung einer vorgegebenen Methode liefern die <strong>Metaschema</strong>ta auch das konzeptionelle<br />

Datenmodell. Metamodelle werden auch als Ausgangspunkt zur Beschreibung der <strong>Se</strong>mantik der<br />

Sprachelemente von Modellierungsmethoden verwendet. Aufgrund der formalen Beschreibung<br />

der abstrakten Syntax einer Methode in einem Metamodell bildet dieses auch die Grundlage zur<br />

Überprüfung der (syntaktischen) Korrektheit von Modellen.<br />

Im Zusammenspiel mit anderen Metamodellen kann Metamodellen auch <strong>Referenz</strong>-Charakter zugesprochen<br />

werden. Methodenbeschreibungen durch Metamodelle bieten eine aussagekräftige<br />

Grundlage zur Diskussion der Modellierungskonzepte. In diesem Zusammenhang werden Metamodelle<br />

z. B. auch als Ausgangspunkt zur Standardisierung verwendet. Ein wesentlicher Anwendungsbereich<br />

von <strong>Referenz</strong>-Metamodellen ist ihre Verwendung als Basis zum Vergleich der Konzepte<br />

und Vorgehensweisen unterschiedlicher Modellierungsmethoden und zur Entwicklung von<br />

Metamodellen zu Modellierungsmethoden. Solche <strong>Referenz</strong>-Metamodelle finden auch Anwendung<br />

zur Einordnung und zum Vergleich von Modellierungswerkzeugen. <strong>Referenz</strong>-Metamodelle<br />

werden auch zur Methoden- und Technik-unabhängigen Schulung von Konzepten zur Modellierung<br />

verwendet. Ebenso wird durch solche <strong>Referenz</strong>modelle eine einheitliche und ebenfalls von<br />

konkreten Methoden und Techniken unabhängigen Terminologie festgelegt.<br />

Anwendungsbereiche von Metamodellen<br />

als spezielles Modell als <strong>Referenz</strong>modell<br />

¯ Beschreibung und Untersuchung<br />

von Modellierungsmethoden<br />

¯ Schulung von Modellierungsmethoden<br />

¯ Festlegung der Terminologie<br />

der Modellierungsmethoden<br />

¯ Bau von Modellierungswerkzeugen<br />

¯ Ausgangspunkt zur Festlegung<br />

der <strong>Se</strong>mantik von<br />

Modellierungsmethoden<br />

¯ Überprüfung der<br />

(syntaktischen) Korrektheit<br />

von Modellen<br />

¯ Grundlage zur Diskussion und<br />

Standardisierung von<br />

Modellierungskonzepten<br />

¯ Festlegung einer<br />

methodenunabhängigen<br />

Terminologie<br />

¯ Methoden- und technikunabhängige<br />

Schulung<br />

¯ Grundlage zur Beurteilung von<br />

Modellierungsmethoden und<br />

-werkzeugen<br />

¯ Maßstab zum Vergleich von<br />

Metamodellen zu Modellierungsmethoden<br />

und -werkzeugen<br />

¯ Hilfsmittel zur Erstellung von<br />

Metamodellen zu Modellierungsmethoden<br />

und -werkzeugen<br />

Abbildung 4.2: Anwendungsbereiche von Metamodellen<br />

Die Anwendungsbereiche von Metamodellen sind in Abbildung 4.2 zusammengefaßt. Einen ausführlichen<br />

Überblick über Anwendungsbereiche von Metamodellen bieten auch [Brinkkemper,<br />

1990, S. 33f] und [Strahringer, 1996, S. 49ff].


132 Modelle, <strong>Referenz</strong>modelle und Metamodelle<br />

4.3.3 Metamodelle und <strong>Referenz</strong>modelle<br />

Zu einem Modell können sowohl <strong>Referenz</strong>modelle als auch Metamodelle existieren. In diesem<br />

Abschnitt werden die unterschiedlichen Zusammenhänge zwischen Modellen, <strong>Referenz</strong>modellen<br />

und Metamodellen anhand ihrer Einordnung in Abstraktionsebenen zusammenfassend dargelegt.<br />

Bei der Betrachtung von Sprachen werden Objektsprachen und Metasprachen unterschieden<br />

(vgl. [Bußmann, 1990]). Während Objektsprachen solche Sprachen bezeichnen, die Betrachtungsgegenstand<br />

einer Untersuchung sind, bezeichnen Metasprachen oder Syntaxsprachen diejenigen<br />

Sprachen, in denen die Untersuchung erfolgt (vgl. auch [Carnap, 1968],[Mittelstraß,<br />

1984]). Mit Meta-Metasprachen bezeichnet man folglich Sprachen zur Beschreibung der Metasprache<br />

einer Objektsprache. Diese Unterscheidung kann auf <strong>Modellierungssprachen</strong> und -<br />

methoden übertragen werden. Nach dem Abstraktionsgrad eines Modells von einer modellierten<br />

Realität können analog die Modellebene, dieMeta-Modellebene und die Meta-Meta-<br />

Modellebene unterschieden werden.<br />

Die erste Ebene faßt die Modelle der Diskurswelt in der Modellebene zusammen. Metamodelle<br />

sind in der zweiten Ebene (Metamodellebene) zusammengefaßt. Durch Metamodelle wird<br />

die Methode beschreiben, die der Modellierung zu Grunde liegt. Modelle sind daher als Instanzen<br />

zu Metamodellen aufzufassen. In ähnlicher Form sind Metamodelle Instanzen von Meta-<br />

Metamodellen, die die dritte Ebene (Meta-Metamodellebene) bilden. Zwischen Modell, Metamodell<br />

und Meta-Metamodell existiert folglich eine hierarchische Instanz-Schema-Beziehung.<br />

Die Anzahl dieser Ebenen ist je nach Modellierungsansatz verschieden. Die Betrachtungen von<br />

[Gigch, 1991] und [Verhoef et al., 1991] basieren auf drei Abstraktionsebenen. [Hars, 1994,<br />

S. 12] betrachtet die Modell- und die Metamodell-Ebene, wobei jedoch die Modellebene noch<br />

weiter instanziert wird. Die Modellierungsansätze von CDIF [Flatscher, 1998, S. 32] und der<br />

Unified Modeling Language [OMG, 1999, S. 2-4] verfolgen einen vier-Ebenen Ansatz, bei denen<br />

Instanz-Ebene, Modellebene, Metamodellebene und Meta-Metamodellebene unterschieden<br />

werden. Der Gliederungsansatz kann auch auf beliebig viele Ebenen ausgedehnt werden (vgl.<br />

z. B. [Auramäki et al., 1987], [Mylopoulos et al., 1990]). In diesen Arbeiten werden in höheren<br />

Ebenen generell Meta-Modelle der niedrigeren Ebene betrachtet. Dieses führt zu einer unbegrenzten<br />

Hierarchie jeweils abstrakterer Modelle. Die hier vorliegende Arbeit basiert auf einer<br />

Strukturierung entlang der Modell-, der Metamodell- und der Meta-Metamodellebene. Die Ebene<br />

der Instanzmodelle bleibt hier unberücksichtigt.<br />

Die Modell-, die Metamodell- und die Meta-Metamodellebene enthalten aus Sicht der jeweils<br />

niedrigeren Ebene Modelle. Innerhalb einer Ebene können Modelle als <strong>Referenz</strong>modelle ausgezeichnet<br />

werden. Während die Instanz-Schema-Beziehung Modelle benachbarter Ebenen verbindet,<br />

bezieht sich <strong>Referenz</strong>-Beziehung auf Modelle einer Ebene. Beispielhaft sind diese Zusammenhänge<br />

zwischen Modellen, Metamodellen, Meta-Metamodellen und <strong>Referenz</strong>modellen<br />

in Abbildung 4.3 zusammengefaßt. Instanz-Schema-Beziehungen sind hierbei in der Vertikalen<br />

und <strong>Referenz</strong>-Beziehungen in der Horizontalen notiert.<br />

Innerhalb einer Ebene können durchaus mehrere <strong>Referenz</strong>modelle existieren. Ein aus einem <strong>Referenz</strong>modell<br />

abgeleitetes Modell kann wieder <strong>Referenz</strong> <strong>für</strong> die Ableitung oder den Vergleich<br />

anderer Modelle sein (vgl. die Modelle Å4, Å2 und Å1 in Abbildung 4.3). Ein <strong>Referenz</strong>modell<br />

<strong>für</strong> Krankenhaus-Informationssysteme kann beispielsweise einerseits aus einem allgemeinen Re-


4.3 Metamodelle 133<br />

3<br />

2<br />

1<br />

Meta-<br />

Meta-<br />

Modell-<br />

Ebene<br />

Meta-<br />

Modellebene<br />

Modellebene<br />

M 1<br />

MM 1<br />

M 2<br />

MMM 1<br />

MM 2<br />

M 3 M 4<br />

MMM 2<br />

MM 3<br />

Abbildung 4.3: Metamodell und <strong>Referenz</strong>modelle<br />

M 5<br />

Modell<br />

<strong>Referenz</strong>modell<br />

istInstanzVon<br />

ist<strong>Referenz</strong>Für<br />

ferenzmodell <strong>für</strong> Informationssysteme abgeleitet worden sein und andererseits wieder <strong>Referenz</strong><br />

<strong>für</strong> eine spezielle Modellierung eines Krankenhaus-Informationssystemes sein.<br />

<strong>Referenz</strong>beziehungen können auch zyklisch sein. So kann ein Modell (Å4) beispielsweise als <strong>Referenz</strong><br />

zur Erstellung eines Modells (Å5) herangezogen werden, das anschließend wieder als <strong>Referenz</strong><br />

zur Bewertung des ersten Modells verwendet wird. Beispiele hier<strong>für</strong> sind die SOCRATES-<br />

Modelle der „Supermethoden“ aus [Brinkkemper et al., 1989] und [Goor et al., 1992] und die<br />

hiermit verglichenen Methoden.<br />

Es ist auch möglich, daß Metamodelle zu einem <strong>Referenz</strong>modell und einem hierzu speziellen<br />

Modell unterschiedlich sind (vgl. die Modell-Metamodell-Paare Å1, ÅÅ1 und Å2, ÅÅ2). So<br />

könnte eine Instanz des UML-<strong>Metaschema</strong>s durchaus auch Ausgangspunkt einer EER/GRAL-<br />

Modellierung sein. Der Vergleich verschiedener Modellierungen ist jedoch einfacher, wenn die<br />

Modelle Instanzen desselben Metamodells sind.<br />

In der hier vorgestellten Einordnung von Modellen, <strong>Referenz</strong>modellen und Metamodellen wird<br />

deutlich zwischen <strong>Referenz</strong>- und Metamodell unterschieden. [Lehner, 1995, S. 126] macht diese<br />

Unterscheidung nicht. Metamodellen wird hier im Bezug zu Modellinstanzen auch <strong>Referenz</strong>charakter<br />

zugesprochen in dem Sinn, daß „Metamodelle [...] <strong>Referenz</strong>modelle<strong>für</strong>alledaraus abgeleiteten Modelle darstellen“. Dieser Auffassung wird hier nicht gefolgt, da hierdurch die<br />

klare Trennung zwischen dem Beibehalten der Abstraktionsebene bei der <strong>Referenz</strong>modellierung<br />

und dem Wechsel der Abstraktionsebene bei der Metamodellierung verwischt würde. Ein vergleichende<br />

Diskussion von <strong>Referenz</strong>- und Metamodellen nimmt auch [Hars, 1994, S. 15ff] vor.<br />

Hier wird ebenfalls deutlich zwischen Meta- und <strong>Referenz</strong>modellen unterschieden.


134 Modelle, <strong>Referenz</strong>modelle und Metamodelle<br />

4.4 Einordnung in die Zielsetzung dieser Arbeit<br />

Das in Kapitel 6 vorgestellte <strong>Referenz</strong>-<strong>Metaschema</strong> der <strong>visuelle</strong>n <strong>Modellierungssprachen</strong> <strong>für</strong> Organisationen<br />

und Softwaresysteme kann auch entlang der in den Kapiteln 4.1–4.3 beschriebenen<br />

Begriffsbestimmungen und Anforderungen als Modell, als <strong>Referenz</strong>modell und als Metamodell<br />

eingeordnet werden.<br />

Modelle<br />

Das <strong>Referenz</strong>-<strong>Metaschema</strong> der Beschreibungsmittel ist als statisches Modell einzustufen, da es<br />

die Konzepte und deren Beziehungen von Beschreibungssprachen unabhängig von zeitlichen<br />

und methodischen Aspekten notiert. Zur Modellbeschreibung wird der mathematisch fundierte<br />

EER/GRAL-Ansatz (vgl. Kapitel 5.2) verwendet, so daß das resultierende Modell zusätzlich symbolisch<br />

und formal ist. Nach dem Verwendungszweck ist das <strong>Referenz</strong>-<strong>Metaschema</strong> als Deskriptionsmodell<br />

zu klassifizieren, da durch die mit EER/GRAL vorgegebene Modellierungstechnik<br />

Konzepte und deren Beziehungen in den Vordergrund gestellt werden. Solche Konzeptmodelle<br />

unterstützen in besonderem Maß die Komm<strong>uni</strong>kation über die modellierten Zusammenhänge.<br />

Darüber hinaus kann aus einem EER/GRAL-Modell auch nahtlos eine Implementation abgeleitet<br />

werden. Das <strong>Referenz</strong>-<strong>Metaschema</strong> ist auch als didaktisches Modell einsetzbar, da es durch die in<br />

der Modellierung explizit herausgearbeiteten Konzepte und deren Beziehungen eine einheitliche<br />

Vermittlung und Schulung der Beschreibungsmittel auf einem, von der konkreten Notationsform<br />

unabhängigen Niveau, unterstützt.<br />

<strong>Referenz</strong>modelle<br />

Dem <strong>Referenz</strong>-<strong>Metaschema</strong> der <strong>visuelle</strong>n <strong>Modellierungssprachen</strong> der Organisations- und Softwaretechnik<br />

kann auch <strong>Referenz</strong>charakter zugesprochen werden. Dieses Modell wird mit dem<br />

Ziel erstellt, zum einen die Begriffe, die in den betrachteten Sprachen verwendet werden, einheitlich<br />

festzulegen und sie in ihrem Zusammenwirken zu beschreiben. Aufgrund der Modellierung<br />

entlang des EER/GRAL-Ansatzes (vgl. Kapitel 5.2), die insbesondere die Konzepte der Beschreibungsmittel<br />

in den Vordergrund stellt, eignet sich dieses Modell zur Methoden-unabhängigen<br />

Ausbildung der Beschreibungsmittel auf konzeptioneller Ebene. Wesentlicher Anwendungsbereich<br />

dieses <strong>Referenz</strong>modells ist die Verwendung als Vergleichs- und Modellierungsmittel. Die<br />

Anwendbarkeit des <strong>Referenz</strong>-<strong>Metaschema</strong>s wird in Teil III begründet. Hierzu wird es zur Betrachtung<br />

der Beschreibungsmittel von Modellierungsmethoden <strong>für</strong> Organisationen (Kapitel 7)<br />

und Softwaresystemen (Kapitel 8) und zur Entwicklung eines Werkzeugs zur Organisationsmodellierung<br />

(Kapitel 9) eingesetzt.<br />

Metamodelle<br />

Modellierungsziel des <strong>Referenz</strong>modells ist eine konzeptionelle, integrierte Beschreibung unterschiedlicher,<br />

strukturierter Modellierungstechniken, die zur Modellierung organisatorischer und<br />

softwaretechnischer Zusammenhänge verwendet werden. Vorgehensaspekte der Modellierungstechniken<br />

werden nicht betrachtet. Für die Beschreibungsmittel aus Kapitel 3 wird in Teil II ein


4.4 Einordnung in die Zielsetzung dieser Arbeit 135<br />

<strong>Metaschema</strong> entwickelt. Bezogen auf die drei Abstraktionsebenen aus Kapitel 4.3 befindet sich<br />

dieses Modell auf der Metamodell-Ebene.<br />

Da dieses <strong>Metaschema</strong> auch <strong>Referenz</strong> sowohl <strong>für</strong> die Einordnung und Beschreibung von Modellierungsmethoden<br />

als auch <strong>für</strong> die Ableitung von Werkzeugen dient, ist es zusammenfassend als<br />

<strong>Referenz</strong>-<strong>Metaschema</strong> einzustufen.


Teil II<br />

Modellbildung des <strong>Referenz</strong>-<strong>Metaschema</strong>s<br />

Das <strong>Referenz</strong>-<strong>Metaschema</strong> der <strong>visuelle</strong>n <strong>Modellierungssprachen</strong> <strong>für</strong> Organisationen und Softwaresysteme<br />

wird in den folgenden Kapiteln entlang des in Kapitel 3 entwickelten Klassifikationsschemas<br />

hergeleitet.<br />

Die Erstellung des <strong>Referenz</strong>-<strong>Metaschema</strong>s erfolgt mit den Mitteln der graphbasierten Konzeptmodellierung.<br />

Hierzu wird zunächst in Kapitel 5 in die Konzeptmodellierung eingeführt.<br />

Ausgehend von seiner formalen, graphbasierten Basis wird der zur Modellierung verwendete<br />

EER/GRAL-Ansatz zur Konzeptmodellierung vorgestellt und in die Methoden und Techniken<br />

der Konzeptmodellierung eingeordnet.<br />

Die Darstellung des <strong>Referenz</strong>-<strong>Metaschema</strong>s erfolgt in Kapitel 6. Zu jedem der in Kapitel 3<br />

eingeführten Beschreibungsparadigmen werden in den Kapiteln 6.2.1 bis 6.5.3 EER/GRAL-<br />

<strong>Metaschema</strong>ta vorgestellt. Durch Anwendung dieser <strong>Metaschema</strong>ta zur Erstellung der speziellen<br />

<strong>Metaschema</strong>ta wesentlicher Vertreter der einzelnen Sprachparadigmen, wird deren <strong>Referenz</strong>-<br />

Eigenschaft begründet. Die Integration dieser paradigmenbezogenen <strong>Referenz</strong>-<strong>Metaschema</strong>ta<br />

zum integrierten <strong>Referenz</strong>-<strong>Metaschema</strong> der <strong>visuelle</strong>n Modellierunssprachen <strong>für</strong> Organisationen<br />

und Softwaresysteme erfolgt in Kapitel 6.6.<br />

Die <strong>Referenz</strong>-Eigenschaft dieses integrierten <strong>Referenz</strong>-<strong>Metaschema</strong>s wird in Teil III anhand der<br />

Beschreibungsmittel verschiedener Ansätze zur Organisations- und Softwaremodellierung nachgewiesen.


5 Graphbasierte Konzeptmodellierung<br />

Die Erstellung des <strong>Referenz</strong>-<strong>Metaschema</strong>s folgt dem EER/GRAL-Ansatz zur graphbasierten<br />

Konzeptmodellierung. Nach einer kurzen Einführung in die konzeptionelle Modellierung in Kapitel<br />

5.1 folgt in Kapitel 5.2 die Darstellung des in dieser Arbeit verwendeten Modellierungsansatzes<br />

einschließlich seiner formalen Basis.<br />

5.1 Konzeptmodellierung<br />

Unter Konzeptmodellierung versteht man eine Modellierung, bei der Gegenstände der zu modellierenden<br />

Realität durch Konzept- oder Begriffsgeflechte beschrieben werden. Ein Konzept<br />

faßt hierbei gedankliche Vorstellungen über die Eigenschaften und Merkmale des zu modellierenden<br />

Gegenstandes zusammen [DIN 2330, 1993]. Konzepte werden in Allgemeinbegriffe und<br />

Individualbegriffe unterschieden. Während Individualbegriffe konkrete, eindeutige Dinge der zu<br />

modellierenden Realität beschreiben, werden durch Allgemeinbegriffe Dinge mit gleichen Eigenschaften<br />

zusammengefaßt. Die Konzepte selbst werden durch Symbole oder Begriffsworte,<br />

deren Bildung und Verwendung willkürlich vereinbart sein kann, notiert. Die Zusammenhänge<br />

zwischen Gegenstand, Konzept und Symbol sind in Abbildung 5.1 in einem Konzeptmodell<br />

skizziert (vgl. hierzu auch das Bedeutungsdreieck in [Ogden / Richards, 1923, S. 14]).<br />

Gegenstand<br />

beschreibt<br />

wird bezeichnet<br />

Konzept Symbol<br />

durch<br />

Abbildung 5.1: Zusammenhang zwischen den Begriffen „Gegenstand“, „Konzept“ und<br />

„Symbol“<br />

Wesentliches Merkmal der Konzeptmodellierung ist die Abbildung der Realität durch Konzepte,<br />

die ein möglichst allgemein akzeptiertes Verstehen der Dinge der Realität widerspiegeln. Durch<br />

die hierbei verwendeten Konzepte werden jeweils Eigenschaften gleichartiger Dinge zusammengefaßt.<br />

Hierbei werden sowohl Konzepte zur Beschreibung von Begriffen als auch Konzepte zur<br />

Beschreibung von Beziehungen (vgl. [Frege, 1891, S. 37]) verwendet. Die Konzeptualisierungen<br />

der Begriffe auf der Ebene der Allgemeinbegriffe werden Objekttypen oder Objektklassen und<br />

die Konzeptualisierungen der Beziehungen Beziehungstypen oder Beziehungsklassen genannt.<br />

Diese Auffassung der Modellierung der realen Welt durch Entitäten oder Objekte und Beziehungen<br />

folgte auch [Chen, 1976] in seinem Beitrag zur Einführung der Objekt-Beziehungsmodellie-


140 Graphbasierte Konzeptmodellierung<br />

rung: „The entity-relationship model adopts the more natural view, that the real world consists of<br />

entities and relationships“. Auch die Wissensrepäsentation folgt dieser Auffassung. In Schemata<br />

zur Beschreibung von Wissen wird der abzubildende Gegenstandsbereich als Sammlung von Individuen<br />

und hierzwischen vorliegenden Beziehungen aufgefaßt [Mylopoulos/Levesque, 1996].<br />

Die Konzeptmodellierung wird von [Berztiss/Matjasko, 1995] ebenfalls als die Beschreibung einer<br />

Diskurswelt durch Objekte, deren Attribute und durch Beziehungen zwischen den Objekten,<br />

charakterisiert. Ähnlich definiert [Frank, 1994, S. 81] Konzeptmodelle als „Abstraktion realweltlicher<br />

Gegenstände oder Sachverhalte, und [den] zwischen ihnen existierenden Beziehungen“.<br />

Eine Einschränkung der Konzeptmodellierung auf Individual- oder auf Allgemeinbegriffe wird<br />

durch keine dieser Definitionen gefordert.<br />

Konzeptmodellierung ist die Abstraktion der Realität durch mentale Repräsentationen<br />

(Konzepte) der realen oder abstrakten Dinge der zu modellierenden Diskurswelt<br />

und den hierzwischen bestehenden Beziehungen verstanden. Diese Konzepte<br />

werden in einer symbolischen Form notiert.<br />

Konzeptmodellierung, wie sie heute verwendet wird, geht auf Überlegungen der künstlichen<br />

Intelligenz- und der Softwaretechnikforschung in den Bereichen der Datenbanken und der Programmiersprachen<br />

zurück. Die Einflüsse aus Sicht der Datenbanken beziehen sich in erster Linie<br />

auf die Modellierung statischer Aspekte durch semantische Modelle. Der Beitrag der Programmiersprachen<br />

bezieht sich auf die Modellierung von Verhaltensaspekten und Datenstrukturen.<br />

Höhere Modellierungskonstrukte wie die Aggregation („partOf-Beziehungen“), die Gruppierung<br />

(„memberOf-Beziehungen“), die Generalisierung bzw. die Spezialisierung („isA-Beziehungen“)<br />

und die Instanziierung werden als Beitrag der Überlegungen in der Wissensrepräsentation der<br />

Künstlichen Intelligenz betrachtet (vgl. [Rolland / Cauvet, 1992]). Diese Wurzeln werden auch<br />

in [Brodie et al., 1986], [Loucopoulos / Zicari, 1992] und [Kangassalo et al., 1995] einschließlich<br />

ausführlicher Anwendungsbeispiele beschrieben. Eine Abgrenzung von Konzeptmodellierung<br />

gegenüber der Wissensrepräsentation bzw. der semantischen Datenmodellierung skizziert<br />

[Mylopoulos, 1992]. Während in der Wissensrepräsentation die Modellierung von Wissensbasen<br />

eher von dem Hintergrund der automatischen Ableitung von Wissen geprägt ist, verfolgt die Konzeptmodellierung<br />

eher das Ziel, eine adäquate Form zur Beschreibung der Realität zur Schaffung<br />

eines gemeinsamen Verständnisses unter menschlichen Benutzern bereitzustellen. Die semantische<br />

Datenmodellierung faßt John Mylopoulos daher als Ergänzung der Konzeptmodellierung<br />

zur Umsetzung in einem Computersystem auf. Gegenüber der (reinen) Konzeptmodellierung<br />

sind bei der semantischen Datenmodellierung weitere, technisch bedingte Rahmenbedingungen<br />

zu beachten.<br />

Anwendung finden Konzeptmodelle in erster Linie zur Beschreibung des Wissens über einen<br />

zu modellierenden Sachverhalt z. B. im Rahmen der Entwicklung von Informationssystemen<br />

(vgl. z. B. [Loucopoulos, 1992]). Ziel ist hierbei die formale Beschreibung sowohl der technischen<br />

wie auch sozialen Zusammenhänge des Informationssystems als Grundlage zur Komm<strong>uni</strong>kation<br />

zwischen den Beteiligten und zur Schaffung eines gemeinsamen Verstehens über<br />

das betrachtete System [Mylopoulos / Levesque, 1996], [Mylopoulos, 1992], [Frank / Prasse,<br />

1997a]. Bei der Entwicklung von Datenbanksystemen stellt die Erstellung von Konzeptmodellen<br />

die erste Phase des Datenbank-Entwurfs (vgl. z. B. [Batini et al., 1992]) dar. Die hier entwickelten<br />

konzeptionellen Schemata beschreiben Datenbankinhalte unabhängig von eingesetz-


5.1 Konzeptmodellierung 141<br />

ten Datenbank-Managementsystemen oder Programmiersprachen. Generell gilt <strong>für</strong> Konzeptmodellierungen,<br />

daß von Randbedingungen, die z. B. durch eine mögliche informationstechnische<br />

Umsetzung oder eine konkrete Darstellungsform gegeben sind, abstrahiert wird.<br />

In dieser Arbeit wird die Konzeptmodellierung zur Erstellung eines Metadatenmodells der in<br />

Organisations- und Softwaretechnik eingesetzten <strong>visuelle</strong>n <strong>Modellierungssprachen</strong> verwendet.<br />

Im Sinn der Konzeptmodellierung stellen sowohl die hier verwendeten Sprachmittel als auch die<br />

zwischen den Sprachmitteln vorliegenden Beziehungen Konzepte dar, die in ihrem Zusammenspiel<br />

zu beschreiben sind. Von Layout-Aspekten, d. h. von den symbolischen Formen der in den<br />

einzelnen Beschreibungsmitteln verwendeten Konzepten wird hierbei abstrahiert.<br />

Ansätze zur Konzeptmodellierung<br />

Zur Beschreibung von Konzeptmodellen auf Ebene der Allgemeinbegriffe bieten sich in erster<br />

Linie die <strong>visuelle</strong>n <strong>Modellierungssprachen</strong> an, die dem Objekt-Beziehungsparadigma (vgl. Kapitel<br />

3.5.3) folgen. So sind auch die im Kapitel 4.3 skizzierten Konzeptmodelle zur Metadatenmodellierung<br />

in verschiedenen Dialekten der Objekt-Beziehungsmodellierung dargestellt. Zur<br />

Beschreibung des IFIP WG 8.1 <strong>Metaschema</strong>s wurden einfache Datenstruktur-Diagramme [Olle<br />

et al., 1991, S. 61ff] eingesetzt, die Mittel zur Beschreibung der Objekttypen und binärer<br />

Beziehungstypen einschließlich deren Kardinalitäten bereitstellen. Die Metadatenmodelle des<br />

CC-RIM-<strong>Referenz</strong>modells werden durch ASDM-Diagramme [Heym / Österle, 1993], [Gutzwiller,<br />

1994, S. 24ff], [Heym, 1995, S. 15ff] notiert, die Konzepte verschiedener Typen u. a. zur<br />

Beschreibung von Spezialisierungen und Aggregationen und ebenfalls binäre Beziehungen mit<br />

Kardinalitäten enthalten. Attribute, die weiter strukturiert sein können, werden verbal beschrieben.<br />

Das ARIS-Informationsstrukturmodell ist in einer Erweiterung der von [Chen, 1976] vorgeschlagenen<br />

Notation dargestellt, die Ausdrucksmittel <strong>für</strong> Objekttypen, Beziehungstypen beliebiger<br />

Arität und Attribute bereitstellt. Die Erweiterungen in [Scheer, 1992, S. 51ff] beziehen<br />

sich auf Ergänzungen um die Generalisierung von Konzepten und um die Uminterpretation<br />

von Beziehungstypen in Objekttypen. Die Beschreibung des Metadatenmodells zur ME-<br />

MO [Frank, 1994] erfolgt in erster Linie verbal. In graphischen Darstellungen werden darüber<br />

hinaus die Generalisierungs- bzw. Spezialisierungsbeziehungen zwischen den modellierten<br />

Konzepten sowie ausgewählte Beziehungen, die hier ebenfalls binär aufgefaßt werden, herausgestellt.<br />

Datenmodelle zu SOCRATES-Metamodellen [Verhoef et al., 1991] werden durch<br />

NIAM-Informationsstruktur-Diagramme [Verheijen / van Bekkum, 1982], [Wintraeken, 1985]<br />

notiert. Objekttypen, die weiter spezialisiert sein können, werden durch ebenfalls binäre Beziehungstypen<br />

verbunden. In Gegensatz zu den bisher genannten Modellierungsmitteln werden<br />

in NIAM noch die Rollen der Konzepte in einer Beziehung herausgestellt. Die Darstellung<br />

der CDIF-Metamodelle [Flatscher, 1998] erfolgt durch erweiterte, nicht attributierte Objekt-<br />

Beziehungsdigramme, die um umfangreiche Listen zur Attributierung der Objekt- und Beziehungsklassen<br />

ergänzt werden.<br />

Weitere Ansätze zur Konzeptmodellierung nach dem Objekt-Beziehungsparadigma bieten auch<br />

die Notationen zur Beschreibung von Klassendiagrammen (vgl. z. B. [Rumbaugh et al., 1991,<br />

S. 25ff], [Booch, 1994, S. 158ff] oder [Rumbaugh et al., 1999, S. 41ff]) der objektorientierten<br />

Modellierungsmethoden. Gegenüber den bisher skizzierten Ansätzen zur Konzeptmodellierung<br />

stellen diese Beschreibungsmittel auch Konzepte zur Modellierung des Verhaltens der<br />

Klassen durch Methodendeklarationen bereit, die jedoch z. B. zur Modellierung des UML-


142 Graphbasierte Konzeptmodellierung<br />

Metadatenmodells [OMG, 1999, S. 2-1ff] nicht verwendet wurden. Übersichten zu Ansätzen der<br />

Konzeptmodellierung auf Basis von Objekt-Beziehungsmodellierungen geben auch [Brinkkemper,<br />

1990, S.36ff] [Hars, 1994, S. 110] und [Tolvanen, 1998, S. 81ff].<br />

Nicht alle Ansätze zur Konzeptmodellierung beziehen sich ausschließlich auf die Ebene der Allgemeinbegriffe<br />

und verwenden Beschreibungsmittel des Objekt-Beziehungsparadigmas. So findet<br />

der in [Mylopoulos et al., 1990] eingeführte Konzeptmodellierungs-Ansatz Telos (τ´ελÓς)<br />

seine Wurzeln in der Wissensrepräsentation durch semantische Netze. Elementares Modellierungsmittel<br />

sind Propositionen. Diese beschreiben sowohl Objekte, Objektklassen als auch Attribute.<br />

Attribute sind hierbei als binäre, benannte Zuordnungen zwischen Propositionen aufzufassen.<br />

Telos-Konzeptmodelle werden durch Aggregationen, Generalisierungen und Instanziierungen<br />

(Klassifikationen) strukturiert. Im Gegensatz zur Objekt-Beziehungsmodellierung, bei<br />

der Klassen- und Objektmodellierungen klar getrennt sind, enthalten Wissensbasen sowohl Konzepte<br />

zur Beschreibung der Klassen als auch zur Beschreibung deren Instanzen. Die Konzeptmodellierung<br />

bezieht sich hier sowohl auf die Ebene der Individualbegriffe wie auch auf die<br />

Ebene der Allgemeinbegriffe. Neben einer textuellen Notation zur Beschreibung dieser strukturellen<br />

Eigenschaften können bei der Modellierung mit Telos in einer Zusicherungssprache Integritätsbedingungen<br />

und Ableitungsregeln in Prädikatenlogik erster Stufe formuliert werden. Mit<br />

ConceptBase [Jarke et al., 1995] liegt eine Implementation von Telos auf Basis objektorientierter<br />

Datenbanken vor. Diese Implementation erlaubt eine Partitionierung der in der Objektbasis<br />

enthalten Objekte in ein „Token layer“ zur Beschreibung der Instanzen und in ein „simple class<br />

layer“ zur Beschreibung der Schemainformation. Sie läßt darüber hinaus aber beliebig viele weitere<br />

„Meta-Ebenen“ zu.<br />

Zur Konzeptmodellierung kann auch ausschließlich Mengenlehre und Prädikatenlogik erster<br />

Stufe verwendet werden. Ein Beispiel hier<strong>für</strong> ist die Beschreibung von Petrinetzen in [Brinkkemper,<br />

1990, S.36ff]. Die Petri-Netz-Konzepte „Stellen“, „Transitionen“ und „Flußkanten“ werden<br />

hierbei durch Mengen modelliert. Beziehungen zwischen den Konzepten werden durch Prädikate<br />

über diesen Mengen zur Beschreibung der Adjazenzbeziehungen zwischen Stellen und Transitionen<br />

über Flußkanten notiert. Zusätzliche Einschränkungen an die so modellierte Struktur werden<br />

in prädikatenlogischen Termen angegeben.<br />

Die ebenfalls auf Mengenlehre und Prädikatenlogik aufbauende Spezifikationssprache Z [Spivey,<br />

1992] wird in [Miˇsić / Moser, 1997] zu Konzeptmodellierung objektorientierter Systeme<br />

verwendet. Basistypen modellieren hier die grundlegenden Entitäten wie „Object“ und „Interface“.<br />

Beziehungen zwischen diesen werden durch Relationen beschrieben, die mit zusätzlichen<br />

Einschränkungen in Z -Schemata zusammengefaßt sind. In ähnlicher Form wird die Spezifikationssprache<br />

GRAL [Capellmann / Franzke, 1991], die als Erweiterung von Z um graphentheoretische<br />

Konstrukte aufgefaßt werden kann, in [Winter, 1992] zur Konzeptmodellierung <strong>für</strong> Beschreibungsmittel<br />

des Objekt-Beziehungsparadigmas verwendet. Sowohl die Entitäten wie auch<br />

die Beziehungen und die Attributstrukturen der Objekt-Beziehungsmodellierung werden hierzu<br />

durch Z -Schemata abgebildet. Diese Schemata gehen als Komponenten in ein Schema zur<br />

Spezifikation der Klasse der Objekt-Beziehungsdiagramme ein. Zusätzliche Einschränkungen<br />

an das Zusammenspiel der Komponentenschemata werden durch entsprechende Z -Prädikate<br />

formalisiert. Von diesem (<strong>Referenz</strong>-) Modell wurden spezielle Modelle zur Beschreibung der<br />

Entity-Relationship-Diagramme nach [Elmasri / Navathe, 2000], der generischen <strong>Se</strong>mantischen<br />

Modelle nach [Hull/King, 1987] und der NIAM-Informationsstruktur-Diagramme nach [Verheijen/van<br />

Bekkum, 1982] abgeleitet. Die objektorientierte Z -Erweiterung ObjectZ wird in [Saeki,


5.1 Konzeptmodellierung 143<br />

1995] zur Konzeptmodellierung von Entity-Relationship-Diagrammen, Klassendiagrammen und<br />

Statecharts verwendet. Wie in [Winter, 1992] und [Miˇsić / Moser, 1997] werden auch hier die<br />

einzelnen Konzeptmodelle durch Z -Schemata modelliert, die die entsprechenden Konzepte als<br />

Komponenten enthalten. Neben diesen statischen Modellaspekten wird auch das Verhalten der<br />

Modelle durch entsprechende Methoden-Schemata beschrieben, die mit den statischen Schemata<br />

zusammengefaßt sind. Die Integration der einzelnen ObjectZ -Konzeptmodelle erfolgt durch<br />

zusätzliche Schemata, die die hierzu nötigen Prädikate enthalten.<br />

Grundsätzlich können zur Konzeptmodellierung sowohl die <strong>visuelle</strong>n, semiformalen Beschreibungsmittel<br />

des Objekt-Beziehungsparagdimas als auch die formalen, auf Prädikatenlogik basierenden,<br />

Ansätze verwendet werden. Die rein <strong>visuelle</strong>n Beschreibungsmittel reichen jedoch<br />

häufig nicht aus, um ausreichend detailierte Konzeptmodelle zu erstellen. Außer zur Darstellung<br />

von Kardinalitätsbeziehungen und von wenigen semantischen Bedingungen fehlen Modellierungskonstrukte<br />

zur Beschreibung zusätzlicher Einschränkungen. Insbesondere fehlen auch<br />

Mittel zur Beschreibung zusätzlicher Bedingungen, die <strong>für</strong> die Integration von Teilmodellen zu<br />

einem größeren Konzeptmodell benötigt werden. Formale Beschreibungsformen bieten dagegen<br />

die gewünschte Ausdruckskraft, sind aber wenig anschaulich. Zur Konzeptmodellierung bietet<br />

sich daher eine Kombination aus Objekt-Beziehungsdiagrammen zur Beschreibung einfacher<br />

struktureller Zusammenhänge und einer formalen Notation zur Beschreibung komplexer Einschränkungen<br />

an.<br />

Zur Darstellung solcher einfacher strukturellen Zusammenhänge verwenden daher auch [Saeki,<br />

1995] und [Miˇsić / Moser, 1997] neben den Z -Modellen Objekt-Beziehungsdiagramme.<br />

Ebenso schlägt [Brinkkemper, 1990, S.38ff] zur Konzeptmodellierung eine Kombination von<br />

NIAM-Informationsstruktur-Diagrammen und prädikatenlogischen Formeln vor. Zur Beschreibung<br />

des UML-Metamodells wurden ebenfalls sowohl UML-Klassendiagramme [Booch et al.,<br />

1999, S. 105ff] als auch zusätzliche formale Integritätsbedingungen in der Object Constraint<br />

Language (OCL) [OMG, 1999, S. 6.1ff] verwendet.<br />

Wesentlich <strong>für</strong> das Zusammenwirken von formalen und semiformalen, <strong>visuelle</strong>n Beschreibungsmitteln<br />

ist, daß beide Beschreibungsformen auf einer einheitlichen formalen Basis aufbauen.<br />

Insbesondere sollte die <strong>Se</strong>mantik der semiformalen Beschreibungsmittel in einer mit dem verwendeten<br />

formalen Beschreibungsansatz kompatiblen Form definiert sein.<br />

In dieser Arbeit wird zur Konzeptmodellierung der EER/GRAL-Ansatz [Ebert et al., 1996b]<br />

verwendet, der auch zur Beschreibung der KOGGE- und EER/GRAL-<strong>Metaschema</strong>ta (vgl. Kapitel<br />

4.3) eingesetzt wurde. Einfache strukturelle Aspekte werden hierbei durch erweiterte Objekt-<br />

Beziehungsdiagramme (extended Entity-Relationship-Diagramms; EER) beschrieben. Zur Beschreibung<br />

zusätzlicher Einschränkungen wird die Spezifikationssprache GRAL (Graph Specification<br />

Language) [Franzke, 1997] eingesetzt. Während GRAL als Erweiterung der prädikatenlogischen<br />

Sprache Z um Konstrukte zur einfachen Beschreibung von Graphen [Ebert / Franzke,<br />

1995] zu betrachten ist, unterliegt dem verwendeten EER-Dialekt eine graphbasierte <strong>Se</strong>mantik.<br />

Die <strong>Se</strong>mantik des EER-Dialekts wurde in [Dahm et al., 1998a] in Z beschrieben. Gemeinsam mit<br />

der Software-Bibliothek GraLab [Dahm/Widmann, 1998] zur Bearbeitung von Graphen liegt mit<br />

EER/GRAL ein formal basierter und durchgängiger Modellierungs- und Implementationsansatz<br />

vor. Dieser wird im folgenden Kapitel eingeführt.


144 Graphbasierte Konzeptmodellierung<br />

5.2 Konzeptmodellierung mit EER/GRAL<br />

Die Grundlage der Konzeptmodellierung mit EER/GRAL bilden Graphen. Nach einer Einführung<br />

in die formale Basis der hier verwendeten TGraphen und in die Konzeptmodellierung mit<br />

TGraphen auf Ebene der Individualbegriffe in Kapitel 5.2.1 erfolgt in Kapitel 5.2.2 die Darstellung<br />

des EER/GRAL-Ansatzes zur Konzeptmodellierung auf Ebene der Allgemeinbegriffe.<br />

5.2.1 TGraphen<br />

Graphen sind ein ausdrucksstarkes Mittel zur Konzeptmodellierung, das in vielen Bereichen<br />

zur Beschreibung von Gegenständen und den zwischen ihnen bestehenden Beziehungen genutzt<br />

wird. Anwendung finden Graphen bei Modellierungen und hierauf aufsetzenden Analysen z. B.<br />

in Physik, in Chemie, in Netzwerktheorie, im Operations Research und in den Sozialwissenschaften.<br />

Aufgrund der einfachen bildlichen (graphischen) Darstellung von Zusammenhängen<br />

durch Graphen eignen sich diese auch als anschauliches Komm<strong>uni</strong>kationsmittel.<br />

Neben dieser Anschaulichkeit zeichnen sich Graphen auch als Mittel zur Konzeptmodellierung<br />

aus, weil sie auf formal eingeführten mathematischen Konstrukten basieren (vgl. z. B. [Harary,<br />

1976] oder [Wilson, 1976]). Insbesondere stellen Graphen das mathematische Modell <strong>für</strong><br />

beliebige Zusammenhänge dar, die durch binäre Relationen ausdrückbar sind. Darüber hinaus<br />

definieren Graphen eine Datenstruktur <strong>für</strong> die eine Vielzahl erprobter Algorithmen zur Analyse<br />

existieren (vgl. z. B. [Berge, 1976], [Even, 1979], [Ebert, 1981] oder [Mehlhorn, 1984]). Graphen<br />

erlauben somit sowohl eine durchgängige Modellierung als auch eine softwaretechnische<br />

Realisierung [Engels et al., 1992], [Ebert et al., 1996a].<br />

Bei der Modellierung mit Graphen werden die Gegenstände der zu beschreibenden Realität durch<br />

Knoten und die (binären) Beziehungen zwischen diesen durch Kanten beschrieben. So werden<br />

beispielsweise in einem Graphen zur Beschreibung eines Straßennetzes markante Plätze und<br />

Kreuzungen durch Knoten und die hierzwischen verlaufenden Straßen durch Kanten beschrieben.<br />

Je nach Modellierungsziel werden unterschiedliche Graphtypen verwendet. Interessiert nur,<br />

ob es zwischen zwei Plätzen eine Straßenverbindung gibt, reicht zur Modellierung in der Regel<br />

ein ungerichteter Graph aus, in dem durch die Kanten lediglich die Verbindung angezeigt<br />

wird. Ist aber zusätzlich zu berücksichtigen, in welcher Fahrtrichtung Straßen befahren werden<br />

können, muß die Fahrtrichtung in den Kanten repräsentiert werden. In diesem Fall spricht<br />

man von gerichteten Graphen. Sollen in dem Straßennetz beispielsweise Plätze von besonderem<br />

touristischen Wert von einfachen Straßenkreuzungen unterschieden werden, kann dieses durch<br />

Typisierung der Knoten erfolgen. Ebenso können durch Kantentypen z. B. Autostraßen, Fahrradwege<br />

und Fußgängerwege unterschieden werden. Graphen, bei denen Knoten und Kanten<br />

zu verschiedenen Typen zusammengefaßt sind, werden typisierte Graphen genannt. Sollen weiter<br />

z. B. die Namen von Plätzen oder Straßen abgebildet werden, werden Knoten und Kanten<br />

mit diesen zusätzlichen Informationen versehen. Solche Graphen, bei denen Knoten und Kanten<br />

weitere Attribute tragen können, heißen attributierte Graphen.


5.2 Konzeptmodellierung mit EER/GRAL 145<br />

Konzeptmodellierung mit Graphen<br />

Zur Konzeptmodellierung mit Graphen wird ein möglichst genereller Ansatz benötigt, der die<br />

verschiedenen Graphtypen geeignet zusammenfaßt. Solche generellen Ansätze werden beispielsweise<br />

bei der Konzeptmodellierung durch konzeptuelle Graphen, durch PROGRES-Graphen<br />

oder durch TGraphen eingeführt.<br />

Konzeptuelle Graphen (conceptual graphs) [Sowa, 1984, S 69ff], [Sowa, 1992], [Sowa/Zachman,<br />

1992] werden als anschauliche und leicht lesbare Notation <strong>für</strong> getypte Prädikatenlogik erster Stufe<br />

eingeführt und gehen auf Überlegungen zur Wissensrepräsentation zurück. Die Diskurswelt<br />

wird auch hier durch Objekte (concept) und Beziehungen (conceptual relation) modelliert. Sowohl<br />

die Objekte als auch die Beziehungen werden in konzeptuellen Graphen durch Knoten<br />

repräsentiert. Konzeptuelle Graphen werden daher als bipartite Graphen definiert, d. h. als Graphen<br />

mit zwei unterschiedlichen Arten von Knoten (<strong>für</strong> Objekte und Beziehungen), bei denen<br />

ausschließlich Knoten verschiedener Art miteinander verbunden sind.<br />

Konzepte dienen zur Repräsentation von Objekten und Attributen. Sie können durch eine Typangabe<br />

und eine Konkretisierung (referent) näher charakterisiert werden. Durch diese Konkretisierung<br />

können Attributwerte gesetzt oder Objektbezeichner definiert werden. Attribute werden<br />

in konzeptionellen Graphen durch mit Literalen konkretisierte Objektknoten modelliert und können<br />

ausschließlich Objekten zugeordnet werden. Ein eigenständiges Attributierungskonzept liegt<br />

nicht vor. Es ist ferner möglich, Objekte zu quantifizieren und Aussagen über Objektmengen zu<br />

formulieren. Dieses erfolgt jeweils durch zusätzliche Annotation der Konzeptknoten.<br />

Beziehungsknoten beschreiben die Zusammenhänge zwischen Objektknoten. Zur Modellierung<br />

von Reihenfolgen können diese Inzidenzen angeordnet werden. Ein Beziehungsknoten muß zu<br />

mindestens einem Objektknoten adjazent sein. Wie auch die Objektknoten können die Beziehungsknoten<br />

typisiert werden. Das hierbei verwendete hierarchische Typkonzept erlaubt auch<br />

Mehrfachvererbungen. Darüber hinaus wird gefordert, daß konzeptuelle Graphen nur endlich<br />

viele Objekt- und Beziehungs-Knoten besitzen, die alle untereinander verbunden sind. Konzeptuelle<br />

Graphen können daher als gerichtete, bipartite, zusammenhängende, endliche, angeordnete<br />

und typisierte Graphen aufgefaßt werden.<br />

Die bei [Sowa, 1984] verwendeten Graphen können auch als Hypergraphen (vgl. z. B. [Berge,<br />

1976, S. 389ff]) aufgefaßt werden, bei denen die Konzeptbeziehungen als Ò-äre Kanten<br />

(Ò 1) betrachtet werden. Wird die Arität der Beziehungskonzepte auf binäre Beziehungen<br />

eingeschränkt, können die Beziehungen auch direkt durch Kanten modelliert werden. Ein spezieller<br />

Knotentyp oder eine hypergraphenartige Betrachtung der Kanten zur Repräsentation von<br />

Beziehungen ist dann nicht nötig. Durch die Einschränkung auf ausschließlich binäre Beziehungen<br />

wird die Ausdrucksmächtigkeit der Graphen nicht eingeschränkt, da Ò-äre Beziehungen<br />

(Ò 2) durch Modellierung der Beziehung als zusätzlichen Knoten und Ò binären Beziehungen<br />

zwischen diesem und den hiermit in Beziehung gesetzten Knoten modelliert werden kann.<br />

In PROGRES (PROgrammed Graph REwriting System) [Schürr, 1991a], [Schürr, 1991b], [Zündorf,<br />

1996] werden zur Konzeptmodellierung endliche, typisierte, attributierte und gerichtete<br />

Graphen verwendet. Die Typisierung bezieht sich sowohl auf Knoten als auch auf Kanten. Die<br />

Attributierung, die im Gegensatz zu [Sowa, 1984] als eigenständiges Konzept aufgefaßt wird,<br />

wird aber ausschließlich auf Knoten bezogen.


146 Graphbasierte Konzeptmodellierung<br />

In dieser Arbeit erfolgt die Konzeptmodellierung auf Basis von TGraphen [Ebert / Franzke,<br />

1995]. TGraphen sind endliche, gerichtete, typisierte, attributierte und angeordnete Graphen,<br />

die somit eine Obermenge der konzeptuellen Graphen und der PROGRES-Graphen beschreiben.<br />

Wie auch in PROGRES-Graphen werden in TGraphen Knoten, Kanten und Attribute als eigenständige<br />

Konzepte betrachtet. Hier unterscheiden sich die Graphansätze auch von der gängigen<br />

Auffassung der objektorientierten Modellierung, in der Beziehungen zwischen Objekten eher<br />

als <strong>Referenz</strong>en durch Attribute eines Objekts beschrieben werden. In graphbasierten Ansätzen<br />

können dagegen objektartige und beziehungsartige Konzepte unabhängig voneinander betrachtet<br />

werden. Ebenso erlaubt die graphbasierte Modellierung auch die Untersuchung einer Beziehung<br />

ausgehend von jedem der (beiden) durch eine Kante verbundenen Objekte, unabhängig von der<br />

Kantenrichtung.<br />

Formalisierung von TGraphen 1<br />

TGraphen sind formal durch Z -Spezifikationen 2 eingeführt (vgl. [Dahm et al., 1998a]). Grundlegende<br />

Elemente (Element) zum Aufbau von TGraphen sind Knoten (Vertex) und Kanten (Edge),<br />

die durch die folgende freie Typdefinition eingeführt werden. Knoten und Kanten werden hierbei<br />

zur eindeutigen Identifizierung durch natürliche Zahlen modelliert.<br />

Element :: vertexÆ edgeÆ<br />

Vertex ranvertex<br />

Edge ranedge<br />

TGraphen sind gerichtet, d. h. eine Kante kann sowohl in einen Knoten eingehen (in) als auch<br />

aus ihm herausgehen (out). Konstanten zur Beschreibung der Kantenrichtungen werden durch<br />

Dir eingeführt.<br />

Dir :: in out<br />

Knoten und Kanten können in TGraphen typisiert und attributiert werden. Hierzu werden Typbezeichner<br />

(TypeId) und Attributbezeichner (AttrId) benötigt, die aus einer gegebenen Menge der<br />

Bezeichner (Id) entnommen werden. Die Zuordnung eines Attributbezeichners zu einem Wert<br />

(aus einer gegebenen Wertemenge Value) erfolgt durch die Funktion AttributeInstance<strong>Se</strong>t.<br />

IdValue℄<br />

TypeId Id<br />

AttrId Id<br />

AttributeInstance<strong>Se</strong>t AttrId Value<br />

1 Die im folgenden dargestellte Formalisierung von TGraphen und des hierauf basierenden EER/GRAL-Ansatzes<br />

zur graphbasierten Modellierung ist das Ergebnis langer und ausführlicher Diskussionen in der Arbeitsgruppe<br />

Ebert des Instituts <strong>für</strong> Softwaretechnik der Universität Koblenz-Landau. An der Entwicklung, Formalisierung<br />

und Erprobung wesentlich beteiligt waren Martin Castensen, Peter Dahm, Jürgen Ebert, Angelika Franzke und<br />

Manfred Kamp.<br />

2 Zur formalen Notation der in dieser Arbeit angesprochenen Zusammenhänge wird die Spezifikationssprache<br />

Z [King et al., 1988], [Spivey, 1992] verwendet. Einführungen in Z finden sich z. B. in [Diller, 1990] oder in<br />

[Wordsworth, 1993].


5.2 Konzeptmodellierung mit EER/GRAL 147<br />

Diese Grundstrukturen werden im Z -Schema Graph zusammengefaßt. TGraphen bestehen aus<br />

einer Folge von Knoten V und aus einer Folge von Kanten E. Knoten und Kanten werden hier als<br />

eigenständige und gleichberechtigte Konzepte betrachtet. Jedem Knoten ist eine evtl. leere, geordnete<br />

Liste Λ von Kanten (ohne Doppeleinträge [TGraph 1]) zugeordnet, in der <strong>für</strong> jede Kante<br />

markiert wird, ob sie in den Knoten eingeht oder aus ihm ausgeht. Jede Kante ist zu genau einem<br />

Knoten als eingehende und zu genau einem Knoten als ausgehende Kante inzident [TGraph 2].<br />

Zur Typisierung und Attributierung ist jedem Knoten und jeder Kante des betrachteten TGraphen<br />

([TGraph 3] und [TGraph 4]) ein Typbezeichner (type) und eine (evtl. leere) Menge von<br />

Attribut-Werte-Paaren (value) zugeordnet.<br />

ÌÖÔ<br />

V : iseq Vertex<br />

E : iseq Edge<br />

Λ : Vertex seq Edge ¢ Dir<br />

type : Element TypeId<br />

value : Element AttributeInstance<strong>Se</strong>t<br />

[TGraph 1]:<br />

Λ ranV iseq E¢Dir<br />

[TGraph 2]:<br />

e :ranE ¯ 1 vw :ranV ¯ ein ran Λ v eout ran Λ w<br />

[TGraph 3]:<br />

domtype V E<br />

[TGraph 4]:<br />

domvalue V E<br />

Die hier skizzierte Definition von TGraphen ist sehr allgemein gehalten. Beispielsweise wird<br />

hier nicht gefordert, daß Attributstrukturen von Knoten und Kanten nach deren Typzugehörigkeit<br />

definiert sind. Auch werden dieselben Typen <strong>für</strong> Knoten und Kanten zugelassen. Einschränkungen<br />

dieser Art werden erst bei einer Konzeptmodellierung auf Ebene der Allgemeinbegriffe<br />

interessant, so daß diese in Abschnitt 5.2.2 zur Beschreibung von Klassen von TGraphen berücksichtigt<br />

werden.<br />

Modellierung mit TGraphen<br />

Die Darstellung von TGraphen erfolgt durch die <strong>visuelle</strong>n Sprachen des Objekt-Instanzparadigmas.<br />

Der im EER/GRAL-Ansatz verwendete Darstellungsdialekt wurde in Kapitel 3.5.1 als<br />

notationelle Grundform des Objekt-Instanzparadigmas eingeführt.<br />

Generelle Modellierungsprinzipien zur Modellierung mit TGraphen werden in [Ebert et al.,<br />

1996b] formuliert. Die zu beschreibenden Konzepte sind je nach Modellierungsziel auf durch<br />

Knoten repräsentierte Objekte oder auf durch Kanten repräsentierte Beziehungen abzubilden:<br />

¯ Jedes <strong>für</strong> den Modellierungskontext relevante Objekt wird durch genau einen Knoten modelliert.<br />

¯ Jede Beziehung zwischen solchen Objekten wird durch genau eine Kante beschrieben.


148 Graphbasierte Konzeptmodellierung<br />

¯ Ähnliche Objekte bzw. Beziehungen werden durch Knoten bzw. Kanten desselben Typs<br />

modelliert.<br />

¯ Weitere charakteristische Informationen zu Objekte und Beziehungen werden in Attributinstanzen<br />

zu den jeweiligen Knoten und Kanten notiert.<br />

¯ Die Festlegung der Anordnung der Beziehungen zueinander erfolgt durch Definition einer<br />

Kantenreihenfolge.<br />

Die Entscheidung, ob ein Konzept als Objekt oder als Beziehung aufgefaßt wird und dementsprechend<br />

als Knoten oder Kante modelliert wird, ist vom Modellierungsziel und von der individuellen<br />

Wahrnehmung des Modellierers abhängig. Gleiches gilt auch <strong>für</strong> die Einordnung als Konzept<br />

oder als Attribut. Als grundsätzliche Richtlinie sollten aber wesentliche und explizit benötigte<br />

Konzepte, die auch die Struktur des Modells bestimmen, durch Objekte beschrieben werden.<br />

Konzepte, die eher Zuordnungen der Objekte in bestimmten Kontexten beschreiben, sollten als<br />

Beziehungen aufgefaßt werden. Durch Attribute sollten solche Wahrnehmungen modelliert werden,<br />

denen im aktuellen Modellierungskontext keine eigenständige Identität zugestanden wird.<br />

5.2.2 Graphklassen<br />

Erfolgt eine Modellierung auf Ebene der Allgemeinbegriffe, steht nicht mehr die Modellierung<br />

eines einzelnen Objekts oder einer einzelnen Beziehung zwischen zwei Objekten im Vordergrund.<br />

Betrachtet werden hier Mengen (oder Klassen) von Objekten und Beziehungen, die<br />

aufgrund gleicher Merkmale oder struktureller Eigenschaften gebildet werden. Aus Sicht der<br />

graphbasierten Konzeptmodellierung auf Allgemeinbegriff-Ebene sind folglich Schemata zur<br />

Beschreibung von Mengen von Graphen mit gleichen Eigenschaften zu untersuchen. Diese<br />

Graphmengen werden auch Graphklassen genannt.<br />

Konzeptmodellierung mit Graphklassen<br />

Graphklassen können zu einen operational mit Hilfe von Graphgrammatiken oder deklarativ<br />

durch direkte Angabe der geforderten Eigenschaften definiert werden.<br />

Die operationale Definition einer Graphklasse durch Graphgrammatiken (vgl. z. B. [Nagl, 1979],<br />

[Göttler, 1988], [Schürr/Westfechtel, 1992], [Rozenberg, 1997]) besteht im wesentlichen aus einem<br />

Startgraphen und einer Regelmenge zur Festlegung von Graphproduktionen. Durch Graphproduktionen<br />

werden — analog zu den Regeln in Grammatiken textueller Sprachen — Regeln<br />

zur Ersetzung eines (nicht-terminalen) Teilgraphen durch einen anderen Teilgraphen sowie die<br />

Einbettung dieses Teilgraphen in den Ursprungsgraphen formuliert. Die hierdurch definierte<br />

Graphklasse umfaßt alle Graphen, die ausgehend von dem Startgraphen durch Anwendung der<br />

Graphproduktionen generiert werden können und keine weiteren, nicht-terminalen Teilgraphen<br />

enthalten. Die Grapheigenschaften werden bei der Definition durch Graphgrammatiken indirekt<br />

durch einen Generierungsprozeß festgelegt.<br />

Deklarative Ansätze zur Festlegung von Graphklassen beschreiben dagegen die Menge der gültigen<br />

Graphen direkt durch Angabe der Grapheigenschaften. Diese Eigenschaften betreffen zum


5.2 Konzeptmodellierung mit EER/GRAL 149<br />

einen die Graphkomponenten, d. h. die zugelassenen Knoten- und Kantentypen, deren Attributstruktur<br />

und die Inzidenzbeziehungen zwischen Knoten- und Kantentypen. Zum anderen sind<br />

auch strukturelle Anforderungen an den gesamten Graphen wie z. B. die Forderung nach Azyklizität<br />

oder Baumartigkeit zu formulieren.<br />

Die deklarative Beschreibung von Graphklassen erfolgt mit den Beschreibungsmitteln des<br />

Objekt-Beziehungsparadigmas ergänzt um zusätzliche Einschränkungen (vgl. z. B. [Elmasri /<br />

Wiederhold, 1983] [Carstensen et al., 1994], [Schürr, 1994], [Ebert / Franzke, 1995]). Knotenund<br />

Kantentypen werden hierbei durch Objekt- und Beziehungstypen definiert. Durch die Attributzuordnung<br />

der Objekt- und Beziehungstypen wird die Attributstruktur der Graphen und<br />

durch die Inzidenzen der Beziehungstypen wird die Inzidenzstruktur der Graphen festgelegt.<br />

Zur Strukturierung der Graphklassen-Definitionen können auch die höheren Modellierungskonstrukte<br />

der Objekt-Beziehungsmodellierung wie Generalisierung und Aggregation verwendet<br />

werden. Die Formulierung zusätzlicher Einschränkungen, die nicht graphisch durch Objekt-<br />

Beziehungsdiagramme notiert werden, erfolgt durch passende formale graphische oder textuelle<br />

Notationen.<br />

Das Graph Ersetzungssystem PROGRES (PROgrammed Graph REwriting System) [Schürr,<br />

1991a], [Zündorf, 1996] kann als graphbasierter Ansatz zur Konzeptmodellierung aufgefaßt werden,<br />

der deklarative Beschreibungen von Graphklassen mit Produktionen der Graphgrammatiken<br />

verbindet. Deklarative Graphklassen-Spezifikationen werden hier zur konzeptionellen Beschreibung<br />

der statischen Struktur eines Systems verwendet. Produktionsregeln beschreiben erlaubte<br />

Veränderungen dieser Graphen. Diese Produktionsregeln sind im Gegensatz zu Graphgrammatiken<br />

so angelegt, daß die resultierenden Graphen ebenfalls der spezifizierten Graphklassendefinition<br />

genügen.<br />

Zur Definition der Graphklassen kann in PROGRES alternativ eine textuelle oder eine graphische<br />

Notation [Schürr, 1994] verwendet werden. PROGRES unterstützt hierbei die Definition von<br />

Knoten- und Kantentypen. Knotentypen können sowohl in einer Typhierarchie mit Mehrfachvererbung<br />

angeordnet sein als auch mit Attributierungsschemata versehen werden. Für Kanten<br />

ist lediglich eine flache Typstruktur ohne Attributierung vorgesehen. Ein Verlust an Ausdrucksmächtigkeit<br />

entsteht hierdurch nicht, da attributierte Kanten auch durch Knoten mit entsprechenden<br />

(nicht-attributierten) Inzidenzen modelliert werden können (vgl. auch [Zinnen, 1995]). Knotenattribute<br />

können sowohl Werte der aus Programmiersprachen bekannten Standardtypen als<br />

auch Werte bereits definierter Knotentypen annehmen. Solche Knoten-wertigen Attribute stellen<br />

jedoch nur eine alternative Kantennotation dar. Darüber hinaus werden in PROGRES intrinsische<br />

Attribute, die originär Knoten zugeordnet sind, und abgeleitete Attribute unterschieden, die<br />

durch Berechnungsvorschriften aus dem vorliegenden Graphen ermittelt werden. Mit Ausnahme<br />

der Generalisierung unterstützt PROGRES keine weiteren höheren Modellierungskonstrukte.<br />

Zusätzliche Integritätsbedingungen können in PROGRES ebenfalls sowohl textuell als auch<br />

graphisch notiert werden [Münch et al., 1998]. Aufgrund der Ausrichtung von PROGRES als<br />

Graphersetzungssystem ist der auch Formalismus zur Beschreibung der Integritätsbedingungen<br />

deutlich auf die Verwendung in Graphersetzungsregeln bezogen. Integritätsbedingungen werden<br />

durch Graphmuster notiert, die in All- und Existenzaussagen eingebunden werden können.<br />

Die Konzeptmodelle zur Beschreibung des <strong>Referenz</strong>-<strong>Metaschema</strong>s der <strong>visuelle</strong>n <strong>Modellierungssprachen</strong><br />

der Organisations- und Softwaretechnik werden deklarativ durch EER/GRAL-<br />

Graphklassen beschrieben. Die statische Struktur der hierin enthaltenen TGraphen wird mit Hilfe


150 Graphbasierte Konzeptmodellierung<br />

von erweiterten Objekt-Beziehungsdiagrammen dargestellt. Im Gegensatz zu PROGRES werden<br />

in diesem Ansatz zur graphbasierten Konzeptmodellierung auch Kanten als Objekte erster<br />

Ordnung verstanden, d. h. Kanten können attributiert und in ein hierarchisches Typsystem eingeordnet<br />

werden (vgl. hierzu auch die auf [Frege, 1891] zurückgehende Gleichbehandlung von<br />

Begriffen und Beziehungen. Neben der Generalisierung steht dem Modellierer in EER/GRAL<br />

auch die Aggregation als höheres Modellierungskonstrukt zur Verfügung. Zusätzliche Integritätsbedingungen<br />

werden in der Spezifikationssprache GRAL (GRAph specification Language)<br />

notiert, die Prädikatenlogik erster Stufe mit mehreren, endlichen Sortenmengen unterstützt.<br />

Zur Definition von Graphklassen sind drei Aspekte genauer zu betrachten. Im Typsystem wird<br />

festgelegt, welche Knoten- und Kantentypen in der Graphklasse erlaubt sind, wie diese attributiert<br />

sind, und wie diese in der Typhierarchie angeordnet sind. Das Inzidenzsystem bildet die<br />

Beziehungen zwischen Knoten- und Kantentypen ab. Es legt fest, welchen Knotentyp die Knoten<br />

haben, die über eine Kante des betrachteten Kantentyps zueinander adjazent sind. Im Invariantensytem<br />

werden zusätzlich Anforderungen an die Graphklasse definiert. Während das Typ- und<br />

das Invariantensystem vollständig mit Sprachen des Objekt-Beziehungsparadigmas (vgl. Kapitel<br />

3.5.3) beschrieben werden können, können aus dem Invariantensystem nur Anforderungen zur<br />

Kardinalität und zur Injektivität von Beziehungen graphisch notiert werden. Weitere Invarianten<br />

sind textuell durch GRAL zu notieren.<br />

Formalisierung von Graphklassen<br />

Im folgenden werden zunächst die Schemata zur Definition von Graphklassen formal spezifiziert.<br />

Da diese Schemata originär Objekt-Beziehungsdiagramme (extended Entity-Relationship-<br />

Diagramme; EER) sind, die mit einer graphbasierten <strong>Se</strong>mantik versehen sind, erfolgt die Spezifikation<br />

allgemein und in der Terminologie der Objekt-Beziehungsmodellierung. Anschließend<br />

wird die graphbasierte <strong>Se</strong>mantik dieser Objekt-Beziehungsdiagramme durch Angabe der TGraphen,<br />

die zu einem solchen Schema „passen“, denotationell spezifiziert. Hierbei werden Knoten<br />

als Extensionen der Objekttypen und Kanten als Extensionen der Beziehungstypen aufgefaßt<br />

[Dahm et al., 1998a]. Eine Einführung in graphische Notation zur Formulierung von Graphklassen<br />

und in GRAL beschließt dieses Kapitel.<br />

Typsystem. Das Typsystem (TypeSystem) einerEER-Schemadefinition definiert sowohl die<br />

Objekt- und Beziehungstypen als auch die Zuordnung von Attributschemata zu diesen Typen.<br />

Zunächst wird die Menge der Typbezeichner (types) festgelegt. Eine Teilmenge hiervon bildet<br />

die Menge abstrakten Typbezeichner (abstractTypes)[TS1] 3 . Die Typbezeichner werden in Bezeichner<br />

<strong>für</strong> Objekttypen (entityTypes) und <strong>für</strong> Beziehungstypen (relationshipTypes) unterschieden<br />

[TS 2]. Zur Notation unterschiedlicher Rollen in Aggregationen werden Rollentypbezeichner<br />

(roleTypes) eingeführt. Diese Rollen werden als Beziehungen aufgefaßt [TS 3].<br />

In dem hier verwendeten Entity-Relationship-Modell können sowohl Objekttypen als auch Beziehungstypen<br />

attributiert werden. Jedem Typbezeichner eines Modells wird hierzu durch die<br />

3 In der <strong>Se</strong>mantikdefinition wird hierzu später definiert, daß in einem Graphen zu diesen abstrakten Typen keine<br />

Instanzen existieren.


5.2 Konzeptmodellierung mit EER/GRAL 151<br />

Abbildung typeDefinition<strong>Se</strong>t ein (evtl. auch leeres) Attributschemata (AttributsSchema) zugeordnet<br />

[TS 4]. Attributschemata sind hierzu als endliche Abbildungen der Attributbezeichner<br />

(AttrId) in eine Wertebereichsmenge (Domain) definiert.<br />

AttributeSchema AttrId Domain<br />

Die in EER/GRAL verwendete Wertebereichsmenge bezieht sich auf die Standardwertebereiche<br />

<strong>für</strong> ganze und reelle Zahlen, <strong>für</strong> Zeichenketten, <strong>für</strong> Wahrheitswerte und Aufzählungen. Desweiteren<br />

können zusammengesetze Wertebereiche durch Listen-, Tupel- und Recordbildung definiert<br />

werden (vgl. [Dahm et al., 1998a, Anhang 4.A]).<br />

TypeSystem<br />

types : TypeId<br />

abstractTypes : TypeId<br />

entityTypes : TypeId<br />

relationshipTypes : TypeId<br />

roleTypes : TypeId<br />

typeDefinition<strong>Se</strong>t : TypeId AttributeSchema<br />

isA : TypeId TypeId<br />

[TS 1]: abstractTypes types<br />

[TS 2]: entityTypesrelationshipTypespartition types<br />

[TS 3]: roleTypes relationshipTypes<br />

[TS 4]: dom typeDefinition<strong>Se</strong>t types<br />

[TS 5]: isA entityTypes ¢ entityTypes <br />

relationshipTypes ¢ relationshipTypes<br />

[TS 6]: r 1 r 2 : relationshipTypes r 1 isA r 2 ¯ r 2 roleTypes r 1 roleTypes<br />

[TS 7]: tt 1 t 2 : types tisA £ t 1 tisA £ t 2 ¯<br />

a : AttrId a dom typeDefinition<strong>Se</strong>t t 1 dom typeDefinition<strong>Se</strong>t t 2 ¯<br />

typeDefinition<strong>Se</strong>t t 1 a typeDefinition<strong>Se</strong>t t 2 a<br />

[TS 8]: Entity entityTypes<br />

[TS 9]: Relationship relationshipTypes<br />

[TS 10]: e : entityTypes ¯ eisA £ Entity<br />

[TS 11]: r : relationshipTypes ¯ risA £ Relationship<br />

Zur Festlegung einer Typhierarchie wird die Relation isA eingeführt. Hierbei sind zwei voneinander<br />

unabhängige Typhierarchien <strong>für</strong> Objekt- und Beziehungstypen zu fordern [TS 5]. Für<br />

rollenwertige Beziehungstypen wird darüber hinaus gefordert, daß deren Untertypen ebenfalls<br />

rollenwertig sind [TS 6]. Um Konflikte bei den Attributstrukturen der Untertypen auszuschließen,<br />

wird ferner in [TS 7] verlangt, daß gleichnamigen Attributen in Ober- und Untertyp auch<br />

die gleichen Wertebereiche zugeordnet sind.<br />

Um einfach Aussagen über jeweils alle Objekt- oder Beziehungstypen formulieren zu können,<br />

werden generelle Obertypen Entity und Relationship eingeführt, die Bestandteil jedes Typsystems<br />

sind [TS 8], [TS 9].


152 Graphbasierte Konzeptmodellierung<br />

Entity : TypeId<br />

Relationship : TypeId<br />

Entity Relationship<br />

Alle Objekttypen sind dann Untertypen von Entity [TS 10] und alle Beziehungstypen sind Untertypen<br />

von Relationship [TS 11].<br />

Inzidenzsystem. Die Zusammenhänge zwischen Objekttypen und Beziehungstypen werden<br />

im Inzidenzsystem beschrieben, das hierzu das Schema TypeSystem des Typsystems inkludiert.<br />

Jedem Beziehungstyp wird durch die Funktion relates ein Paar von Objekttypen zugeordnet [IncS<br />

1], [IncS 2]. Hierdurch wird auch die Richtung der Beziehungstypen definiert und bestimmt,<br />

daß Beziehungstypbezeichner modellweit eindeutig sind. 4<br />

IncidenceSystem<br />

TypeSystem<br />

relates : TypeId TypeId ¢ TypeId<br />

aggregatesInDir : TypeId<br />

[IncS 1]: dom relates relationshipTypes<br />

[IncS 2]: ranrelates entityTypes ¢ entityTypes<br />

[IncS 3]: r 1 r 2 : relationshipTypes r 1 × £ r 2 ¯<br />

first relates r 1 isA £ first relates r 2<br />

second relates r 1 isA £ second relates r 2<br />

[IncS 4]: aggregatesInDir roleTypes<br />

[IncS 5]: r 1 r 2 : roleTypes r 1 isA £ r 2 ¯<br />

r 1 aggregatesInDir r 2 aggregatesInDir<br />

Werden zu einem Beziehungstyp Untertypen gebildet, ist sicherzustellen, daß die durch den Untertyp<br />

in Beziehung gesetzten Objekttypen auch mit den durch den Obertyp in Beziehung gesetzten<br />

Objekttypen verträglich sind [IncS 3]. Start- bzw. Ziel-Objekttyp des Unterbeziehungstyps<br />

müssen gleich oder Untertypen der entsprechenden Objekttypen zum Oberbeziehungstyp sein.<br />

Aggregationsbeziehungen werden durch roleTypes modelliert. Hierdurch werden Komponente<br />

und Aggregat in Beziehung gesetzt. Die Aggregationsbeziehung kann sowohl auf die Komponente<br />

als auch auf das Aggregat gerichtet sein. Zur Unterscheidung wird die Menge aggregatesInDir<br />

als Teilmenge von roleTypes eingeführt [IncS 4]. Ist der betrachtete Rollentyp in dieser Menge<br />

enthalten, so beschreibt der Ziel-Objekttyp der Beziehung den Typ der Aggregate, andernfalls<br />

den der Komponente. Diese Ausrichtung der Beziehung wird auch auf hiervon abgeleitete Untertypen<br />

übertragen [IncS 5].<br />

Invariantensystem. Im EER-Teil des Invariantensystems (InvariantSystem) werden schließlich<br />

Aussagen zur Kardinalität und zur Injektivität der Beziehungen formalisiert. Das entsprechende<br />

Z -Schema, inkludiert das zuvor definierte Inzidenz-System IncidenceSystem.<br />

4 In konkreten EER/GRAL-Modellierungen werden zur Beschreibung ähnlicher Beziehungstypen häufig dieselben<br />

Beziehungstyp-Bezeichner verwendet. Diese modellieren dann jeweils, nicht explizit ausgewiesene, eindeutige<br />

Spezialisierungen entspechender Supertypen.


5.2 Konzeptmodellierung mit EER/GRAL 153<br />

Kardinalitäten sind durch ein Paar von natürlichen Zahlen zur Beschreibung der Ober- und Untergrenze<br />

formalisiert, wobei die Untergrenze kleiner oder gleich der Obergrenze sein muß.<br />

ÖÒÐØÝ<br />

min : Æ<br />

max : Æ1<br />

min max<br />

Jedem Beziehungstyp wird in InvariantSystem durch die Funktion limits ein Paar von Kardinalitäten<br />

zugeordnet [InvS 1]. Diese definieren wie viele Beziehungen des angegebenen Typs ein<br />

Objekt des Start- bzw. Zieltyps eingehen darf. Für Beziehungstypen kann ferner noch durch die<br />

Menge injective gefordert werden, daß höchstens eine Beziehung diesen Typs dieselben Objekte<br />

in derselben Richtung miteinander verbinden darf [InvS 2]. Diese Eigenschaft überträgt sich<br />

auch auf abgeleitete Unterbeziehungstypen [InvS 3].<br />

InvariantSystem<br />

IncidenceSystem<br />

limits : TypeId Cardinality ¢ Cardinality<br />

injective : TypeId<br />

[InvS 1]: dom limits relationshipTypes<br />

[InvS 2]: injective relationshipTypes<br />

[InvS 3]: r 1 r 2 : relationshipTypes r 1 isA £ r 2 ¯ r 2 injective r 1 injective<br />

EER-Schema. Typsystem, Inzidenzsystem und EER-Teil des Invariantensystem werden im<br />

Schema EERSchema zusammengefaßt.<br />

EERSchema<br />

InvariantSystem<br />

name : Id<br />

Ein EER-Schema umfaßt ein Invariantensystem und somit auch ein Inzidenz- und ein Typsystem<br />

sowie einen Bezeichner zur eindeutigen Identifizierung des Schemas.<br />

TGraphen und EER-Schemata<br />

Durch ein EER-Schema wird eine Graphklasse definiert. Diese Graphklasse umfaßt alle TGraphen,<br />

die die durch das Schema formulierten Eigenschaften erfüllen. Die TGraph-basierte <strong>Se</strong>mantik<br />

von EER-Schemata wird durch die semantische Menge DEERSchema beschrieben.<br />

DEERSchema : EERSchema ÈTGraph<br />

eerSpec : EERSchema ¯<br />

DEERSchemaeerSpec℄℄ g : TGraph g EERSchema eerSpec


154 Graphbasierte Konzeptmodellierung<br />

Ein EER-Schema denotiert die Menge der TGraphen, die zu dem gegebenen Schema „passen“.<br />

Dieses wird durch die Relation EERSchema formalisiert, die bezogen auf das Typsystem, das<br />

Inzidenzsystem und den EER-Teil des Invariantensystem definiert wird.<br />

Typsystem. Ein Graph paßt genau dann zu einem Typsystem, wenn die Menge der Objekttypen<br />

des Typsystems alle im Graphen verwendeten Knotentypen [matchesTS 1] und die Menge der<br />

Beziehungstypen alle im Graphen verwendeten Kantentypen [matchesTS 2] enthält. Der Graph<br />

darf keine Elemente eines abstrakten Typs enthalten [matchesTS 3]. Dieses wird durch die Relation<br />

TypeSystem formalisiert:<br />

TypeSystem : TGraph TypeSystem<br />

G : TGraph; TypeSystem ¯<br />

G TypeSystem θTypeSystem<br />

[matchesTS 1]: v : GV ¯ type v entityTypes<br />

[matchesTS 2]: e : GE ¯ type e relationshipTypes<br />

[matchesTS 3]: elem : GV GE ¯ Gtype elem abstractTypes<br />

[matchesTS 4]: elem : GV GE ¯ Gvalue elem AttributeSchema<br />

t : types Gtype elem isA £ t ¯ typeDefinition<strong>Se</strong>t t <br />

Neben diesen strukturellen Eigenschaften muß auch sichergestellt sein, daß die Attributwerte aller<br />

Graphelemente den im Schema definierten Wertebereichen genügen [matchesTS 4]. Hierbei<br />

ist die Vererbung der Attributschemata der jeweiligen Obertypen zu beachten. Die Attributbelegungen<br />

(AttributeInstance<strong>Se</strong>t) der Graphelemente müssen der Zusammenfassung der Attributschemata<br />

dieser Obertypen genügen.<br />

AttributeSchema : AttributeInstance<strong>Se</strong>t AttributeSchema<br />

inst : AttributeInstance<strong>Se</strong>t; def : AttributeSchema; db : LegalDomainBinding ¯<br />

inst AttributeSchema def<br />

[matchesAS 1]: dominst dom def<br />

[matchesAS 2]: attr : dominst ¯ inst attr value<strong>Se</strong>tOf def attr<br />

Eine Attributbelegung paßt genau dann zu einem Attributschema (vgl. AttributeSchema), wenn<br />

die Attributbelegung und das Attributschema dieselben Attributbezeichner verwenden [matchesAS<br />

1] und die Attributwerte Elemente der Wertemenge des entsprechenden Wertebereichs [matchesAS<br />

2] sind. Diese Wertemengen werden durch die Funktion Value<strong>Se</strong>tOf : EERDomain <br />

È value über den Basiswertebereichen und den zusammengesetzten Wertebereichen definiert. Eine<br />

ausführliche Darstellung des in EER/GRAL auf Basis des Graphenlabors [Dahm / Widmann,<br />

1998] realisierten Wertebereichssystems ist in [Dahm et al., 1998a, Anhang 4.A] beschrieben.<br />

Inzidenzsystem. Die Relation IncidenceSystem definiert, wann ein Graph zu einem Inzidenzsystem<br />

paßt. Hierzu muß er zunächst dem im Inzidenzsystem enthaltenen Typsystem genügen<br />

[matchesIncS 1]. Ebenso müssen im Graph aber auch die Inzidenzdefinitionen des Schemas berücksichtigt<br />

werden [matchesIncS 2].


5.2 Konzeptmodellierung mit EER/GRAL 155<br />

Jede Kante eines dem Inzidenzsystem genügenden Graphen muß hierzu aus einem Knoten ausgehen<br />

bzw. in einen Konten eingehen, dessen Typ dem Start- bzw. Zieltyp des Beziehungstyps<br />

der Kante entspricht 5 . Hierbei sind auch die jeweiligen Untertypen zu berücksichtigen.<br />

IncidenceSystem : TGraph IncidenceSystem<br />

G : TGraph; IncidenceSystem ¯<br />

G IncidenceSystem θIncidenceSystem<br />

[matchesIncS 1]: G TypeSystem θTypeSystem<br />

[matchesIncS 2]: e : GE ¯<br />

Gtype α Ge isA £ first relates Gtype e <br />

Gtype ω Ge isA £ second relates Gtype e<br />

Invariantensystem. Durch die Relation ÁÒÚÖÒØËÝ×ØÑ wird festgelegt, wann ein Graph zu<br />

einem Invariantensystem paßt. Dieses ist genau dann der Fall, wenn der Graph auch zum enthaltenen<br />

Inzidenzsystem paßt [matchesInvS 1] und den Kardinalitäts- [matchesInvS 2] und Injektivitätsbedingungen<br />

[matchesInvS 3] genügt.<br />

InvariantSystem : TGraph InvariantSystem<br />

G : TGraph; InvariantSystem ¯<br />

G InvariantSystem θInvariantSystem<br />

[matchesInvS 1]: G IncidenceSystem θIncidenceSystem<br />

[matchesInvS 2]: r : relationshipTypes ¯<br />

v : GV Gtype v isA £ first relates r ¯<br />

first limits r min<br />

# GΛ Ú e : GE type e isA £ r ¯ eout <br />

first limits r max<br />

<br />

v : GV Gtype v isA £ second relates r ¯<br />

second limits r min<br />

# GΛ v e : GE type e isA £ r ¯ ein <br />

second limits r max<br />

[matchesInvS 3]: ee 1 e 2 : GE Gtype e injective<br />

Gtype e 1 isA £ GÎØÝÔ e isA £ Gtype e 2 ¯<br />

α e 1 α e 2 ω e 1 ω e 2 e 1 e 2<br />

Ein Graph erfüllt die Kardinalitätsbedingungen eines Invariantensystems, wenn jeder Knoten des<br />

Graphen zu nicht weniger und zu nicht mehr Kanten eines Typs inzident ist, als durch limits gefordert<br />

ist. Das erste Kardinalitätsintervall von limits definiert hierbei den Grad der Knoten des<br />

Start-Objekttyps und das zweite Kardinalitätsintervall den des Ziel-Objekttyps. Die Kardinalitätsangaben<br />

werden in EER/GRAL <strong>für</strong> den Beziehungstyp einschließlich seiner Untertypen fest-<br />

5 Die GRAL-Funktionen αω : TGraph¢ Edge Vertex bestimmen zu einer Kante den Start bzw. Zielknoten<br />

(vgl. auch Abbildung 5.7).


156 Graphbasierte Konzeptmodellierung<br />

gelegt, so daß der Grad jedes Knotens, bezogen auf Kanten der hierdurch definierten Beziehungstypen,<br />

zwischen der jeweiligen Untergrenze und Obergrenze liegen müssen. Die Injektivitäts-<br />

Invariante bezieht sich hierbei auf den Beziehungstyp einschließlich seiner Untertypen.<br />

EER-Schema. Die zuvor definierten Relationen werden in der Relation EERSchema zusammengefaßt.<br />

Ein Graph „paßt“ genau dann zu einem EER-Schema, wenn er dem Invariantensystem<br />

und damit auch zu den hierin enthaltenen Inzidenz- und Typsystemen genügt.<br />

EERSchema : TGraph EERSchema<br />

G : TGraph; EERSchema ¯<br />

G EERSchema θEERSchema G InvariantSystem θInvariantSystem<br />

Modellierung mit Graphklassen<br />

Zur Defintion von Graphklassen wird auf die <strong>visuelle</strong>n <strong>Modellierungssprachen</strong> des Objekt-<br />

Beziehungsparadigma (vgl. Kapitel 3.5.3) zurückgegriffen. Die graphische Notation wird im<br />

folgenden entlang des Typsystems, des Inzidenzsystems und des Invariantensystems beschrieben.<br />

Da die Definition von Kantentypen eng an die Festlegung des Inzidenzsystems gebunden<br />

ist, werden die graphischen Notationen des Typ- und Inzidenzsystems gemeinsam eingeführt.<br />

Typ- und Inzidenzsystem. Knotentypen werden durch ein Rechteck, das mit einem eindeutigen<br />

Typbezeichner6 annotiert ist, eingeführt. Linien, die ebenfalls mit einem modellweit eindeutigen<br />

Bezeichner markiert sind, notieren Kantentypen. Zur Festlegung des Inzidenzsystems<br />

verlaufen diese Linien zwischen den Repräsentation der Knotentypen, deren Adjazenz hierdurch<br />

definiert wird. Die Richtung des Kantentyps wird durch ein Winkelsymbol in der Mitte der Linie<br />

festgelegt.<br />

Die Definition der Attributstruktur von Knoten- und Kantentypen erfolgt in Ovalen, die Attributbezeichner<br />

und deren Wertebereiche enthalten. Attributstrukturen zu Knotentypen können<br />

alternativ auch in dem Rechteck zur Knotentypdefinition notiert werden.<br />

Beispiel 5.1 (Notation von Knoten- und Kantentypen)<br />

Eine einfache Graphklasse (simpleDataflowDescription) zur Konzeptmodellierung von<br />

Datenflußdiagrammen ist in Abbildung 5.2 dargestellt. Dieses EER-Diagramm definiert<br />

die Knotentypen Dataflow und Process, sowie einen Kantentyp relates. In hierzu passenden<br />

Graphen sind Knoten vom Typ Dataflow somit durch Kanten vom Typ relates mit<br />

Knoten vom Typ Process verbunden.<br />

Sowohl Dataflow- wie auch Process-Knoten sind mit einem string-wertigen name-Attribut<br />

ausgezeichnet. Das Winkelsymbol der relates-Beziehung zeigt an, daß relates-Kanten von<br />

Dataflow- nach Process-Knoten verlaufen. £<br />

Zur Generalisierung von Knotentypen werden zwei alternative Notationen verwendet. Die Hierarchie<br />

von Knotentypen kann zum einen durch die Venn-Notation ausgedrückt werden. Hierbei<br />

6 Knotentyp-, Kantentyp und Attributbezeicher werden in EER/GRAL-Modellen in englischer Sprache notiert.


5.2 Konzeptmodellierung mit EER/GRAL 157<br />

Dataflow<br />

name : string<br />

relates<br />

Process<br />

name: string<br />

Abbildung 5.2: Notation von Knoten- und Kantentypen<br />

werden die Untertypen in die Darstellung des Obertypen eingebettet 7 . Durch diese Notation wird<br />

symbolisiert, daß die Extensionen der Untertypen Teilmengen der Extensionen der Obertypen<br />

sind. Daneben hat diese Notationsform auch den Vorteil, daß Knotentyphierarchien auch zusammenhängend<br />

in einem Cluster (vgl. die Generalisierungs-Abstraktion als Clustering-Strategie<br />

in [Teorey et al., 1989]) dargestellt werden können. Alternativ kann auch die in [Rumbaugh et<br />

al., 1991] oder [Rumbaugh et al., 1999] verwendete „Dreiecks-Notation“ genutzt (vgl. Abbildung<br />

5.4) werden. Diese bietet sich vor allem bei der Modellierung von Mehrfachvererbungen<br />

an. Die Generalisierung von Kantentypen erfolgt durch Annotation mit den Bezeichnern der<br />

Obertypen. Zur Unterscheidung von Ober- und Untertyp werden die Namen der Obertypen in<br />

Klammern dargestellt. Abstrakte Knotentypen, d. h. Typen, zu denen keine direkten Instanzen<br />

existieren, werden durch Schraffuren und abstrakte Kantentypen durch unterbrochene Linien beschrieben.<br />

Beispiel 5.2 (Notation von Generalisierungen)<br />

Ein Beispiel <strong>für</strong> Generalisierungen wird durch die Graphklasse DataflowDescription in<br />

Abbildung 5.3 gegeben. Die Knotentypen Process und Terminator werden hier zu DfObject<br />

generalisiert. Von diesem abstrakten Obertypen erben Process und Terminator das name-<br />

Attribut.<br />

Dataflow<br />

name : string<br />

comesFrom<br />

(relates)<br />

relates<br />

goesTo<br />

(relates)<br />

DfObject<br />

Terminator<br />

Process<br />

name: string<br />

Abbildung 5.3: Notation von Generalisierungen<br />

Zur Unterscheidung von Quelle und Ziel eines Datenflusses werden die Kantentypen comesFrom<br />

und goesTo eingeführt. Diese sind Spezialisierungen des (abstrakten) Obertyps<br />

relates. £<br />

7 Diese Darstellung darf nicht verwechselt werden mit Notation der Aggregation in FUSION [Coleman et al.,<br />

1994] oder der Komposition in UML [Rumbaugh et al., 1999, S. 230], die in diesen Ansätzen durch Ineinander-<br />

Schachtelung ausgedrückt wird.


158 Graphbasierte Konzeptmodellierung<br />

Als eine Variante der Beziehungstypen werden Aggregationen verwendet. Aggregationen beschreiben<br />

solche Beziehungen zwischen Knotentypen, die anzeigen, daß der eine Knotentyp<br />

Bestandteil (Komponente) des anderen (Aggregat) ist. Aggregationen dienen auch zur Modellierung<br />

Ò-ärer Beziehungen. Zur Notation von Aggregationen werden auf der Spitze stehende<br />

Quadrate verwendet, die direkt an die Darstellung des Aggregat-Knotentyps angrenzen. Über mit<br />

Bezeichnern versehene Linien ist dieser mit den Komponenten-Knotentypen verbunden. Der Bezeichner<br />

beschreibt hierbei die Rolle, in der die Komponente in die Aggregation einfließt. Diese<br />

Beziehungstypen, sind analog zu Kantentypen durch Winkelsymbole zur Notation der Richtung<br />

markiert. Ferner kann ihnen in einen Oval eine Attributstruktur zugeordnet werden.<br />

Beispiel 5.3 (Notation von Generalisierungen und Aggregationen)<br />

Abbildung 5.4 zeigt das Klassendiagramm der Graphklasse RegularProcessDescription<br />

zur Beschreibung der Feinstruktur von Prozessen. Die Klasse der Process-Knoten wird<br />

hierbei in AtomicProcess, Iteration und <strong>Se</strong>quence spezialisiert. Hierzu wurde die Dreiecks-<br />

Notation verwendet.<br />

isProcessInIteration<br />

Atomic<br />

process<br />

Process<br />

Iteration <strong>Se</strong>quence<br />

Predicate<br />

hasAsPredicate<br />

isProcessIn<strong>Se</strong>quece<br />

Abbildung 5.4: Notation von Generalisierungen und Aggregationen<br />

Eine Iteration besteht hierbei aus einem Predicate, welches das Abbruchkriterium der Wiederholung<br />

angibt und aus dem iterierten Process. Prozesse treten hierbei in der Rolle isProcessInIteration<br />

und Prädikate in der Rolle hasAsPredicate auf. In dieser Aggregation ist die<br />

isProcessInIteration-Beziehung zum Aggregat hin und die hasAsPredicate-Beziehung zur<br />

Komponente hin ausgerichtet. Durch die Aggregation <strong>Se</strong>quence werden Folgen von Prozessen<br />

beschrieben. £<br />

Invariantensystem. Der graphisch ausdrückbare Anteil des Invariantensystems umfaßt die<br />

Angaben zur Kardinalität der Kantentypen und zur Definition injektiver Beziehungen.<br />

Kardinalitäten werden durch Annotation der Kantentypen an den jeweiligen Enden definiert.<br />

Markierungen am gegenüberliegenden Ende einer Linie machen hierbei Aussagen über den Grad


5.2 Konzeptmodellierung mit EER/GRAL 159<br />

eines Knotens bezogen auf den betrachteten Kantentyp. Gehen beliebig viele Kanten in den Knoten<br />

ein bzw. aus ihm aus, wird dieses durch eine doppelte, nicht ausgefüllte Pfeilspitze ()<br />

notiert. Eine ausgefüllte Doppelspitze (ÁÁ), fordert das Ein- bzw. Ausgehen von mindestens<br />

einer Kante, eine nicht ausgefüllte, einfache Pfeilspitze () fordert die Inzidenz von höchstens<br />

einer Kante und eine ausgefüllte, einfache Pfeilspitze (Á) fordert die Inzidenz von genau einer<br />

Kante. Werden darüber hinaus andere Einschränkungen benötigt, kann dieses durch entsprechende<br />

textuelle Markierungen erfolgen. In der graphischen Notation der EER-Diagramme werden<br />

Kantentypen grundsätzlich als injektiv angenommen. Sollen Mehrfachkanten zugelassen werden,<br />

wird dieses explizit durch einen Kreis (Æ) neben dem Winkelsymbol zur Beschreibung der<br />

Kanterichtung notiert.<br />

Beispiel 5.4 (Notation von Kardinalitäten)<br />

Das Klassendiagramm in Abbildung 5.5 faßt die Klassendiagramme aus Abbildung 5.3<br />

und 5.4 zur Definition der Graphklasse SimpleProcessDescription zusammen und ergänzt<br />

noch fehlende Invarianten.<br />

Dataflow<br />

name : string<br />

SimpleProcessDescription<br />

comesFrom<br />

(relates)<br />

relates<br />

goesTo<br />

(relates)<br />

isProcessInIteration<br />

Atomic<br />

process<br />

Ein einfaches<br />

EER/GRAL-Konzeptmodell<br />

<strong>für</strong> Datenflußdiagramme und<br />

reguläre Prozeßzerlegungen<br />

DfObject<br />

Terminator<br />

Process<br />

name: string<br />

Iteration <strong>Se</strong>quence<br />

Predicate<br />

hasAsPredicate<br />

isProcessIn<strong>Se</strong>quece<br />

Abbildung 5.5: Notation von Kardinalitäten und Injektivitäten<br />

Dataflow-Knoten sind über comesFrom bzw. über goesTo-Kanten zu genau einem Df-<br />

Object adjazent. Umgekehrt können aber DfObject-Knoten zu beliebig vielen Dataflow-<br />

Knoten benachbart sein.


160 Graphbasierte Konzeptmodellierung<br />

Mit den gleichen Mitteln werden auch die Invarianten zu Aggregationen definiert. Einer<br />

Iteration ist genau ein iterierter Prozess und genau ein Predicate zugeordnet. Ein Predicate<br />

kann aber in beliebig vielen Iterationen verwendet werden. Dagegen dürfen Prozesse<br />

Komponenten höchstens einer Iteration sein. Eine <strong>Se</strong>quence besteht aus einer nicht leeren<br />

Folge von Prozessen. Wie auch bei der Iteration können Prozesse nur Komponenten<br />

höchstens einer <strong>Se</strong>quence sein. £<br />

Kommentare zu Klassendiagrammen werden in EER/GRAL in einem Rechteck mit „Eselsohr“<br />

notiert.<br />

GRAL<br />

Zur Formulierung weiterer Invarianten ist die zuvor dargestellte <strong>visuelle</strong> Notation zur Beschreibung<br />

von Graphklassen noch um eine textuelle Sprache zu ergänzen. Hierzu wird die GRAph<br />

specification Language (GRAL) verwendet. Die erste Fassung von GRAL [Capellmann / Franzke,<br />

1991] wurde in verschiedenen Projekten (einen Überblick hierzu gibt [Ebert et al., 1996b]) eingesetzt<br />

und weiterentwickelt. Die aktuelle Version GRAL 2.0, die auch in dieser Arbeit eingesetzt<br />

wird, ist in [Franzke, 1997] beschrieben.<br />

GRAL wurde als Sprache zur Formalisierung von Invarianten an TGraph-Klassen entwickelt.<br />

Prädikate in getypter Logik erster Stufe ergänzen die EER-Graphklassen-Definitionen. Eine<br />

EER/GRAL-Graphklassen-Definition denotiert dann die Menge aller TGraphen, diedemEER-<br />

Diagramm entsprechen (vgl. die Relation EERSchema ) und zusätzlich die in GRAL spezifizierten<br />

weiteren Prädikate erfüllen.<br />

GRAL-Prädikate und -Funktionen. Zur Notation der GRAL-Prädikate wird auf die Spezifikationssprache<br />

Z [Spivey, 1992] zurückgegriffen. GRAL umfaßt eine Teilmenge des Sprachumfangs<br />

von Z. Diese umfaßt vollständig den Z -Sprachumfang <strong>für</strong> Mengentheorie und Prädikatenlogik<br />

erster Stufe. Zur Unterstützung der graphbasierten Modellierung wird GRAL ergänzt um<br />

eine umfangreiche und erweiterbare TGraph-Bibliothek.<br />

Prädikat Signatur Beschreibung<br />

isConnected È TGraph zusammenhängender TGraph<br />

isDag È TGraph azyklischer, gerichteter TGraph<br />

isTree È TGraph baumartiger TGraph 8<br />

isAbstract È TypeId abstrakter Knoten- oder Kantentyp 9<br />

isConcrete È TypeId konkreter Knoten- oder Kantentyp 9<br />

Abbildung 5.6: Prädikate der GRAL-Bibliothek (Auswahl)<br />

Diese Bibliothek umfaßt Prädikate und Funktionen zur Beschreibung grundlegender Grapheigenschaften,<br />

zur Berechnung von Teilgraphen, zur Berechnung von Eigenschaften von Graphelementen<br />

und zur Beschreibung von Schemaeigenschaften. Eine Übersicht über die in dieser<br />

8 Kanten werden in Bäumen als von den Elternknoten zu den Kinderknoten gerichtet aufgefaßt.<br />

9 Dieses Prädikat erweitert den Sprachumfang von [Franzke, 1997].


5.2 Konzeptmodellierung mit EER/GRAL 161<br />

Arbeit verwendete GRAL-Prädikate und -Funktionen wird in Abbildung 5.6 und 5.7 gegeben.<br />

Die formale <strong>Se</strong>mantik dieser Prädikate und Funktionen wird in [Franzke, 1997, Appendix C]<br />

definiert.<br />

GRAL unterstützt die Unterscheidung von Typen und Klassen. Während die Extension eines Typs<br />

die Graphelemente umfaßt, denen genau dieser Typ zugeordnet ist, beschreibt die Extension einer<br />

Klasse die Graphelemente diesen Typs und seiner Untertypen. Die Extensionen von Knotenbzw.<br />

Kantentypen werden durch V type bzw. E type berechnet, die Extensionen der Knoten- bzw.<br />

Kantenklassen durch V bzw. E.<br />

Die konkrete Syntax von GRAL erlaubt die in Z üblichen Prefix- und Infix-Notationen (z. B.<br />

δ G ETypev . Die Notation von Graph-, Richtungs- und Typangaben als tiefgestellte Indizes<br />

(z. B. δG EType v ,dieGRAL-Ausdrücke i. allg. lesbarer machen, ist ebenfalls zugelassen.<br />

Richtungsangaben zu Kanten werden sowohl textuell („in“, „out“) als auch symbolisch durch<br />

„ “ und „ “ notiert. Ist die Kantenrichtung beliebig, wird dieses durch „«“ beschrieben.<br />

Zur Vereinfachung der GRAL-Prädikate und -Funktionen können Parameter, die (statisch) aus<br />

dem Kontext erschlossen werden können, ausgelassen werden. Insbesondere kann hier häufig die<br />

Angabe des betrachteten Graphen entfallen. Unterbleibt die Angabe von Typ- (TypeId) oder<br />

Richtungsangaben (Dir) wird hier<strong>für</strong> als Defaultwert der allgemeinste Typbezeicher (Entity<br />

oder Relationship) bzw. die beliebige Richtungsangabe („«“) angenommen.<br />

GRAL-Pfadbeschreibungen. Ein wesentliches Modellierungsmittel in GRAL sind Pfadbeschreibungen<br />

zur Spezifikation von Aussagen über den Zusammenhang zwischen Knoten. Pfadbeschreibungen<br />

sind reguläre Ausdrücke über Knoten- und Kantensymbole:<br />

¯ Einfache Pfadbeschreibungen bestehen aus einem Kantensymbol „ “, „ “ oder „«“zur<br />

Beschreibung eingehender, ausgehender und beliebig gerichteter Kanten. Zur Einschränkung<br />

auf bestimmte Kantentypen kann das Kantensymbol durch einen Typbezeichner annotiert<br />

werden.<br />

¯ Zusammengesetzte Pfadbeschreibungen ermöglichen <strong>Se</strong>quenzen, Iterationen, Alternativen,<br />

Optionen und Klammerungen von Pfadbeschreibungen und spezifizieren Einschränkungen<br />

an den Typ des Zielknotens einer Pfadbeschreibung.<br />

<strong>Se</strong>ien p1 und p2 Pfadbeschreibungen und vType ein Knotentypbezeichner, dann ist auch<br />

– die <strong>Se</strong>quenz p1 p2 ,<br />

– die Iteration p1 (transitiver Abschluß),<br />

– die Iteration p £<br />

1 (transitiver, reflexiver Abschluß),<br />

– die Alternative p1 p2 ,<br />

– die Option p1℄, – die Klammerung p1 und<br />

– die Einschränkung p1 &vType,<br />

eine Pfadbeschreibung.<br />

Pfadbeschreibungen werden sowohl als Prädikate als auch als Funktionen verwendet. Infix notierte<br />

Pfad-Prädikate p : Vertex Vertex der Form vpwüberprüfen ob der Knoten w über ein<br />

10 Diese Funktion erweitert den Sprachumfang von [Franzke, 1997].


162 Graphbasierte Konzeptmodellierung<br />

Funktion Signatur Beschreibung<br />

V TGraph ¢ TypeId Menge der Knoten der Knotenklasse<br />

Vertex<br />

TypeId<br />

V type<br />

TGraph ¢ TypeId Menge der Knoten des Knotentyps<br />

Vertex<br />

TypeId<br />

E TGraph ¢ TypeId Menge der Kanten der Kantenklasse<br />

Edge<br />

TypeId<br />

E type TGraph ¢ TypeId Menge der Kanten des Kantentyps<br />

Edge<br />

TypeId<br />

E<br />

TGraph ¢ TypeId Menge der Kanten der Kantenklasse<br />

Edge<br />

TypeId in umgekehrter Kantenrichtung10 TGraph ¢ TypeId <br />

Edge<br />

TGraph ¢ Element ¢<br />

AttrId Value<br />

αω TGraph ¢ Edge <br />

E type<br />

Vertex<br />

δ TGraph ¢ Dir ¢<br />

TypeId ¢ Vertex Æ<br />

Γ ×Ø TGraph ¢ Dir ¢<br />

TypeId ¢ Vertex <br />

Vertex<br />

Λ ×Ø TGraph ¢ Dir ¢<br />

TypeId ¢ Vertex <br />

Edge<br />

vGraph TGraph ¢ È Vertex <br />

TGraph<br />

eGraph TGraph ¢ È Edge <br />

TGraph<br />

Menge der Kanten des Kantentyps<br />

TypeId umgekehrter Kantenrichtung10 Wert des durch AttrId angegebenen<br />

Attributs zum Graphelement Element<br />

Anfangs- bzw. Zielknoten der Kante<br />

Edge<br />

Anzahl der zum Knoten Vertex<br />

inzidenten Kanten unter Berücksichtigung<br />

der Kantenrichtung (Dir) und des<br />

Kantentyps (TypeId)<br />

Menge der zum Knoten Vertex<br />

adjazenten Knoten unter Berücksichtigung<br />

der Kantenrichtung (Dir) und des<br />

Kantentyps (TypeId)<br />

Menge der zum Knoten Vertex<br />

inzidenten Kanten unter Berücksichtigung<br />

der Kantenrichtung (Dir) und des<br />

Kantentyps (TypeId)<br />

durch die Knotenmenge ÈVertex<br />

knotenerzeugter Teilgraph<br />

durch die Kantenmenge È Vertex<br />

kantenerzeugter Teilgraph<br />

root TGraph Vertex Wurzel Vertex eines baumartigen Graphen<br />

10<br />

order TGraph ¢ TypeId ¢<br />

Edge¢ Vertex Æ<br />

Ordnung der Kante Edge in der Inzidenzliste<br />

des Knotens Vertex bzgl. Kanten der<br />

Klasse TypeId 10<br />

Abbildung 5.7: Funktionen der GRAL-Bibliothek (Auswahl)


5.2 Konzeptmodellierung mit EER/GRAL 163<br />

Pfad der Form p von einem Knoten v aus erreichbar ist. Als Pfad-Funktion p : Vertex È Vertex<br />

aufgefaßt, berechnet die Pfadbeschreibung vp die Menge der Knoten, die von v aus über den<br />

angegebenen Pfad erreichbar sind und pv die Menge der Knoten, die v über den angegebenen<br />

Pfad erreichen.<br />

GRAL-Zusicherungen zu Graphklassen-Definitionen. GRAL-Prädikate beziehen sich immer<br />

auf eine Graphklassen-Definition. Durch eine assert-Klausel werden GRAL-Prädikate, zusammengefaßt<br />

und an eine Graphklassen-Definition gebunden. Zur eindeutigen <strong>Referenz</strong>ierung erhalten<br />

diese Prädikate einen eindeutigen Bezeichner.<br />

Beispiel 5.5 GRAL-Ergänzung zum EER-Schema SimpleProcessDescription<br />

Die folgende Zusicherung enthält eine GRAL-Spezifikation zur Ergänzung der Graphklassendefintion<br />

SimpleProcessDescription aus Beispiel 5.4.<br />

In Datenflußdiagrammen sind in der Regel keine Datenflüsse direkt zwischen Terminatoren<br />

zugelassen. Zwei Terminator-Knoten dürfen daher nicht über einen Pfad der Form<br />

comesFrom goesTo miteinander verbunden sein [SPD 1]. Prozeßzerlegungen durch reguläre<br />

Strukturen sind baumartig. Diese Struktur wird in der Beispielmodellierung durch<br />

Kanten der Typen isProcessInIteration und isProcessIn<strong>Se</strong>quence gebildet. Der hierdurch<br />

kantenerzeugte Teilgraph (d. h. der Teilgraph, der ausschließlich Kanten dieser Typen enthält)<br />

muß baumartig sein [SPD 2].<br />

Für dieses GRAL-Prädikat wurde die vereinfachte Notation verwendet. Alle Aussagen beziehen<br />

sich hier auf den Graph G der Graphklasse SimpleProcessDescription, der durch<br />

die assert-Klausel gebunden wurde. Der Parameter G wurde daher ausgelassen.<br />

for G in SimpleProcessDescription assert<br />

[SPD 1]:<br />

[SPD 2]:<br />

end .<br />

t 1 t 2 : V Terminator t 1 comesFrom goesTo t 2 ;<br />

isTree eGraph E isProcessInIteration E isProcessIn<strong>Se</strong>quence<br />

Erweiterungen von GRAL. Durch die assert-Klausel ermöglicht GRAL die Ergänzung von<br />

EER-Graphklassendefinition durch Graphprädikate in Logik erster Stufe. Die Ableitung weiterer<br />

Graphklassen durch Spezialisierung vorhandener Graphklassen und die Erweiterung von<br />

Graphklassendefinitionen um weitere Konzepte wie beispielsweise zusätzliche Methoden über<br />

Graphelemente sieht [Franzke, 1997] nicht vor. Da solche Modellierungsmittel insbesondere <strong>für</strong><br />

die Ableitung von speziellen Modellen aus <strong>Referenz</strong>modellen benötigt werden, werden hierzu<br />

weitere GRAL-Sprachmittel eingeführt.<br />

Spezialisierungen von EER/GRAL-Graphklassendefinitionen werden durch isA-Klauseln notiert.<br />

Ergänzungen um zusätzliche Konstrukte in Graphklassendefinitionen erfolgen analog zur axiomatischen<br />

Defintion in Z [Spivey, 1992, S. 48] durch define-Klauseln, durch die Objekte deklariert<br />

und (optional) durch GRAL-Prädikate konkretisiert werden können.<br />

£


164 Graphbasierte Konzeptmodellierung<br />

Beispiel 5.6 (Spezialisierung der Graphklassenspezifikation SimpleProcessDescription)<br />

Die Graphklasse SimpleProcessDescription wird zur Graphklasse SimpleProcessDescriptionWithCnt<br />

spezialisiert [SPDcnt 1] und um eine Komponente ProcessCnt ergänzt, die<br />

die Knoten vom Typ Process zählt. Die Spezifikation von ProcessCnt erfolgt durch eine<br />

Deklaration [SPDcnt 2] und die Beschreibung der Eigenschaften durch ein GRAL-Prädikat<br />

[SPDcnt 3].<br />

[SPDcnt 1]: SimpleProcessDescriptionWithCnt isA SimpleProcessDescription;<br />

for G in SimpleProcessDescriptionWithCnt define<br />

[SPDcnt 2]:<br />

ProcessCnt : Æ<br />

where<br />

[SPDcnt 3]:<br />

ProcessCnt # V ÈÖÓ ××<br />

end .<br />

Zur Ableitung eines speziellen Modelles aus einem <strong>Referenz</strong>model werden die GRAL-Prädikate<br />

der Generalisierung mit den Prädikaten der Spezialisierung konjugiert. Durch spezielle Modelle<br />

werden die Zusicherungen an <strong>Referenz</strong>modelle daher i. allg. weiter eingeschränkt. In wenigen<br />

Ausnahmefällen sind diese Anforderungen in speziellen Modellen zu verallgemeinern oder zu<br />

ändern. Hierzu werden in overwrites-Klauseln zu ändernde Zusichererungen, die durch ihren<br />

Prädikatbezeichner referenziert werden, durch eine neue Zusicherung überschrieben. Querbezüge<br />

zu Zusicherungen, die in EER-Diagrammen graphisch formuliert sind (z. B. Kardinalitätsanforderungen),<br />

werden analog durch Prädikatbezeichner hergestellt, die in Kommentaren zu den<br />

entsprechenden graphischen Symbolen in den Diagrammen festgelegt sind.<br />

Beispiel 5.7 (Überschreibung von Zusicherungen)<br />

In Zusicherung [SPD 2] wurde <strong>für</strong> Prozeßzerlegungen durch reguläre Strukturen die<br />

Baumartigkeit gefordert. Um (unnötige) Duplizierungen von Prozeßzerlegungen zu vermeiden,<br />

können gleichartige Prozeßzerlegungen auch zusammengefaßt werden. Für durch<br />

Kanten der Typen isProcessInIteration und isProcessIn<strong>Se</strong>quence erzeugte Teilgraphen<br />

der entsprechenden Spezialisierung SimpleProcessDescriptionDag der Graphklasse SimpleProcessDescriptionWithCnt<br />

reicht dann die Forderung nach Azyklizität aus. Zusicherung<br />

[SPDDag 2] überschreibt hierzu Zusicherung [SPD 2].<br />

[SPDDag 1]: SimpleProcessDescriptionDag isA SimpleProcessDescriptionWithCnt;<br />

for G in SimpleProcessDescriptionDag assert<br />

[SPDDag 2]:<br />

overwrites [SPD 2] :<br />

isDag eGraph EisProcessInIteration EisProcessIn<strong>Se</strong>quence end .<br />

£<br />

£


5.3 Zusammenfassung 165<br />

Die Zusammenfassung mehrerer Teilmodelle zu einem integrierten Modell erfolgt durch die<br />

include-Klausel. Hierdurch werden ebenfalls alle Prädikte der inkludierten Modelle konjugiert.<br />

Beispiel 5.8 (Zusammenfassung von Teilmodellen)<br />

Zur Definition des EER-Anteils der Graphklasse SimpleProcessDescription in Beispiel 5.4<br />

wurden bereits die Graphklassen DataflowDescription und RegularProcessDescription zusammengefaßt.<br />

Die weiteren Zusicherungen an die Graphklasse SimpleProcessDescription<br />

wurden in Beispiel 5.5 <strong>für</strong> beide Teilgraphklassen gemeinsam formuliert. Das Prädikat<br />

[SPD 1] bzw. das Prädikat [SPD 2] hätte aber auch direkt der Definition des EER-Anteils<br />

von DataflowDescription bzw. RegularProcessDescription zugeordnet werden können.<br />

Die Integration dieser Teilmodelle, entspricht der folgenden include-Klausel, die neben<br />

der Zusammenfassung der EER-Teilmodelle auch die Konjunktion der zu diesen Teilmodellen<br />

formulierten Prädikate umfaßt.<br />

for G in SimpleProcessDescription include<br />

DataflowDescription;<br />

end .<br />

RegularProcessDescription<br />

Diese Definition ist mit der Graphklassendefinition aus Beispiel 5.5 identisch. £<br />

5.3 Zusammenfassung<br />

Ausgehend von einer überblicksartigen Einführung in die Konzeptmodellierung wurde der<br />

graphbasierte EER/GRAL-Ansatz zur Konzeptmodellierung eingeführt. Diese Einführung bezog<br />

sich sowohl auf die Formalisierung des EER/GRAL-Ansatzes als auch auf die hier zur Konzeptmodellierung<br />

verwendeten <strong>visuelle</strong>n und textuellen Sprachen.<br />

Das <strong>Referenz</strong>-<strong>Metaschema</strong> der Beschreibungsmittel <strong>für</strong> Organisationen und Softwaresysteme<br />

wird in Kapitel 6 mit Hilfe von EER-Klassendiagrammen und GRAL-Klauseln beschrieben.


6 <strong>Referenz</strong>-<strong>Metaschema</strong><br />

Die Herleitung des <strong>Referenz</strong>-<strong>Metaschema</strong>s <strong>für</strong> <strong>visuelle</strong> <strong>Modellierungssprachen</strong> erfolgt ausgehend<br />

von den in Kapitel 3 vorgestellten Beschreibungsmitteln. Es umfaßt die in Abbildung<br />

3.3 auf <strong>Se</strong>ite 39 aufgeführten Beschreibungsmittel und bildet damit die wesentlichen im<br />

Requirements-Engineering der Organisations- und Softwaretechnik verwendeten semi-formalen<br />

und informalen Modellierungsmittel ab. Formale Sprachen wie z. B. Z [Spivey, 1992] oder VDM<br />

[Jones, 1990] und Programmiersprachen werden in diesem <strong>Metaschema</strong> nicht betrachtet. Analoge<br />

Konzeptmodelle <strong>für</strong> formale Sprachen werden z. B. in [Ebert et al., 1997a] <strong>für</strong> eine eine<br />

TGraph-basierte Erweiterung von Z oder in [Ebert et al., 1998] und [Kullbach et al., 1998] <strong>für</strong><br />

Programmiersprachen vorgestellt.<br />

6.1 Herleitung und Spezialisierung des <strong>Referenz</strong>-<br />

<strong>Metaschema</strong>s<br />

Ausgangspunkt der Erstellung der in Kapitel 4.3 skizzierten <strong>Metaschema</strong>ta zur Unternehmensmodellierung<br />

waren in der Regel theoretische Überlegungen zur abzubildenden Diskurswelt. Die<br />

hierbei als wichtig erachteten Konzepte und ihre Beziehungen wurden zunächst modelliert. Anschließend<br />

wurden Beschreibungstechniken ausgewählt bzw. festgelegt, die eine metaschemakonforme<br />

Modellierung erlauben. Die Wahl der Beschreibungstechniken war in diesen Arbeiten<br />

(vgl. hierzu insbesondere [Olle et al., 1991], [Scheer, 1992] und [Frank, 1994]) vom <strong>Metaschema</strong><br />

determiniert.<br />

Für die Herleitung des <strong>Referenz</strong>-<strong>Metaschema</strong>s der <strong>visuelle</strong>n Modellierungsprachen <strong>für</strong> Organisationen<br />

und Softwaresysteme werden stattdessen die Beschreibungsmittel selbst in den Vordergrund<br />

gestellt. Die wesentlichen Konzepte der Sprachen der einzelnen Paradigmen, die in den<br />

Kapiteln 3.2 bis 3.5 herausgearbeitet wurden, werden im <strong>Referenz</strong>-<strong>Metaschema</strong> abgebildet. Dieses<br />

<strong>Referenz</strong>-<strong>Metaschema</strong> der Beschreibungsmittel <strong>für</strong> Organisationen und Softwaresysteme ist<br />

folglich durch die Beschreibungsmittel bestimmt.<br />

Entlang des in Kapitel 3.1 vorgestellten Klassifikationsschemas der Beschreibungsmittel <strong>für</strong> Organisationen<br />

und Softwaresysteme werden in den Kapiteln 6.2 bis 6.5 <strong>für</strong> jedes Beschreibungsparadigma<br />

zunächst isolierte EER/GRAL-Konzeptmodelle erstellt. Diese Konzeptmodelle können<br />

als <strong>Referenz</strong>-<strong>Metaschema</strong>ta <strong>für</strong> die Beschreibungsmittel der jeweiligen Paradigmen angesehen<br />

werden. Ihre <strong>Referenz</strong>-Eigenschaft wird durch exemplarische Anwendung auf verschiedene notationelle<br />

Varianten des betrachteten Beschreibungsparadigmas belegt.


168 <strong>Referenz</strong>-<strong>Metaschema</strong><br />

Die Ableitung eines spezialisierten Modells aus einem <strong>Referenz</strong>modell erfolgt durch Anpassung<br />

des <strong>Referenz</strong>modells an diese spezialisierten Anforderungen. Hierzu sind <strong>Referenz</strong>modelle um<br />

Konzepte einzuschränken, die <strong>für</strong> das spezielle Modell ohne Belang sind, oder um zusätzliche<br />

objekt- und beziehungsartige Konzepte zu erweitern, die im <strong>Referenz</strong>modell nicht abgebildet<br />

sind (vgl. zur Spezialisierung von <strong>Referenz</strong>modellen auch [Hars, 1994, S. 129ff]).<br />

Die Anwendung der <strong>Referenz</strong>-<strong>Metaschema</strong>ta zur Ableitung der <strong>Metaschema</strong>ta konkreter Beschreibungsmittel<br />

erfolgt durch Spezialisierung des EER/GRAL-Konzeptmodells des jeweils betrachteten<br />

Beschreibungsparadigmas. Hierdurch werden die Konzepte des <strong>Referenz</strong>-<strong>Metaschema</strong>s<br />

auf das spezialisierte <strong>Metaschema</strong> übertragen. Einschränkungen und Erweiterungen des spezialisierten<br />

<strong>Metaschema</strong>s werden sowohl graphisch durch Klassendiagramme als auch durch zusätzliche<br />

GRAL-Prädikate und Definitionen beschrieben.<br />

In Kapitel 6.6 erfolgt schließlich die Integration der <strong>Referenz</strong>-<strong>Metaschema</strong>ta der Beschreibungsparadigmen<br />

zum integrierten <strong>Referenz</strong>-<strong>Metaschema</strong> der <strong>visuelle</strong>n <strong>Modellierungssprachen</strong> <strong>für</strong><br />

Organisationen und Softwaresysteme. Dieses <strong>Referenz</strong>-<strong>Metaschema</strong>ta wird in Teil III zur Darstellung<br />

von <strong>Metaschema</strong>ta der Beschreibungsmittel konkreter Modellierungsmethoden und zur<br />

Entwicklung von Modellierungswerkzeugen angewandt.<br />

6.2 <strong>Metaschema</strong>ta der Aufgabensicht<br />

Im <strong>Metaschema</strong> der Aufgabensicht sind die <strong>visuelle</strong>n <strong>Modellierungssprachen</strong> des Aufgabengliederungsparadigmas<br />

zusammengefaßt. Zentrale Beschreibungskonzepte der Aufgabensicht sind<br />

Aufgaben mit ihren Verrichtungs- und Objekt-Komponenten. Das <strong>Metaschema</strong> des Aufgabengliederungsparadigmas<br />

ergänzt diese um Konzepte zur Zerlegung von Aufgaben in Teilaufgaben.<br />

6.2.1 <strong>Metaschema</strong>ta des Aufgabengliederungsparadigmas<br />

Mit den Sprachen des Aufgabengliederungsparadigmas (vgl. Kapitel 3.2.1) wird die Zerlegung<br />

von Aufgaben in Teilaufgaben dargestellt. Das <strong>Metaschema</strong> des Aufgabengliederungsparadigmas<br />

stellt hierzu Konzepte zur Abbildung der Aufgaben, zur Beschreibung ihrer charakteristischen<br />

Eigenschaften und der Gliederung der Aufgaben nach unterschiedlichen Aufgabentypen<br />

bereit.<br />

<strong>Referenz</strong>-<strong>Metaschema</strong> des Aufgabengliederungsparadigmas<br />

Abbildung 6.1 zeigt das <strong>Referenz</strong>-<strong>Metaschema</strong> des Aufgabengliederungsparadigmas TDP (vgl.<br />

auch [Scheer, 1992, S. 67] und [Winter / Ebert, 1996, S. 108]). Aufgaben (Task) ist genau ein<br />

Prozeß (Process) als Verrichtungskomponente und eine Objektklasse (ObjectClass) als Objektkomponente<br />

zugeordnet. Darüber hinaus sind Aufgaben durch ihre Namen (name), den Ort der<br />

Aufgabenerledigung (location), ihre Dauer (duration), den Zeitpunkt ihrer Erledigung (time) und<br />

der hierzu eingesetzten Hilfsmittel (resources) charakterisiert. Konkretisierungen der Konzepte<br />

Process und ObjectClass aus Ablauf- bzw. aus Objektsicht finden sich in Kapitel 6.4 und 6.5.


6.2 <strong>Metaschema</strong>ta der Aufgabensicht 169<br />

Object<br />

Class<br />

name: string<br />

Process<br />

name: string<br />

isObject<br />

Component<br />

isProcess<br />

Component<br />

Task<br />

name: string<br />

location: string<br />

duration: float<br />

time: date<br />

resources: string<br />

isDecomposedIn<br />

isSubtask<br />

isExecutionTask (isSubtask)<br />

isLeadingTask (isSubtask)<br />

isPlanningTask (isSubtask)<br />

isControllingTask (isSubtask)<br />

isAdministrativeTask (isSubtask)<br />

Abbildung 6.1: <strong>Referenz</strong>-<strong>Metaschema</strong> des Aufgabengliederungsparadigmas<br />

(Task Decomposition Paradigm, TDP)<br />

TaskDecomposition<br />

TDP-EER 1 criterion:<br />

{process, object}<br />

connection:<br />

{and,or}<br />

Jeder Aufgabe kann eine Aufgabenzerlegung (TaskDecomposition) zugeordnet werden, die die<br />

jeweiligen Teilaufgaben durch den abstrakten Kantentyp isSubtask zusammenfaßt. Die Injektivität<br />

von isSubtask stellt sicher, daß eine Teilaufgabe nur höchstens einmal in einer Aufgabengliederung<br />

enthalten ist.<br />

Gemäß der Gliederungsmerkmale Rang, Phase und Zweck (vgl. Kapitel 3.2.1) werden verschiedene<br />

Teilaufgabenbeziehungen unterschieden. Jede Aufgabengliederung umfaßt mindestens eine<br />

Ausführungsaufgabe (isExecutionTask) und beliebig viele Leitungs- (isLeadingTask), Planungs-<br />

(isPlanningTask), Kontroll- (isControllingTask) oder Verwaltungsaufgaben (isAdministrative-<br />

Task). Die Untergliederung in Ausführungsaufgaben entlang der Objekt- oder der Verrichtungskomponente<br />

sowie die Art Verknüpfung der Teilaufgaben durch Und- oder Oder-Gliederungen<br />

wird durch die Attributierung der TaskDecomposition modelliert. Jede Aufgabenzerlegung untergliedert<br />

eine Aufgabe nach genau einem Gliederungsprinzip und nach genau einer Verknüpfungsart.<br />

Konkrete Notationsformen des Aufgabengliederungsparadigmas beschreiben in der Regel ausschließlich<br />

baumartige Aufgabenzerlegungen. Hierbei bezieht sich die Baumartigkeit nur auf die<br />

isDecomposedIn-Kanten in Kantenrichtung und die isSubtask-Kanten in umgekehrter Kantenrichtung<br />

[TDP 1].<br />

for G in TDP assert<br />

[TDP 1]:<br />

end .<br />

isTree eGraph E isDecomposedIn E<br />

isSubtask<br />

Die Gesamtaufgabe der so modellierten Aufgabengliederung wird durch die Wurzel dieses Baumes<br />

mainTask abgebildet.


170 <strong>Referenz</strong>-<strong>Metaschema</strong><br />

for G in TDP define<br />

mainTask : VTask where<br />

end .<br />

mainTask root eGraph E isDecomposedIn E<br />

isSubtask<br />

Spezialisierungen des <strong>Referenz</strong>-<strong>Metaschema</strong>s<br />

In der Literatur zur Aufgabengliederung werden je nach Anschauung weitere Anforderungen<br />

oder Einschränkungen an die Modellierung von Aufgabengliederungen gestellt. Im folgenden<br />

werden diese durch Spezialisierungen des <strong>Referenz</strong>-<strong>Metaschema</strong>s des Aufgabengliederungsparadigmas<br />

beschrieben.<br />

Aufgabengliederungen nach Nordsieck. [Nordsieck, 1962, S. 14] betrachtet lediglich Aufgabengliederungen<br />

nach Verrichtung oder Objekt. Als ersten Gliederungsschritt fordert er die<br />

„Ausgliederung der Verwaltungsaufgaben“. Für die weiteren Zerlegungen sind ausschließlich<br />

Verrichtungs- und Objektgliederungen in Ausführungsaufgaben zugelassen. Somit ist <strong>für</strong> die<br />

Modellierung von Aufgabengliederungsplänen nach Nordsieck zu fordern, daß nur die Gliederung<br />

der Gesamtaufgabe mainTask höchstens eine Verwaltungsaufgabe enthält [TDPNordsieck<br />

1], [TDPNordsieck 2]; alle weiteren Gliederungen umfassen ausschließlich Ausführungsaufgaben.<br />

Gliederungen in Leitungs- Planungs-, und Kontrollaufgaben werden bei Nordsieck<br />

nicht unterschieden [TDPNordsieck 3]. Das <strong>Metaschema</strong> TDPNordsieck spezialisiert hierzu das<br />

<strong>Referenz</strong>-<strong>Metaschema</strong> des Aufgabengliederungsparadigmas.<br />

TDPNordsieck isA TDP ;<br />

for G in TDPNordsieck assert<br />

[TDPNordsieck 1]:<br />

# EisAdminstrativeTask 1;<br />

[TDPNordsieck 2]:<br />

e : E isAdminstrativeTask ¯ ω e isDecomposedIn<br />

mainTask ;<br />

[TDPNordsieck 3]:<br />

E isLeadingTask E isPlanningTask E isControllingTask <br />

end .<br />

Aufgabengliederungen nach Kosiol. [Kosiol, 1976, S. 52] lehnt eine kombinierte Anwendung<br />

der Gliederungsprinzipien Objekt und Verrichtung ab. Er be<strong>für</strong>chtet, daß durch eine Mischung<br />

bereits Entwurfsentscheidungen <strong>für</strong> die zu entwickelnde Organisationsstruktur vorweg genommen<br />

werden.<br />

TDPKosiol isA TDP ;


6.2 <strong>Metaschema</strong>ta der Aufgabensicht 171<br />

for G in TDPKosiol assert<br />

[TDPKosiol 1]:<br />

t : VTaskDecomposition ¯ t criterion process xor<br />

t : VTaskDecomposition ¯ t criterion object<br />

end .<br />

Das <strong>Metaschema</strong> zur Beschreibung der Aufgabengliederungspläne nach Kosiol (TDPKosiol) ist<br />

ausschließlich auf Verrichtungs- oder Objektgliederungen einzuschränken [TDPKosiol 1].<br />

Aufgabengliederungen nach Jordt/Gscheidle. Wie auch Nordsieck vertreten [Jordt /<br />

Gscheidle, (o.J.)] die Ausgrenzung der Verwaltungsaufgaben [TDPJordt/Gscheidle 1],<br />

[TDPJordt/Gscheidle 2]. Während bei Nordsieck keinerlei Bezüge zwischen den Nicht-<br />

Verwaltungsaufgaben und den Verwaltungsaufgaben beschrieben werden, führen [Jordt /<br />

Gscheidle, (o.J.), Lehrbrief 2, S. 37] das Konzept der Projektion ein, durch das Verwaltungsaufgaben<br />

denjenigen Ausführungsaufgaben zugeordnet werden können, deren Erledigung mittelbar<br />

von der Bearbeitung der Verwaltungsaufgaben abhängt.<br />

Task<br />

name: string<br />

location: string<br />

duration: float<br />

time: date<br />

resources: string<br />

isProjectionTo<br />

TDPJordtGscheidle isA TDP <br />

for G in TDPJordtGscheidle assert<br />

[TDPJordtGscheidle 1]:<br />

E isAdminstrativeTask <br />

[TDPJordtGscheidle 2]:<br />

e EisAdminstrativeTask ¯<br />

e isDecomposedIn mainTask <br />

[TDPJordtGscheidle 3]:<br />

t a V Task ¯<br />

t isProjectionTo a<br />

t isExecutionTask isDecompositionIn mainTask<br />

a <br />

isDecompositionIn isAdminstrativeTask<br />

isDecompositionIn isSubtask £<br />

[TDPJordtGscheidle 4]:<br />

v V TaskDecomposition ¯ Æ isSubtask v <br />

end .<br />

Abbildung 6.2: Spezialisierung des <strong>Referenz</strong>-<strong>Metaschema</strong>s des Aufgabengliederungsparadigmas<br />

nach [Jordt / Gscheidle, (o.J.)] TDPJordtGscheidle<br />

Das <strong>Referenz</strong>-<strong>Metaschema</strong> des Aufgabengliederungsparadigmas ist zur Abbildung der Anforderungen<br />

von [Jordt/Gscheidle, (o.J.)] um einen weiteren Kantentyp isProjectionTo zwischen Tasks<br />

zu ergänzen. Diese Kanten verlaufen ausschließlich zwischen Knoten des Teilbaums der Verwaltungsaufgaben<br />

und Knoten des Teilbaums der Nicht-Verwaltungsaufgaben zur Gesamtaufgabe<br />

mainTask [TDPJordtGscheidle 3]. Die entsprechende Anpassung des <strong>Referenz</strong>-<strong>Metaschema</strong>s<br />

zum <strong>Metaschema</strong> TDPJordtGscheidle ist in Abbildung 6.2 dargestellt.


172 <strong>Referenz</strong>-<strong>Metaschema</strong><br />

[Jordt / Gscheidle, (o.J.), Lehrbrief 2, S. 29] fordern aus Gründen der Übersichtlichkeit weiter,<br />

daß eine Aufgabe nicht in mehr als fünf Teilaufgaben untergliedert wird. Diese Forderung [TDP-<br />

JordtGscheidle 4] ist ebenfalls im GRAL-Teil von Abbildung 6.2 aufgeführt.<br />

Funktionsbäume. Zur Beschreibung von Aufgabengliederungen nach dem Ansatz der Architektur<br />

integrierter Informationssysteme (ARIS) [Scheer, 1992, S. 64ff], [Scheer, 1994, S. 20]<br />

werden Funktionsbäume verwendet. Das <strong>Metaschema</strong> zur Abbildung der ARIS-Funktionsbäume<br />

(TDPAris) kann ebenfalls auf das <strong>Metaschema</strong> des Aufgabengliederungsparadigmas zurückgeführt<br />

werden.<br />

ARIS-Funktionsbäume stellen nur die Gliederung von Aufgaben in Teilaufgaben dar. Eine explizite<br />

Unterscheidung von Ausführungs-, Leitungs-, Planungs-, Kontroll- und Verwaltungsaufgaben<br />

wird hier nicht modelliert [ARIS-TDP 1]. Der Kantentyp isSubtask ist im Gegensatz zum<br />

<strong>Referenz</strong>-<strong>Metaschema</strong> daher als konkret zu vereinbaren [ARIS-TDP 2]. Auch werden in Funktionsbäumen<br />

weder zusätzliche Aufgabeneigenschaften beschrieben noch wird die Art der Aufgabengliederung<br />

dargestellt, so daß die Attributstrukturen der Aufgaben- und Aufgabenzerlegungskonzepte<br />

unberücksichtigt bleiben [ARIS-TDP 3].<br />

TDPAris isA TDP ;<br />

for G in ArisTDP assert<br />

[ARIS-TDP 1]:<br />

E type<br />

isSubtask EisSubtask ;<br />

[ARIS-TDP 2]:<br />

overwrites [TDP-EER 1] :<br />

isConcrete isSubtask ;<br />

[ARIS-TDP 3]:<br />

t : V Task ¯ tlocation tduration ttime tresource ;<br />

end .<br />

d : V TaskDecomposition ¯ dcriterion dconnection <br />

6.3 <strong>Metaschema</strong>ta der Aufbausicht<br />

Die <strong>visuelle</strong>n <strong>Modellierungssprachen</strong> der Aufbausicht dienen zur Darstellung der Strukturkomponenten<br />

von Organisationen und deren Zusammenhängen. Mit den Sprachen des Stellengliederungsparadigmas<br />

wird die Einbettung von Organisationseinheiten in die Organisationsstruktur<br />

dargestellt. Die Sprachen des Komm<strong>uni</strong>kationsparadigmas modellieren die Informations- und<br />

Komm<strong>uni</strong>kationsbeziehungen zwischen Organisationseinheiten.<br />

6.3.1 <strong>Metaschema</strong>ta des Stellengliederungsparadigmas<br />

Die Zerlegung der Strukturkomponente einer Organisation in Stellen und Abteilungen ist der<br />

zentrale Beschreibungsgegenstand der Sprachen des Stellengliederungsparadigmas (vgl. Kapi-


6.3 <strong>Metaschema</strong>ta der Aufbausicht 173<br />

tel 3.3.1). Im <strong>Metaschema</strong> des Stellengliederungsparadigmas werden hierzu die Konzepte zur<br />

Modellierung von Organisationseinheiten bereitgestellt, die in Stellen, Abteilungen und Stellenmehrheiten<br />

unterschieden werden können. Ebenso werden die verschiedenen, zwischen Organisationseinheiten<br />

vorliegenden, strukturellen und leitungsbezogenen Beziehungen im <strong>Metaschema</strong><br />

abgebildet.<br />

<strong>Referenz</strong>-<strong>Metaschema</strong> des Stellengliederungsparadigmas<br />

Der EER-Teil des <strong>Referenz</strong>-<strong>Metaschema</strong>s des Stellengliederungsparadigmas (PDP) ist in Abbildung<br />

6.3 dargestellt (vgl. [Winter / Ebert, 1996, S. 108]). Ein ähnliches <strong>Referenz</strong>-<strong>Metaschema</strong>,<br />

das zur Beschreibung der Aufbausicht vor dem Hintergrund der Beurteilung der Modellierungsmöglichkeiten<br />

von Workflow-Management-Systemen zur Darstellung aufbauorganisatorischer<br />

Aspekte entwickelt wurde, findet sich in [Rosemann / zur Mühlen, 1998]. Zur Beschreibung<br />

statischer Organisationsstrukturen wird auch in [Scheer, 1992, S. 92] ein starkt vereinfachtes<br />

Metamodell vorgestellt.<br />

Group<br />

Department<br />

isMemberOf<br />

IsPartOf<br />

Position<br />

Assisting<br />

Position<br />

delegates<br />

informs<br />

LEPosition<br />

OrganizationalUnit<br />

assists Leading Executing<br />

Position Position<br />

instructs<br />

isHeadOf<br />

(isPartOf)<br />

rank : string<br />

competence: string<br />

qualification : string<br />

capacity : int<br />

leads<br />

substitutes<br />

name : string<br />

PDP-EER 1<br />

Abbildung 6.3: <strong>Referenz</strong>-<strong>Metaschema</strong> des Stellengliederungsparadigmas<br />

(Position Decomposition Paradigm, PDP)<br />

executionRole : string<br />

executesTask<br />

Wesentliche Beschreibungskonzepte sind hier die Organisationseinheiten (OrganizationalUnit),<br />

die sowohl Stellen (Position) als auch Abteilungen (Department) und Stellenmehrheiten (Group)<br />

umfassen. Stellen sind durch ihren Rang in der Organisation, ihre Kompetenzen und die benötigte<br />

Qualifikation des Stelleninhabers charakterisiert. Das capacity-Attribut dient zur Modellierung<br />

mehrfach besetzter Stellen. Zur weiteren Unterscheidung werden Stellen in Leitungsstellen<br />

(LeadingPosition), Ausführungsstellen (ExecutingPosition) und Stabsstellen (AssistingPosition)<br />

unterschieden.<br />

Zwischen Stellen vorliegende Beziehungen werden durch Kantentypen modelliert. Das<br />

<strong>Referenz</strong>-Schema sieht hierzu Informationsbeziehungen (informs), Vertretungsbeziehungen<br />

Task


174 <strong>Referenz</strong>-<strong>Metaschema</strong><br />

(substitutes) und fachliche Weisungsbeziehungen (instructs) zwischen beliebigen Stellen sowie<br />

disziplinarische Weisungsbeziehungen (leads) von Leitungsstellen zu nachgeordneten Leitungsstellen<br />

bzw. Ausführungsstellen und Stabsbeziehungen (assists) zu Stabsstellen vor. Eine ebenfalls<br />

mögliche Substrukturierung der Stabsstellen erfolgt durch delegates-Kanten. Die disziplinarischen<br />

Weisungsbeziehungen sind zyklenfrei [PDP 1]. In Abteilungen (Department)sindbeliebige<br />

Organisationseinheiten zusammengefaßt (isPartOf ). Die Strukturierung der Abteilungen<br />

ist hierbei baumartig [PDP 2]. Abteilungen werden durch mindestens eine Leitungsstelle geleitet<br />

(isHeadOf ). In Abteilungen sind nur solche Stellen zusammengefaßt, die dem Leiter dieser Abteilung<br />

(isHeadOf ) auch disziplinarisch oder weisungsbezogen unterstellt sind [PDP 3]. Stellenmehrheiten<br />

(Group) fassen ausschließlich Stellen (isMemberOf ) zusammen. Eine Leitungsstelle<br />

ist hier nicht vorgesehen.<br />

for G in PDP assert<br />

[PDP 1]:<br />

isDag eGraph Eleads [PDP 2]:<br />

[PDP 3]:<br />

end .<br />

isTree eGraph E<br />

isPartOf<br />

;<br />

d : V Department ; h : V LeadingPosition h isHeadOf<br />

;<br />

d isPartOf &Position h leads instructs £<br />

Die Verbindung zwischen der Aufbausicht und der Aufgabengliederungssicht (vgl. Kapitel 6.2)<br />

wird über das Konzept der Aufgaben (Task) hergestellt. Jeder Organisationseinheit können hierzu<br />

die von ihr zu bearbeitenden Aufgaben zugeordnet (executesTask) werden. Die Modellierung<br />

der verschiedenen Arten der Aufgabenerledigung erfolgt durch entsprechende Attributierung der<br />

executesTask-Kanten durch die jeweiligen Funktionen.<br />

Spezialisierungen des <strong>Referenz</strong>-<strong>Metaschema</strong>s<br />

Konkrete Beschreibungsmittel des Stellengliederungsparadigmas stellen mit Ausnahme von textuellen<br />

Stellenbeschreibungen nur einen Ausschnitt der durch das <strong>Referenz</strong>-<strong>Metaschema</strong> abgebildeten<br />

Aspekte der Aufbauorganisation dar. Die folgenden Abschnitte skizzieren die Anwendung<br />

des <strong>Referenz</strong>-<strong>Metaschema</strong>s aus Abbildung 6.3 auf wichtige Vertreter der Sprachen des<br />

Stellengliederungsparadigmas.<br />

Organigramme <strong>für</strong> Einliniensysteme. In Organigrammen zu Einlinien-Systemen, die im<br />

<strong>Metaschema</strong> DPDSingleLine formalisiert sind, werden nur disziplinarische Weisungsbeziehungen<br />

zwischen Leitungsstellen und Ausführungsstellen modelliert. Erweiterungen zu Stab-<br />

Liniensystemen umfassen auch die Zuordnung von Stabsstellen und deren Hierarchie. Abteilungen,<br />

Gruppenzugehörigkeiten sowie die restlichen durch das <strong>Referenz</strong>-Metamodell unterstützten<br />

Beziehungstypen werden nicht abgebildet [PDPSingleLine 1]. Die in solchen Einliniensystemen<br />

d ¯


6.3 <strong>Metaschema</strong>ta der Aufbausicht 175<br />

modellierten Leitungsbeziehungen folgen dem Prinzip der Einheit der Auftragserteilung und sind<br />

daher auf baumartige Strukturen [PDPSingleLine 2] eingeschränkt.<br />

PDPSingleLine isA PDP ;<br />

for G in PDPSingleLine assert<br />

[PDPSingleLine 1]:<br />

VGroup VDepartment ;<br />

Einforms Einstructs Esubstitutes ;<br />

[PDPSingleLine 2]:<br />

isTree eGraph E leads E<br />

assists E delegates<br />

end .<br />

Abteilungsorganigramme. Die Zerlegung einer Organisation in Abteilungen wird durch Abteilungsorganigramme<br />

(vgl. das <strong>Metaschema</strong> PDPDepartment in Abbildung 6.4) beschrieben.<br />

Mit diesen <strong>visuelle</strong>n Sprachen wird die Untergliederung von Abteilungen in Unter-Abteilungen<br />

und die Zuordnung von Stellen zu einzelnen Abteilungen dargestellt. Häufig bilden diese Notationsformen<br />

auch die Weisungsbeziehungen innerhalb der Abteilungen ab, die Unterscheidung<br />

verschiedener Stellentypen und weiterer Beziehungen zwischen den Stellen wird in der Regel<br />

nicht modelliert [PDPDepartment 1]. Das Konzept Position ist daher als konkret zu vereinbaren<br />

[PDPDepartment 2]. Ebenso werden Leitungs-, Weisungs-, Stellvertretungs- und Informationsbeziehungen<br />

sowie Gruppenzuteilungen nicht dargestellt [PDPDepartment 3]. In Varianten<br />

von Abteilungsorganigrammen werden die Stellen der Abteilungsleiter gegenüber den nachgeordneten<br />

Stellen optisch hervorgehoben. Zur Identifizierung dieser Leitungsstellen können die<br />

isHeadOf -Kanten des <strong>Referenz</strong>-<strong>Metaschema</strong>s herangezogen werden.<br />

OrganizationalUnit<br />

Department<br />

IsPartOf<br />

leads<br />

Position<br />

isHeadOf<br />

(isPartOf)<br />

name : string<br />

PDPDepartment isA PDP <br />

for G in PDPDepartment assert<br />

[PDPDepartment 1]:<br />

V Position V type<br />

Position <br />

[PDPDepartment 2]:<br />

overwrites [PDP-EER 2] <br />

isConcrete Position <br />

[PDPDepartment 3]:<br />

V Group <br />

end .<br />

E assists E delegates E instructs <br />

E informs E substitutes <br />

Abbildung 6.4: Spezialisierung des <strong>Referenz</strong>-<strong>Metaschema</strong>s des Stellengliederungsparadigmas<br />

<strong>für</strong> Abteilungsorganigramme (PDPDepartment)<br />

In anderen Varianten der Abteilungsorganigramme (vgl. Abbildung 3.5e) wird auch häufig auf<br />

die Modellierung der Leitungsbeziehungen komplett verzichtet. Modelliert wird dann lediglich


176 <strong>Referenz</strong>-<strong>Metaschema</strong><br />

das hierarchische Gefüge von Stellen und Abteilungen. Gegenüber dem <strong>Metaschema</strong> PDPDepartment<br />

sind dann auch noch die leads-Kanten auszuschließen.<br />

ARIS-Organigramme. Organigramme des Modellierungsansatzes der Architektur integrierter<br />

Informationssysteme (ARIS) [Scheer, 1994, S. 23ff] stellen beliebige Organisationseinheiten<br />

zueinander in Beziehung. Eine Unterscheidung dieser Organisationseinheiten in Abteilungen,<br />

Gruppen, Leitungsstellen, Ausführungsstellen oder Stabsstellen wird hier ebenso wenig abgebildet,<br />

wie unterschiedliche Arten struktureller Beziehungen zwischen den einzelnen Organisationseinheiten<br />

[ArisPDP 1]. Das Konzept zur Abbildung der Organisationseinheiten ist daher auch<br />

als konkret zu vereinbaren [ArisPDP 2]. ARIS-Organigramme beschreiben lediglich baumartige<br />

Unterstellungsbeziehungen zwischen einzelnen Organisationseinheiten, die im <strong>Metaschema</strong><br />

durch den zusätzlichen Kantentyp isSubordinated abgebildet werden [ArisPDP 3]. Vergleiche<br />

hierzu auch den Ausschnitt des ARIS-<strong>Metaschema</strong>s des Fachkonzepts Organisation in [Scheer,<br />

1992, S. 92].<br />

isSubordinated<br />

Organizational<br />

Unit<br />

name : string<br />

ArisPDP isA PDP <br />

for G in ArisPDP assert<br />

[ARIS-PDP 1]:<br />

V AssistingPosition V LEPosition <br />

E informs V instructs V substitutes <br />

V delegates V assists V leads <br />

[ARIS-PDP 2]:<br />

overwrites [PDP-EER 1] <br />

isConcrete OrganizationalUnit <br />

[ARIS-PDP 3]:<br />

isTree eGraph E isSubordinted<br />

end .<br />

Abbildung 6.5: Spezialisierung des <strong>Referenz</strong>-<strong>Metaschema</strong>s des Stellengliederungsparadigmas<br />

<strong>für</strong> ARIS-Organigramme (PDPAris)<br />

Organigramme <strong>für</strong> Mehrliniensystem. Mehrliniensysteme folgen nicht dem Prinzip der Einheit<br />

der Auftragserteilung. Hier werden, wie <strong>für</strong> das <strong>Referenz</strong>-<strong>Metaschema</strong> des Stellengliederungsparadigmas<br />

gefordert, zyklenfreie Weisungs- und Leitungsbeziehungen dargestellt. Neben<br />

den disziplinarischen Weisungsbeziehungen sind im Gegensatz zu Einliniensystemen auch beliebige<br />

fachliche Weisungsbeziehungen zu beachten. Die Einschränkung gegenüber dem <strong>Referenz</strong>-<br />

<strong>Metaschema</strong> des Stellengliederungsparadigmas im <strong>Metaschema</strong> PDPMultiLine bezieht sich<br />

folglich nur auf den Ausschluß der Konzepte Group und Department sowie der Beziehungskonzepte<br />

informs und substitutes [PDPMultiLine 1].<br />

PDPMultiLine isA PDP ;<br />

for G in PDPMultiLine assert<br />

[PDPMultiLine 1]:<br />

VGroup VDepartment ;<br />

Einforms Esubstitutes <br />

end .


6.3 <strong>Metaschema</strong>ta der Aufbausicht 177<br />

Funktionendiagramme. Funktionendiagramme beschreiben die Zuordnung von Aufgaben zu<br />

Stellen. Die Darstellung der Stellengliederung erfolgt hierbei durch die Darstellungsmittel der<br />

Einliniensysteme (s.o.). Zur Darstellung der Aufgabengliederung ist in analoger Form auf das<br />

<strong>Referenz</strong>-<strong>Metaschema</strong> des Aufgabengliederungsparadigmas (vgl. Kapitel 6.2.1) zurückzugreifen.<br />

Wesentlicher Modellierungsaspekt der Funktionendiagramme ist die Rolle, in der eine Stelle<br />

eine Aufgabe bearbeitet. Diese Funktionen sind am executionRole-Attribut der entsprechenden<br />

executesTask-Kanten abzulesen.<br />

6.3.2 <strong>Metaschema</strong>ta des Komm<strong>uni</strong>kationsparadigmas<br />

Mit den Beschreibungsmitteln des Komm<strong>uni</strong>kationsparadigmas (vgl. Kapitel 3.3.2) werden die<br />

Interaktionen innerhalb einer Organisation und mit externen Partnern modelliert. Das <strong>Referenz</strong>-<br />

<strong>Metaschema</strong> des Komm<strong>uni</strong>kationsparadigmas bildet hierzu die Konzepte zur Modellierung der<br />

Komm<strong>uni</strong>kationspartner, zur quantitativen Beschreibung der Komm<strong>uni</strong>kationsbeziehungen und<br />

zur Darstellung der hierzu eingesetzten Komm<strong>uni</strong>kationsmittel ab.<br />

<strong>Referenz</strong>-<strong>Metaschema</strong> des Komm<strong>uni</strong>kationsparadigmas<br />

Wie auch das <strong>Referenz</strong>-<strong>Metaschema</strong> des Stellengliederungsparadigmas (vgl. Kapitel 6.3.1) werden<br />

im <strong>Referenz</strong>-<strong>Metaschema</strong> des Komm<strong>uni</strong>kationsparadigmas (CommP) die Organisationseinheiten<br />

Stellen (Position), Abteilungen (Department) und Stellenmehrheiten (Group) im Konzept<br />

OrganizationalUnit zusammengefaßt. Komm<strong>uni</strong>kationen (Comm<strong>uni</strong>cation) zwischen organisatorischen<br />

Einheiten und externen Partnern (ExternalPartner) werden durch den Beziehungstyp<br />

comm<strong>uni</strong>cates modelliert. Die durch comm<strong>uni</strong>cates-Kanten modellierte Komm<strong>uni</strong>kation mehrerer<br />

Partner ist ungerichtet. An einer Komm<strong>uni</strong>kation sind mindestens zwei Komm<strong>uni</strong>kationspartner<br />

beteiligt. Aufgrund der Injektivität von comm<strong>uni</strong>cates sind diese Komm<strong>uni</strong>kationspartner<br />

verschieden.<br />

Comm<strong>uni</strong>cationPartner<br />

OrganizationalUnit<br />

name: string<br />

External<br />

Partner<br />

Department Group Position<br />

comesFrom<strong>Se</strong>nder<br />

(comm<strong>uni</strong>cates)<br />

comm<strong>uni</strong>cates<br />

goesToReceiver<br />

(comm<strong>uni</strong>cates)<br />

Comm<strong>uni</strong>cation<br />

frequency: float<br />

duration: float<br />

transmits<br />

Abbildung 6.6: <strong>Referenz</strong>-<strong>Metaschema</strong> des Komm<strong>uni</strong>kationsparadigmas<br />

(Comm<strong>uni</strong>cation Paradigm, CommP)<br />

>1<br />

MeansOfComm<strong>uni</strong>cation<br />

Document<br />

personal<br />

Delivery: bool<br />

Phone<br />

Fax EMail<br />

Zur Darstellung gerichteter Komm<strong>uni</strong>kationsbeziehungen werden die Beziehungstypen comes-<br />

From<strong>Se</strong>nder und goesToReceiver als Spezialisierungen des Kantentyps comm<strong>uni</strong>cates eingeführt,<br />

die den an den Interaktionen Beteiligten <strong>Se</strong>nder- und Empfängerrollen zuweisen. Gerichte-


178 <strong>Referenz</strong>-<strong>Metaschema</strong><br />

te Komm<strong>uni</strong>kationsbeziehungen werden ausschließlich durch comesFrom<strong>Se</strong>nder- und goesToReceiver-Kanten<br />

modelliert [CommP 1].<br />

for G in CommP assert<br />

[CommP 1]:<br />

c : VComm<strong>uni</strong>cation δ<br />

comesFrom<strong>Se</strong>nder<br />

c 1 δ c<br />

goesToReceiver<br />

1 ¯<br />

δ type<br />

comm<strong>uni</strong>cates<br />

c 0<br />

end .<br />

Quantitative Komm<strong>uni</strong>kationseigenschaften wie Komm<strong>uni</strong>kationshäufigkeit und -dauer werden<br />

in den Attributen der Comm<strong>uni</strong>cation-Knoten modelliert. Jeder Komm<strong>uni</strong>kation kann darüber<br />

hinaus auch das hierzu eingesetzte Komm<strong>uni</strong>kationsmittel (MeansOfComm<strong>uni</strong>cation) zugeordnet<br />

werden. Hierbei werden Komm<strong>uni</strong>kationen durch Telefon (Phone), Fax (Fax), E-Mail<br />

(EMail) und durch Dokumentenaustausch (Document) unterschieden.<br />

Spezialisierungen des <strong>Referenz</strong>-<strong>Metaschema</strong>s<br />

Auch die konkreten Darstellungsmittel des Komm<strong>uni</strong>kationsparadigmas heben einzelne Modellierungsaspekte<br />

des <strong>Referenz</strong>-<strong>Metaschema</strong>s heraus und verzichten auf die Darstellung anderer.<br />

Komm<strong>uni</strong>gramme. Das <strong>Metaschema</strong> der Komm<strong>uni</strong>gramme (CommPChart) basiert auf dem<br />

<strong>Referenz</strong>-<strong>Metaschema</strong> des Komm<strong>uni</strong>kationsparadigmas. Komm<strong>uni</strong>gramme beschreiben das Vorliegen<br />

von Komm<strong>uni</strong>kationsbeziehungen zwischen jeweils genau zwei Partnern [CommP-<br />

Chart 1] sowie die Häufigkeit oder die Dauer dieser Interaktionen. Zur Beschreibung der quantitativen<br />

Komm<strong>uni</strong>kationsaspekte sind die frequency- oder duration-Attributierungen der Comm<strong>uni</strong>cation-Knoten<br />

zu visualisieren. In Komm<strong>uni</strong>gramm-Varianten wie z. B. in den Abbildungen<br />

3.10, 3.11 und 3.12 wird höchstens eine Interaktionsbeziehung zwischen zwei Komm<strong>uni</strong>kationspartnern<br />

dargestellt [CommPChart 2]. Die zur Komm<strong>uni</strong>kation genutzten Hilfsmittel<br />

werden in Komm<strong>uni</strong>grammen nicht abgebildet [CommPChart 3]. Die Komm<strong>uni</strong>kationsrichtung<br />

zwischen zwei Partnern kann anhand der comesFrom<strong>Se</strong>nder- und goesToReceiver-Kanten abgelesen<br />

werden.<br />

CommPChart isA CommP ;<br />

for G in CommPChart assert<br />

[CommPChart 1]:<br />

c : VComm<strong>uni</strong>cation ¯ δ c 2;<br />

comm<strong>uni</strong>cates<br />

[CommPChart 2]:<br />

v w : V Comm<strong>uni</strong>cationPartner ¯<br />

#c : V Comm<strong>uni</strong>cation v comesFrom<strong>Se</strong>nder c goesToReceiver<br />

[CommPChart 3]:<br />

V MeansOfComm<strong>uni</strong>cation <br />

end .<br />

w 1;


6.4 <strong>Metaschema</strong>ta der Prozeßsicht 179<br />

Kooperationsbilder. Wie auch in Komm<strong>uni</strong>kationsdiagrammen werden durch Kooperationsbilder<br />

(vgl. das <strong>Metaschema</strong> CommPPic) Komm<strong>uni</strong>kationsbeziehungen zwischen genau zwei<br />

Komm<strong>uni</strong>kationspartnern beschrieben [CommPPic 1]. Diese Komm<strong>uni</strong>kationsbeziehungen sind<br />

generell gerichtet [CommPPic 2]. Kooperationsbilder beschreiben darüber hinaus die zur Interaktion<br />

verwendeten Hilfsmittel. Im Gegensatz zu der Darstellung durch Komm<strong>uni</strong>gramme,<br />

bei denen höchstens eine Komm<strong>uni</strong>kationsbeziehung zwischen zwei Partnern dargestellt wird,<br />

können hier beliebig viele Interaktionen modelliert werden, die jedoch jeweils unterschiedliche<br />

Medien verwenden [CommPPic 3].<br />

CommPPic isA CommP ;<br />

for G in CommPPic assert<br />

[CommPPic 1]:<br />

c : VComm<strong>uni</strong>cation ¯ δ c 2;<br />

comm<strong>uni</strong>cates<br />

[CommPPic 2]:<br />

V type<br />

comm<strong>uni</strong>cates<br />

;<br />

[CommPPic 3]:<br />

c 1 c 2 : V Comm<strong>uni</strong>cation ; m 1 m 2 : V MeansOfComm<strong>uni</strong>cation c 1 c 2 <br />

c 1 comesFrom<strong>Se</strong>nder comesFrom<strong>Se</strong>nder c 2 c 1 goesToReceiver goesToReceiver c 2 <br />

m 1 transmits c 1 m 2 transmits c 2 ¯ type m 1 type m 2<br />

end .<br />

6.4 <strong>Metaschema</strong>ta der Prozeßsicht<br />

In den <strong>Metaschema</strong>ta der Ablaufsicht sind die <strong>visuelle</strong>n Sprachen zur Darstellung logischer<br />

und zeitlicher Aspekte der Aufgabenbearbeitung zusammengefaßt. Die <strong>Metaschema</strong>ta der vier<br />

Beschreibungsparadigmen der Ablaufsicht werden in den folgenden Kapiteln eingeführt. Das<br />

nach außen sichtbare Verhalten eines Systems wird mit den Sprachen des Datenflußparadigmas<br />

beschrieben. Die Sprachen des Zustandsübergangsparadigmas beschreiben das dynamische<br />

Systemverhalten aus Sicht der Veränderung von Systemzuständen. Im Netzparadigma sind die<br />

Beschreibungsmittel zusammengefaßt, die das Systemverhalten entlang der Folgebeziehungen<br />

zwischen Prozessen und/oder Ereignissen darstellen. Regulär strukturierte Kontrollflüsse dienen<br />

zur Darstellung von Prozeßabläufen im Kontrollflußparadigma.<br />

6.4.1 <strong>Metaschema</strong>ta des Datenflußparadigmas<br />

Zur Beschreibung des nach außen sichtbaren Systemverhaltens mit den Sprachen des Datenflußparadigmas<br />

wird das System als ein Netz funktionaler Komponenten aufgefaßt, die durch<br />

den Austausch von Daten oder Gegenständen miteinander interagieren (vgl. Kapitel 3.4.1). Das<br />

<strong>Metaschema</strong> des Datenflußparadigmas stellt daher Konzepte zur Modellierung dieser funktionalen<br />

Komponenten (Prozesse) und deren Interaktionsbeziehungen (Datenflüsse) bereit. Datenflußmodellierungen<br />

sind ein wesentliches Hilfmittel bei der funktionalen Zerlegung eines Systems


180 <strong>Referenz</strong>-<strong>Metaschema</strong><br />

in Teilsysteme. Hierzu bildet das <strong>Metaschema</strong> entsprechende Konzepte zur Modellierung von<br />

Prozeßverfeinerung ab. Diverse Beschreibungsmittel des Datenflußparadigmas verwenden zur<br />

Konkretisierung der Modellierungen neben den Prozessen und Datenflüssen zusätzliche Modellierungskonstrukte,<br />

die im <strong>Referenz</strong>-<strong>Metaschema</strong> verallgemeinert abgebildet sind.<br />

<strong>Referenz</strong>-<strong>Metaschema</strong> des Datenflußparadigmas<br />

Abbildung 6.7 enthält den EER-Teil des <strong>Referenz</strong>-<strong>Metaschema</strong>s des Datenflußparadigmas (DFP)<br />

(vgl. auch [EIA/IS-115, 1995], [Drüke, 1996], [Winter / Ebert, 1996, S. 115], [Ebert et al.,<br />

1996b]). Die funktionalen Systemkomponenten werden durch das Konzept Process abgebildet.<br />

Interaktionsbeziehungen werden im Konzept Dataflow beschrieben. Solche Datenflüsse verbinden<br />

jeweils zwei Datenflußobjekte (DfObject) miteinander, die entweder Prozesse (Process),<br />

Speicher (Store), Schnittstellen zur Systemumwelt (Terminator) oder Kontaktpunkte in Verfeinerungen<br />

(PointOfContact) modellieren. Nicht zugelassen sind hierbei Datenflüsse ausschließlich<br />

zwischen Speichern, zwischen Schnittstellen oder zwischen Datenflußsurrogaten in Verfeinerungen<br />

(PointOfContact) [DFP 1]. Datenflußbeziehungen sind binär modelliert, so daß jeweils<br />

Quelle (dfComesFrom) und Ziel (dfGoesTo) eines Datenflusses unterschieden werden kann.<br />

Mechanism<br />

Organizational<br />

Unit<br />

Dataflow<br />

Scenario<br />

Technical<br />

Means<br />

name: string<br />

name: string<br />

isComponentIn<br />

executes<br />

Process<br />

ClassItem<br />

Atomic<br />

Class<br />

DfItem<br />

DfObject<br />

isComponentOf isComponentOf isComponentOf<br />

Alternative<br />

Class<br />

describes<br />

Terminator Store<br />

Process<br />

dfRefines<br />

PointOf<br />

Contact<br />

Iterated<br />

Class<br />

dfGoesTo<br />

dfComesFrom<br />

dfCorrespondsTo<br />

describes<br />

<strong>Se</strong>quential<br />

Class<br />

Dataflow<br />

Abbildung 6.7: <strong>Referenz</strong>-<strong>Metaschema</strong> des Datenflußparadigmas (Data Flow Paradigm, DFP)


6.4 <strong>Metaschema</strong>ta der Prozeßsicht 181<br />

Sowohl Datenflüsse als auch Speicher können durch die <strong>visuelle</strong> Modellierungsprachen des Objekt-Beziehungsparadigmas<br />

(Kapitel 3.5.3) näher konkretisiert werden. Der Kantentyp describes<br />

stellt hierzu die Verbindung zwischen dem <strong>Metaschema</strong>ta des Datenflußparadigmas und des Objekt-Beziehungsparadigmas<br />

(vgl. Kapitel 6.5.3) her. In Datenflußmodellierungen erfolgt die Konkretisierung<br />

i. allg. durch regulär strukturierte Objektgeflechte, die mittels Datenlexika (vgl. auch<br />

Kapitel 6.5.3) beschrieben werden. Diese Objektstrukturen werden im <strong>Metaschema</strong> des Datenflußparadigmas<br />

durch das Konzept ClassItem abgebildet, das in Unterkonzepte zur Beschreibung<br />

atomarer Objektklassen und durch Alternativen, Iterationen oder <strong>Se</strong>quenzen konstruierte Objektklassen<br />

spezialisiert ist.<br />

In einigen Datenflußdialekten ([Ross, 1977], [Gane / Sarson, 1979]) werden Prozessen auch ihre<br />

menschlichen und technischen Handlungsträger zugeordnet. Dieses wird im <strong>Metaschema</strong> durch<br />

das Konzept Mechanism abgebildet, das durch seine Verfeinerung OrganizationalUnit auch den<br />

Querbezug zu den <strong>Metaschema</strong>ta der Aufbausicht (vgl. Kapitel 6.3) herstellt. Die Metamodellierung<br />

der <strong>Se</strong>quenzialisierungen von Datenflußdiagrammen zur Beschreibung von Anwendungsszenarien<br />

erfolgt durch das Konzept DataflowScenario, das Konzepte der Datenflußmodellierung<br />

(DfItem) zu Szenarien zusammenfaßt.<br />

Die Verfeinerung von Prozessen durch weitere Datenflußkonzepte (DfItem) wird durch den Kantentyp<br />

dfRefines modelliert. Prozesse sollten hierbei in drei bis sechs Unterprozesse untergliedert<br />

werden [DFP 2]. Das <strong>Metaschema</strong> des Datenflußparadigmas ermöglicht die mehrfache Verwendung<br />

von Prozeßverfeinerungen 1 (vgl. auch [EIA/IS-115, 1995], [Flatscher, 1998, S. 229]). Diese<br />

Verfeinerungsstruktur ist zyklenfrei [DFP 3]. Für die Mehrfachverwendung muß weiter gelten,<br />

daß die Elemente einer Datenflußbeschreibung (DfItem) die eine solche Verfeinerung bilden,<br />

auch in jeder Verfeinerung vollständig enthalten sind [DFP 4]. Datenflüsse sind ausschließlich<br />

zwischen solchen Datenflußobjekten zugelassen, die dieselben Prozesse verfeinern [DFP 5].<br />

In Verfeinerungen dienen PointOfContact-Knoten als Surrogate der Datenflüsse, die in den verfeinerten<br />

Prozeß ein- bzw. aus ihm ausgehen. Dieser Bezug wird durch dfCorrespondsTo-Kanten<br />

hergestellt [DFP 6]. Verfeinerungen müssen strukturell balanciert sein, d. h. die Verfeinerung eines<br />

Prozesses besitzt nach außen dasselbe Verhalten wie der verfeinerte Prozeß. Zu jedem in<br />

einen verfeinerten Prozeß ein- oder aus ihm ausgehenden Datenfluß existiert in der Verfeinerung<br />

genau ein PointOfContact-Knoten als Start- bzw. Endpunkt dieser Datenflüsse in der Verfeinerung<br />

[DFP 7]. Diese Kontaktpunkte sind <strong>für</strong> alle Datenflüsse eines verfeinerten Prozesses<br />

verschieden [DFP 8]. Datenflüsse sind in Verfeinerungen nur zwischen Objekten dieser Verfeinerung<br />

zugelassen, Datenflüsse zwischen Verfeinerungen sind auszuschließen [DFP 9].<br />

Ebenso muß sichergestellt sein, daß die Daten, die durch die Datenflüsse der Verfeinerung transportiert<br />

werden, mit den Daten der korrespondierenden Datenflüsse des verfeinerten Prozesses<br />

verträglich sind. In Zusicherung [DFP 10] wird dieses durch Rückgriff auf die Strukturierung<br />

der transportierten Daten spezifiziert. Analog ist auch zu fordern, daß zu Speichern adjazente<br />

Datenflüsse auch mit dem Speicherinhalt verträgliche Daten lesen bzw. schreiben [DFP 11].<br />

1 Vielfach wird in Datenflußdialekten die Mehrfachverwendung ausgeschlossen und eine baumartige Verfeinerungsstruktur<br />

gefordert. Für das <strong>Referenz</strong>-<strong>Metaschema</strong> wird jedoch nur die allgemeinere Zyklenfreiheit verlangt.


182 <strong>Referenz</strong>-<strong>Metaschema</strong><br />

for G in DFP assert<br />

[DFP 1]:<br />

s1 s2 : VStore s1 dfComesFrom dfGoesTo s2 <br />

t1 t2 : VTerminator t1 dfComesFrom dfGoesTo t2 <br />

p1 p2 : VPointOfContact p1 dfComesFrom dfGoesTo p2 ;<br />

[DFP 2]:<br />

[DFP 3]:<br />

p : V Process δ dfRefines p 0 ¯ 3 δ dfRefines p 6;<br />

isDag eGraph E dfRefines<br />

[DFP 4]:<br />

a b : VDfItem a dfRefines dfRefines b ¯<br />

a dfRefines b dfRefines ;<br />

[DFP 5]:<br />

a b : VDfObject a dfComesFrom dfGoesTo b ¯<br />

a dfRefines b dfRefines ;<br />

[DFP 6]:<br />

[DFP 7]:<br />

[DFP 8]:<br />

[DFP 9]:<br />

;<br />

c : E ÓÖÖ×ÔÓÒ×ÌÓ ¯ p : V ÈÖÓ ×× δ dfRefines p 0 ¯<br />

ω c dfGoesTo dfComesFrom<br />

d : VDataflow ; p : VProcess δ<br />

dfRefines<br />

p 0 d dfGoesTo p ¯<br />

1 poc : VPointOfContact d dfCorresponds poc p ;<br />

dfRefines p ¯<br />

p ;<br />

poc dfComesFrom dfGoesTo dfRefines<br />

d : VDataflow ; p : VProcess δ<br />

dfRefines<br />

p 0 d dfComesFrom p ¯<br />

1 poc : VPointOfContact d dfCorresponds poc p ;<br />

dfRefines p ¯<br />

poc dfGoesTo dfComesFrom dfRefines<br />

p : V Process ; d 1 d 2 : V Dataflow ; poc 1 poc 2 : V PointOfContact <br />

d 1 d 2 <br />

d 1 dfGoesTo dfComesFrom p dfRefines poc 1 dfCorrespondsTo d 1 <br />

d 2 dfGoesTo dfComesFrom p dfRefines poc 2 dfCorrespondsTo d 2 ¯<br />

poc 1 poc 2 ;<br />

d : V Dataflow ; p : V Process d dfRefines<br />

d dfGoesTo dfComesFrom dfRefines<br />

p ¯<br />

p ;


6.4 <strong>Metaschema</strong>ta der Prozeßsicht 183<br />

[DFP 10]:<br />

poc : V PointOfContact ¯<br />

poc dfCorrespondsTo describes<br />

£<br />

isComponentOf<br />

describes dfGoesTo dfComesFrom<br />

[DFP 11]:<br />

d : VDataflow ¯<br />

d dfGoesTo dfComesFrom &Store describes<br />

end .<br />

Spezialisierungen des <strong>Referenz</strong>-<strong>Metaschema</strong>s<br />

poc ;<br />

£<br />

isComponentOf describes d<br />

Die <strong>Metaschema</strong>ta der verschiedenen Dialekte und Darstellungsvarianten des Datenflußparadigmas<br />

können ebenfalls aus dem <strong>Referenz</strong>-<strong>Metaschema</strong> abgeleitet werden.<br />

Kontextdiagramme. Kontextdiagramme (vgl. das <strong>Metaschema</strong> DFPContext) beschreiben genau<br />

einen Prozeß in seiner Systemumgebung [DFPContext 1]. Dieser Prozeß beschreibt in der<br />

Regel die Wurzel einer Verfeinerungshierarchie. Aus dem Prozeß eines Kontextdiagramms gehen<br />

folglich keine dfRefines-Kanten aus [DFPContext 2], und das Kontextdiagramm enthält keine<br />

PointOfContact-Knoten [DFPContext 3]. Auch werden in Kontextdiagrammen keine Speicher<br />

(Store), keine Szenarien (DataflowScenario) und keine Mechanismen (Mechanism) modelliert<br />

[DFPContext 3].<br />

DFPContext isA DFP ;<br />

for G in DFPContext assert<br />

[DFPContext 1]:<br />

# VProcess 1;<br />

[DFPContext 2]:<br />

p : V Process ¯ δ dfRefines p 0;<br />

[DFPContext 3]:<br />

V PointOfContact V Store V DataflowScenario V Mechanism <br />

end .<br />

Datenflußdiagramme. Datenflußdiagramme der strukturierten Analyse [DeMarco, 1978] entsprechen<br />

weitestgehend dem <strong>Referenz</strong>-<strong>Metaschema</strong> des Datenflußparadigmas. In diesen Datenflußdiagrammen<br />

(vgl. das <strong>Metaschema</strong> DFPdeMarco) werden lediglich keine Schnittstellen (Terminator)<br />

verwendet, die den Kontextdiagrammen vorbehalten sind. Auch werden keine Szenarien<br />

(DataflowScenario) und Mechanismen (Mechanism) abgebildet [DFPdeMarco 1]. Aufgrund<br />

der <strong>für</strong> Datenflußdiagramme geforderten Nummerierung [Yourdon, 1989, S. 165ff] sind Prozeßzerlegungen<br />

baumartig [DFPdeMarco 2].<br />

DFPdeMarco isA DFP ;


184 <strong>Referenz</strong>-<strong>Metaschema</strong><br />

for G in DFPdeMarco assert<br />

[DFPdeMarco 1]:<br />

V Terminator V DataflowScenario V Mechanism ;<br />

[DFPdeMarco 2]:<br />

isTree eGraph EdfRefines end .<br />

Echtzeit-Datenflußdiagramme. Die Echtzeit-Erweiterung der strukturierten Analyse [Ward /<br />

Mellor, 1985] ergänzen Datenflußdiagramme nach [DeMarco, 1978] um zusätzliche Kontrollelemente.<br />

Prozesse, Datenflüsse und Speicher sind durch Kontrollprozesse (ControlProcess), durch<br />

Ereignisflüsse (EventFlow) und durch Ereignisspeicher (EventStore) zu spezialisieren.<br />

DfObject<br />

Terminator<br />

Process<br />

Control<br />

Process<br />

Event<br />

Store<br />

Store<br />

PointOf<br />

Contact<br />

dfGoesTo<br />

dfComesFrom<br />

dfCorrespondsTo<br />

Dataflow<br />

EventFlow<br />

DFPRTSA isA DFPdeMarco <br />

for G in DFPRTSA assert<br />

[DFPRTSA 1]:<br />

d V Dataflow d dfGoesTo dfComesFrom<br />

[DFPRTSA 2]:<br />

ControlProcess EventStore ¯<br />

type d EventFlow <br />

e V EventFlow ¯<br />

e dfGoesTo dfComesFrom<br />

ControlProcess EventStore <br />

end .<br />

Abbildung 6.8: Spezialisierung des <strong>Referenz</strong>-<strong>Metaschema</strong>s des Datenflußparadigmas <strong>für</strong> Echtzeit-Datenflußdiagramme<br />

(DFPRTSA)<br />

Kontrollprozesse und Ereignisspeicher sind ausschließlich zu Ereignisflüssen inzident [DFPRT-<br />

SA 1], und Ereignisflüsse sind zu mindestens einem ControlProcess oder EventStore inzident<br />

[DFPRTSA 2]. Das <strong>Metaschema</strong> der Echtzeit-Datenflußdiagramme (DFPRTSA) erweitert hierzu<br />

das <strong>Metaschema</strong> der Datenflußdiagramme DFPdeMarco.<br />

Datenflußpläne. Datenflußpläne beschreiben neben den Datenflußbeziehungen zwischen den<br />

Prozessen auch Trägermedien <strong>für</strong> den Datenaustausch und unterscheiden verschiedene Arten der<br />

Speicherung und der Prozeßbearbeitung. Zur Abbildung dieser Erweiterungen ist das <strong>Referenz</strong>-<br />

<strong>Metaschema</strong> zum <strong>Metaschema</strong> DFPFlowChart zu erweitern. In Abbildung 6.9 sind diese Spezialisierungen<br />

der Konzepte Store und Process sowie die Ergänzung der Trägermedien (Means-<br />

OfDataflow) dargestellt.<br />

In Datenflußplänen werden keine Szenarien und keine menschlichen oder technischen Handlungsträger,<br />

durch die Prozesse bearbeitet werden, modelliert [DFPFlowChart 1]. Auch kennen<br />

sie keine weitere Strukturierung der ausgetauschten Daten [DFPFlowChart 2].<br />

DFPFlowChart isA DFP ;<br />

for G in DFPFlowChart assert<br />

[DFPFlowChart 1]:<br />

V DataflowScenario V Mechanism ;


6.4 <strong>Metaschema</strong>ta der Prozeßsicht 185<br />

DfObject<br />

Terminator<br />

Process<br />

Manual<br />

Process<br />

Store<br />

<strong>Se</strong>quential<br />

Memory<br />

Direct<br />

Access<br />

Memory<br />

PointOf<br />

Contact<br />

Core<br />

Memory<br />

dfGoesTo<br />

dfComesFrom<br />

dfCorrespondsTo<br />

Dataflow<br />

transports<br />

MeansOf<br />

Dataflow<br />

Punch<br />

Card<br />

Punch<br />

Tape<br />

Magnetic<br />

Tape<br />

Magnetic<br />

Drum<br />

Magnetic<br />

Disc<br />

Abbildung 6.9: Spezialisierung des <strong>Referenz</strong>-<strong>Metaschema</strong>s des Datenflußparadigmas <strong>für</strong> Datenflußpläne<br />

(DFPFlowChart)<br />

[DFPFlowChart 2]:<br />

VClassItem VAtomicClass end .<br />

SADT-Diagramme. Auch das <strong>Metaschema</strong> der SADT-Aktivitätsdiagramme DFPSADT in Abbildung<br />

6.10 erfordert nur eine geringe Anpassung des <strong>Referenz</strong>-<strong>Metaschema</strong>s des Datenflußparadigmas.<br />

SADT unterscheidet zwischen eingehenden Datenflüssen, deren Daten im Prozeß<br />

verändert werden, und solchen Datenflüssen, die die Bearbeitung im Prozeß steuern. Diese<br />

Unterscheidung wird durch ein zusätzliches Attribut (controlsProcess) derdfGoesTo-Kanten<br />

modelliert. In SADT-Aktivitätsdiagrammen werden keine Speicher (Store) und Schnittstellen<br />

(Terminator) verwendet. Das <strong>Referenz</strong>-<strong>Metaschema</strong> ist um diese Konzepte einzuschränken<br />

[DFPSADT 1]. Prozeßzerlegungen sind auch <strong>für</strong> SADT-Aktivitätsdiagramme baumartig [DF-<br />

PSADT 2].<br />

DfObject<br />

Process<br />

PointOf<br />

Contact<br />

controlsProcess : bool<br />

dfGoesTo<br />

dfComesFrom<br />

dfCorrespondsTo<br />

Dataflow<br />

DFPSADT isA DFP <br />

for G in DFPSADT assert<br />

[DFPSADT 1]:<br />

V Store V Terminator <br />

[DFPSADT 2]:<br />

isTree eGraph E dfRefines<br />

end .<br />

Abbildung 6.10: Spezialisierung des <strong>Referenz</strong>-<strong>Metaschema</strong>s des Datenflußparadigmas <strong>für</strong><br />

SADT-Aktivitätsdiagramme (DFPSADT)<br />

Anwendungsfalldiagramme. Das <strong>Metaschema</strong> der Anwendungsfalldiagramme der Unified<br />

Modeling Language (UML) (DFPUseCase) (vgl. auch das Teil-<strong>Metaschema</strong> in [OMG, 1999,<br />

S. 2-112]) kann ebenfalls auf das <strong>Referenz</strong>-<strong>Metaschema</strong> des Datenflußparadigmas zurückgeführt<br />

werden. Durch Anwendungsfalldiagramme werden Systeme entlang ihrer Interaktionsbeziehungen<br />

zwischen Anwendungsfällen (Use Cases) und Akteuren beschrieben. Das System (System)<br />

selbst ist durch die hierin zusammengefaßten Anwendungsfälle bestimmt. Im <strong>Metaschema</strong> werden<br />

Anwendungsfälle durch Process- und Akteure durch Terminator-Konzepte abgebildet. Das


186 <strong>Referenz</strong>-<strong>Metaschema</strong><br />

<strong>Metaschema</strong> der Anwendungsfalldiagramme aus Abbildung 6.11 enthält keine Konzepte zur<br />

Darstellung von Datenspeichern, Kontaktpunkten, Szenarien und Mechanismen [DFPUseCase<br />

1]. Interaktionsdiagramme beschreiben nur das Vorliegen einer Interaktionsbeziehung. Über<br />

die ausgetauschten Daten werden keine Aussagen getroffen, so daß auch keine dataflow-Knoten<br />

benötigt werden [DFPUseCase 1]. Prozeßverfeinerungen werden in Anwendungfalldiagrammen<br />

nicht abgebildet [DFPUseCase 2]. Konkretisierungen von Prozessen werden in der UML z. B.<br />

durch Aktivitätsdiagramme notiert.<br />

specializes<br />

DfObject<br />

Terminator<br />

Process<br />

extends includes<br />

alphaLimits: int int<br />

omegaLimits: int int<br />

associates<br />

isUseCaseIn<br />

System<br />

name : string<br />

DFPUseCase isA DFP <br />

for G in DFDRTSA assert<br />

[DFPUseCase 1]:<br />

V Store V PointofContact V Dataflow <br />

V DataflowScenario V Mechanism <br />

[DFPUseCase 2]:<br />

E dfRefines <br />

[DFPUseCase 3]:<br />

e E specializes ¯ type « e type e<br />

end .<br />

Abbildung 6.11: Spezialisierung des <strong>Referenz</strong>-<strong>Metaschema</strong>s des Datenflußparadigmas <strong>für</strong> Anwendungsfalldiagramme<br />

(DFPUseCase)<br />

Interaktionsbeziehungen (Assoziationen) werden durch associates-Kanten beschrieben, die auch<br />

um Kardinalitätsangaben ergänzt werden können. Die Anwendungsfälle eines Systems sind voneinander<br />

unabhängig, so daß Assoziationen nur zwischen Anwendungsfällen und Akteure zugelassen<br />

sind [Rumbaugh et al., 1999, S. 489]. Die Koordination der Anwendungsfälle eines<br />

Systems erfolgt durch die Akteure.<br />

Sowohl Anwendungsfälle als auch Akteure können spezialisiert werden (specializes). Generalisierungsbeziehungen<br />

beziehen sich jeweils ausschließlich auf Anwendungsfälle (Process) oder<br />

Akteure (Terminator) [DFPUseCase 2]. Anwendungsfälle können darüber hinaus andere Anwendungsfälle<br />

erweitern (extends) und einbinden (includes).<br />

6.4.2 <strong>Metaschema</strong>ta des Zustandsübergangsparadigmas<br />

Mit den <strong>visuelle</strong>n <strong>Modellierungssprachen</strong> des Zustandsübergangsparadigmas (vgl. Kapitel 3.4.2)<br />

werden reaktive Systeme durch Zustände und Übergänge zwischen diesen modelliert. Zustandsübergänge<br />

werden durch das Eintreffen von externen oder internen Ereignissen ausgelöst. Sowohl<br />

den Zustandsübergängen als auch den Zuständen können Systemreaktionen oder Aktionen<br />

zugeordnet werden, die beim Übergang bzw. in den Zuständen bearbeitet werden. Das <strong>Referenz</strong>-<br />

<strong>Metaschema</strong> des Zustandsübergangsparadigmas bildet hierzu die Konzepte zur Beschreibung<br />

und Strukturierung von Zuständen, zur Darstellung der Zustandsübergänge und zur Modellierung<br />

der Ereignisse und Systemreaktionen ab.


6.4 <strong>Metaschema</strong>ta der Prozeßsicht 187<br />

<strong>Referenz</strong>-<strong>Metaschema</strong> des Zustandsübergangsparadigmas<br />

Der EER-Teil des <strong>Referenz</strong>-<strong>Metaschema</strong>s des Zustandsübergangsparadigmas STP ist in Abbildung<br />

6.12 dargestellt (vgl. auch [Ebert, 1993], [Winter / Ebert, 1996, S. 114]).<br />

Zur Strukturierung des Systemzustands wird dieser in den modernen Beschreibungsmitteln des<br />

Zustandsübergangsparadigmas durch elementare und zusammengesetzte Teilzustände (Blobs)<br />

modelliert. Blobs unterscheiden sich in atomare (AtomicBlobs) inXorBlobs, zur Verfeinerung<br />

von Teilzuständen, und in AndBlobs, zur Beschreibung nebenläufiger Prozesse. Hierbei enthalten<br />

XorBlobs weitere beliebige Blobs, von denen einer durch eine startsWith-Kante als Startblob<br />

ausgezeichnet sein kann. AndBlobs enthalten mindestens zwei voneinander unabhängige Xor-<br />

Blobs. XorBlobs können zusätzlich um einen „History“-Mechanismus (Attribut history) ergänzt<br />

werden. Hierdurch wird angezeigt, daß der zuletzt besuchte Blob beim Wiederbetreten in den<br />

XorBlob als Startblob verwendet wird. Atomare Blobs sind zur Beschreibung solcher Teilzustände,<br />

aus denen keine weiteren Übergänge möglich sind, durch EndBlobs spezialisiert [STP 1]. Die<br />

Strukturierung der Blobs entlang der contains-Kanten ist baumartig [STP 2]. Die Wurzel dieses<br />

Baumes spiegelt den Zustand des gesamten Systems wider. Dieser wird durch einen XorBlob<br />

modelliert [STP 3], zu dem keine Transitionen inzident sind [STP 4] und der genau einen als<br />

Startblob ausgezeichneten Blob enthält [STP 5].<br />

Predicate<br />

name : string<br />

Transition<br />

isGuard effects triggers<br />

name: string<br />

NetObject<br />

Process Event<br />

transGoesTo<br />

transComesFrom<br />

isEntryAction<br />

isBlobAction<br />

isExitAction<br />

starts<br />

With<br />

Blob<br />

AtomicBlob<br />

End<br />

Blob<br />

Xor<br />

Blob<br />

history : bool<br />

>1<br />

And<br />

Blob<br />

Abbildung 6.12: <strong>Referenz</strong>-<strong>Metaschema</strong> des Zustandsübergangsparadigmas,<br />

State Transition Paradigm, STP)<br />

contains<br />

name: string<br />

contains<br />

Übergänge zwischen zwei Blobs werden durch Transition-Knoten modelliert. Die Richtung dieser<br />

Übergänge ist anhand der transComesFrom und transGoesTo-Kanten ablesbar. Übergänge<br />

werden durch Ereignisse (Event) ausgelöst. Durch optionale Wächter (isGuard) können diese<br />

Übergänge auch noch von zusätzlichen Prädikaten (Predicate) abhängig gemacht werden.<br />

Zustandsübergänge können Reaktionen des Systems bewirken, die im Konzept NetObject zusammengefaßt<br />

sind. Diese Systemreaktionen werden in Systemprozesse (Process) und Ereignisse<br />

(Event) unterschieden, die weitere Übergänge auslösen (Broadcast) können. Systemreaktionen


188 <strong>Referenz</strong>-<strong>Metaschema</strong><br />

können aber auch den einzelnen Blobs zugeordnet werden. Diese werden bei Betreten des Blobs<br />

(isEntryAction), während das System in diesem Blob verweilt (isBlobAction) oder beim Verlassen<br />

des Blobs (isExitAction) ausgeführt.<br />

Übergänge sind sowohl in die Blobs eines XorBlobs alsauchindenXorBlob als Gesamtheit möglich.<br />

Geht mindestens ein Übergang in den XorBlob als Gesamtheit ein, ist festzulegen, welcher<br />

Startzustand durch den XorBlob eingenommen wird (vgl. auch [Ebert/Süttenbach, 1997a, DM7],<br />

[Süttenbach / Ebert, 1997, STD6]). Ebenso ist zu jedem XorBlob eines AndBlobs ein Startblob<br />

anzugeben [STP 6]. Solche Startblobs müssen jeweils im entsprechenden XorBlob enthalten sein<br />

[STP 7]. AndBlobs enthalten mindestens zwei voneinander unabhängige XorBlobs. Zwischen<br />

diesen verlaufen daher auch keine Übergänge [STP 8] [Ebert, 1993, constraint 1].<br />

a<br />

a<br />

a) Start Konflikt<br />

a<br />

a<br />

d) Start Konflikt<br />

(nicht deterministisch)<br />

a<br />

a<br />

b) Ziel Konflikt c) Blob Konflikt<br />

a<br />

a<br />

a<br />

e) Ziel Konflikt<br />

(nicht deterministisch)<br />

Abbildung 6.13: Konfligierende Übergänge<br />

Ereignisse lösen Übergänge zwischen Blobs aus. Hierbei muß deterministisch entschieden werden<br />

können, in welchem Folgezustand sich das System anschließend befindet. Mehrere Übergänge<br />

können hierbei aufgrund gleicher Ereignisse zu Konflikten führen. Diese Konflikte werden<br />

bereits in [Harel, 1987] durch Verbot entsprechender Modellierungen ausgeschlossen. [Ebert,<br />

1993] schlägt vor, in einigen dieser Konfliktfälle (vgl. Abbildung 6.13a–c) jeweils den innersten<br />

Übergang schalten zu lassen. Auszuschließen sind dann nur noch wenige Modellierungen wie<br />

sie in Abbildung 6.13d–e exemplarisch dargestellt sind.<br />

In Anlehnung an [Ebert, 1993, constraint 2] wird in Zusicherung [STP 9] <strong>für</strong> das <strong>Referenz</strong>-<br />

<strong>Metaschema</strong> des Zustandsübergangsparadigmas gefordert, daß ausgehend von einem korrekten<br />

Systemzustand bei Eintreffen eines Ereignisses, das mehrere Übergänge auslöst, das System auch<br />

nur in einen korrekten Systemzustand übergeht. Übergänge aufgrund desselben Ereignisses aus<br />

demselben Blob oder aus verschiedenen, zueinander parallel laufenden Blobs enden entweder in<br />

genau einem Blob oder in weiteren zueinander parallelen Blobs2 .<br />

for G in STP assert<br />

[STP 1]:<br />

e : VEndBlob ¯ δ e 0;<br />

transComesFrom<br />

a


6.4 <strong>Metaschema</strong>ta der Prozeßsicht 189<br />

[STP 2]:<br />

[STP 3]:<br />

[STP 4]:<br />

[STP 5]:<br />

[STP 6]:<br />

[STP 7]:<br />

[STP 8]:<br />

[STP 9]:<br />

end .<br />

isTree eGraph E contains<br />

type root eGraph E contains<br />

;<br />

XorBlob ;<br />

δ transComesFrom root eGraph E contains δ transGoesTo root eGraph E contains 0;<br />

1 b : V Blob ¯ b contains root eGraph E contains startsWith<br />

x : V XorBlob δ transGoesTo x 0 x contains &AndBlob ¯<br />

δ startsWith x 1;<br />

e : E startsWith ¯ α e contains<br />

ω e ;<br />

x y : VXorBlob x contains &AndBlob contains y x y ¯<br />

x<br />

y ;<br />

£<br />

contains transComesFrom transGoesTo<br />

£<br />

contains<br />

t1 t2 : VTransition ; a b c d : VBlob t1 t2 <br />

t1 triggers &Event triggers t2 <br />

a transComesFrom t1 transGoesTo b <br />

c transComesFrom t2 transGoesTo d ¯<br />

lca a b lca c d <br />

a c <br />

a c a<br />

a<br />

b d <br />

b d b<br />

b<br />

£<br />

contains<br />

£<br />

contains &AndBlob<br />

£<br />

contains<br />

£<br />

contains &AndBlob<br />

c a<br />

£<br />

contains<br />

£<br />

contains c<br />

d b<br />

£<br />

contains<br />

£<br />

contains d<br />

2 Zusicherung [STP 9] verwendet die Funktion lca, die den kleinsten gemeinsamen Vorfahren zweier Blobs in<br />

der contains-Struktur bestimmt.<br />

lca : V Blob ¢V Blob V Blob<br />

£<br />

lca λvw : VBlob ¯ µx: VBlob ¯ v contains x<br />

y : VBlob v<br />

w <br />

£<br />

contains<br />

£<br />

contains y<br />

c <br />

d <br />

b ;<br />

£<br />

contains w ¯ x<br />

£<br />

contains y


190 <strong>Referenz</strong>-<strong>Metaschema</strong><br />

Spezialisierungen des <strong>Referenz</strong>-<strong>Metaschema</strong>s<br />

Das <strong>Referenz</strong>-<strong>Metaschema</strong> des Zustandsübergangsparadigma kann zur Metamodellierung der<br />

Zustandsübergangsbeschreibungen der Object Modeling Technique (OMT) [Rumbaugh et al.,<br />

1991, S. 89ff] und der Unified Modeling Language (UML) [Booch et al., 1999, S. 243ff] direkt<br />

übernommen werden. Zu dem hier vorgestellten <strong>Referenz</strong>-<strong>Metaschema</strong> ähnliche <strong>Metaschema</strong>ta<br />

finden sich <strong>für</strong> OMT in [Ebert/Süttenbach, 1997a, S. 21ff] und <strong>für</strong> die UML in [OMG, 1999, S. 2-<br />

123]. Zur Metamodellierung der Zustandsübergangsbeschreibungen nach [Harel, 1987], nach<br />

[Booch, 1994], durch Zustandsautomaten und durch Zustandstabellen und -matrizen sind wenige<br />

Einschränkungen vorzunehmen.<br />

Statecharts nach [Harel, 1987]. Statecharts verwenden keine EndBlobs [STPHarel 1] und unterstützen<br />

die Modellierung von den Blobs zugeordneten Systemreaktionen nicht [STPHarel 2].<br />

Zusicherung [STP 6] des <strong>Referenz</strong>-<strong>Metaschema</strong>s ist <strong>für</strong> den Dialekt nach [Harel, 1987] zu verschäfen.<br />

XorBlobs enthalten hier generell einen Startblob [STPHarel 3].<br />

STPHarel isA STP ;<br />

for G in STPHarel assert<br />

[STPHarel 1]:<br />

V EndBlob ;<br />

[STPHarel 2]:<br />

E IsEntryAction E IsStateAction E IsExitAction ;<br />

[STPHarel 3]:<br />

x : VXorBlob ¯ δ x 1<br />

startsWith<br />

end .<br />

Zustandsübergangsdiagramme nach [Booch, 1994]. Die Zustandsübergangsbeschreibungen<br />

nach [Booch, 1994] entsprechen bis auf die Verwendung paralleler Blobs dem <strong>Referenz</strong>-<br />

<strong>Metaschema</strong>. Zur Abbildung dieser Notationsvariante enthält das <strong>Metaschema</strong> STPBooch keine<br />

AndBlobs [STPBooch 1] (vgl. auch [Booch, 1994, S. 208]).<br />

STPBooch isA STP ;<br />

for G in STPBooch assert<br />

[STPBooch 1]:<br />

V AndBlob <br />

end .<br />

Zustandsautomaten. Die Modellierung durch Zustandsautomaten oder Zustandsübergangsdiagramme<br />

verwendet nur flache Automaten, ohne weitere Strukturierung der Blobs. Diese Automaten<br />

haben einen ausgezeichneten Anfangszustand. Aus Sicht des <strong>Referenz</strong>-<strong>Metaschema</strong>s<br />

bestehen solche Modelle aus genau einem XorBlob, der den gesamten Automaten beschreibt


6.4 <strong>Metaschema</strong>ta der Prozeßsicht 191<br />

[STPAutomaton 1]. Alle weiteren Blobs sind atomar und in diesem XorBlob enthalten [STPAutomaton<br />

2]. AndBlobs existieren in Zustandsautomaten folglich nicht [STPAutomaton 3]. Auch<br />

werden hier keine Prädikate zur Modellierung von Guards verwendet. Zustandsübergänge sind<br />

ausschließlich von Ereignissen abhängig. In Zustandsautomaten sind auch Folgezustände von<br />

Endzuständen erlaubt. Die Zusicherung [STP 1] des <strong>Referenz</strong>-<strong>Metaschema</strong>s ist daher im <strong>Metaschema</strong><br />

<strong>für</strong> Zustandsautomaten (STPAutomaton) entsprechend zu verallgemeinern [STPAutomaton<br />

4].<br />

STPAutomaton isA STP ;<br />

for G in STPAutomaton assert<br />

[STPAutomaton 1]:<br />

# VXorBlob 1;<br />

[STPAutomaton 2]:<br />

a : V AtomicBlob ¯ a contains root eGraph E contains ;<br />

[STPAutomaton 3]:<br />

V AndBlob V Predicate ;<br />

[STPAutomaton 4]:<br />

overwrites [STP 1] :<br />

e : VEndBlob ¯ δ e 0<br />

transComesFrom<br />

end .<br />

Wird der Automat als Moore-Automat aufgefaßt, sind Systemreaktionen ausschließlich an die<br />

Blobs gebunden. Aktionen beim Eintritt, während des Aufenthalts und beim Verlassen des<br />

Blobs werden nicht unterschieden. Im <strong>Metaschema</strong> der Moore-Automaten (STPMoore), das aus<br />

STPAutomaton abgeleitet werden kann, existieren somit kein effects-, isEntryAction- und isExit-<br />

Action-Kanten [STPMoore 1].<br />

STPMoore isA STPAutomaton ;<br />

for G in STPMoore assert<br />

[STPMoore 1]:<br />

E effects E isEntryAction E isExitAction <br />

end .<br />

Analog kann auch das <strong>Metaschema</strong> der Mealy-Automaten (STPMealy)ausSTPAutomaton abgeleitet<br />

werden. In Mealy-Automaten sind Aktionen ausschließlich an Zustandsübergänge gebunden;<br />

isEntryAction-, isStateAction- und isExitAction-Kanten existieren hier nicht [STPMealy 1].<br />

STPMealy isA STPAutomaton ;<br />

for G in STPMealy assert<br />

[STPMealy 1]:<br />

E isEntryAction E isStateAction E isExitAction <br />

end .


192 <strong>Referenz</strong>-<strong>Metaschema</strong><br />

Zustandsübergangsmatrizen und -tabellen. Zustandsübergangsdarstellungen durch Matrizen<br />

und Tabellen beschreiben wie Automaten ausschließlich flache Zustandsübergangsstrukturen.<br />

Da Anfangs- und Endzustände in diesen Darstellungen nicht explizit ausgezeichnet werden,<br />

kann das <strong>Metaschema</strong> STPTable aus dem <strong>Referenz</strong>-<strong>Metaschema</strong> durch Einschränkung auf ausschließlich<br />

atomare Blobs abgeleitet werden [STPTable 1].<br />

STPTable isA STP ;<br />

for G in STPMealy assert<br />

[STPTable 1]:<br />

b : VBlob ¯ type b AtomicBlob ;<br />

end .<br />

Je nach Modellierungsinhalt ist das <strong>Referenz</strong>-<strong>Metaschema</strong> STPTable um weitere Konzepte zu reduzieren.<br />

So enthält beispielsweise das <strong>Metaschema</strong> zur Darstellung der Zustandsübergangsmatrix<br />

aus Abbildung 3.20b (<strong>Se</strong>ite 69) keine Aktionen, während sie in der Zustandsübergangtabelle<br />

in Abbildung 3.20c enthalten sind.<br />

6.4.3 <strong>Metaschema</strong>ta des Netzparadigmas<br />

Mit den <strong>visuelle</strong>n <strong>Modellierungssprachen</strong> des Netzparadigmas (vgl. Kapitel 3.4.3) wird die Systemdynamik<br />

entlang der Folge- und Kontrollflußbeziehungen zwischen Prozessen und/oder Ereignissen<br />

modelliert. Hierbei sind auch Verzweigungen bzw. Parallelisierungen von Kontrollflüssen<br />

und deren Zusammenführungen abzubilden. Das <strong>Referenz</strong>-<strong>Metaschema</strong> des Netzparadigmas<br />

definiert hierzu die Konzepte zur Beschreibung von Prozessen, Ereignissen und ihrer verschiedenen<br />

Folgebeziehungen.<br />

<strong>Referenz</strong>-<strong>Metaschema</strong> des Netzparadigmas<br />

Im <strong>Referenz</strong>-<strong>Metaschema</strong> des Netzparadigmas NP, dessen EER-Anteil in Abbildung 6.14 skizziert<br />

ist, werden Prozesse (Process), Ereignisse (Event) und Flußbeziehungen (Flow) unterschieden<br />

(vgl. auch die rudimentären <strong>Metaschema</strong>ta in [Scheer, 1992, S. 72] und [Winter/Ebert, 1996,<br />

S. 111f]). Prozesse und/oder Ereignisse, die mit einem Namen versehen sind, werden zu Netzobjekten<br />

(NetObject) zusammengefaßt. Durch die Beschreibungsmittel des Netzparadigmas kann<br />

auch modelliert werden, welchen Objekten oder Organisationseinheiten ein Prozeß zugeordnet<br />

ist. Diese Anknüpfungspunkte zum Stellengliederungsparadigma (vgl. Kapitel 6.3.1) und zum<br />

Objekt-Instanz-Paradigma (vgl. Kapitel 6.5.1) werden durch die Konzepte Object und OrganizationalUnit<br />

abgebildet.<br />

Flüsse (Flow) beschreiben das Aufeinanderfolgen von Prozessen und Ereignissen. Die Flußrichtung<br />

wird ähnlich zu den Datenflußbeziehungen im <strong>Referenz</strong>-<strong>Metaschema</strong> des Datenflußparadigmas<br />

(vgl. Kapitel 6.4.1) durch cfComesFrom- bzw.cfGoesTo-Kanten modelliert. Zur<br />

Modellierung der verschiedenen Kontrollflußbeziehungen wird zwischen elementaren (ElemenaryFlow)<br />

und Operator-Kontrollflüssen (OperatorFlow) unterschieden. Elementare Kontrollflüsse<br />

beschreiben direkte Kontrollflußbeziehungen zwischen zwei Netzelementen. Durch


6.4 <strong>Metaschema</strong>ta der Prozeßsicht 193<br />

Object<br />

Organizational<br />

Unit<br />

name: string<br />

NetItem<br />

Flow<br />

name: string<br />

executesProcess<br />

OperatorFlow<br />

Merge<br />

Xor<br />

Merge<br />

Or<br />

Merge<br />

NetObject<br />

Process Event<br />

cfComesFrom cfGoesTo<br />

Branch<br />

Xor<br />

Branch<br />

Or<br />

Branch<br />

cfRefines<br />

Fork<br />

Join<br />

Elementary<br />

Flow<br />

Abbildung 6.14: <strong>Referenz</strong>-<strong>Metaschema</strong> des Netzparadigmas (Net Paradigm, NP)<br />

Operator-Kontrollflüsse wird die Aufspaltung bzw. Zusammenführung durch Verzweigungen<br />

oder Parallelbearbeitungen dargestellt. Die Aufteilung des Kontrollflusses in parallele Flüsse<br />

wird hierzu durch Fork-Knoten und die Zusammenführung durch Join-Knoten modelliert. Zur<br />

Darstellung von Verzweigungen und Vereinigungen werden Branch- und Merge-Knoten definiert.<br />

Je nach Art der Oder-Verzweigung oder Vereinigung werden diese in XorBranch- und<br />

OrBranch-bzw.XorMerge- und OrMerge-Knoten unterschieden.<br />

Knoten vom Typ ElemenaryFlow verbinden durch cfComesFrom- und cfGoesTo-Kanten jeweils<br />

genau ein Netzelement mit genau einem Nachfolger [NP 1]. Verzweigungen (Branch und Fork-<br />

Knoten) verbinden jeweils ein Vorgängerobjekt mit beliebig vielen Nachfolgern [NP 2] und<br />

Vereinigungen (Merge und Join-Knoten) verbinden beliebig viele Vorgänger mit genau einem<br />

Nachfolger [NP 3].<br />

Ereignisse und Prozesse können auch durch weitere Darstellungen nach dem Netzparadigma<br />

verfeinert werden. Hierzu definiert das <strong>Referenz</strong>-<strong>Metaschema</strong> des Netzparadigmas Kanten des<br />

Typs cfRefines, durch die Elemente (NetItem), die diese Verfeinerung bilden, mit dem verfeinerten<br />

Netzelement in Beziehung gesetzt werden. Wie auch die Verfeinerungsbeziehungen des<br />

<strong>Referenz</strong>-<strong>Metaschema</strong>s des Datenflußparadigmas (vgl. Kapitel 6.4.1) sind diese Verfeinerungs-


194 <strong>Referenz</strong>-<strong>Metaschema</strong><br />

strukturen zyklenfrei [NP 4]. Verfeinerungen können in den Beschreibungsmitteln des Netzparadigmas<br />

mehrfach verwendet werden. Die Elemente, die solche Verfeinerungen bilden, sind in<br />

allen diesen Verfeinerungen enthalten [NP 5]. Kontrollflüsse sind auch hier ausschließlich zwischen<br />

Netzobjekten zugelassen, die dieselben übergeordneten Netzobjekte verfeinern [NP 6].<br />

Vergleiche hierzu auch die Zusicherungen [DFP 4] und [DFP 5] des <strong>Referenz</strong>-<strong>Metaschema</strong>s des<br />

Datenflußparadigmas.<br />

Weiter ist zuzusichern, daß die Objekte, die einen verfeinerten Prozeß ausführen, mit den Objekten,<br />

die die Verfeinerungen ausführen, verträglich sind. [NP 7] 3 .<br />

for G in NP assert<br />

[NP 1]: f : VElementaryFlow ¯ δ<br />

cfComesFrom<br />

f 1 δ<br />

cfGoesTo<br />

[NP 2]: f : V Branch V Fork ¯ δ cfComesFrom f 1 δ cfGoesTo<br />

[NP 3]: f : V Merge V Join ¯ δ cfComesFrom f 1 δ cfGoesTo<br />

[NP 4]: isDag eGraph E cfRefines ;<br />

f 1;<br />

f 1;<br />

f 1;<br />

[NP 5]: a b : V NetItem a cfRefines cfRefines b ¯ a cfRefines b cfRefines ;<br />

[NP 6]: a b : V NetObject a cfComesFrom cfGoesTo b ¯ a cfRefines b cfRefines ;<br />

[NP 7]: p 1 : V Process δ cfRefines 0 ¯<br />

p 1 executesProcess Ë p 2 : V Process p 1 cfRefines p 2 ¯ p 2 executesProcess <br />

end .<br />

Die Balancierung von Kontrollflußverzweigungen und -vereinigungen und die Vermeidung von<br />

Kontrollflüssen zwischen nebenläufigen Prozeß- bzw. Ereignisfolgen wird <strong>für</strong> die Beschreibungsmittel<br />

des Netzparadigmas i. allg. nicht gefordert. In [Booch et al., 1999, S. 264] wird<br />

dieses z. B. <strong>für</strong> Aktivitätsdiagramme und in [Staud, 1999, S. 69] <strong>für</strong> (erweiterte) Ereignisgesteuerte<br />

Prozeßketten als besserer Modellierungsstil herausgestellt. Die Modellierungstechniken<br />

und deren Werkzeugunterstützungen schließen solche unbalancierten Kontrollflußbeziehungen<br />

jedoch nicht aus, so daß <strong>für</strong> das <strong>Referenz</strong>-<strong>Metaschema</strong> des Netzparadigmas keine Einschränkungen<br />

formuliert werden.<br />

Spezialisierungen des <strong>Referenz</strong>-<strong>Metaschema</strong>s<br />

Die verschiedenen Notationsvarianten des Netzparadigmas unterscheiden sich insbesondere bezüglich<br />

der Verfeinerungskonzepte, der Typen der Objekte, die miteinander in eine Folgebeziehung<br />

gebracht werden und der jeweils unterstützten Operationen über dem Kontrollfluß. In den<br />

folgenden Kapiteln werden <strong>Metaschema</strong>ta <strong>für</strong> Aktivitätsdiagramme, <strong>für</strong> Vorgangskettendiagramme,<br />

<strong>für</strong> Ereignisgesteuerte Prozeßketten, <strong>für</strong> Petri-Netze und <strong>für</strong> Netzpläne aus dem <strong>Referenz</strong>-<br />

<strong>Metaschema</strong> abgeleitet.<br />

3 Falls die organisatorischen Einheiten gemäß des <strong>Metaschema</strong>tas des Stellengliederungsparadigmas (vgl. Kapitel<br />

6.3.1) weiter strukturiert sind, ist diese Strukturierung entsprechend zu berücksichtigen.


6.4 <strong>Metaschema</strong>ta der Prozeßsicht 195<br />

Aktivitätsdiagramme. In der Unified Modeling Language (UML) werden Aktivitätsdiagramme<br />

als eine Variante der Zustandsübergangsbeschreibungen [Rumbaugh et al., 1999, S. 135]<br />

eingeführt (vgl. auch das <strong>Metaschema</strong> in [OMG, 1999, S. 2-154]). Prozesse (oder Aktivitäten)<br />

werden hier als Zustände und Kontrollflußbeziehungen als Zustandsübergänge aufgefaßt.<br />

Neben den direkten Zustandsübergängen zwischen zwei Prozessen können in Aktivitätsdiagrammen<br />

auch Verzweigungen und Vereinigungen des Kontrollflusses dargestellt werden, so daß Aktivitätsdiagramme<br />

im Gegensatz zur Einstufung in der UML im folgenden als Beschreibungsmittel<br />

des Netzparadigmas aufgefaßt werden. Abbildung 6.15 zeigt den EER-Teil der Spezialisierung<br />

des <strong>Referenz</strong>-<strong>Metaschema</strong>s des Netzparadigmas <strong>für</strong> Aktivitätsdiagramme (NPActivity).<br />

Aufgrund der Analogie zu den Zustandsbeschreibungen werden Aktivitätsdiagramme durch ein<br />

Startereignis eingeleitet und durch mindestens ein Endereignis beendet. Zur Modellierung dieser<br />

Ereignisse wird in der Spezialisierung des <strong>Referenz</strong>-<strong>Metaschema</strong>s des Netzparadigmas <strong>für</strong><br />

Aktivitätsdiagramme (NPActivity) dasEvent-Konzept durch Knoten der Typen StartEvent und<br />

EndEvent spezialisiert.<br />

objIs<br />

InstanceOf<br />

Object<br />

hasAttribute<br />

ValuePair<br />

Attribute<br />

name : string<br />

Object<br />

Class<br />

name : string<br />

Organizational<br />

Unit<br />

Attribute<br />

Value<br />

Pair<br />

Value<br />

sendsTo<br />

name: string<br />

isInputObject<br />

executes<br />

Process<br />

isOutput<br />

Object<br />

receivesFrom<br />

identifies isValue<br />

NetItem<br />

Flow<br />

OperatorFlow<br />

Merge<br />

Xor<br />

Merge<br />

Process<br />

<strong>Se</strong>nder<br />

Process<br />

Receiver<br />

Process<br />

pathCondition: string<br />

criterion : string<br />

Branch<br />

Xor<br />

Branch<br />

cfRefines<br />

sends<br />

Event<br />

receives<br />

Event<br />

restricted<br />

GoesTo<br />

(cfGoesTo)<br />

Event<br />

cfGoesTo<br />

Fork<br />

Join<br />

NetObject<br />

Start<br />

Event<br />

End<br />

Event<br />

name: string<br />

cfComesFrom<br />

Elementary<br />

Flow<br />

Abbildung 6.15: Spezialisierung des <strong>Referenz</strong>-<strong>Metaschema</strong>s des Netzparadigmas <strong>für</strong> Aktivitätsdiagramme<br />

(NPActivity)<br />

Im Vergleich zum <strong>Referenz</strong>-<strong>Metaschema</strong> des Netzparadigmas nutzen Aktivitätsdiagramme nur<br />

exklusive Verzweigungen und Vereinigungen. Die gegenüber dem <strong>Referenz</strong>-<strong>Metaschema</strong> nicht<br />

genutzten OrMerge- bzw.OrBranch-Konzepte sind daher auszuschließen [NPActivity 1]. Kon-


196 <strong>Referenz</strong>-<strong>Metaschema</strong><br />

trollflüsse werden nur durch XorBranch, Fork, XorMerge und Join-Operatoren verzweigt bzw.<br />

vereinigt. Xor-Verzweigungen des Kontrollflusses (XorBranch) können in Aktivitätsdiagrammen<br />

durch die Verzweigungskriterien annotiert werden. Hierzu wird das Attribut criterion der Xor-<br />

Branch-Knoten verwendet. Die korrespondierenden Bedingungen der einzelnen Kontrollflußpfade<br />

werden im pathCondition-Attribut der restrictedGoesTo-Spezialisierung der cfGoesTo-Kanten<br />

notiert.<br />

Kontrollflußverzweigungen und -vereinigungen werden ausschließlich durch Kontrollflußoperatoren<br />

OperatorFlow beschrieben. Daher sind Process-Knoten auch nur zu jeweils genau einer<br />

cfComesFrom und genau einer cfGoesTo-Kante inzident [NPActivity 2]. Startereignisse sind in<br />

den modellierten Prozeß durch genau eine cfComesFrom-Kante eingebunden. Inzidenzen zu cf-<br />

GoesTo-Kanten existieren nicht. Analog gehen in Endereignisse ausschließlich cfGoesTo-Kanten<br />

ein [NPActivity 3].<br />

Durch Kontrollflüsse in Aktivitätsdiagrammen werden ausschließlich Flußbeziehungen zwischen<br />

(Teil-) Prozessen beschrieben. Mit Ausnahme der jeweiligen Start- und Endereignisse sind hier<br />

keine weiteren Ereignisse eingebunden. cfComesFrom und cfGoesTo-Kanten sind daher nicht zu<br />

Knoten des Typs Event inzident [NPActivity 4].<br />

Die Interaktion von Prozessen mit externen Objekten wird im <strong>Metaschema</strong> <strong>für</strong> Aktivitätsdiagramme<br />

durch spezielle Prozesse beschrieben, die Ereignisse von Objekten empfangen (ReceiverProcess)<br />

bzw. Ereignisse an Objekte senden (<strong>Se</strong>nderProcess). Wie auch die Start- und<br />

Endereignisse können diese Prozesse in Aktivitätsdiagrammen nicht verfeinert werden [NPActivity<br />

5] und besitzen keine Eingabe- oder Ausgabeobjekte [NPActivity 6]. Ereignisse, die zur<br />

Interaktion mit externen Objekten genutzt werden, sind ferner keine Start- oder Endereignisse<br />

[NPActivity 7]. Neben diesen Ereignissen und den Start- und Endereignissen werden in Aktivitätsdiagrammen<br />

keine weiteren Ereignisse abgebildet [NPActivity 8].<br />

Aus Analogie zu den Zustandsübergangsbeschreibungen der Unified Modeling Language beginnt<br />

jedes Aktivitätsdiagramm mit genau einem Startereignis und endet mit mindestens einem<br />

Endereignis. Eine Prozeßmodellierung durch Aktivitätsdiagramme besitzt daher genau ein<br />

Gesamt-Startereignis und mindestens ein Gesamt-Endereignis [NPActivity 9]. Ebenso existiert<br />

zu jedem verfeinerten Prozeß genau ein Startereignis und mindestens ein Endereignis [NPActivity<br />

10]. Da Prozesse in Aktivitätsdiagrammen genau zu einem eingehenden und genau zu einem<br />

ausgehenden Kontrollfluß inzident sind (vgl. auch [NPActivity 2]), nehmen das Startereignis und<br />

die Endereignisse der Verfeinerung ähnliche Funktionen ein, wie die PointOfContact-Knoten zur<br />

Modellierung der Verfeinerung im <strong>Referenz</strong>-<strong>Metaschema</strong> des Datenflußparadigmas (vgl. Kapitel<br />

6.4.1). Das Startereignis entspricht dem Kontaktpunkt des eingehenden Kontrollflusses und<br />

die Zusammenfassung der Endereignisse dem Kontaktpunkt des ausgehenden Kontrollflusses.<br />

Alle Prozesse und Ereignisse einer Verfeinerung bzw. des Gesamtprozesses sind von den jeweiligen<br />

Startereignissen aus erreichbar [NPActivity 11].<br />

In Aktivitätsdiagrammen können, ähnlich zu Datenflußdiagrammen, auch die Zusammenhänge<br />

zwischen Aktivitäten und deren Ein- und Ausgabeobjekten modelliert werden [Rumbaugh et<br />

al., 1999, S. 139]. Solche Objektflüsse werden im <strong>Metaschema</strong> der Aktivitätsdiagramme durch<br />

isInputObjekt bzw. isOutputObject-Kanten abgebildet. Objekte sind hierbei durch ihren Typ (ObjectClass)<br />

und durch ihren inneren Zustand (AttributValuePair) charakterisiert. Objektflüsse zwischen<br />

Aktivitäten können dadurch modelliert werden, daß Objekte von einer Aktivität erzeugt<br />

und von mindestens einer weiteren Aktivität verbraucht werden. Es ist aber auch möglich, Ob-


6.4 <strong>Metaschema</strong>ta der Prozeßsicht 197<br />

jekte nur als Eingaben oder als Ausgaben einer Aktivität darzustellen. In Aktivitätsverfeinerungen<br />

sind diese Objektbezüge zu balancieren. Objekte, die Ein- bzw. Ausgaben einer verfeinerten<br />

Aktivität beschreiben, müssen sich in den Ein- bzw. Ausgaben der Verfeinerung wiederfinden<br />

und umgekehrt [NPActivity 12].<br />

NPActivity isA NP ;<br />

for G in NPActivity assert<br />

[NPActivity 1]:<br />

V OrMerge V OrBranch ;<br />

[NPActivity 2]:<br />

v : V Process ¯ δ cfComesFrom v δ cfGoesTo v 1;<br />

[NPActivity 3]:<br />

s : V StartEvent ¯ δ cfComesFrom s 1 δ cfGoesTo s 0;<br />

e : V EndEvent ¯ δ cfComesFrom e 0 δ cfGoesTo e 1;<br />

[NPActivity 4]:<br />

e : E cfComesFrom E cfGoesTo ¯ type ω Event ;<br />

[NPActivity 5]:<br />

r : E ʬÒ× ¯ type ω r Process ;<br />

[NPActivity 6]:<br />

e : E ×ÁÒÔÙØÇ Ø E ×ÇÙØÔÙØÇ Ø ¯<br />

type ω e Process ;<br />

[NPActivity 7]:<br />

e : E sendsEvent E receivesEvent ¯<br />

StartEvent type ω e EndEvent ;<br />

[NPActivity 8]:<br />

e : V Event ¯ type e StartEvent type e EndEvent <br />

δ sendsEvent receivesEvent 1;<br />

[NPActivity 9]:<br />

1 s : V StartEvent ¯ δ cfRefines s 0;<br />

e : V EndEvent ¯ δ cfRefines 0;<br />

[NPActivity 10]:<br />

p : V Process δ cfRefines p 0 ¯<br />

1 s : VStartEvent ¯ s cfRefines p <br />

e : VEndEvent ¯ e cfRefines p ;


198 <strong>Referenz</strong>-<strong>Metaschema</strong><br />

[NPActivity 11]:<br />

s : V StartEvent ; v : V NetItem δ cfRefines s 0 δ cfRefines v ¯<br />

s cfComesFrom cfGoesTo £ v ;<br />

p : V Process ; v : V NetItem v cfRefines<br />

p ¯<br />

p cfRefines &StartEvent cfComesFrom cfGoesTo £ v ;<br />

[NPActivity 12]:<br />

p 1 : V Process δ cfRefines p 1 0 ¯<br />

end .<br />

p 1 isInputObject p 2 : V Process p 2 cfRefines p 1 ¯ p 2 isInputObject <br />

p 1 isOutputObject p 2 : V Process p 2 cfRefines p 1 ¯ p 2 isOutputObject <br />

Vorgangskettendiagramme. Vorgangskettendiagramme und erweiterte Ereignisgesteuerte<br />

Prozeßketten ergänzen (reine) Prozeßdarstellungen um Querbezüge zur Beschreibung von technischen<br />

und maschinellen Handlungsträgern und um Mittel zur Darstellung, der bei der Aufgabenerledigung<br />

benötigten bzw. erzeugten Objekte.<br />

Das <strong>Referenz</strong>-<strong>Metaschema</strong> des Netzparadigmas ist hierzu um zusätzliche Bezüge zwischen Netzelementen<br />

und Objekten, durch die Handlungsträger und Daten modelliert werden, zu ergänzen.<br />

Der Bezug zu den Handlungsträgern wird wie im <strong>Referenz</strong>-<strong>Metaschema</strong> durch Kanten des Typs<br />

executesProcess hergestellt. Durch requires-Kanten werden den Teilprozessen die benötigten<br />

Daten und durch delivers die erzeugten Daten zugeordnet (vgl. [Staud, 1999, S. 51]). Querbezüge<br />

zwischen dem modellierten Gesamtprozeß und den hierin berechneten Daten werden in<br />

Vorgangskettendiagrammen auch entlang der Ereignisse beschrieben. Ereignisse symbolisieren<br />

hierbei das Vorliegen dieser Datenobjekte (vgl. [Scheer, 1992]). Dieser Zusammenhang wird<br />

durch represents-Kanten zwischen Event- und Object-Knoten modelliert.<br />

Neben den aus dem <strong>Referenz</strong>-<strong>Metaschema</strong> bekannten Operatoren können in Vorgangskettendiagrammen<br />

auch kombinierte Kontrollflußoperatoren verwendet werden. Diese vereinigen eingehende<br />

Kontrollflüsse und teilen ausgehende Kontrollflüsse auf. Hierzu wird ein weiterer Kontrollflußoperator<br />

ComposedOperatorFlow eingeführt, dessen Attribute joinType und forkType die<br />

verschiedenen Arten der Kontrollflußvereinigung und -verzweigung abbilden.<br />

Der EER-Teil der Spezialisierung des <strong>Referenz</strong>-<strong>Metaschema</strong>s zur Beschreibung von Vorgangskettendiagramme<br />

(NPVKD) ist in Abbildung 6.16 dargestellt.<br />

Prozeßketten werden in Vorgangskettendiagrammen durch zusammenhängende [NPVKD 1], alternierende<br />

Folgen von Prozessen und Ereignissen modelliert. Für sämtliche Kontrollflußoperatoren<br />

(Flow) ist zu daher fordern, daß hierdurch nicht gleichartige Netzelemente miteinander verknüpft<br />

werden [NPVKD 2]. In Anlehnung an die Beispiel-Kontrollflüsse in [Scheer, 1994, S. 50]<br />

[IDS, 1995, S. 4-120ff] und [Staud, 1999, S. 63ff] sind hierbei diejenigen Kontrollflüsse auszuschließen,<br />

die ein Ereignis mit mehreren alternativen Prozessen verbinden [NPVKD 3]. Wie<br />

auch in Aktivitätsdiagrammen, werden Kontrollflüsse ausschließlich durch Kontrollflußoperatoren<br />

verzweigt und/oder vereinigt, so daß Process- und Event-Knoten jeweils zu höchstens einer<br />

cfComesFrom bzw. einer cfGoesTo-Kante inzident sind [NPVKD 4]. Begrenzt werden Ereignisgesteuerte<br />

Prozeßketten durch genau ein Startereignis und genau ein Endereignis [NPVKD 5].


6.4 <strong>Metaschema</strong>ta der Prozeßsicht 199<br />

Object<br />

Organizational<br />

Unit<br />

name: string<br />

NetItem<br />

Flow<br />

represents<br />

executesProcess<br />

delivers<br />

requires<br />

OperatorFlow<br />

Merge<br />

Xor<br />

Merge<br />

Or<br />

Merge<br />

Branch<br />

Xor<br />

Branch<br />

Or<br />

Branch<br />

not_rigid<br />

Process Event<br />

NetObject<br />

cfRefines<br />

cfComesFrom cfGoesTo<br />

Fork<br />

Join<br />

name: string<br />

Composed<br />

Operator<br />

Flow<br />

joinType :<br />

{xor, or, and}<br />

forkType :<br />

{xor, or, and}<br />

cfCorrespondsTo<br />

Elementary<br />

Flow<br />

Abbildung 6.16: Spezialisierung des <strong>Referenz</strong>-<strong>Metaschema</strong>s des Netzparadigmas <strong>für</strong> Vorgangskettendiagramme<br />

(NPVKD)<br />

Anforderungen an Verfeinerungen von Prozessen oder Ereignissen in Vorgangskettendiagrammen<br />

werden in [Keller et al., 1992], [Scheer, 1992] und [Scheer, 1994] nicht formuliert. Auch<br />

erlaubt das ARIS-Toolset [IDS, 1995] zur Modellierung von Prozeßfolgen nahezu beliebige Verfeinerungen<br />

von Prozessen oder Ereignissen. Rudimentäre Regeln zur Verfeinerung von Prozeßketten<br />

werden in [Staud, 1999, S. 71ff] vorgeschlagen. In Anlehnung an diese Regeln werden<br />

in Prozeßketten ausschließlich Prozesse verfeinert. Mehrfachverwendungen von Verfeinerungen<br />

sind ebenfalls möglich.<br />

Die Balancierung der Prozeßverfeinerungen mit den verfeinerten Prozessen erfolgt entlang der<br />

Vor- und Nachereignisse der Prozesse. cfCorrespondsTo-Kanten verbinden hierzu die Ereignisse<br />

zu einem verfeinerten Prozeß mit ihren Surrogaten in der Verfeinerung [NPVKD 6]. Zu jedem<br />

Ereignis, das zu einem verfeinerten Prozeß adjazent ist, existiert in der Verfeinerung genau ein<br />

Surrogatereignis. Diese Surrogatereignisse beschreiben in der Verfeinerung <strong>für</strong> Vorereignisse des<br />

verfeinerten Prozesses Startereignisse und <strong>für</strong> die Nachereignisse Endereignisse [NPVKD 7].<br />

Zu einem verfeinerten Prozeß sind diese Surrogate <strong>für</strong> alle Ereignisse eindeutig [NPVKD 8].<br />

Schließlich ist noch zuzusichern, daß die in der Verfeinerung benötigten bzw. erzeugten Objekte<br />

auch mit den entsprechenden Objekten des verfeinerten Prozesses verträglich sind [NPVKD 9].


200 <strong>Referenz</strong>-<strong>Metaschema</strong><br />

NPVKD isA NP ;<br />

for G in NPVKD assert<br />

[NPVKD 1]:<br />

isConnected eGraph EcfComesFrom EcfComesFrom [NPVKD 2]:<br />

v w : V NetObject v cfComesFrom cfGoesTo<br />

;<br />

w ¯ type v type w ;<br />

[NPVKD 3]:<br />

e : E cfComesFrom type ω e Event ¯<br />

type α e XorBranch type α e OrBranch <br />

type α e ComposedOperatorFlow α e forktype and ;<br />

[NPVKD 4]:<br />

v : V NetObject ¯ δ cfComesFrom v 1 δ cfGoesTo v 1;<br />

[NPVKD 5]:<br />

1 e : V Event ¯ δ cfRefines e 0 δ cfGoesTo e 0;<br />

1 e : V Event ¯ δ cfRefines e 0 δ cfComesFrom e 0;<br />

[NPVKD 6]:<br />

c : E cfCorrespondsTo ¯<br />

1 p : V Process δ cfRefines p 0 α c cfRefines<br />

p ¯<br />

ω c cfComesFrom cfGoesTo cfGoesTo cfComesFrom<br />

[NPVKD 7]:<br />

p : VProcess ; e : VEvent δ<br />

cfRefines<br />

p 0 e cfComesFrom cfGoesTo<br />

1 s : VEvent p cfRefines s cfCorrespondsTo e ¯ δcfGoesTo s 0;<br />

p : VProcess ; e : VEvent δ<br />

cfRefines<br />

p 0 e cfGoesTo cfComesFrom p ¯<br />

1 s : VEvent p cfRefines s cfCorrespondsTo e ¯ δcfComesFrom s 0;<br />

[NPVKD 8]:<br />

p : V Process ; e 1 e 2 s 1 s 2 : V Event e 1 e 2 <br />

e1 cfComesFrom cfGoesTo cfGoesTo cfComesFrom<br />

p cfRefines s1 cfCorrespondsTo e1 <br />

e2 cfComesFrom cfGoesTo cfGoesTo cfComesFrom<br />

p cfRefines s2 cfCorrespondsTo e2 ¯<br />

s1 s2 ;<br />

[NPVKD 9]:<br />

p 1 : V Process δ cfRefines 0 ¯<br />

end .<br />

p <br />

p <br />

p 1 requires Ë p 2 : V Process p 1 cfRefines p 2 ¯ p 2 requires <br />

p 1 delivers Ë p 2 : V Process p 1 cfRefines p 2 ¯ p 2 delivers <br />

p ;<br />

p ¯


6.4 <strong>Metaschema</strong>ta der Prozeßsicht 201<br />

Ereignisgesteuerte Prozeßketten. Aus dem <strong>Metaschema</strong> der Vorgangskettendiagramme (NP-<br />

VKD) kann das <strong>Metaschema</strong> der Ereignisgesteuerten Prozeßketten (NPEPK) abgeleitet werden.<br />

Gegenüber Vorgangskettendiagrammen und erweiterten Ereignisgesteuerten Prozeßketten ist in<br />

Ereignisgesteuerten Prozeßketten die Prozeßmodellierung ausschließlich auf die Folgebeziehungen<br />

von (Teil-) Prozessen und Ereignissen beschränkt. Querbezüge zu Handlungsträgern und<br />

Datenobjekten werden hier nicht modelliert. Objekt-Knoten sind im <strong>Metaschema</strong> der Ereignisgesteuerten<br />

Prozeßketten daher ausgeblendet [NPEPK 1].<br />

NPEPK isA NPVKN ;<br />

for G in NPEPK assert<br />

[NPEPK 1]:<br />

V Object <br />

end .<br />

Petri-Netze. Prozeßmodellierungen durch Petri-Netze beschreiben ebenfalls Flüsse zwischen<br />

Prozessen (Transitionen) und Ereignissen (Stellen). Operatoren über Flüsse werden in Petri-<br />

Netzen nicht modelliert. Im Gegensatz zu Aktivitätsdiagrammen, Vorgangskettendiagrammen<br />

und Ereignisgesteuerten Prozeßketten erfolgt die Modellierung der Nebenläufigkeit in Petri-<br />

Netzen ausschließlich durch elementare Flüsse, die genau zwei Netzelemente miteinander verbinden.<br />

Auf ein Ereignis bzw. auf einen Prozeß können jedoch beliebig viele Prozesse oder<br />

Ereignisse folgen.<br />

NetItem<br />

name: string<br />

NetObject<br />

cfRefines<br />

Process Event<br />

cfComesFrom cfGoesTo<br />

Elementary<br />

Flow<br />

weight : int<br />

marking : int<br />

capacity : int<br />

Abbildung 6.17: Spezialisierung des <strong>Referenz</strong>-<strong>Metaschema</strong>s des Netzparadigmas <strong>für</strong> Petri-Netze<br />

(NPPetri)


202 <strong>Referenz</strong>-<strong>Metaschema</strong><br />

Zur Ableitung des <strong>Metaschema</strong>s <strong>für</strong> Petrinetze (NPPetri, vgl. Abbildung 6.17) ist das <strong>Referenz</strong>-<br />

<strong>Metaschema</strong> des Netzparadigmas daher um die Kontrollflußoperatoren einzuschränken. Ebenso<br />

werden in Petri-Netzen keine Objektbezüge modelliert. [NPPetri 1]<br />

Die Markierung von Petri-Netzen erfordert die Ergänzung zusätzlicher Attribute. Für einfache<br />

Netzklassen wie z. B. <strong>für</strong> Stellen-Transitions-Netze reicht die Ergänzung der Event-Knoten um<br />

Attribute zur Beschreibung der aktuellen Markierung einer Stelle (marking) und ihrer Kapazität<br />

(capacity). Hierbei genügt die Markierung einer Stelle ihrer Kapazität [NPPetri 2]. Das Gewicht<br />

der Flußbeziehungen, durch das die in einem Schaltvorgang maximal übertragbaren Markierungen<br />

notiert werden, wird durch das weight-Attribut abgebildet.<br />

Petri-Netze beschreiben Flußbeziehungen durch bipartite Graphen, bei denen auf Prozesse jeweils<br />

Ereignisse und auf Ereignisse jeweils Prozesse folgen. Diese Eigenschaft wird durch<br />

[NPPetri 3] zugesichert.<br />

Petri-Netze erlauben sowohl die Verfeinerung von Ereignissen (Stellen) als auch von Prozessen<br />

(Transitionen). Hierzu werden in Anlehnung an [Baumgarten, 1996, S. 62] Stellen durch<br />

stellenberandete Netze und Transitionen durch transitionenberandete Netze verfeinert. In Verfeinerungen<br />

von Transitionen sind somit ausschließlich solche Stellen zugelassen, die Transitionen<br />

miteinander verbinden [NPPetri 4]. Eine entsprechende Zusicherung gilt <strong>für</strong> die Transitionen in<br />

Stellenverfeinerungen [NPPetri 5].<br />

Weitere Forderungen, insbesondere hinsichtlich der Einbettung einer Verfeinerung in das übergeordnete<br />

Netz werden hier nicht erhoben, da in Petri-Netz-Verfeinerung i. allg. von diesen<br />

Aspekten abstrahiert wird (vgl. auch [Baumgarten, 1996, S. 60]). Die Umgebung, in der eine<br />

Transitions- oder Stellenverfeinerung ausgeführt wird, ist nicht Bestandteil der Verfeinerung.<br />

NPPetri isA NP ;<br />

for G in NPPetri assert<br />

[NPPetri 1]:<br />

V Object V OperatorFlow ;<br />

[NPPetri 2]:<br />

e : V Event ¯ emarking ecapacity ;<br />

[NPPetri 3]:<br />

v w : V NetObject v cfComesFrom cfGoesTo<br />

w ¯ type v type w ;<br />

[NPPetri 4]:<br />

s : V Event s cfRefines &Process ¯ δ cfComesFrom s 0 δ cfGoesTo s 0;<br />

[NPPetri 5]:<br />

t : VProcess t cfRefines &Event<br />

end .<br />

¯ δ t<br />

cfComesFrom<br />

0 δ t<br />

cfGoesTo<br />

0<br />

Aufbauend auf diesem einfachen <strong>Metaschema</strong> <strong>für</strong> Petri-Netze können weitere Anforderungen<br />

an Netze und (statische) Netzeigenschaften definiert werden. Zu einem gegebenen Petri-Netz<br />

inklusive seiner Markierung können beispielsweise alle aktiven Transitionen angegeben werden.


6.4 <strong>Metaschema</strong>ta der Prozeßsicht 203<br />

Eine Transition (Process) ist genau dann aktiv, wenn die Stellen (Event) in ihrem Vorbereich<br />

ausreichend markiert sind und die Stellen im Nachbereich ausreichende Kapazitäten haben.<br />

for G in NPPetri define<br />

isActive : È VProcess where<br />

end .<br />

t : VProcess ¯ isActive t<br />

s : VEvent ; f : VElementaryFlow s cfComesFrom f cfGoesTo t ¯<br />

smarking f weight <br />

s : VEvent ; f : VElementaryFlow t cfComesFrom f cfGoesTo s ¯<br />

smarking f weight scapacity<br />

Durch Einschränkungen und Ergänzungen des <strong>Metaschema</strong>s <strong>für</strong> Petri-Netze können auch <strong>Metaschema</strong>ta<br />

<strong>für</strong> weitere Netzklassen abgeleitet werden.<br />

In Bedingungs/Ereignis-Netzen (condition event nets) [Baumgarten, 1996, S. 111] wird <strong>für</strong> alle<br />

Stellen eine Kapazität von 1 gefordert. Das <strong>Metaschema</strong> <strong>für</strong> Bedingungs/Ereignis-Netze (NPPetriCE)<br />

ergänzt das <strong>Metaschema</strong> der Petri-Netze um diese Forderung.<br />

NPPetriCE isA NPPetri ;<br />

for G in NPPetriCE assert<br />

[NPPetriCE 1]:<br />

s : VEvent ¯ scapacity 1<br />

end .<br />

Die in Abbildung 3.24 (<strong>Se</strong>ite 78) zur Modellierung der radiologischen Untersuchung verwendete<br />

Netzklasse erfordert eine Erweiterung des <strong>Metaschema</strong>s NPPetriCE um ein Attribut der<br />

ElementaryFlow-Knoten zur Modellierung der Schalt-Vorbedingungen (Guards).<br />

In Zustandsmaschinen [Baumgarten, 1996, S. 72] sind alle Transitionen unverzweigt und liegen<br />

nicht am Rand des Netzes. Transitionen in Zustandsmaschinen besitzen daher jeweils genau eine<br />

Stelle in ihrem Vorbereich und genau eine Stelle in ihrem Nachbereich. Das <strong>Metaschema</strong> der Zustandsmaschinen<br />

NPStateMachine ergänzt das <strong>Metaschema</strong> der Petri-Netze um diese Forderung.<br />

NPStateMachine isA NPPetri ;<br />

for G in NPStateMachine assert<br />

[NPStateMachine 1]:<br />

t : VProcess ¯ δ t 1 δ t<br />

cfComesFrom cfGoesTo<br />

end .<br />

Analog kann das <strong>Metaschema</strong> der Synchronisationsgraphen [Baumgarten, 1996, S. 72] aus dem<br />

<strong>Metaschema</strong> der Petri-Netze abgeleitet werden. In dieser Netzklasse sind die Stellen unverzweigt<br />

und liegen nicht am Rand des Netzes.<br />

Für Free-Choice-Netze [Baumgarten, 1996, S. 74] wird gefordert, daß die Zieltransitionen vorwärtsverzweigter<br />

Stellen nicht rückwärtsverzweigt sind. Zur Beschreibung des <strong>Metaschema</strong>s


204 <strong>Referenz</strong>-<strong>Metaschema</strong><br />

Free-Choice-Netze (NPFreeChoice) ist das <strong>Metaschema</strong> der Petri-Netze um die Forderung zur<br />

ergänzen, daß zu allen Transitionen, die zu einer vorwärtsverzweigten Stelle vorwärtsadjazent<br />

sind, keine weiteren Stellen vorwärtsadjazent sind.<br />

NPFreeChoice isA NPPetri ;<br />

for G in NPFreeChoice assert<br />

[NPFreeChoice 1]:<br />

s : VEvent ; t : VProcess s cfGoesTo cfComesFrom t δ cfGoesTo<br />

s 0 ¯<br />

δ t<br />

cfGoesTo<br />

1<br />

end .<br />

Höhere Petri-Netze erfordern analog zu den Attributierungen im <strong>Metaschema</strong> NPPetri weitere<br />

Attribute zur Abbildung der in diesen Netzklassen verwendeten Markentypen und deren Kapazitäten.<br />

Netzpläne. Ablaufbeschreibungen werden in der Netzplantechnik zur Planung, Steuerung und<br />

Überwachung von Prozeßabläufen verwendet. Die Prozeßmodellierung durch Netzpläne kann<br />

ebenfalls auf einer Spezialisierung des <strong>Referenz</strong>-<strong>Metaschema</strong>s des Netzparadigmas aufbauen.<br />

Diese <strong>Metaschema</strong>ta der Netzplantechnik bilden auch die Grundlage zur Spezifikation der Methoden<br />

zur Analyse von Netzplänen.<br />

Abbildung 6.18 zeigt die Ableitung des <strong>Metaschema</strong>s <strong>für</strong> Vorgangsknotennetzpläne aus dem<br />

<strong>Referenz</strong>-<strong>Metaschema</strong> des Netzparadigmas. Elementare Folgebeziehungen (ElementaryFlow)<br />

werden hier ausschließlich zwischen Prozessen (Process) dargestellt. Weitere Konzepte werden<br />

hier nicht verwendet [NPVKN1].<br />

Process<br />

name : string<br />

duration : float<br />

cfComesFrom cfGoesTo<br />

Elementary<br />

Flow<br />

delay : float<br />

flowType :<br />

{es, ss, ee, se}<br />

NPVKN isA NP <br />

for G in NPVKN assert<br />

[NPVKN 1]:<br />

V Object V Event V OperatorFlow <br />

E cfRefines <br />

[NPVKN 2]:<br />

isDag<br />

end .<br />

Abbildung 6.18: Spezialisierung des <strong>Referenz</strong>-<strong>Metaschema</strong>s des Netzparadigmas <strong>für</strong> Vorgangsknotennetzpläne<br />

(NPVKN)<br />

Zur Analyse und Berechnung der zeitlichen Einordnung der Prozeßfolge sind die Prozesse mit<br />

ihrer Bearbeitungsdauer (duration) und die Flüsse mit evtl. zu modellierenden Wartezeiten beim


6.4 <strong>Metaschema</strong>ta der Prozeßsicht 205<br />

Transport oder zur Zwischenlagerung (delay) attributiert. Die verschiedenen Folgebeziehungen<br />

zwischen Prozessen werden durch das Attribut flowType unterschieden. Normalfolgen werden<br />

durch es, Anfangsfolgen durch ss, Endfolgen durch ee und Sprungfolgen durch se ausgewiesen.<br />

Die Zeitanalyse der Netzplantechnik basiert auf zyklenfreien Prozeßbeschreibungen [NPV-<br />

KN 2]. Hierzu werden in Vorgangsknotennetzplänen <strong>für</strong> Prozesse u. a. früheste Anfangs- und<br />

Endzeitpunkte, späteste Anfangs- und Endzeitpunkte und Pufferzeiten berechnet. Diese Methoden<br />

können auf Basis des <strong>Metaschema</strong>s der Vorgangsknotennetzpläne spezifiziert werden.<br />

Der früheste Anfangszeitpunkt (earliest start time ES) eines Prozesses bestimmt sich aus den<br />

frühesten Zeitpunkten der Vorgängerprozesse. Ein Prozeß kann frühestens dann beginnen, wenn<br />

der letzte Vorgängerprozeß beendet ist und evtl. eingeplante Wartezeiten verstrichen sind. Für die<br />

Anfangsprozesse wird der Anfangszeitpunkt 0 angenommen. Bei der Berechnung dieser Zeitpunkte<br />

sind auch die verschiedenen Folgebeziehungen zu berücksichtigen (vgl. auch [Schwarze,<br />

1994, S. 154]). Der früheste Endzeitpunkt (earliest end time EF) eines Prozesses errechnet sich<br />

aus dem frühesten Anfangszeitpunkt und der Prozeßdauer.<br />

for G in NPVKN define<br />

ES : VProcess float;<br />

EF : VProcess float<br />

where<br />

end .<br />

ES λ p : V ÈÖÓ ×× ¯<br />

ÑÜ 0 <br />

q : Process; f : ElementaryFlow <br />

q cfComesFrom f cfGoesTo p f flowType es ¯<br />

ES q qduration f delay <br />

q : Process; f : ElementaryFlow <br />

q cfComesFrom f cfGoesTo p f flowType ss ¯<br />

ES q f delay <br />

q : Process; f : ElementaryFlow <br />

q cfComesFrom f cfGoesTo p f flowType ee ¯<br />

ES q qduration f delay pduration <br />

q : Process; f : ElementaryFlow <br />

q cfComesFrom f cfGoesTo p f flowType se ¯<br />

ES q f delay pduration ;<br />

EF λ p : V ÈÖÓ ×× ¯ ES p pduration<br />

In ähnlicher Weise sind auch die spätesten Zeitpunkte definiert. Ein Prozeß muß spätestens zu<br />

dem Zeitpunkt beendet sein (latest finish time, LF), wenn unter Berücksichtigung der Wartezeiten<br />

der früheste seiner Nachfolgerprozesse spätestens beginnen muß, um den vorgegebenen<br />

Endzeitpunkt des gesamten Prozesses einzuhalten. Dieser Endzeitpunkt des gesamten Prozesses<br />

wird hierzu auf den frühesten Endzeitpunkt des letzten Prozesses gesetzt. Der späteste Anfangszeitpunkt<br />

eines Prozesses (latest start time LS) entspricht dem spätesten Endzeitpunkt abzüglich<br />

der Prozeßdauer.


206 <strong>Referenz</strong>-<strong>Metaschema</strong><br />

for G in NPVKN define<br />

LF : VProcess float;<br />

LS : VProcess float<br />

where<br />

end .<br />

LF λ p : V ÈÖÓ ×× ¯<br />

ÑÒ ÑÜ q : Process δ cfComesFrom q 0 ¯ EF q <br />

q : Process; f : ElementaryFlow <br />

p cfComesFrom f cfGoesTo q f flowType es ¯<br />

LF q qduration f delay <br />

q : Process; f : ElementaryFlow <br />

p cfComesFrom f cfGoesTo q f flowType ss ¯<br />

LF q qduration f delay pduration <br />

q : Process; f : ElementaryFlow <br />

p cfComesFrom f cfGoesTo q f flowType ee ¯<br />

LF q f delay pduration <br />

q : Process; f : ElementaryFlow <br />

p cfComesFrom f cfGoesTo q f flowType se ¯<br />

LF q f delay pduration ;<br />

LS λ p : V ÈÖÓ ×× ¯ LF p pduration<br />

Die Pufferzeit (total float TF), um die die Bearbeitung eines Prozesses verzögert werden kann,<br />

ohne die Einhaltung des Endtermins des Gesamtprozesses zu gefährden, bestimmt sich aus der<br />

Differenz der spätesten und frühesten Termine.<br />

for G in NPVKN define<br />

TF : VProcess float<br />

where<br />

end .<br />

TF λ p : V ÈÖÓ ×× ¯ LS p ES p<br />

Die kritischen Prozesse, deren Zeitplanung genau eingehalten werden muß um das angestrebte<br />

Prozeßende zu erreichen, sind dann diejenigen Prozesse mit einer Pufferzeit von 0.<br />

for G in NPVKN define<br />

isCriticalProcess : È VProcess where<br />

end .<br />

isCriticalProcess p : V Process TF p 0


6.4 <strong>Metaschema</strong>ta der Prozeßsicht 207<br />

Für die weiteren Netzplanklassen können analog Spezialisierungen des <strong>Referenz</strong>-<strong>Metaschema</strong>s<br />

des Netzparadigmas abgeleitet und hierauf aufbauend diverse Analysemethoden spezifiziert werden.<br />

Für Ereignisknotennetzpläne entspricht das <strong>Metaschema</strong> nahezu dem <strong>Metaschema</strong> der Vorgangsknotennetze<br />

(NPVKN), bei dem die Flußbeziehungen jedoch ausschließlich zwischen Ereignissen<br />

verlaufen.<br />

6.4.4 <strong>Metaschema</strong>ta des Kontrollflußparadigmas<br />

Durch die <strong>visuelle</strong>n Sprachen des Kontrollflußparadigmas (vgl. Kapitel 3.4.4) werden Prozesse<br />

ebenfalls durch Folgen von Teilprozessen beschrieben. Die Beschreibungsmittel des Kontrollflußparadigmas<br />

verwenden im Gegensatz zu den Beschreibungsmittel des Netzparadigmas<br />

jedoch ausschließlich reguläre Folgestrukturen. Konzepte zur Abbildung von sequenziellen, parallelen,<br />

iterierten und alternativen Prozeßfolgen werden durch das <strong>Referenz</strong>-<strong>Metaschema</strong> des<br />

Kontrollflußparadigmas bereitgestellt.<br />

<strong>Referenz</strong>-<strong>Metaschema</strong> des Kontrollflußparadigmas<br />

Zur Modellierung dieser regulären Folgestrukturen wird im <strong>Referenz</strong>-<strong>Metaschema</strong> des Kontrollflußparadigmas<br />

CP (vgl. auch [Winter / Ebert, 1996, S.112f]) zwischen atomaren Prozessen<br />

(AtomicProcess) und zusammengesetzten Prozessen unterschieden.<br />

Process<br />

Atomic<br />

Process<br />

name : string<br />

<strong>Se</strong>quence Parallel<br />

isSubprocess<br />

isSubprocess<br />

isSubprocess<br />

controls<br />

Iteration Alternative<br />

Predicate<br />

name : string<br />

Case<br />

CP-EER 1<br />

isAlternative isSubprocess<br />

controls<br />

Abbildung 6.19: <strong>Referenz</strong>-<strong>Metaschema</strong> des Kontrollflußparadigmas<br />

(Control Flow Paradigm,CP)<br />

CP-EER 2<br />

Direkt aufeinander folgende Prozesse werden in <strong>Se</strong>quenzen (<strong>Se</strong>quence) zusammengefaßt. Parallel-Knoten<br />

bündeln nebenläufige Prozesse. Zu wiederholende Prozesse werden gemeinsam mit<br />

dem Iterationskriterium, das durch ein Prädikat (Predicate) abgebildet wird, in Iteration-Knoten<br />

zusammenfaßt. Die Metamodellierung von Alternativen erfolgt durch Alternative-Knoten, in denen<br />

die alternativen Fälle (Case) gruppiert werden. Diese Fälle fassen je ein Prädikat (Predicate)<br />

zur Festlegung der jeweiligen Alternative und einen auszuführenden Prozeß zusammen. Die<br />

Komposition von Teilprozessen, die selbst durch reguläre Strukturen untergliedert sein können,


208 <strong>Referenz</strong>-<strong>Metaschema</strong><br />

erfolgt durch isSubprocess-Kanten. Diese Zerlegungen in Teilprozesse entlang der isSubprocessund<br />

die isAlternative-Kanten sind zyklenfrei 4 [CP 1].<br />

for G in CP assert<br />

[CP 1]: isDag eGraph EisSubprocess EisAlternative end .<br />

Spezialisierungen des <strong>Referenz</strong>-<strong>Metaschema</strong>s<br />

Die in Kapitel 3.4.4 aufgeführten Beschreibungsmittel des Kontrollflußparadigmas können durch<br />

marginal angepaßte Spezialisierungen des <strong>Referenz</strong>-<strong>Metaschema</strong>s des Kontrollflußparadigmas<br />

abgebildet werden. Das <strong>Referenz</strong>-<strong>Metaschema</strong> kann unverändert zur Metamodellierung von<br />

Nassi-Shneiderman-Diagrammen und von Darstellungen in Pseudo-Code, wie er beispielsweise<br />

in Abbildung 3.29a (<strong>Se</strong>ite 85) genutzt wurde, verwendet werden. Diese Darstellungsmittel unterstützen<br />

die reguläre Prozeßzerlegung durch <strong>Se</strong>quenzen, Parallelbearbeitungen, Iterationen und<br />

Alternativen. Pseudo-Code Varianten sind gelegentlich aber auch nur auf einzelne dieser Strukturierungsmittel<br />

begrenzt, so daß in diesen Fällen Einschränkungen an das <strong>Referenz</strong>-<strong>Metaschema</strong><br />

erforderlich werden.<br />

Spezialisierungen des <strong>Referenz</strong>-<strong>Metaschema</strong>s des Kontrollflußparadigmas zur Abbildung von<br />

Jackson-Diagramme, Warnier-Orr-Diagramme und Entscheidungstabellen werden in den folgenden<br />

Abschnitten skizziert.<br />

Jackson-Diagramme und Warnier-Orr-Diagramme. In Jackson-Diagrammen und Warnier-<br />

Orr-Diagrammen werden Prozesse ausschließlich durch <strong>Se</strong>quenzen, Iterationen und Alternativen<br />

strukturiert. Zur Darstellung von nebenläufigen Prozessen existieren hier keine Darstellungsmittel.<br />

Parallel-Knoten sind daher in der Spezialisierung des <strong>Referenz</strong>-<strong>Metaschema</strong>s <strong>für</strong> Jackson-<br />

Diagramme und Warnier-Orr-Diagramme (CPJWO) auszuschließen [CPJWO 1].<br />

CPJWO isA CP ;<br />

for G in CPJWO assert<br />

[CPJWO 1]:<br />

V Parallel <br />

end .<br />

Entscheidungstabellen. Entscheidungstabellen beschreiben ausschließlich alternative Prozeßfolgen.<br />

Strukturierungen durch <strong>Se</strong>quenzen, Parallelbearbeitungen und Iterationen werden in Entscheidungstabellen<br />

nicht abgebildet.<br />

Die Spezialisierung des <strong>Referenz</strong>-<strong>Metaschema</strong>s des Kontrollflußparadigmas zur Abbildung von<br />

Entscheidungstabellen (CPTable) schließt daher die Konzepte <strong>Se</strong>quence, Parallel und Iteration<br />

aus [CPTable 1]. Eine Entscheidungstabelle besteht aus genau einer Alternativen [CPTable 2],<br />

4 In den konkreten Notationen des Kontrollflußparadigmas werden diese zyklenfreien Strukturen i. allg. durch<br />

Duplizieren mehrfach genutzter Prozesse auf baumartige Strukturen abgebildet.


6.5 <strong>Metaschema</strong>ta der Objektsicht 209<br />

die alle Prozesse in alternativen Fällen zusammenfaßt [CPTable 3]. Im Gegensatz zum <strong>Referenz</strong>-<br />

<strong>Metaschema</strong> des Kontrollflußparadigmas können die einzelnen Fälle hierbei beliebig viele Prozesse<br />

enthalten. Die Kardinalitätsanforderung des EER-Teils an isSubprocess-Kanten ist daher<br />

durch [CPTable 4] zu überschreiben.<br />

CPTable isA CP ;<br />

for G in CPTable assert<br />

[CPTable 1]:<br />

V <strong>Se</strong>quence V Parallel V Iteration ;<br />

[CPTable 2]:<br />

# V Alternative 1;<br />

[CPTable 3]:<br />

1 a : V Alternative ¯<br />

p : V AtomicProcess ¯<br />

p isSubprocess isAlternative<br />

[CPTable 4]:<br />

overwrites [CP-EER 1]:<br />

c : V Case ¯ 1 δ isSubprocess c<br />

end .<br />

a ;<br />

6.5 <strong>Metaschema</strong>ta der Objektsicht<br />

Visuelle <strong>Modellierungssprachen</strong> zur Darstellung von Systemstrukturen durch Objekte und deren<br />

Beziehungen sind in den <strong>Metaschema</strong>ta der Objektsicht zusammengefaßt. Hierbei werden Sprachen<br />

zur Modellierung dieser Objekt-Beziehungszusammenhänge auf Instanz- und auf Schema-<br />

Ebene unterschieden. Die Darstellung exemplarischer Systemstrukturen entlang konkreter oder<br />

abstrakter Objekte erfolgt durch die Sprachen des Objekt-Instanzparadigmas. Interaktionsbeziehungen<br />

zwischen Objekten zur Darstellung dynamischer Aspekte des Objektverhaltens werden<br />

durch die Beschreibungsmittel des Objekt-Interaktionsparadigmas beschrieben. Mit den Sprachen<br />

des Objekt-Beziehungsparadigmas werden Objekt-Beziehungsgeflechte schematisch dargestellt.<br />

6.5.1 <strong>Metaschema</strong>ta des Objekt-Instanzparadigmas<br />

Die <strong>visuelle</strong>n <strong>Modellierungssprachen</strong> des Objekt-Instanzparadigmas stellen statische Systemzusammenhänge<br />

exemplarisch dar. Hierzu werden mögliche strukturelle Beziehungsgeflechte zwischen<br />

Objekten beschrieben. Das <strong>Referenz</strong>-<strong>Metaschema</strong>ta stellt Konzepte zur Darstellung dieser<br />

Objekte und den hierzwischen vorliegenden Beziehungen bereit. Ebenso beschreibt es Attributstrukturen<br />

zur Konkretisierung von Objekten und Beziehungen.


210 <strong>Referenz</strong>-<strong>Metaschema</strong><br />

<strong>Referenz</strong>-<strong>Metaschema</strong> des Objekt-Instanzparadigmas<br />

Wesentliche Konzepte des <strong>Referenz</strong>-<strong>Metaschema</strong>s des Objekt-Instanzparadigmas sind Objekte<br />

(Object) und hierzwischen vorliegenden Beziehungen (Relationship), die zu Instanzobjekten<br />

(InstanceItem) zusammengefaßt sind. Im <strong>Referenz</strong>-<strong>Metaschema</strong> werden Beziehungen zwischen<br />

Objekten als binär aufgefaßt. Ein Relationship-Knoten ist hierzu über abstrakte iRelates-Kanten<br />

mit genau zwei Objekten verbunden. Zur Modellierung von reflexiven Beziehungen (Schlingen)<br />

sind diese Kanten nicht injektiv. Beziehungen werden auch hier als gerichtet aufgefaßt. Die Ausrichtung<br />

der Beziehungen wird durch iComesFrom- und iGoesTo-Kanten abgebildet.<br />

Object<br />

Class<br />

name : string<br />

Relationship<br />

Class<br />

name : string<br />

objIsInstanceOf<br />

OIP-EER 1<br />

OIP-EER 2<br />

relIsInstanceOf<br />

InstanceItem<br />

Object<br />

=2<br />

iGoesTo iComesFrom<br />

(iRelates)<br />

iRelates<br />

(iRelates)<br />

Relationship<br />

order : int<br />

hasAttribute<br />

ValuePair<br />

identifies<br />

name : string<br />

Abbildung 6.20: <strong>Referenz</strong>-<strong>Metaschema</strong> des Objekt-Instanzparadigmas<br />

(Object Instance Paradigm, OIP)<br />

Attribute<br />

Value<br />

Pair<br />

Attribute<br />

isValue<br />

valIsInstanceOf<br />

hasDomain<br />

Value<br />

Domain<br />

name : string name : string<br />

Zusätzlich können sowohl Objekte als auch Beziehungen attributiert werden. Hierzu werden ihnen<br />

Attribut-Wert-Paare (AttributeValuePair) zugeordnet, die Attribute (Attribute) und ihre Werte<br />

(Value) zusammenfassen. Den Attributen wird durch vaiIsInstanceOf -Kanten ihr Wertebereich<br />

Domain zugeordnet. Die Typisierung von Objekten (Object) und Beziehungen (Relationship)<br />

erfolgt durch objIsInstanceOf bzw. relIsInstanceOf -Kanten zu Objekt- und Beziehungsklassen<br />

(ObjectClass bzw. RelationshipClass).<br />

Der EER-Teil des <strong>Referenz</strong>-<strong>Metaschema</strong>s des Objekt-Instanzparadigmas (OIP) wird in Abbildung<br />

6.20 definiert. Zusätzliche textuelle Zusicherungen werden zur Abbildung der Anordnung<br />

der modellierten Beziehungen nötig. Die Anordnung einer Beziehung relativ zu einem Objekt,<br />

kann am order-Attribut der iRelates-Kanten abgelesen werden. Hierbei ist zuzusichern, daß diese<br />

Ordnung <strong>für</strong> alle iRelates-Kanten, die zu einem Objekt inzident sind, einen Wert zwischen 1 und<br />

dem Eingangsgrad dieses Objekts annimmt [OIP 1], und daß dieser Wert <strong>für</strong> alle zu diesem Objekt<br />

inzidenten iRelates-Kanten identifizierend ist [OIP 2]. Für die Attributwerte ist zuzusichern,<br />

daß diese dem Wertebereich des Attributs entsprechen [OIP 3].<br />

for G in OIP assert<br />

[OIP 1]:<br />

e : EiRelates ¯ 1 eorder δ ω e ;<br />

iRelates


6.5 <strong>Metaschema</strong>ta der Objektsicht 211<br />

[OIP 2]:<br />

[OIP 3]:<br />

end .<br />

e 1 e 2 : E iRelates e 1 e 2 ω e 1 ω e 2 ¯ e 1 order e 2 order ;<br />

a : VAttribute ; v : VValue a identifies isValue v ¯<br />

a hasDomain valIsInstanceOf v<br />

Spezialisierungen des <strong>Referenz</strong>-<strong>Metaschema</strong>s<br />

Die Objektdiagramme des EER/GRAL-Ansatzes (vgl. auch Abbildung 3.30, S. 87) folgen dem<br />

<strong>Referenz</strong>-<strong>Metaschema</strong> des Objekt-Instanzparadigmas. Diese graphbasierten Darstellungsmittel<br />

verwenden, wie im <strong>Referenz</strong>-<strong>Metaschema</strong> definiert, endliche, gerichtete, typisierte, attributierte,<br />

angeordnete Graphen. Relationen sind hier ausschließlich binär.<br />

Für die <strong>Metaschema</strong>ta der Instanzdarstellungen der Object Modeling Technique und der Unified<br />

Modeling Language ist das <strong>Referenz</strong>-<strong>Metaschema</strong> des Objekt-Instanzparadigmas leicht zu<br />

erweitern.<br />

Objektdiagramme der Object Modeling Technique und der Unified Modeling Language.<br />

Objektdiagramme der Object Modeling Technique [Rumbaugh et al., 1991] und der Unified Modeling<br />

Language [Booch et al., 1999] erlauben auch Beziehungen beliebiger Arität. Zur Abbildung<br />

dieser Anforderungen ist die Kardinalität der iRelates-Kanten nach oben unbeschränkt.<br />

Die Kardinalitätsanforderungen des EER-Teils des <strong>Referenz</strong>-<strong>Metaschema</strong>s <strong>für</strong> iRelates-Kanten<br />

ist daher zu überschreiben [OIPOO 1]. Da Beziehungen in diesen Dialekten generell als ungerichtet<br />

aufgefaßt werden, kann hier auch auf die spezialisierten iComesFrom- und iGoesTo-<br />

Kanten verzichtet werden [OIPOO 2]. Die im <strong>Referenz</strong>-<strong>Metaschema</strong> als abstrakt formalisierte<br />

iRelates-Kanten sind daher auch als konkret zu vereinbaren [OIPOO 3]. Die Spezialisierung des<br />

<strong>Referenz</strong>-<strong>Metaschema</strong>s des Objekt-Instanzparadigmas zur Modellierung dieser Beschreibungsmittel<br />

ist im <strong>Metaschema</strong> OIPOO zusammengefaßt. Neben diesen Anforderungen unterstützen<br />

die Objektdiagramme der Object Modeling Technique und der Unified Modeling Language die<br />

Anordnung der Beziehungen nicht. Das Attribut order der iRelates-Kanten bleibt folglich unberücksichtigt<br />

[OIPOO 4].<br />

OIPOO isA OIP ;<br />

for G in OIPOO assert<br />

[OIPOO 1]:<br />

overwrites [OIP-EER 1]:<br />

r : Relationship ¯ 2 δ r ;<br />

iRelates<br />

[OIPOO 2]:<br />

E iComesFrom E iGoesTo ;<br />

[OIPOO 3]:<br />

overwrites [OIP-EER 2]:<br />

isConcrete iRelates ;


212 <strong>Referenz</strong>-<strong>Metaschema</strong><br />

[OIPOO 4]:<br />

i : E iRelates ¯ iorder <br />

end .<br />

6.5.2 <strong>Metaschema</strong>ta des Objekt-Interaktionsparadigmas<br />

Zur Darstellung des inneren Verhaltens von Systemen werden die <strong>visuelle</strong>n Sprachen des Objekt-<br />

Interaktionsparadigmas (vgl. Kapitel 3.5.2) verwendet. Dieses dynamische Verhalten von Objektgeflechten<br />

wird exemplarisch entlang des Nachrichtenaustauschs zwischen den Objekten des<br />

Systems notiert. Im <strong>Metaschema</strong> des Objekt-Interaktionsparadigmas sind daher die Konzepte zur<br />

Modellierung von Objekten, Nachrichten und deren Querbezüge abzubilden.<br />

<strong>Referenz</strong>-<strong>Metaschema</strong> des Objekt-Interaktionsparadigmas<br />

Das <strong>Referenz</strong>-<strong>Metaschema</strong> des Objekt-Interaktionsparadigmas IAP ist in seinem EER-Teil in<br />

Abbildung 6.21 dargestellt. Zentrale Konzepte des Objekt-Interaktionsparadigmas sind Objekte<br />

(Object) und hierzwischen ausgetauschte Nachrichten (Message). Objekte werden hierbei<br />

als Instanzen einer Objektklasse (ObjectClass) aufgefaßt. Die Beschreibungsmittel des Objekt-<br />

Interaktionsparadigmas beschreiben exemplarische Szenarien der Objektinteraktion. Die in einem<br />

solchen Szenario verschickten Nachrichten werden in einem Interaktions-Szenario (InteractionScenario)<br />

zusammengefaßt.<br />

Object<br />

Class<br />

name: string<br />

Object<br />

name: string<br />

objIsInstanceOf<br />

msgComesFrom<br />

msgGoesTo<br />

isInputParameter<br />

isReturnParameter<br />

Message<br />

Call<br />

Create<br />

Call<br />

isMsgIn<br />

Interaction<br />

Scenario<br />

msgCorrespondsTo<br />

Destroy<br />

Call<br />

Method<br />

name : string<br />

callsMethod<br />

isGuard<br />

Predicate<br />

name: string<br />

Return<br />

Abbildung 6.21: <strong>Referenz</strong>-<strong>Metaschema</strong> des Objekt-Interaktionsparadigmas<br />

(Interaction Paradigm, IAP)<br />

iteration : string<br />

duration : int<br />

FlatFlow<br />

OfControl<br />

AsynchronousFlow<br />

OfControl


6.5 <strong>Metaschema</strong>ta der Objektsicht 213<br />

Im <strong>Referenz</strong>-<strong>Metaschema</strong> werden Nachrichtentypen zur Modellierung von Methodenaufrufen<br />

(Call), von Rückgabenachrichten (Return), von synchronen und von asynchronen Nachrichten<br />

zur Weitergabe der Systemkontrolle an andere Objekte (FlatFlowOfControl, Asynchronous-<br />

FlowOfControl) unterschieden (vgl. auch [Rumbaugh et al., 1999, S. 336]). Gegenüber dem Teil-<br />

<strong>Metaschema</strong> des Kollaborationspakets der Unified Modeling Language [OMG, 1999, S. 100] bildet<br />

das <strong>Referenz</strong>-<strong>Metaschema</strong> des Objekt-Interaktionsparadigmas somit auch die in der UML üblichen<br />

Nachrichtentypen ab. Rückgabe-Nachrichten beziehen sich hierbei jeweils auf einen (zuvor<br />

erfolgen) Methodenaufruf (msgCorrespondsTo). Korrespondierende Methodenaufrufe und<br />

Rückgaben werden zwischen den selben Objekten ausgetauscht [IAP 1].<br />

Aufgerufene Methoden (Method) werden durch Kanten des Typs callsMethod der Nachricht<br />

zugeordnet. Spezielle Methodenaufrufe zur Objektkonstruktion (CreateCall) und zur Objektzerstörung<br />

(DestroyCall) und zur Wertrückgabe mit anschließender Objektzerstörung sind als<br />

Spezialisierungen der Call-Nachrichten modelliert. Beim Austausch von Nachrichten zum Methodenaufruf<br />

können Parameter übergeben werden (isInputParameter und isReturnParameter),<br />

die wieder durch Objekte modelliert sind. Nachrichten werden nach dem <strong>Referenz</strong>-<strong>Metaschema</strong><br />

gerichtet zwischen Objekten ausgetauscht. <strong>Se</strong>nder und Empfänger sind anhand der msgComes-<br />

From- und msgGoesTo-Kanten erkennbar. Die Reihenfolge der ausgetauschten Nachrichten ist<br />

durch die Anordnung der Inzidenzen der isMsgIn-Kanten zu InteractionScenario-Knoten modelliert.<br />

Hierbei ist sicherzustellen, daß Nachrichten zur Wertrückgabe zeitlich nach dem Methodenaufruf<br />

erfolgen [IAP 2], und daß von dem Aufruferobjekt erst nach Erhalt der Rückgabenachricht<br />

weitere Nachrichten versendet oder empfangen werden [IAP 3] [Rumbaugh et al., 1999, S. 336].<br />

for G in IAP assert<br />

[IAP 1]:<br />

c : VCall ; r : VReturn r msgCorrespondsTo c ¯<br />

c msgComesFrom r msgGoesTo c msgGoesTo r msgComesFrom ;<br />

[IAP 2]:<br />

[IAP 3]:<br />

end .<br />

e 1 e 2 : E isMsgIn ω e 1 ω e 2 α e 1 msgCorrespondsTo α e 2 ¯<br />

order isMsgIn e 1 ω e 1 order isMsgIn e 2 ω e 2 ;<br />

e1 e2 : EisMsgIn ω e1 ω e2 α e1 msgCorrespondsTo α e2 ¯<br />

e3 : EisMsgIn ω e1 ω e2 ω e3 <br />

orderisMsgIn e1 ω e1 orderisMsgIn e3 ω e3 <br />

orderisMsgIn e2 ω e2 ¯<br />

α e 1 msgComesFrom msgComesFrom msgGoesTo α e 3<br />

Der Nachrichtenaustausch zwischen Objekten kann durch Prädikate (Predicate) überwacht werden.<br />

Nachrichten werden nur dann verschickt, wenn diese Wächter erfüllt sind. Auch können<br />

Nachrichten iteriert verschickt werden. Das Iterationskriterium ist im Metamodell als Attribut<br />

iteration der Nachrichten modelliert. Der Zeitbedarf zum Nachrichtenaustausch zwischen Objekten<br />

wird durch das duration-Attribut modelliert.


214 <strong>Referenz</strong>-<strong>Metaschema</strong><br />

Spezialisierungen des <strong>Referenz</strong>-<strong>Metaschema</strong>s<br />

<strong>Se</strong>quenz- oder Ereignispfaddiagramme und Kollaborations- oder Ereignisflußdiagramme, wie<br />

sie in der Unified Modeling Language (UML) [Rumbaugh et al., 1999], bei [Booch, 1994]<br />

oder bei [Rumbaugh et al., 1991] verwendet werden, entsprechen weitestgehend dem <strong>Referenz</strong>-<br />

<strong>Metaschema</strong> IAP. Das <strong>Se</strong>quenz- und Kollaborationsdiagramme semantisch äquivalente Informationen<br />

darstellen, basieren sie auf dem gleichen <strong>Metaschema</strong>. Für die Diagramme der UML<br />

kann das <strong>Metaschema</strong> unverändert übernommen werden, die Notationen von [Booch, 1994] oder<br />

[Rumbaugh et al., 1991] erfordern minimale Ergänzungungen bzw. Einschränkungen.<br />

Objekt- und Interaktionsdiagramme. Neben den im <strong>Referenz</strong>-<strong>Metaschema</strong> des Objekt-Interaktionsparadigmas<br />

vorgesehenen Nachrichtenarten unterscheidet [Booch, 1994] weitere Typen.<br />

Zusätzlich sieht er noch Nachrichten vor, die durch das Empfängerobjekt zurückgewiesen<br />

werden können (balking) oder die mit einer Zeitschranke (timeout) versehen sind. Zur Beschreibung<br />

des <strong>Metaschema</strong>s sind diese Nachrichtentypen als weitere Spezialisierung der calls zu ergänzen.<br />

Ein entsprechendes <strong>Metaschema</strong> der Objekt- und Interaktionsdiagramme nach [Booch,<br />

1994] wird in [Süttenbach / Ebert, 1997, S. 32] dargestellt.<br />

Ereignispfad- und Ereignisflußdiagramme. Der in der Objekt Modeling Technique (OMT)<br />

[Rumbaugh et al., 1991] verwendete Dialekt der Ereignispfad- und Ereignisflußdiagramme beschreibt<br />

nur die Interaktionen zwischen Objekten durch einfachen Nachrichtenaustausch. Verschiedene<br />

Nachrichtentypen werden hier nicht unterschieden [IAPOMT 1].<br />

IAPRumbaugh isA IAP ;<br />

for G in DFPContext assert<br />

[IAPOMT 1]:<br />

V Call V Return V FlatFlowOfControl V AsynchronousFlowOfControl <br />

end .<br />

6.5.3 <strong>Metaschema</strong>ta des Objekt-Beziehungsparadigmas<br />

Im Gegensatz zu dem Beschreibungsmitteln des Objekt-Instanzparadigmas, durch die Objektzusammenhänge<br />

aus Sicht konkreter Instanzen beschrieben werden, werden durch die <strong>visuelle</strong>n<br />

Modellierunssprachen des Objekt-Beziehungsparadigmas Objekt- und Datenstrukturen dargestellt.<br />

Objektklassen beschreiben Mengen oder Klassen gleichartiger Objekte, die auf Schemaebene<br />

zueinander in Beziehung gesetzt werden. Mengen gleichartiger Beziehungen, die zwischen<br />

Objekten konkreter Objektklassen vorliegen, werden durch Beziehungsklassen dargestellt. Zur<br />

Abbildung der Sprachen des Objekt-Beziehungsparadigmas werden im <strong>Referenz</strong>-<strong>Metaschema</strong><br />

des Objekt-Beziehungsparadigmas Konzepte zur Beschreibung von Objektklassen und Beziehungsklassen,<br />

deren Attributstrukturen und deren Querbezüge definiert. Zusätzlich bieten die<br />

moderneren Ansätze zur Objekt-Beziehungsmodellierung Mittel zur Strukturierung von Objektzusammenhängen<br />

durch Generalisierung, Aggregation und Gruppierung an. Diese Strukturierungsmittel<br />

werden im <strong>Referenz</strong>-<strong>Metaschema</strong> ebenfalls abgebildet.


6.5 <strong>Metaschema</strong>ta der Objektsicht 215<br />

<strong>Referenz</strong>-<strong>Metaschema</strong> des Objekt-Beziehungsparadigmas<br />

Der EER-Teil des <strong>Referenz</strong>-<strong>Metaschema</strong>s des Objekt-Beziehungsparadigmas (ORP) istinAbbildung<br />

6.22 dargestellt (vgl. hierzu auch die <strong>Metaschema</strong>ta in [Winter / Ebert, 1996, S. 116ff],<br />

[Dahm et al., 1998b] und [Ebert et al., 1999a]).<br />

Objekt- und Beziehungsklassen werden durch die Konzepte ObjectClass und RelationshipClass,<br />

die im Konzept ClassItem zusammengefaßt sind, modelliert. Passend zu den Beziehungen des<br />

<strong>Referenz</strong>-<strong>Metaschema</strong>s des Objekt-Instanzparadigmas modellieren die Beziehungsklassen des<br />

Objekt-Beziehungsparadigmas Klassen gerichteter, binärer Beziehungen. Der Bezug zwischen<br />

der Beziehungsklasse und den beiden in Beziehung gesetzten Objektklassen wird hierzu durch<br />

(abstrakte) cRelates-Kanten hergestellt, die zur Modellierung der Ausrichtung durch cComes-<br />

From- und cGoesTo-Kanten spezialisiert sind. Da Objektklassen auch zu sich selbst in Beziehung<br />

gesetzt werden können, sind die cRelates-Kanten als nicht injektiv zu vereinbaren.<br />

objClsIsA<br />

(isA)<br />

ORP-EER 1<br />

ORP-EER 2<br />

isA<br />

relClsIsA<br />

(isA)<br />

ClassItem<br />

=2<br />

cComes<br />

From<br />

cRelates<br />

(cRelates)<br />

Object<br />

Class<br />

RelationshipClass<br />

Aggregation<br />

Class<br />

dir: bool<br />

cGoesTo<br />

(cRelates)<br />

ORP-EER 3<br />

limits : int int<br />

injective: bool<br />

name : string<br />

abstract : bool<br />

hasAttribute<br />

Abbildung 6.22: <strong>Referenz</strong>-<strong>Metaschema</strong> des Objekt-Beziehungsparadigmas<br />

(Object-Relationship Paradigm, ORP)<br />

Domain<br />

name : string<br />

Attribute<br />

has<br />

Domain<br />

name : string<br />

Die Kardinalitäten der Beziehungsklassen werden durch die limits-Attribute der cRelates-Kanten<br />

festgelegt. In limits können in Anlehnung an die Min/Max-Notation, die Mindest- und Maximalanzahl<br />

der Beziehungen notiert werden, die Instanzen der beteiligten Objektklassen eingehen<br />

können. Klassen injektiver Beziehungen werden durch das Attribut injective der entsprechenden<br />

RelationshipClass-Knoten ausgezeichnet. Durch das Attribut abstract können sowohl Objektals<br />

auch Beziehungsklassen als abstrakte Klassen markiert werden.<br />

Objekte und Beziehungen können durch Attribut-Werte-Paare näher konkretisiert werden. Zur<br />

Festlegung dieser Attributstrukturen werden Objekt- und Beziehungsklassen um Attribute (Attribute)<br />

einschließlich deren (optionalen) Wertebereiche (Domain) ergänzt.<br />

Das <strong>Referenz</strong>-<strong>Metaschema</strong> des Objekt-Beziehungsparadigmas unterstützt neben diesen Grundformen<br />

der Objekt-Beziehungsmodellierung auch die Modellierungskonstrukte der erweiterten<br />

Objekt-Beziehungsmodellierung. Generalisierungen sowohl von Objekt- als auch von Beziehungsklassen<br />

werden durch (abstrakte) isA-Kanten bzw. durch deren Spezialisierungen model-


216 <strong>Referenz</strong>-<strong>Metaschema</strong><br />

liert. Durch objClsIsA- bzw.relClsIsA-Kanten werden jeweils ausschließlich Objekt- oder Beziehungsklassen<br />

generalisiert.<br />

Für die Spezialisierung von Beziehungsklassen ist darüber hinaus zu fordern, daß die Ziel- und<br />

Endklassen der Spezialisierungen auch mit den Ziel- und Endklassen der Generalisierung verträglich<br />

sind [ORP 1]. Kardinalitätsangaben dürfen durch Spezialisierungen von Beziehungsklassen<br />

nur eingeschränkt werden [ORP 2] um den in der Generalisierung definierten Kardinalitäten<br />

zu genügen. Durch [ORP 3] wird schließlich gefordert, daß es zu abstrakten Objekt- oder<br />

Beziehungsklassen in der Vererbungshierarchie auch konkrete Spezialisierungen geben muß.<br />

for G in ORP assert<br />

[ORP 1]:<br />

e f : VRelationshipClass ; a b c d : VObjectClass e relClsIsA f <br />

a cComesFrom e cGoesTo b c cComesFrom f cGoesTo d ¯<br />

a c b d ;<br />

£<br />

objClsIsA<br />

£<br />

objClsIsA<br />

[ORP 2]:<br />

e f : EcRelates α e relClsIsA α f ω e<br />

£<br />

objClsIsA ω f ¯<br />

first elimits first f limits second elimits second f limits ;<br />

[ORP 3]:<br />

end .<br />

t1 : ÎClassItem t1abstract true ¯<br />

t2 : ÎClassItem t2 isA t1 ¯ t2abstract false<br />

Gruppierungen und Aggregationen werden als spezielle Beziehungen (AggregationClass) aufgefaßt.<br />

Für diese Beziehungen werden Kardinalitätsinformationen analog zu den Relationship-<br />

Class-Kanten abgebildet, so daß im <strong>Metaschema</strong> eine Sonderbehandlung <strong>für</strong> Gruppierungen entfallen<br />

kann. Durch cComesFrom- und cGoesTo-Kanten wird <strong>für</strong> AggregationClass-Beziehungen<br />

Aggregat und Aggregation unterschieden. Die cComesFrom-Kanten zeigen jeweils zum Aggregat<br />

und die cGoesTo-Kante zur Aggregation. Die Ausrichtung der eigentlichen vom Aggregat zur<br />

Aggregation bzw. von der Aggregation zum Aggregat wird durch das dir-Attribut5 modelliert.<br />

Objekt-Beziehungsmodellierungen durch EER/GRAL-Klassendiagramme genügen dem zuvor<br />

vorgestellten <strong>Referenz</strong>-<strong>Metaschema</strong>. Das <strong>Referenz</strong>-<strong>Metaschema</strong> des Objekt-Beziehungsparadigmas<br />

definiert somit auch das <strong>Metaschema</strong> aller in dieser Arbeit notierten <strong>Metaschema</strong>ta und kann<br />

somit als Meta-<strong>Metaschema</strong> zur Modellierung der Beschreibungsmittel <strong>für</strong> Organisationen und<br />

Softwaresysteme eingeordnet werden. Die Z -Spezifikation des EER/GRAL-Ansatzes in Kapitel<br />

5.2 und das <strong>Referenz</strong>-<strong>Metaschema</strong> des Objekt-Beziehungsparadigmas lassen sich ineinander<br />

überführen. Die Menge der Typbezeichner des EER-Schemas (types) ist hierzu auf die Extension<br />

des Konzepts ClassItem abzubilden. Ebenso entsprechen die Mengen des EER-Schemas<br />

(EERSchema) zur Formalisierung der Knotentypbezeichner (entityTypes), der Beziehungstypbezeichner<br />

(relationshipTypes), der Rollentypbezeichner (roleTypes) und der Attributbezeichner<br />

(AttrId) den Extensionen von ObjectClass, RelationshipClass, AggregationClass und Attribute.<br />

Die Relationen und Mengen des EERSchema zur Spezifikation des Typsystems (TypeSystem),<br />

5 Für dir true zeigt die Aggregationskante parallel zur Ausrichtung der cComesFrom- und cGoesTo-Kanten zur<br />

Aggregation, andernfalls zum Aggregat.


6.5 <strong>Metaschema</strong>ta der Objektsicht 217<br />

des Inzidenzsystems (IncidenceSystem) und des Invariantensystems (InvariantSystem) finden ihre<br />

Entsprechungen in den Beziehungstypen und Attributstrukturen des <strong>Referenz</strong>-<strong>Metaschema</strong>s<br />

des Objekt-Beziehungsparadigmas.<br />

Spezialisierungen des <strong>Referenz</strong>-<strong>Metaschema</strong>s<br />

<strong>Metaschema</strong>ta weiterer Beschreibungsmittel des Objekt-Beziehungsparadigmas lassen sich<br />

ebenfalls durch kleinere Anpassungen aus diesem <strong>Referenz</strong>-<strong>Metaschema</strong> ableiten.<br />

Datenlexika. Durch Datenlexika werden Objektstrukturen entlang regulärer Strukturen durch<br />

Objektsequenzen, -alternativen und -iterationen beschrieben (vgl. auch die Metamodellierung<br />

des Konzepts ObjectClass im <strong>Referenz</strong>-<strong>Metaschema</strong> des Datenflußparadigmas in Abbildung<br />

6.7; <strong>Se</strong>ite 180). Dieses <strong>Metaschema</strong> kann auf das <strong>Referenz</strong>-<strong>Metaschema</strong> des Objekt-<br />

Beziehungsparadigmas zurückgeführt werden, indem <strong>Se</strong>quenzen als Aggregationen, Alternativen<br />

als Generalisierungen und Iterationen als Gruppierungen aufgefaßt werden.<br />

Abbildung 6.23 skizziert das <strong>Metaschema</strong> <strong>für</strong> Datenlexika (ORPDD). Aggregationen und Gruppierungen<br />

werden konzeptionell unterschieden. Das <strong>Metaschema</strong> <strong>für</strong> Datenlexika sieht daher <strong>für</strong><br />

Gruppierungen (GroupingClass) und Aggregationen (AggregationClass) eigene Konzepte vor.<br />

Die Kardinalitäten dieser Gruppierungs- und Aggregationsbeziehungen sind in Datenlexika auf<br />

der Instanzebene festgelegt. Gruppierungen sind beliebig viele Komponenten-Objekte zugeordnet<br />

[ORPDD 1] und Aggregationen in jeder Rolle genau ein Aggregat [ORPDD 2]. Komponenten<br />

bzw. Aggregate können jedoch an beliebig vielen Gruppierungen oder Aggregationen beteiligt<br />

sein.<br />

objClsIsA<br />

(isA)<br />

isA<br />

ClassItem<br />

=2<br />

cComes<br />

From<br />

cRelates<br />

(cRelates)<br />

Object<br />

Class<br />

RelationshipClass<br />

Aggregation<br />

Class<br />

cGoesTo<br />

(cRelates)<br />

Grouping<br />

Class<br />

limits : int int<br />

name : string<br />

hasAttribute<br />

Domain<br />

name : string<br />

Attribute<br />

name : string<br />

has<br />

Domain<br />

Abbildung 6.23: Spezialisierung des <strong>Referenz</strong>-<strong>Metaschema</strong>s des Objekt-Beziehungsparadigmas<br />

<strong>für</strong> Datenlexika (ORPDD)


218 <strong>Referenz</strong>-<strong>Metaschema</strong><br />

Für Gruppierungen sind auch Kardinalitätseinschränkungen auf der Metaebene zu fordern. Einer<br />

Objektklasse, die eine Gruppierung beschreibt, ist genau eine Objektklasse zur Abbildung der<br />

Komponenten zugeordnet. Weitere gruppierte oder aggregierte Komponenten sind <strong>für</strong> Gruppierungen<br />

auszuschließen [ORPDD 3].<br />

Beziehungsklassen werden in Datenlexika nicht dargestellt, so daß im <strong>Metaschema</strong> die RelationshipClass-Knoten<br />

als abstrakt vereinbart werden. Auch können Beziehungsklassen nicht generalisiert<br />

werden [ORPDD 4]. Ebenso werden die in Datenlexika definierten Objekt- und Beziehungsklassen<br />

generell als konkret und Beziehungsklassen als injektiv angenommen [ORPDD 5].<br />

ORPDD isA ORP ;<br />

for G in ORPDD assert<br />

[ORPDD 1]:<br />

c : EcComesFrom type α c GroupingClass ¯<br />

first climits 0 second climits ∞ ;<br />

g : E cGoesTo type α g GroupingClass ¯<br />

first glimits 0 second glimits ∞ ;<br />

[ORPDD 2]:<br />

c : E cComesFrom type α c AggregationClass ¯<br />

first climits 1 second climits 1;<br />

g : E cGoesTo type α g AggregationClass ¯<br />

first glimits 0 second glimits ∞ ;<br />

[ORPDD 3]:<br />

o : V ObjectClass o cGoesTo &GroupingClass ¯<br />

δ cGoesTo 1;<br />

[ORPDD 4]:<br />

E relClsIsA ;<br />

[ORPDD 5]:<br />

i : V ClassItem ¯ iabstract false ;<br />

end .<br />

r : V RelationshipClass ¯ rinjective true<br />

Diesem <strong>Metaschema</strong> <strong>für</strong> Datenlexika ORPDD genügen auch Beschreibungen zur Objektmodellierung<br />

durch Jackson-Bäume und Warnier-Orr-Diagramme, die ebenfalls auf der Modellierung<br />

durch reguläre Strukturen basieren.<br />

Entity-Relationshipdiagramme. Entity-Relationshipdiagramme sind die klassische Form der<br />

Objekt-Beziehungsmodellierung. Die Spezialisierung des <strong>Referenz</strong>-<strong>Metaschema</strong>s des Objekt-<br />

Beziehungsparadigmas <strong>für</strong> Entity-Relationship-Diagramme (ORPER) in einer heute gebräuchlichen<br />

Form (vgl. z. B. [Vossen, 1994, S. 70ff], [Scheer, 1992], [Elmasri / Navathe, 2000]) ist in<br />

Abbildung 6.24 dargestellt.


6.5 <strong>Metaschema</strong>ta der Objektsicht 219<br />

objClsIsA<br />

(isA)<br />

isA<br />

ClassItem<br />

cRelates<br />

Object<br />

Class<br />

RelationshipClass<br />

Aggregation<br />

Class<br />

limits : int int<br />

name : string<br />

hasAttribute<br />

Domain<br />

name : string<br />

Attribute<br />

has<br />

Domain<br />

name : string<br />

ORPER isA ORP <br />

for G in ORPER assert<br />

[ORPER 1]:<br />

E relClsIsA <br />

[ORPER 2]:<br />

overwrites [ORP-EER 1]:<br />

r V Relationship ¯<br />

Æ cRelates r <br />

[ORPER 3]:<br />

E cComesFrom E cGoesTo <br />

[ORPER 4]:<br />

overwrites [ORP-EER 2]:<br />

isConcrete cRelates <br />

[ORPER 5]:<br />

c VClassItem ¯ c.abstract false <br />

r VRelationship ¯ r.injective true<br />

end .<br />

Abbildung 6.24: Spezialisierung des <strong>Referenz</strong>-<strong>Metaschema</strong>s des Objekt-Beziehungsparadigmas<br />

<strong>für</strong> Entity-Relationship-Diagramme (ORPER)<br />

In diesen Dialekten wird die Generalisierung von Beziehungstypen nicht unterstützt [ORPER 1].<br />

Entity-Relationshipdiagramme erlauben gegenüber dem <strong>Referenz</strong>-<strong>Metaschema</strong> auch Beziehungen<br />

beliebiger Arität. Die Begrenzung der Kardinalitäten der cRelates-Kanten nach oben ist<br />

daher aufgehoben [ORPER 2]. Da Beziehungen in diesen Dialekten als ungerichtet aufgefaßt<br />

werden, sind die cComesFrom und cGoesTo-Kanten überflüssig [ORPER 3], und die cRelates-<br />

Kanten sind als konkret zu vereinbaren [ORPER 4]. Graphischen Beschreibungsmittel zur Unterscheidung<br />

injektiver bzw. nicht injektiver Beziehungsklassen und abstrakter bzw. konkreter<br />

Objekt- und Beziehungsklassen werden in diesen Dialekten nicht graphisch unterschieden. Auch<br />

hier wird generell von konkreten Klassen und injektiven Beziehungsklassen ausgegangen [OR-<br />

PER 5].<br />

Der in [Chen, 1976] eingeführte ursprüngliche Dialekt zur Entity-Relationship-Modellierung<br />

kann auf das <strong>Metaschema</strong> ORPER zurückgeführt werden. In dieser Notation konnten noch keine<br />

Generalisierungen, Aggregationen und Attributstrukturen [ERChen 1] modelliert werden.<br />

ClassItem<br />

cRelates<br />

Object<br />

Class<br />

Relationship<br />

Class<br />

limits : int int<br />

name : string<br />

ORPChen isA ORPER <br />

for G in ORPChen assert<br />

[ORPChen 1]:<br />

V AggregationClass <br />

V Attribute V Domain <br />

E isA <br />

[ORPChen 2]:<br />

c E cRelates ¯<br />

first c.limits <br />

second c.limits <br />

second c.limits <br />

end .<br />

Abbildung 6.25: Spezialisierung des <strong>Referenz</strong>-<strong>Metaschema</strong>s des Objekt-Beziehungsparadigmas<br />

<strong>für</strong> Entity-Relationshipdiagramme nach [Chen, 1976] (ORPChen)


220 <strong>Referenz</strong>-<strong>Metaschema</strong><br />

Die Kardinalitäten der Beziehungen werden in Entity-Relationshipdiagrammen i. allg. in der Å :<br />

Æ -Notation angegeben. Hierzu werden nur ÐÑØ×-Paare der Form 01 (entspricht 1) und 0∞<br />

(entspricht Å oder Æ ) zugelassen [ERChen 2].<br />

NIAM-Informationsstruktur-Diagramme. Eine Variante der Entity-Relationshipdiagramme,<br />

die ausschließlich binäre Beziehungen zwischen Objekten nutzen, sind NIAM-Informationsstruktur-Diagramme.<br />

Beziehungen werden in NIAM ausgehend von den Rollen, die die Objekte<br />

in der Beziehung einnehmen, modelliert. Die Bezeichner dieser beiden Rollen benennen die<br />

gesamte Beziehung. In NIAM können mit graphischen Mitteln Zusicherungen über den Objektmengen,<br />

die an einer Beziehung beteiligt sind, dargestellt werden. In der Spezialisierung<br />

des <strong>Referenz</strong>-<strong>Metaschema</strong>s des Objekt-Beziehungsparadigmas <strong>für</strong> NIAM-Informationsstruktur-<br />

Diagramme ORPNiam (vgl. Abbildung 6.26) werden diese Rollen daher durch die Knotentypen<br />

RoleComesFrom und RoleGoesTo modelliert. Diese ersetzen die cRelates-Kanten des <strong>Referenz</strong>-<br />

<strong>Metaschema</strong>s [ORPNiam 1].<br />

objClsIsA<br />

(isA)<br />

isA<br />

ClassItem<br />

hasAs<br />

DestinationCF<br />

Role<br />

Role<br />

ComesFrom<br />

hasAs<br />

OriginCF<br />

ObjectClass<br />

Domain<br />

Relationship<br />

Class<br />

hasAs<br />

DestinationGT<br />

Role<br />

GoesTo<br />

hasAs<br />

OriginGT<br />

name : string<br />

roleAssociation : string<br />

relatesRole<br />

limits : int int<br />

name : string<br />

ORPNiam isA ORP <br />

for G in ORPNiam assert<br />

[ORPNiam 1]:<br />

E cRelates <br />

[ORPNiam 2]:<br />

V AggregationClass <br />

[ORPNiam 3]:<br />

c E cRelates ¯<br />

first c.limits <br />

second c.limits <br />

second c.limits <br />

[ORPNiam 4]:<br />

V Attributes <br />

[ORPNiam 5]:<br />

E relClsIsA <br />

[ORPNiam 6]:<br />

c V ClassItem ¯<br />

c.abstract false <br />

r V Relationsship ¯<br />

end .<br />

r.injective true<br />

Abbildung 6.26: Spezialisierung des <strong>Referenz</strong>-<strong>Metaschema</strong>s des Objekt-Beziehungsparadigmas<br />

<strong>für</strong> NIAM-Informationsstruktur-Diagramme (ORPNiam)<br />

Eine Beziehung entspricht dann der Aggregation einer RoleComesFrom- und einer RoleGoesTo-<br />

Rolle, denen jeweils die in Beziehung gesetzten Objektklassen (ObjectClass) zugeordnet sind.<br />

Die Beziehungen zwischen den Rollen werden durch relatesRole-Kanten beschrieben, die mit<br />

der Art der jeweiligen Beziehung attributiert sind. Durch diese Beziehungen kann auch die Aggregation<br />

modelliert werden, so daß auch die AggregationClass-Spezialisierung der Beziehungsklassen<br />

im <strong>Metaschema</strong> entfallen kann [ORPNiam 2]. Kardinalitäten der Beziehungen werden<br />

in NIAM analog zu den Entity-Relationshipdiagrammen in einer graphischen Form der Å : Æ -


6.5 <strong>Metaschema</strong>ta der Objektsicht 221<br />

Notation dargestellt [ORPNiam 3]. Diese Kardinalitätsangaben werden im <strong>Metaschema</strong> ebenfalls<br />

an den Role-Knoten abgetragen.<br />

Wertebereiche von Attributen und Objektklassen werden in NIAM nicht unterschieden. Sowohl<br />

Attributzuordnungen als auch Beziehungen werden entlang des RelationshipClass-Konzepts<br />

modelliert. Jede Beziehung kann als Attributzuordnung aufgefaßt werden, so daß im NIAM-<br />

<strong>Metaschema</strong> gegenüber dem <strong>Referenz</strong>-<strong>Metaschema</strong> das Attributkonzept entfällt [ORPNiam 4].<br />

Die Wertebereiche der Attribute (domain) des <strong>Referenz</strong>-<strong>Metaschema</strong>s werden im NIAM-<br />

<strong>Metaschema</strong> als Spezialisierung der Objektklassen ObjectClass aufgefaßt. Diese Attributwertebereiche<br />

umfassen ausschließlich druckbare Standardtypen.<br />

Generalisierungen werden in NIAM nur zwischen Objektklassen zugelassen. Das <strong>Metaschema</strong><br />

der NIAM-Informationsstrukturdiagramme enthält daher auch keine relClsIsA-Kanten [ORP-<br />

Niam 5]. Abstrakte Klassen und nicht-injektive Beziehungsklassen werden auch in NIAM nicht<br />

berücksichtigt [ORPNiam 6].<br />

Generische <strong>Se</strong>mantische Modelle. In Dialekt der Generischen <strong>Se</strong>mantischen Modelle werden<br />

gerichtete Beziehungen beliebiger Arität unterstützt. Die Richtung der Beziehungen wird<br />

auch hier durch die cComesFrom- und cGoesTo-Kanten abgebildet. Zur Modellierung beliebiger<br />

Aritäten sind in der Spezialisierung des <strong>Referenz</strong>-<strong>Metaschema</strong>s <strong>für</strong> Generische <strong>Se</strong>mantische<br />

Modelle (ORPGSM) in Abbildung 6.27 die Kardinalitäten der cRelates-Kanten anzupassen.<br />

objClsIsA<br />

(isA)<br />

isA<br />

ClassItem<br />

ObjectClass<br />

Domain<br />

cComes<br />

From<br />

cRelates<br />

(cRelates)<br />

Aggregation<br />

Class<br />

RelationshipClass<br />

Grouping<br />

Class<br />

name : string<br />

cGoesTo<br />

(cRelates)<br />

ORPGSM isA ORP <br />

for G in ORPDD assert<br />

[ORPGSM 1]:<br />

overwrites [ORP-EER 1]:<br />

r V Relationship ¯ Æ cRelates r <br />

overwrites [ORP-EER 3]:<br />

r V Relationship ¯ Æ cComesFrom r <br />

[ORPGSM 2]:<br />

E relClsIsA <br />

Æ cGoesTo r <br />

[ORPGSM 3]:<br />

c E cComesFrom type « c GroupingClass ¯<br />

first c.limits second c.limits <br />

g E cGoesTo type « g GroupingClass ¯<br />

first g.limits second g.limits <br />

[ORPGSM 4]:<br />

c E cComesFrom type « c AggregationClass ¯<br />

first c.limits second c.limits <br />

g E cGoesTo type « g AggregationClass ¯<br />

first g.limits second g.limits <br />

[ORPGSM 5]:<br />

o V ObjectClass o cGoesTo GroupingClass ¯<br />

Æ cGoesTo o <br />

[ORPGSM 6]:<br />

V Attribute <br />

[ORPGSM 7]:<br />

c VClassItem ¯ c.abstract false <br />

r VRelationsship ¯ r.injective true<br />

end .<br />

Abbildung 6.27: Spezialisierung des <strong>Referenz</strong>-<strong>Metaschema</strong>s des Objekt-Beziehungsparadigmas<br />

<strong>für</strong> Generische <strong>Se</strong>mantische Modelle (ORPGSM)


222 <strong>Referenz</strong>-<strong>Metaschema</strong><br />

Jeder Beziehungsklasse (RelationshipClass) ist mindestens eine cComesFrom- und cGoesTo-<br />

Kante zugeordnet. Die Anzahl der Objektklassen, die über diese Kanten zu einer Beziehungsklasse<br />

adjazent sind, ist jedoch nach oben unbeschränkt [ORPGSM 1]. Generalisierungen [OR-<br />

PGSM 2] und Kardinalitäten der Beziehungsklassen werden in Generischen <strong>Se</strong>mantischen Modellen<br />

nicht unterstützt.<br />

Wie auch in Datenlexika wird in Generischen <strong>Se</strong>mantischen Modellen deutlich zwischen der<br />

Aggregation und der Gruppierung unterschieden. Zur Metamodellierung von Aggregationen und<br />

Gruppierungen wird auch hier das Konzept der RelationshipClass durch AggregationClass und<br />

GroupingClass spezialisiert. Die Kardinalitäten dieser speziellen Beziehungen sind durch die<br />

Zusicherungen [ORPGSM 3] und [ORPGSM 4] festgelegt. Für Gruppierungen ist darüber hinaus<br />

noch zu fordern, daß hierdurch genau eine Objektklasse gruppiert wird [ORPGSM 5].<br />

Generische <strong>Se</strong>mantische Modelle bilden Attributzuordnungen analog zu NIAM-Informationsstruktur-Diagrammen<br />

durch Beziehungstypen ab. Das Konzept Domain faßt auch hier die<br />

druckbaren Objektklassen in einer Spezialisierung von ObjectClass zusammen. Gegenüber dem<br />

<strong>Referenz</strong>-<strong>Metaschema</strong> des Objekt-Beziehungsparadigmas sind im <strong>Metaschema</strong> <strong>für</strong> Generische<br />

<strong>Se</strong>mantische Modelle ebenfalls die Attribut-Knoten auszublenden [ORPGSM 6]. Abstrakte<br />

Objekt- und Beziehungsklassen bzw. nicht-injektive Beziehungsklassen werden auch hier nicht<br />

herausgestellt [ORPGSM 7].<br />

UML-Klassendiagramme. Auch die Klassendiagramme der Unified Modeling Language<br />

(UML) können auf eine Spezialisierung des <strong>Referenz</strong>-<strong>Metaschema</strong>s des Objekt-Beziehungsparadigmas<br />

zurückgeführt werden. Gegenüber dem <strong>Referenz</strong>-<strong>Metaschema</strong> ist das <strong>Metaschema</strong> der<br />

UML-Klassendiagramme (ORPUML) um Konzepte zur Modellierung des nach außen sichtbaren<br />

Verhaltens der Objektklassen zu ergänzen (vgl. Abbildung 6.28). Objektklassen werden hierzu<br />

Methoden (Method) zugeordnet, die durch ihre Signaturen (Signature) konkretisiert werden<br />

können. Signaturen spezifizieren hierbei die Sorten (Sort) des Vorbereichs (isInputSort) und des<br />

Nachbereichs (isReturnSort), die sowohl durch Objektklassen (ObjectClass) als auch durch die<br />

Attributwertebereiche6 (Domain) gebildet werden können. Die Implementation dieser Methoden<br />

durch Prozesse (Process) kann mit den Beschreibungsmitteln der Prozeßsicht (vgl. Kapitel 6.4)<br />

dargestellt werden.<br />

In den Klassendiagrammen der UML werden verschiedene Beziehungsarten unterschieden, die<br />

im <strong>Metaschema</strong> als Spezialisierungen der RelationshipClass abgebildet werden. Klassen strukturierter<br />

Beziehungen zwischen Objekten werden durch Assoziationen (Association) modelliert. In<br />

UML-Klassendiagrammen können sowohl binäre, gerichtete Beziehungen als auch n-äre, ungerichtete<br />

Beziehungen notiert werden. Die Metamodellierung gerichteter, binärer Beziehungsklassen<br />

erfolgt entlang der cComesFrom- und cGoesTo-Kanten. Zur Beschreibung der n-ären, ungerichteten<br />

Beziehungen dienen die cRelates-Kanten, deren Kardinalität nach oben unbeschränkt<br />

ist [ORPUML 1], und die gegenüber den <strong>Referenz</strong>-<strong>Metaschema</strong> konkret sind [ORPUML 2]. Da<br />

Beziehungen entweder gerichtet oder ungerichtet sind, werden cRelates und cComesFrom-bzw.<br />

cGoesTo-Kanten nicht kombiniert [ORPUML 3].<br />

6 Je nach Implementationsunterstützung können hier unterschiedliche Standarddatentypen (bool, int, float, string)<br />

und Typkonstruktoren durch Mengen-, Multimengen oder Tupelbildung unterschieden werden (vgl. hierzu auch<br />

[Dahm et al., 1998a, Anhang A].


6.5 <strong>Metaschema</strong>ta der Objektsicht 223<br />

Process<br />

objClsIsA<br />

(isA)<br />

isA<br />

relClsIsA<br />

(isA)<br />

implements<br />

visibility : string<br />

hasOperation<br />

ClassItem<br />

(cRelates)<br />

RelationshipClass<br />

Association<br />

DependencyClass<br />

Method<br />

Object<br />

Class<br />

cComes<br />

From<br />

cRelates<br />

type : string<br />

name : string<br />

isSignature<br />

cGoesTo<br />

(cRelates)<br />

Aggregation<br />

Class<br />

CompositionClass<br />

isInput<br />

Sort<br />

visibility : string<br />

hasAttribute<br />

limits : int int<br />

role : string<br />

visibility : string<br />

Signature<br />

Sort<br />

isReturn<br />

Sort<br />

Attribute<br />

isAssociated<br />

name : string<br />

abstract : bool<br />

hasDomain<br />

Domain<br />

name : string name : string<br />

Abbildung 6.28: Spezialisierung des <strong>Referenz</strong>-<strong>Metaschema</strong>s des Objekt-Beziehungsparadigmas<br />

<strong>für</strong> UML-Klassendiagramme (ORPUML)<br />

Abhängigkeitsbeziehungen (DependencyClass) beschreiben Benutzt-Beziehungen zwischen<br />

zwei Objektklassen. Diese Beziehungen sind generell binär und gerichtet [ORPUML 4]. Die<br />

verschiedenen Arten der Abhängigkeiten7 werden durch das type-Attribut modelliert.<br />

Aggregationen und Gruppierungen werden auch in UML-Klassendiagrammen durch ein gemeinsames<br />

Konzept beschrieben. Durch entsprechende Kardinalitätsangaben werden die Gruppierungen,<br />

wie im <strong>Referenz</strong>-<strong>Metaschema</strong> abgebildet, auf Aggregationen (AggregationClass) zurückge-<br />

7 [Booch et al., 1999, S. 137] unterscheidet die Stereotypen bind, derive, friend, instanceOf, instanciate, powertype,<br />

refine, use, access, import, extend, include, become, call, copy, send und trace.


224 <strong>Referenz</strong>-<strong>Metaschema</strong><br />

führt. Die gerichteten Beziehungen zwischen Aggregaten und Aggregationen werden auch hier<br />

durch die cComesFrom- bzw.cGoesTo-Kanten dargestellt, cRelates-Kanten sind an Aggregationsbeziehungen<br />

nicht beteiligt [ORPUML 4]. In UML-Klassendiagrammen werden zwei Varianten<br />

der Aggregation unterstützt. Während die (generelle) Aggregation (AggregationClass) nur<br />

Teil-Ganzes-Beziehungen abbildet, beschreiben Kompositionen (CompositionClass) solche Aggregationen,<br />

bei denen die Existenz der Aggregate an die Existenz der Aggregation gebunden<br />

ist. Für die Komponenten einer Komposition ist daher zu fordern, daß sie genau einmal zu genau<br />

einer Komposition gehören [ORPUML 5].<br />

Beziehungsklassen können in UML-Klassendiagrammen nicht direkt attributiert werden. Die<br />

Modellierung von Attributen und Methoden zu Assoziationen und Aggregationen erfolgt in UML<br />

durch eine assoziierte Objektklasse (isAssociated). Abhängigkeitsbeziehungen werden in UML<br />

auch nicht durch eine solche Uminterpretation von Objektklassen attributiert [ORPUML 6].<br />

Kardinalitätsangaben zu Assoziationen und Aggregationen werden durch die Min/Max-Notation<br />

dargestellt. Im <strong>Metaschema</strong> wird dieses durch die limits-Attribute der cRelates-Kanten abgebildet.<br />

Rollen, die Objekte in Beziehungen einnehmen, können in UML-Klassendiagrammen<br />

ebenfalls modelliert werden. Die cRelates-Kanten werden hierzu um das Attribut role erweitert.<br />

Für Abhängigkeitsbeziehungen (DependencyClass) werden diese Attribute nicht unterstützt<br />

[ORPUML 7].<br />

Wie im <strong>Referenz</strong>-<strong>Metaschema</strong> des Objekt-Beziehungsparadigmas vorgesehen, können Generalisierungen<br />

in UML-Klassendiagrammen sowohl zwischen Objektklassen als auch zwischen Beziehungsklassen<br />

modelliert werden. Abstrakte und konkrete Objekt- und Beziehungsklassen werden<br />

in UML-Klassendiagrammen unterschieden. Beziehungen werden hierbei aber auch generell<br />

als injektiv aufgefaßt [ORPUML 8].<br />

UML-Klassendiagramme erlauben zusätzlich Angaben über die Sichtbarkeit von Objekten auf<br />

Beziehungen, Attribute und Methoden. Im <strong>Metaschema</strong> der UML-Klassendiagramme erhalten<br />

hierzu die cRelates- diehasAttributes- und die hasOperation-Kanten das visibility-Attribut, das<br />

u. a. die Werte public, protected und private annehmen kann.<br />

ORPUML isA ORP ;<br />

for G in ORPUML assert<br />

[ORPUML 1]:<br />

overwrites [ORP-EER 1]:<br />

r : VRelationship ¯ 2 δ r ;<br />

cRelates<br />

[ORPUML 2]:<br />

overwrites [ORP-EER 2]:<br />

isConcrete cRelates ;<br />

[ORPUML 3]:<br />

r : V RelationshipClass δ cRelates r 0 ¯ δ cComesFrom r 0 δ cGoesTo r ;<br />

r : V RelationshipClass δ cComesFrom r 1 δ cGoesTo r 1 ¯ δ type<br />

[ORPUML 4]:<br />

a : V AggregationClass V DependencyClass ¯ δ type<br />

cRelates<br />

a 0;<br />

cRelates<br />

r 0;


6.6 Integriertes <strong>Referenz</strong>-<strong>Metaschema</strong> 225<br />

[ORPUML 5]:<br />

g : E cGoesTo type ω g CompositionClass ¯<br />

first glimits 1 second glimits 1;<br />

[ORPUML 6]:<br />

a : E isAssociated ¯ type ω a DependencyClass ;<br />

[ORPUML 7]:<br />

r : V cRelates type ω r DependencyClass ¯<br />

glimits grole ;<br />

[ORPUML 8]:<br />

r : VRelationsship ¯ rinjective<br />

end .<br />

Vergleichbare <strong>Metaschema</strong>ta <strong>für</strong> Klassendiagramme der Object Modeling Method [Rumbaugh<br />

et al., 1991] oder der Booch-Methode [Booch, 1994] werden u. a. in [Ebert / Süttenbach, 1997a,<br />

S. 6ff] und [Süttenbach / Ebert, 1997, S. 8ff] vorgestellt.<br />

6.6 Integriertes <strong>Referenz</strong>-<strong>Metaschema</strong><br />

Die in den Kapiteln 6.2.1 bis 6.5.3 entwickelten <strong>Referenz</strong>-<strong>Metaschema</strong>ta der zehn grundlegenden<br />

Beschreibungsparadigmen werden im folgenden zum integrierten <strong>Referenz</strong>-<strong>Metaschema</strong> der<br />

Beschreibungsmittel <strong>für</strong> Organisationen und Softwaresysteme zusammengefaßt.<br />

Hierzu werden zunächst in Kapitel 6.6.1 die <strong>Referenz</strong>-<strong>Metaschema</strong>ta der Beschreibungsparadigmen<br />

integriert und an das integrierte <strong>Referenz</strong>-<strong>Metaschema</strong> angepaßt. Zusätzliche GRAL -Zusicherungen,<br />

die die paradigmenübergreifende Konsistenz des integrierten <strong>Referenz</strong>-<strong>Metaschema</strong>s<br />

sicherstellen, werden in Kapitel 6.6.2 formuliert.<br />

6.6.1 Integration der <strong>Referenz</strong>-<strong>Metaschema</strong>ta<br />

Das integrierte <strong>Referenz</strong>-<strong>Metaschema</strong> der Beschreibungsmittel <strong>für</strong> Organisationen und Softwaresysteme<br />

faßt die wesentlichen Konzepte der zur Modellierung eingesetzten Beschreibungsmittel<br />

in einem gemeinsamen EER/GRAL-Konzeptmodell zusammen. Dieses Modell inkludiert<br />

hierzu die <strong>Metaschema</strong>ta des Aufgabengliederungspardigmas TDP (vgl. Kapitel 6.2.1), des Stellengliederungsparadigmas<br />

PDP (vgl. Kapitel 6.3.1), des Komm<strong>uni</strong>kationsparadigmas PDP (vgl.<br />

Kapitel 6.3.2), des Datenflußparadigmas DFD (vgl. Kapitel 6.4.1), des Zustandsübergangsparadigmas<br />

STP (vgl. Kapitel 6.4.2), des Netzparadigmas NP (vgl. Kapitel 6.4.3), des Kontrollflußparadigmas<br />

CP (vgl. Kapitel 6.4.4), des Objekt-Instanzparadigmas OIP (vgl. Kapitel 6.5.1), des<br />

Objekt-Interaktionsparadigmas IAP (vgl. Kapitel 6.5.2) und des Objekt-Beziehungsparadigmas<br />

ORP (vgl. Kapitel 6.5.3).


226 <strong>Referenz</strong>-<strong>Metaschema</strong><br />

for G in RMS include<br />

TDP; [Aufgabengliederungsparadigma]<br />

PDP; [Stellengliederungsparadigma]<br />

CommP; [Komm<strong>uni</strong>kationsparadigma]<br />

DFP; [Datenflußparadigma]<br />

STP; [Zustandsübergangsparadigma]<br />

NP; [Netzparadigma]<br />

CP; [Kontrollflußparadigma]<br />

OIP; [Objekt-Instanzparadigma]<br />

IAP; [Objekt-Interaktionsparadigma]<br />

ORP<br />

end .<br />

[Objekt-Beziehungsparadigma]<br />

Die Integration der einzelnen <strong>Metaschema</strong>ta erfolgt entlang der Konzepte, die in mehreren Paradigmen<br />

dargestellt werden. Einen Überblick über diese gemeinsamen Konzepte und die Beschreibungsparadigmen,<br />

in den sie dargestellt werden, gibt Abbildung 6.29.<br />

In den <strong>Referenz</strong>-<strong>Metaschema</strong>ta der einzelnen Beschreibungsmittel wurden bereits die Schnittstellen<br />

zu den angrenzenden Paradigmen berücksichtigt. Durch Zusammenfassen der Eigenschaften<br />

dieser gemeinsamen Konzepte, die durch ihre Attributstrukturen und ihre inzidenten<br />

Beziehungstypen charakterisiert sind, werden die Teilschemata integriert. Das resultierende<br />

<strong>Referenz</strong>-<strong>Metaschema</strong> der Beschreibungsmittel <strong>für</strong> Organisationen und Softwaresysteme (RMS)<br />

ist in seinem EER-Teil in Abbildung 6.30 dargestellt.<br />

Konzept<br />

ParadigmaAufgabengliederungsparadigmaStellengliederungsparadigma<br />

Komm<strong>uni</strong>kationsparadigmaDatenflußparadigmaZustandübergangsparadigmaNetzparadigma<br />

Kontrollflußparadigma<br />

Objekt-<br />

Instanzparadigma<br />

Objekt-<br />

Interaktionsparadigma<br />

Objekt-<br />

Beziehungsparadigma<br />

Task<br />

Organizational<br />

Unit<br />

Process<br />

Event<br />

Domain<br />

Object<br />

Object<br />

Class<br />

Abbildung 6.29: Gemeinsame Konzepte der Paradigmen<br />

Relationship<br />

Class<br />

Attribute<br />

Paradigma<br />

enthält Konzept


6.6 Integriertes <strong>Referenz</strong>-<strong>Metaschema</strong> 227<br />

MeansOfComm<strong>uni</strong>cation<br />

Document<br />

personal Phone<br />

Delivery:bool<br />

iteration : string<br />

duration : int<br />

Message msgCorrespondsTo<br />

msgComesFrom<br />

Comm<strong>uni</strong>cation<br />

frequency:float<br />

duration:float<br />

FlatFlow<br />

OfControl<br />

Attribute<br />

Value<br />

Pair<br />

isValue<br />

valIsInstanceOf<br />

Call<br />

Create<br />

Call<br />

Value<br />

transmits<br />

msgGoesTo<br />

AsynchronousFlow<br />

OfControl<br />

Return<br />

Destroy<br />

Call<br />

isInputParameter<br />

Fax EMail<br />

identifies isReturnParameter<br />

comm<strong>uni</strong>cates<br />

name:string<br />

Attribute<br />

has<br />

Domain<br />

name:string<br />

Domain<br />

comesFrom<strong>Se</strong>nder<br />

(comm<strong>uni</strong>cates)<br />

goesToReceiver<br />

(comm<strong>uni</strong>cates)<br />

isMsgIn<br />

callsMethod<br />

isGuard<br />

hasAttribute<br />

ValuePair<br />

name:string<br />

>1<br />

hasAttribute<br />

Comm<strong>uni</strong>cationPartner<br />

isMemberOf informs<br />

Interaction<br />

Scenario<br />

name : string<br />

Method<br />

name : string<br />

Predicate<br />

name : string<br />

OrganizationalUnit<br />

Instance<br />

Item<br />

name : string<br />

abstract : bool<br />

objIsInstanceOf<br />

(isInstanceOf)<br />

ClassItem<br />

Object<br />

Class<br />

=2<br />

External<br />

Partner<br />

LEPosition<br />

assists Leading Executing<br />

Position Position<br />

Position<br />

Object<br />

objClsIsA<br />

(isA)<br />

Group<br />

Assisting<br />

Position<br />

=2<br />

iRelates<br />

iGoesTo iComesFrom<br />

(iRelates)<br />

(iRelates)<br />

limits : int int<br />

Department<br />

isInstanceOf<br />

cGoesTo<br />

(cRelates)<br />

cRelates<br />

cComes<br />

From<br />

isA (cRelates)<br />

leads<br />

isHeadOf<br />

(isPartOf)<br />

delegates<br />

injective:bool<br />

order : int<br />

Relationship<br />

relIsInstanceOf<br />

(isInstanceOf)<br />

RelationshipClass<br />

AggregationClass<br />

dir: bool<br />

relClsIsA<br />

(isA)<br />

IsPartOf instructs substitutes<br />

rank : string<br />

competence: string<br />

qualification : string<br />

capacity : int<br />

Mechanism<br />

Technical<br />

Means<br />

describes<br />

describes<br />

executesTask<br />

isObject<br />

Component<br />

executesProcess<br />

name:string<br />

executionRole : string<br />

TaskDecomposition<br />

isDecomposedIn<br />

Process<br />

Atomic<br />

Process <strong>Se</strong>quence Parallel<br />

name:string<br />

DfItem<br />

DfObject<br />

criterion:<br />

{process, object}<br />

connection:<br />

{and,or}<br />

isProcess<br />

Component<br />

Iteration Alternative<br />

dfRefines<br />

isSubtask<br />

Task<br />

name : string<br />

location : string<br />

duration : float<br />

time : date<br />

resources:string<br />

dfGoesTo<br />

Store<br />

isSubprocess<br />

controls<br />

Dataflow<br />

isSubprocess<br />

isSubprocess<br />

Terminator<br />

isAlternative isSubprocess<br />

dfComesFrom<br />

isExecutionTask (isSubtask)<br />

isLeadingTask (isSubtask)<br />

isPlanningTask (isSubtask)<br />

isControllingTask (isSubtask)<br />

isAdministrativeTask(isSubtask)<br />

Abbildung 6.30: Integriertes <strong>Referenz</strong>-<strong>Metaschema</strong> der Beschreibungsmittel <strong>für</strong> Organisationen<br />

und Softwaresysteme (RMS)<br />

dfCorrespondsTo<br />

PointOf<br />

Contact<br />

Transition<br />

Case<br />

Predicate<br />

name:string<br />

controls<br />

cfRefines<br />

isComponentIn<br />

transComesFrom transGoesTo<br />

isGuard<br />

triggers<br />

effects<br />

NetItem<br />

name:string<br />

Blob<br />

AtomicBlob<br />

NetObject<br />

name:string<br />

Dataflow<br />

Scenario<br />

End<br />

Blob<br />

isEntryAction<br />

isBlobAction<br />

isExitAction<br />

Event<br />

contains<br />

Xor<br />

Blob<br />

history:bool<br />

>1<br />

cfComesFrom cfGoesTo<br />

starts<br />

With<br />

contains<br />

Flow<br />

OperatorFlow<br />

Merge Branch<br />

And<br />

Blob<br />

Elementary<br />

Flow<br />

Fork<br />

Xor<br />

Branch<br />

Xor<br />

Merge<br />

Join<br />

Or<br />

Branch<br />

Or<br />

Merge


228 <strong>Referenz</strong>-<strong>Metaschema</strong><br />

Das <strong>Referenz</strong>-<strong>Metaschema</strong> der Beschreibungsmittel der Aufgabensicht (Aufgabengliederungsparadigma)<br />

findet sich rechts in der Mitte. Rechts oben sind die <strong>Referenz</strong>-<strong>Metaschema</strong>ta der<br />

Aufbausicht (Stellengliederungsparadigma und Komm<strong>uni</strong>katationsparadigma) dargestellt. Die<br />

<strong>Referenz</strong>-<strong>Metaschema</strong>ta der Prozeßsicht (Datenflußparadigma, Zustandsübergangsparadigma,<br />

Netzparadigma und Kontrollflußparadigma) sind im unteren Teil von Abbildung 6.30 aufgeführt.<br />

Im linken, oberen Teil sind die Teil-<strong>Metaschema</strong>ta der Objektsicht (Objekt-Instanzparadigma,<br />

Objekt-Interaktionsparadigma und Objekt-Beziehungsparadigma) dargestellt.<br />

Die Integration zum <strong>Referenz</strong>-<strong>Metaschema</strong> der Beschreibungsmittel <strong>für</strong> Organisationen und<br />

Softwaresysteme erfordert kleinere Anpassungen bei der Zusammenfassung der gemeinsamen<br />

Konzepte der <strong>Referenz</strong>-<strong>Metaschema</strong>ta der einzelnen Beschreibungsparadigmen. Diese werden<br />

im folgenden entlang der zentralen Konzepte der Modellierungssichten kurz skizziert.<br />

Aufgabensicht:<br />

Die Einbettung des <strong>Referenz</strong>-<strong>Metaschema</strong>s des Aufgabengliederungsparadigmas aus der<br />

Aufgabensicht in das integrierte <strong>Referenz</strong>-<strong>Metaschema</strong> erfolgt unverändert.<br />

Über das zentrale Konzept der Aufgaben (Task) werden die Beziehungen zu den restlichen<br />

Sichten hergestellt. Die zentralen Konzepte der Prozeßsicht (Process) und der Objektsicht<br />

(Object) werden in der Aufgabensicht als essenzielle Komponenten der Aufgaben abgebildet.<br />

Organisationseinheiten (OrganizationalUnit) der Aufbausicht werden den Aufgaben<br />

als Aufgabenträger zugeordnet.<br />

Aufbausicht:<br />

Entlang der organisatorischen Einheiten (OrganizationalUnit) erfolgt auch die Integration<br />

der <strong>Referenz</strong>-<strong>Metaschema</strong>ta der Aufbausicht. Die Konzepte der OrganizationalUnit des<br />

Stellengliederungsparadigmas und des Komm<strong>uni</strong>kationsparadigmas beschreiben denselben<br />

Sachverhalt, so daß diese miteinander verschmolzen werden können.<br />

Der Querbezug zu dem <strong>Referenz</strong>metaschema der Aufgabensicht erfolgt über den Beziehungstyp<br />

executesTask, durch Organisationseinheiten mit den von ihnen auszuführenden<br />

Aufgaben verbinden. Organisationseinheiten spezialisieren darüber hinaus auch das<br />

Objekt-Konzept (Object) der Objektsicht (vgl. das <strong>Referenz</strong>-<strong>Metaschema</strong> des Netzparadigmas<br />

in Kapitel 6.4.3), das wiederum das Mechanismus-Konzept (Mechanism)derProzeßsicht<br />

(vgl. das <strong>Referenz</strong>-<strong>Metaschema</strong> des Datenflußparadigmas in Kapitel 6.4.1) spezialisiert.<br />

Hierdurch können organisatorische Einheiten einerseits als Objekte betrachtet<br />

werden und andererseits über das Mechanismus-Konzept den zu bearbeitenden Prozessen<br />

zugeordnet werden.<br />

Prozeßsicht:<br />

Das zentrale Konzept der Prozeßsicht ist der Prozeß (Process), das in den <strong>Metaschema</strong>ta<br />

des Datenflußparadigmas, desZustandsübergangsparadigmas, desNetzparadigmas und<br />

des Kontrollflußparadigmas (vgl. Kapitel 6.4.4) abgebildet wird. Neben der Prozeßspezialisierung<br />

durch regulär strukturierte Prozesse des Kontrollflußparadigmas sind <strong>für</strong> die anderen<br />

Paradigmen der Prozeßsicht solche Prozesse abzubilden, die nicht notwendig regulär<br />

strukturiert sind. Gegenüber dem Prozeßkonzept des Kontrollflußparadigmas ist das Prozeßkonzept<br />

des integrierten <strong>Referenz</strong>-<strong>Metaschema</strong>s daher konkret. Zur Abbildung der Be-


6.6 Integriertes <strong>Referenz</strong>-<strong>Metaschema</strong> 229<br />

schreibungsmittel des Zustandsübergangsparadigmas, des Netzparadigmas und des Kontrollflußparadigmas<br />

spezialisieren diese Prozesse auch die Konzepte der Datenflußobjekte<br />

(DfObject) und der Netzobjekte (NetObject).<br />

Im <strong>Referenz</strong>-<strong>Metaschema</strong> des Datenflußparadigmas werden die Daten, die in Speichern<br />

(Store) gehalten bzw. durch Datenflüsse (Dataflow) ausgetauscht werden, durch regulär<br />

strukturierte Datenstrukturen (ClassItem) modelliert. Da die Beschreibungsmittel des<br />

Objekt-Beziehungsparadigmas durch Generalisierung und Aggregation ebenfalls regulär<br />

strukturierte Daten darstellen können (vgl. Kapitel 6.5.3), werden die Daten des Datenflußparadigmas<br />

durch das ClassItem-Konzept des Objekt-Beziehungsparadigmas beschrieben.<br />

Objektsicht:<br />

Die Integration der <strong>Referenz</strong>-<strong>Metaschema</strong>ta der Objektsicht erfolgt entlang des hier zentralen<br />

Konzepts der Objekte (Object). Neben der Darstellung der Objekte und Beziehungen<br />

auf Instanzebene durch die Beschreibungsmittel des Objekt-Instanzparadigmas und des<br />

Objekt-Interaktionsparadigmas werden Objekt- und Beziehungsinstanzen durch die Beschreibungsmittel<br />

des Objekt-Beziehungsparadigmas zu Objektklassen (ObjectClass) und<br />

zu Beziehungsklassen (RelationshipClass) zusammengefaßt.<br />

Die Integration der einzelnen <strong>Referenz</strong>-<strong>Metaschema</strong>ta der Beschreibungsparadigmen erfordert<br />

auch kleinere Anpassungen der GRAL-Zusicherungen. Datenbezüge des Datenflußparadigmas<br />

werden im integrierten <strong>Referenz</strong>-<strong>Metaschema</strong> durch Rückgriff auf das <strong>Referenz</strong>-<strong>Metaschema</strong> des<br />

Objekt-Beziehungsparadigmas beschrieben. Die Zusicherungen an das <strong>Referenz</strong>-<strong>Metaschema</strong><br />

des Datenflußparadigmas (vgl. Kapitel 6.4.1) [DFP 10] und [DFP 11] sind daher an die Strukturierung<br />

des Konzepts ClassItem des Objekt-Beziehungsparadigmas anzupassen. Ebenso werden<br />

die Konzepte AtomicClass, AlternativeClass, IteratedClass und <strong>Se</strong>quentialClass des <strong>Metaschema</strong>s<br />

des Datenflußparadigmas zur Beschreibung regulär strukturierter Datenzusammenhänge<br />

nicht verwendet [RMS-DFP 12].<br />

for G in RMS assert<br />

[RMS-DFP 10]:<br />

overwrites [DFP 10] :<br />

poc : VPointOfContact ¯<br />

poc dfCorrespondsTo describes<br />

isA cGoesTo &AggregationClass cComesFrom £<br />

describes dfGoesTo dfComesFrom<br />

poc ;<br />

[RMS-DFP 11]:<br />

overwrites [DFP 11] :<br />

d : V Dataflow ¯<br />

d dfGoesTo dfComesFrom &Store describes<br />

isA cGoesTo &AggregationClass cComesFrom £<br />

describes<br />

[RMS-DFP 12]:<br />

V AtomicClass V AlternativeClass V IteratedClass V <strong>Se</strong>quentialClass <br />

end .<br />

d ;


230 <strong>Referenz</strong>-<strong>Metaschema</strong><br />

Im <strong>Referenz</strong>-<strong>Metaschema</strong> des Kontrollflußparadigmas ist das Process-Konzept als abstrakt vereinbart.<br />

Aufgrund der Zusammenfassung der Process-Konzepte des Datenflußparadigmas, des<br />

Zustandsübergangsparadigmas und des Netzparadigmas ist diese Anforderung im integrierten<br />

<strong>Referenz</strong>-<strong>Metaschema</strong> aufzugeben [RMS-CP 2].<br />

for G in RMS assert<br />

[RMS-CP 2]:<br />

overwrites [CP-EER 2] :<br />

isConcrete Process<br />

end .<br />

Die Zusicherungen des Aufgabengliederungsparadigmas, des Stellengliederungsparadigmas, des<br />

Komm<strong>uni</strong>kationsparadigmas, des Zustandsübergangsparadigmas, des Netzparadigmas, des Objekt-Instanzparadigmas,<br />

des Objekt-Interaktionsparadigmas und des Objekt-Beziehungsparadigmas<br />

werden hierbei unverändert übernommen. In Anhang A sind diese Zusicherungen <strong>für</strong> die<br />

einzelnen Paradigmen noch einmal zusammenfassend dargestellt.<br />

6.6.2 Paradigmenübergeifende GRAL-Zusicherungen<br />

In multiperspektivischen Modellierungen werden Organisationen bzw. Softwaresysteme durch<br />

mehrere Teilmodelle dargestellt. Diese Teilmodelle, die in unterschiedlichen Beschreibungssprachen<br />

notiert werden, müssen zueinander konsistent sein.<br />

Die Formalisierung dieser paradigmenübergreifenden Konzistenzbedingungen erfolgt durch weitere<br />

GRAL-Zusicherungen. Hierbei werden zunächst die Konsistenzbedingungen zwischen den<br />

verschiedenen Paradigmen einzelner Sichten betrachtet. Anschließend werden die sichtenübergreifenden<br />

Zusicherungen formuliert.<br />

Die Konsistenz der Darstellungsmittel der Aufgabensicht ist bereits durch das <strong>Referenz</strong>-<br />

<strong>Metaschema</strong> des Aufgabengliederungsparadigmas definiert. Im <strong>Metaschema</strong> des Stellengliederungsparadigmas<br />

und im <strong>Metaschema</strong> des Komm<strong>uni</strong>kationsparadigmas ist das Konzept der Organisationseinheiten<br />

vollständig enthalten, so daß keine weiteren Zusicherungen zur paradigmenübergreifenden<br />

Konsistenzsicherung der Beschreibungsmittel der Aufbausicht nötig werden.<br />

Der Zusammenhang zwischen den Beschreibungen der Aufgaben- und Aufbausicht bzw.<br />

zwischen der Aufgaben- und der Objektsicht wird durch die Darstellungsmittel des Aufgabengliederungsparadigmas<br />

hergestellt. Das <strong>Metaschema</strong> des Aufgabengliederungsparadigmas umfaßt<br />

daher auch die hier nötigen Zusicherungen. In ähnlicher Form ist auch die Konsistenz der<br />

Darstellungen der Prozeß- und Objektsicht in den <strong>Metaschema</strong>ta des Datenflußparadigmas und<br />

des Netzparadigmas formalisiert.<br />

Die noch nötigen paradigmen- und sichtenübergreifenden Zusicherungen beziehen sich folglich<br />

auf die Betrachtung der verschiedenen Paradigmen der Prozeß- und Objektsicht und auf die<br />

Querbezüge zwischen Aufgaben- und Prozeßsicht, Aufbau- und Prozeßsicht und Aufbau- und<br />

Objektsicht.


6.6 Integriertes <strong>Referenz</strong>-<strong>Metaschema</strong> 231<br />

Paradigmenübergeifende Zusicherungen der Prozeßsicht<br />

Prozeßzerlegungen werden sowohl mit den Beschreibungsmitteln des Datenflußparadigmas, des<br />

Netzparadigmas und des Kontrollflußparadigmas beschrieben. Wird die Zerlegung desselben<br />

Prozesses entlang unterschiedlicher Beschreibungsparadigmen dargestellt, müssen diese Zerlegungen<br />

miteinander verträglich sein. Jede dieser Prozeßzerlegungen untergliedert den betrachteten<br />

Prozeß in dieselben Teilprozesse [RMS-Process 1].<br />

for G in RMS assert<br />

[RMS-Process 1]:<br />

p : VProcess ¯<br />

[Datenfluß- und Netzparadigma]<br />

δ p 0 δ p<br />

dfRefines cfRefines<br />

end .<br />

p dfRefines &Process p cfRefines &Process <br />

[Datenfluß- und Kontrollflußparadigma]<br />

δ dfRefines p 0 type p <strong>Se</strong>quence Parallel Iteration Alternative<br />

p dfRefines &Process p isAlternative ℄ isSubprocess <br />

[Netz- und Kontrollflußparadigma]<br />

δ cfRefines p 0 type p <strong>Se</strong>quence Parallel Iteration Alternative<br />

p cfRefines &Process p isAlternative ℄ isSubprocess<br />

Im Zusammenspiel mit Zusicherung [DFP 2] des Datenflußparadigmas impliziert [RMS-<br />

Process 1], daß Prozesse in Darstellungen des Netzparadigmas oder in Darstellungen des Kontrollflußparadigmas,<br />

die auch in einer Datenflußbeschreibung verfeinert wurden, zwischen drei<br />

und sechs Teilprozesse besitzen.<br />

Paradigmenübergeifende Zusicherungen der Objektsicht<br />

Die paradigmenübergreifenden Zusicherungen an die Darstellungsmittel der Objektsicht beziehen<br />

sich auf die Konsistenzsicherung zwischen Darstellungen schematischer Objektzusammenhänge<br />

des Objekt-Beziehungsparadigmas und den Darstellungen auf Instanzebene durch die Beschreibungsmittel<br />

des Objekt-Instanzparadigmas (vgl. hierzu auch die Definition der Relation<br />

EERSchema in Kapitel 5.2.2).<br />

In Instanzdarstellungen müssen die Typen der zu einem Knoten inzidenten Kanten mit den<br />

Inzidenz-Definitionen auf Scheme-Ebene übereinstimmen [RMS-Object 1]. Die Inzidenzen<br />

in Instanzbeschreibungen müssen ebenfalls den Kardinalitäten der Schemadefinition genügen<br />

[RMS-Object 2]. In beiden Zusicherungen sind auch die in der Schemadefinition festgelegten<br />

Kantenrichtungen zu berücksichtigen.<br />

Die Attributstruktur von Objekten (Object) und Beziehungen (Relationship) wird durch die Definition<br />

der Objekt- (ObjectClass) und Beziehungsklassen (RelationshipClass) definiert. Objekte<br />

und Beziehungen können nur solche Attribute besitzen, die <strong>für</strong> ihren Typ bzw. deren Supertypen<br />

erlaubt sind [RMS-Object 3].


232 <strong>Referenz</strong>-<strong>Metaschema</strong><br />

Schließlich müssen die Instanzdarstellungen den in Schemadefinitionen festgelegten Forderungen<br />

nach abstrakten Objekt- und Beziehungsklassen [RMS-Object 4] und nach injektiven Beziehungsklassen<br />

[RMS-Object 5] genügen.<br />

for G in RMS assert<br />

[RMS-Object 1]:<br />

v : VObject ; e : VRelationship v iComesFrom e ¯<br />

v objIsInstanceOf<br />

£<br />

objClsIsA cComesFrom<br />

v : V Object ; e : V Relationship v iGoesTo<br />

v objIsInstanceOf<br />

£<br />

objClsIsA cGoesTo<br />

£<br />

relClsIsA relIsInstanceOf<br />

e ¯<br />

£<br />

relClsIsA relIsInstanceOf<br />

[RMS-Object 2]:<br />

v : VObject ; e : EcComesFrom v objIsInstanceOf<br />

£<br />

objClsIsA ω e ¯<br />

first elimits # r : EiComesFrom ω r v <br />

α r relIsInstanceOf<br />

second elimits ;<br />

v : VObject ; e : EcGoesTo v objIsInstanceOf<br />

£<br />

objClsIsA ω e ¯<br />

first elimits # r : EiGoesTo ω r v <br />

α r relIsInstanceOf<br />

second elimits ;<br />

[RMS-Object 3]:<br />

i : VInstanceItem ; c : VClassItem i IsInstanceOf c ¯<br />

i hasAttributeValuePair identifies c<br />

£<br />

IsA hasAttribute ;<br />

[RMS-Object 4]:<br />

c : V ClassItem cabstract ¯ c IsInstanceOf<br />

;<br />

e ;<br />

e ;<br />

£<br />

relClsIsA<br />

£<br />

relClsIsA<br />

α e <br />

α e <br />

[RMS-Object 5]:<br />

rc : V RelationshipClass ; r 1 r 2 : V Relationship <br />

rcinjective r 1 relIsInstanceOf rc relIsInstanceOf r 2 r 1 r 2 ¯<br />

r 1 iGoesTo r 2 iGoesTo r 1 iComesFrom r 2 iComesFrom<br />

end .<br />

Paradigmenübergeifende Zusicherungen der Aufgaben- und Prozeßsicht<br />

Zwischen Prozeßdarstellungen und Aufgabengliederungen sind die Aufgaben- bzw. Prozeßgliederungen,<br />

die in Aufgaben bzw. in Prozessen betrachteten Objekte und die mit der Ausführung<br />

betrauten Prozeß- bzw. Aufgabenträger zu synchronisieren.<br />

Die Zerlegung von Aufgaben in Teilaufgaben muß sich hierbei in der Zerlegung der Prozeßkomponenten<br />

der Aufgabe, die mit den Beschreibungsmitteln des Datenflußparadigmas,<br />

des Netzparadigmas oder des Kontrollflußparadigmas modelliert wurden, widerspiegeln [RMS-<br />

TaskProcess 1].<br />

Bezüge zwischen Objekten und Aufgaben bzw. zwischen Objekten und Prozessen werden im<br />

Aufgabengliederungsparadigma und im Datenflußparadigma beschrieben. In den durch Daten-


6.6 Integriertes <strong>Referenz</strong>-<strong>Metaschema</strong> 233<br />

flußbeschreibungen modellierten Prozeßkomponenten einer Aufgabe wird hierbei die Objektkomponente<br />

bearbeitet. Je nach Festlegung der Objektkomponente, ausgehend von den in der<br />

Aufgabe bearbeiteten Objekten oder ausgehend von den produzierten Objekten, findet sich die<br />

Objekt-Komponente in den eingehenden oder ausgehenden Datenflüssen zur jeweiligen Prozeßkomponente<br />

[RMS-TaskProcess 2].<br />

Organisationseinheiten, die Aufgaben bzw. Prozesse ausführen, werden durch die Beschreibungsmittel<br />

der Aufgabensicht Aufgaben und durch die Beschreibungsmittel der Prozeßsicht<br />

Prozessen zugeordnet. Diese Organisationseinheiten müssen <strong>für</strong> Aufgaben und ihre Prozeßkomponenten<br />

übereinstimmen [RMS-TaskProcess 3].<br />

for G in RMS assert<br />

[RMS-TaskProcess 1]:<br />

p : VProcess ; t : VTask p<br />

[Datenflußparadigma]<br />

isProcessComponent t ¯<br />

δ p<br />

dfRefines<br />

0 δ t<br />

isDecomposedIn<br />

0<br />

p dfRefines &Process t isDecomposedIn isSubtask isProcessComponent <br />

[Netzparadigma]<br />

δ cfRefines p 0 δ isDecomposedIn t 0<br />

p cfRefines &Process t isDecomposedIn isSubtask isProcessComponent <br />

[Kontrollflußparadigma]<br />

type p <strong>Se</strong>quence Parallel Iteration Alternative δ isDecomposedIn t 0<br />

p isAlternative ℄ isSubprocess <br />

t isDecomposedIn isSubtask isProcessComponent ;<br />

[RMS-TaskProcess 2]:<br />

p : VProcess ; t : VTask p isProcessComponent t <br />

p dfComesFrom dfGoesTo describes ¯<br />

t isObjectComponent p dfComesFrom dfGoesTo describes ;<br />

[RMS-TaskProcess 3]:<br />

p : VProcess ; t : VTask p isProcessComponent t ¯<br />

end .<br />

t executesTask p executesProcess &OrganizationalUnit<br />

Paradigmenübergeifende Zusicherungen der Aufbau- und Prozeßsicht<br />

Modellierungen nach dem Datenflußparadigma beschreiben indirekt auch Komm<strong>uni</strong>kationsbeziehungen<br />

zwischen Organisationseinheiten. Besteht eine Datenflußbeziehung zwischen zwei<br />

Prozessen, die durch verschiedene Organisationseinheiten ausgeführt werden, impliziert dieses<br />

auch eine Komm<strong>uni</strong>kationsbeziehung zwischen den beteiligten Organisationseinheiten. Dieser<br />

Querbezug wird in [RMS-PositionProcess 1] zugesichert.


234 <strong>Referenz</strong>-<strong>Metaschema</strong><br />

for G in RMS assert<br />

[RMS-PositionProcess 1]:<br />

p1 p2 : VProcess ; s1 s2 : VOrganizationalUnit s1 s2 <br />

s1 executesProcess p1 s2 executesProcess p2 ¯<br />

p1 dfComesFrom dfGoesTo p2 s1 comm<strong>uni</strong>cates comm<strong>uni</strong>cates s2 end .<br />

Paradigmenübergeifende Zusicherungen der Aufbau- und Objektsicht<br />

Mit den Beschreibungsmitteln des Objekt-Interaktionsparadigmas wird die Interaktion zwischen<br />

Objekten modelliert. Beschreiben solche, über Nachrichten interagierende, Objekte organisatorische<br />

Einheiten, liegt zwischen diesen ebenfalls eine Komm<strong>uni</strong>kationsbeziehung vor [RMS-<br />

PositionObject 1].<br />

for G in RMS assert<br />

[RMS-PositionObject 1]:<br />

s1 s2 : VOrganizationalUnit ¯<br />

s1 msgComesFrom msgGoesTo s2 s1 comm<strong>uni</strong>cates comm<strong>uni</strong>cates s2 end .<br />

6.7 Zusammenfassung<br />

Entlang der Klassifikation der Beschreibungsmittel <strong>für</strong> Organisationen und Softwaresysteme aus<br />

Kapitel 3.1 wurden <strong>für</strong> die grundlegenden Beschreibungsparadigen EER/GRAL-Konzeptmodelle<br />

entwickelt. Diese Konzeptmodelle beschreiben <strong>Referenz</strong>-<strong>Metaschema</strong>ta der einzelnen Beschreibungsparadigmen.<br />

Aus diesen <strong>Referenz</strong>-<strong>Metaschema</strong>ta wurden <strong>Metaschema</strong>ta der wesentlichen Notationsformen<br />

der jeweils betrachteten Paradigmen durch marginale Einschränkungen und Ergänzungen abgeleitet.<br />

Hierdurch konnte die <strong>Referenz</strong>-Eigenschaft dieser paradigmenbezogenen <strong>Referenz</strong>-<br />

<strong>Metaschema</strong>ta nachgewiesen werden.<br />

Die paradigmenbezogenen <strong>Referenz</strong>-<strong>Metaschema</strong>ta wurden entlang der gemeinsamen Konzepte<br />

der einzelnen Pardigmen zum integrierten <strong>Referenz</strong>-<strong>Metaschema</strong> der Beschreibungsmittel <strong>für</strong><br />

Organisationen und Softwaresysteme zusammengefaßt. Einen Überblick über die vollständige<br />

Formalisierung des <strong>Referenz</strong>-<strong>Metaschema</strong>s gibt Anhang A.<br />

In Teil III wird dieses integrierte <strong>Referenz</strong>-<strong>Metaschema</strong> zur Betrachtung der Beschreibungsmittel<br />

konkreter Modellierungsmethoden und zur Entwicklung eines Softwarewerkzeugs zur Modellierungsunterstützung<br />

angewandt.


Teil III<br />

Anwendung des <strong>Referenz</strong>-<strong>Metaschema</strong>s<br />

Das in Kapitel 6 vorgestellte <strong>Referenz</strong>-<strong>Metaschema</strong> zielt auf eine möglichst umfassende konzeptionelle<br />

Abbildung aller wesentlichen <strong>visuelle</strong>n <strong>Modellierungssprachen</strong> <strong>für</strong> Organisationen<br />

und Softwaresysteme. Im Vergleich zu <strong>Metaschema</strong>ta wesentlicher Ansätze zur Organisationsund<br />

Softwaremodellierung bezieht sich dieses <strong>Referenz</strong>-<strong>Metaschema</strong> nicht auf wenige konkrete<br />

Sprachen, sondern es berücksichtigt auch die konzeptionellen Unterschiede verschiedener Dialekte<br />

einzelner Modellierungstechniken.<br />

Die <strong>Metaschema</strong>ta der Beschreibungsmittel der Architektur integrierter Informationssysteme<br />

(ARIS) [Scheer, 1992] oder der Unified Modeling Language (UML) [OMG, 1999] können als<br />

mögliche Spezialisierungen des hier eingeführten integrierten <strong>Referenz</strong>-<strong>Metaschema</strong>s aufgefaßt<br />

werden. <strong>Metaschema</strong>ta zu ARIS (vgl. Kapitel 7) und UML (vgl. Kapitel 8) werden im folgenden<br />

fallstudienartig vom <strong>Referenz</strong>-<strong>Metaschema</strong> der <strong>visuelle</strong>n <strong>Modellierungssprachen</strong> abgeleitet.<br />

Aufgrund des durchgängigen EER/GRAL-Ansatzes zur graphbasierten Modellierung und Implementierung<br />

beschreibt das in Kapitel 6 eingeführte <strong>Referenz</strong>-<strong>Metaschema</strong>ta auch Repository-<br />

Strukturen <strong>für</strong> Modellierungswerkzeuge. Repository-Strukturen <strong>für</strong> Werkzeuge zur Unterstützung<br />

konkreter Modellierungsmethoden können daher auch durch Spezialisierungen des integrierten<br />

<strong>Referenz</strong>-<strong>Metaschema</strong>s definiert werden. In Kapitel 9 wird die Anwendung des<br />

<strong>Referenz</strong>-<strong>Metaschema</strong>s bei der Entwicklung von Modellierungswerkzeugen am Beispiel eines<br />

Werkzeugs zur Software-Evaluation skizziert.


7 Architektur integrierter<br />

Informationssysteme<br />

Die Architektur integrierter Informationssysteme (ARIS) [Scheer, 1992], [Scheer, 1994, Teil A],<br />

[IDS, 1995] stellt ein Rahmenwerk zur Modellierung und Entwicklung betrieblicher Informationssysteme<br />

bereit. Die Organisationsmodellierung erfolgt in ARIS entlang der Geschäftsprozesse<br />

der betrachteten Organisation. Ausgehend von diesen Prozessen wird die Organisation aus<br />

Datensicht, zur Beschreibung der benötigten und erzeugten Daten, aus Funktionssicht, zur Beschreibung<br />

der auszuführenden Funktionen und aus Organisationssicht, zur Beschreibung der<br />

Aufbauorganisation, betrachtet. Teilmodelle dieser drei Sichten werden in der Steuerungssicht<br />

miteinander integriert. Die Darstellungsmittel der Steuerungssicht stellen hierbei die Modellierungsinhalte<br />

der Datensicht, der Funktionssicht und der Organisationssicht zueinander in Beziehung<br />

(vgl. auch die Einordnung des ARIS-Ansatzes als Metamodell in Kapitel 4.3.1, S. 121).<br />

Die Organisationsmodellierung zur Entwicklung von Informationssystemen erfolgt mit ARIS<br />

auf der Ebene des Fachkonzepts, des DV-Konzepts und des Implementationskonzepts. Diese<br />

Konzepte werden jeweils aus Datensicht, aus Funktionssicht, aus Organisationssicht und aus<br />

Steuerungssicht beschrieben. Der Schwerpunkt der Organisationsmodellierung mit dem ARIS-<br />

Ansatz liegt jedoch auf der Erstellung des Fachkonzepts (vgl. auch [Scheer, 1994, S. 16]).<br />

Das zentrale Beschreibungsmittel des ARIS-Ansatzes sind Ereignisgesteuerte Prozeßketten zur<br />

Modellierung der Geschäftsprozesse der betrachteten Organisation aus Funktionssicht. Ergänzt<br />

wird die Darstellung um Funktionsbäume zur Beschreibung von Aufgabengliederungen und um<br />

Nassi-Shneiderman-Diagramme zur Modellierung von Prozeßausführungen. Die Beschreibung<br />

der Fachkonzepte aus Datensicht erfolgt durch Objekt-Beziehungsdiagramme. Aufbauorganisatorische<br />

Aspekte der Organisationssicht werden durch einfache Organigramme dargestellt. Zur<br />

Integration dieser Teilmodelle in der Steuerungssicht finden erweiterte Ereignisgesteuerte Prozeßketten<br />

und Vorgangsketten-Diagramme Anwendung.<br />

[Scheer, 1992] und [Scheer, 1994, Teil A] diskutieren weitere <strong>visuelle</strong> <strong>Modellierungssprachen</strong><br />

der einzelnen Sichten, wie Stellenbeschreibungen, Netzpläne, Datenflußdiagramme und Entscheidungstabellen,<br />

die neben weiteren Beschreibungsmitteln auch durch das ARIS-Toolset unterstützt<br />

werden. In Anwendungen des ARIS-Ansatzes zur Darstellung von Fachkonzepten <strong>für</strong><br />

industrielle Geschäftsprozesse (vgl. z. B. [Scheer, 1994]) zur Darstellung von Krankenhausinformationssystemen<br />

(vgl. z. B. [Imhoff et al., 1996]) oder zur Darstellung der Fachkonzepte<br />

betriebswirtschaftlicher Standardsoftware (vgl. z. B. [Staud, 1999]) werden i. allg. ausschließlich<br />

(erweiterte) Ereignisgesteuerte Prozeßketten, Vorgangskettendiagramme, Funktionsbäume,<br />

Objekt-Beziehungsdiagramme und Organigramme verwendet. Die Konzepte dieser Beschrei-


238 Architektur integrierter Informationssysteme<br />

bungsmittel werden im <strong>Metaschema</strong> des ARIS-Ansatzes abgebildet, das im folgenden aus dem<br />

<strong>Referenz</strong>-<strong>Metaschema</strong> der Beschreibungsmittel <strong>für</strong> Organisationen und Softwaresysteme abgeleitet<br />

wird.<br />

7.1 Integration der <strong>Metaschema</strong>ta der ARIS-<br />

Beschreibungsmittel<br />

Zur Modellierung nach dem ARIS-Ansatz werden Sprachen des Aufgabengliederungsparadigmas,<br />

des Stellengliederungsparadigmas, des Netzparadigmas, des Kontrollflußparadigmas und<br />

des Objekt-Beziehungspardigmas verwendet. Die <strong>Referenz</strong>-<strong>Metaschema</strong>ta dieser Paradigmen<br />

sind jeweils an die konkreten Anforderungen der ARIS-Sprachmittel anzupassen und zum integrierten<br />

<strong>Metaschema</strong> des ARIS-Ansatzes zusammenzufassen.<br />

Die Struktur der ARIS-Funktionsbäume wird durch die Spezialisierung TDPAris des <strong>Referenz</strong>-<br />

<strong>Metaschema</strong>s des Aufgabengliederungsparadigmas modelliert (vgl. Kapitel 6.2.1). Im ARIS-<br />

Ansatz werden nur sehr einfache Organigramme zur Beschreibung der Aufbaustrukturen der betrachteten<br />

Organisation verwendet. Diese Organigramme folgen der Spezialisierung PDPAris des<br />

<strong>Referenz</strong>-<strong>Metaschema</strong>s des Stellengliederungsparadigmas PDP (vgl. Kapitel 6.3.1). Zur Darstellung<br />

der Geschäftsprozesse einer Organisation werden (erweiterte) Ereignisgesteuerte Prozeßketten<br />

und Vorgangskettendiagramme verwendet. Diese Beschreibungsmittel genügen der in<br />

Kapitel 6.4.3 vorgestellten Spezialisierung des <strong>Referenz</strong>-<strong>Metaschema</strong>s des Netzparadigmas <strong>für</strong><br />

Vorgangskettendiagramme (NPVKD) bzw. dem hieraus abgeleiteten <strong>Metaschema</strong> der Ereignisgesteuerten<br />

Prozeßkette (NPEPK). Die in ARIS zur Beschreibung regulär strukturierter Prozeßfolgen<br />

verwendeten Nassi-Shneiderman-Diagramme entsprechen dem in Kapitel 6.4.4 eingeführten<br />

<strong>Referenz</strong>-<strong>Metaschema</strong> des Kontrollflußparadigmas (CP). Aus dem <strong>Referenz</strong>-<strong>Metaschema</strong> des<br />

Objekt-Beziehungsparadigmas wurde in Kapitel 6.5.3 auch eine Spezialisierung <strong>für</strong> einen heute<br />

üblichen Dialekt der Entity-Relationshipdiagramme abgeleitet. Die im ARIS-Ansatz verwendeten<br />

Beschreibungsmittel zur Modellierung des Fachkonzepts der Datensicht entsprechen diesem<br />

<strong>Metaschema</strong> ORPER.<br />

Diese fünf <strong>Metaschema</strong>ta bilden das <strong>Metaschema</strong> der Beschreibungsmittel zur Organisationsmodellierung<br />

entlang des ARIS-Ansatzes (ARIS). Abbildung 7.1 stellt den EER-Teil des resultierenden<br />

ARIS-<strong>Metaschema</strong>s dar.<br />

for G in ARIS include<br />

TDPAris; [Spezialisierung des <strong>Referenz</strong>-<strong>Metaschema</strong>s des Aufgabengliederungsparadigmas<br />

<strong>für</strong> Funktionsbäume]<br />

PDPAris; [Spezialisierung des <strong>Referenz</strong>-<strong>Metaschema</strong>s des Stellengliederungsparadigmas<br />

<strong>für</strong> ARIS-Organigramme]<br />

NPVKD; [Spezialisierung des <strong>Referenz</strong>-<strong>Metaschema</strong>s des Netzparadigmas<br />

<strong>für</strong> Vorgangskettendiagramme]<br />

CP; [<strong>Referenz</strong>-<strong>Metaschema</strong>s des Kontrollflußparadigmas]<br />

ORPER; [Spezialisierung des <strong>Referenz</strong>-<strong>Metaschema</strong>s des Objekt-Beziehungsparadigmas<br />

<strong>für</strong> Entity-Relationshipdiagramme]<br />

end .


7.2 Paradigmenübergreifende GRAL-Zusicherungen 239<br />

objClsIsA<br />

(isA)<br />

isA<br />

cRelates<br />

name : string<br />

abstract : bool<br />

ClassItem<br />

RelationshipClass<br />

injective: bool<br />

AggregationClass<br />

dir:bool<br />

Domain<br />

name:string<br />

Object<br />

Class<br />

has<br />

Domain<br />

limits : int int<br />

hasAttribute<br />

Attribute<br />

name:string<br />

objIsInstanceOf<br />

(isInstanceOf)<br />

NetItem<br />

Flow<br />

OperatorFlow<br />

Merge<br />

Xor<br />

Merge<br />

Or<br />

Merge<br />

requires<br />

Process<br />

Atomic<br />

Process<br />

name:string<br />

<strong>Se</strong>quence Parallel<br />

cfRefines<br />

NetObject<br />

Event<br />

cfComesFrom cfGoesTo<br />

Branch<br />

Xor<br />

Branch<br />

Or<br />

Branch<br />

Fork<br />

Join<br />

delivers<br />

represents isSubprocess isSubprocess isSubprocess<br />

controls<br />

name: string<br />

Object<br />

Composed<br />

Operator<br />

Flow<br />

Mechanism<br />

cfCorrespondsTo<br />

executesProcess<br />

Iteration Alternative<br />

Predicate<br />

name:string<br />

joinType :<br />

{xor, or, and}<br />

forkType :<br />

{xor, or, and}<br />

isAlternative<br />

controls<br />

Elementary<br />

Flow<br />

Case<br />

isObject<br />

Component<br />

isProcess<br />

Component<br />

isSubprocess<br />

isSubtask<br />

Organizational<br />

Unit<br />

name:string<br />

isSubordinated<br />

Task<br />

name:string<br />

Task<br />

Dekomposition<br />

executesTask<br />

isDecomposedIn<br />

Abbildung 7.1: Spezialisierung des integrierten <strong>Referenz</strong>-<strong>Metaschema</strong>s <strong>für</strong> die Beschreibungsmittel<br />

des ARIS-Ansatzes (ARIS)<br />

Aufgrund der Verschmelzung der Process-Konzepte der <strong>Metaschema</strong>ta der Prozeßsicht durch<br />

Vorgangskettendiagramme und Nassi-Shneiderman-Diagramme ist analog zum integrierten<br />

<strong>Referenz</strong>-<strong>Metaschema</strong> das Process-Konzept auch im ARIS-<strong>Metaschema</strong> als konkret zu vereinbaren<br />

[ARIS-CP 1].<br />

for G in ARIS assert<br />

[ARIS-CP 1]:<br />

overwrites [CP-EER 2] :<br />

isConcrete Process<br />

end .<br />

7.2 Paradigmenübergreifende GRAL-Zusicherungen<br />

Auch <strong>für</strong> das ARIS-<strong>Metaschema</strong> sind paradigmenübergreifende Zusicherungen zu fordern. Wie<br />

<strong>für</strong> das integrierte <strong>Referenz</strong>-<strong>Metaschema</strong> (vgl. Kapitel 6.6) werden diese entlang der Beschreibungssichten<br />

eingeführt.<br />

Da das ARIS-<strong>Metaschema</strong> nur jeweils ein Beschreibungsparadigma der Aufgabensicht, der<br />

Aufbausicht und der Objektsicht verwendet, sind innerhalb dieser Sichten keine paradigmen-


240 Architektur integrierter Informationssysteme<br />

übergreifenden Zusicherungen nötig. Die Zusammenhänge zwischen Beschreibungsmitteln der<br />

Aufgaben- und Aufbausicht bzw. der Aufgaben- und Objektsicht sind analog zum integrierten<br />

<strong>Referenz</strong>-<strong>Metaschema</strong> vollständig in den jeweiligen <strong>Metaschema</strong>ta berücksichtigt. Zusätzliche<br />

Anforderungen an die Querbezüge zwischen Aufbau- und Prozeßsicht bzw. zwischen Aufbauund<br />

Objektsicht sind <strong>für</strong> das ARIS-<strong>Metaschema</strong> ebenfalls nicht zu fordern. Komm<strong>uni</strong>kationsbeziehungen,<br />

die diese Zusammenhänge herstellen, werden mit den betrachteten ARIS-Mitteln<br />

nicht dargestellt.<br />

Paradigmenübergreifende Zusicherungen <strong>für</strong> das ARIS-<strong>Metaschema</strong> beziehen sich daher ausschließlich<br />

auf Zusicherungen innerhalb der Prozeßsicht und auf Zusicherungen zwischen der<br />

Aufgaben- und der Prozeßsicht.<br />

7.2.1 Paradigmenübergreifende Zusicherungen der Prozeßsicht<br />

Prozesse werden in ARIS sowohl durch Vorgangskettendiagramme und (erweiterte) Ereignisgesteuerte<br />

Prozeßketten des Netzparadigmas als auch durch Nassi-Shneiderman-Diagramme<br />

des Kontrollflußparadigmas beschrieben. Beide Beschreibungsformen unterstützen die Verfeinerung<br />

von Prozessen in Teilprozesse. Werden diese Beschreibungsmittel zur Darstellung derselben<br />

Prozesse verwendet, müssen diese Prozeßzerlegungen miteinander verträglich sein [ARIS-<br />

Process 1] (vgl. auch Zusicherung [RMS-Process 1] des <strong>Referenz</strong>-<strong>Metaschema</strong>s).<br />

for G in ARIS assert<br />

[ARIS-Process 1]:<br />

p : V Process ¯<br />

δ cfRefines p 0 type p <strong>Se</strong>quence Parallel Iteration Alternative<br />

p cfRefines &Process p isAlternative ℄ isSubprocess<br />

end .<br />

7.2.2 Paradigmenübergreifende Zusicherungen der Aufgaben- und<br />

Prozeßsicht<br />

Durch Darstellungen der Aufgaben- und der Prozeßsicht werden in ARIS u. a. auch Aufgabenbzw.<br />

Prozeßgliederungen, die jeweils bearbeiteten Objekte und die mit der Aufgabe bzw. Prozeßbearbeitung<br />

betrauten Organisationseinheiten betrachtet. Diese Bezüge sind in den entsprechenden<br />

ARIS-Teilmodellen zueinander verträglich darzustellen.<br />

Die Gliederung der Organisationsaufgaben in Funktionsbäumen ist hierzu mit der Prozeßverfeinerung<br />

in Prozeßkettendarstellungen und in Kontrollflußdarstellungen zu synchonisieren [ARIS-<br />

TaskProcess 1] (vgl. auch [RMS-TaskProcess 1]). Die Beschreibungsmittel des Netzparadigmas,<br />

wie sie im ARIS-Ansatz verwendet werden, ermöglichen auch die Modellierung der Objekte, die<br />

durch Prozesse benötigt (requires) bzw. erzeugt (delivers) werden. Die Strukturen dieser Objekte<br />

müssen mit der Objektkomponente der dem Prozeß entsprechenden Aufgabe verträglich sein<br />

[ARIS-TaskProcess 2]. Wie auch <strong>für</strong> das intergierte <strong>Referenz</strong>-<strong>Metaschema</strong> sind Aufgaben- und<br />

Prozeßdarstellungen über die Organisationseinheiten zu synchronisieren, die die Aufgaben oder<br />

Prozesse ausführen [ARIS-TaskProcess 3] (vgl. auch [RMS-TaskProcess 3]).


7.3 Anwendung des ARIS-<strong>Metaschema</strong>s 241<br />

for G in ARIS assert<br />

[ARIS-TaskProcess 1]:<br />

p : VProcess ; t : VTask p<br />

[Netzparadigma]<br />

isProcessComponent t ¯<br />

δ p<br />

cfRefines<br />

0 δ t<br />

isDecomposedIn<br />

0<br />

p cfRefines &Process t isDecomposed isSubtask isProcessComponent <br />

[Kontrollflußparadigma]<br />

type p <strong>Se</strong>quence Parallel Iteration Alternative <br />

δ isDecomposedIn t 0<br />

p isAlternative ℄ isSubprocess t isDecomposed isSubtask isProcessComponent ;<br />

[ARIS-TaskProcess 2]:<br />

p : VProcess ; t : VTask p isProcessComponent t ¯<br />

t isObjectComponent p requires delivers objIsInstanceOf ;<br />

[ARIS-TaskProcess 3]:<br />

p : VProcess ; t : VTask p isProcessComponent t ¯<br />

end .<br />

t executesTask p executesProcess &OrganizationalUnit<br />

7.3 Anwendung des ARIS-<strong>Metaschema</strong>s<br />

Das hier vorgestellte ARIS-<strong>Metaschema</strong> bildet die Konzepte der Modellierungsmittel des ARIS-<br />

Ansatzes ab. Gegenüber dem <strong>Metaschema</strong> des ARIS-Ansatzes in [Scheer, 1992] ist das <strong>Metaschema</strong><br />

ARIS auf die wesentlichen Sprachmittel zur Organisationsmodellierung auf Fachkonzeptebene<br />

eingeschränkt.<br />

Eingesetzt werden kann dieses <strong>Metaschema</strong> u. a. zur Einführung und Schulung der ARIS-<br />

Modellierungskonzepte, zur Entwicklung von Werkzeugen zur Modellierung nach dem ARIS-<br />

Ansatz (vgl. zur Entwicklung von Werkzeugen auf Basis von <strong>Metaschema</strong>ta auch Kapitel 9)<br />

oder zum Vergleich mit anderen Modellierungsansätzen z. B. mit den Sprachmitteln der Unified<br />

Modeling Language (vgl. das UML-<strong>Metaschema</strong> in Kapitel 8).


8 Unified Modeling Language<br />

In den späten 80er und frühen 90er Jahren wurden mehr als 60 objektorientierte Modellierungsmethoden<br />

entwickelt (vgl. z. B. [Partsch, 1998], [Süttenbach, 2000]), die sich in Modellierungstechniken<br />

und Vorgehensweisen unterscheiden. Übersichten zu objektorientierten Modellierungsmethoden<br />

finden sich z. B. in [Graham, 1994], [Frank, 1997b] und [Wieringa, 1998].<br />

Mit der Unified Modeling Language (UML) [Booch et al., 1999], [Rumbaugh et al., 1999] wurde,<br />

ausgehend von den Methoden Object Modeling Technique (OMT) [Rumbaugh et al., 1991], Object<br />

Oriented Design (OOD) [Booch, 1994] und Object Oriented Software Engineering (OOSE)<br />

[Jacobson et al., 1993], ein Notationsstandard <strong>für</strong> objektorientierte Modellierungsmittel geschaffen,<br />

der im November 1997 durch die Object Management Group akzeptiert wurde (vgl. auch<br />

die Einordnung des UML-<strong>Metaschema</strong>s in Kapitel 4.3.1, S. 129).<br />

UML wird in [Booch et al., 1999, S. xv], [Rumbaugh et al., 1999, S. 3] als allgemeine Modellierungssprache<br />

zur Beschreibung, Visualisierung, Konstruktion und Dokumentation von Softwaresystemen<br />

eingeführt. Neben der Beschreibung von Softwaresystemen wird die UML aber<br />

auch zur Beschreibung von Organisations- und Geschäftsprozeßmodellen eingesetzt (vgl. z. B.<br />

[Oestereich, 1998], [Versteegen, 1998]). Die UML stellt somit einen Satz standardisierter Beschreibungsmittel<br />

zur Modellierung von Organisationen und Softwaresystemen bereit.<br />

Zur Einordnung der Modellierungsmittel unterscheidet die UML Beschreibungsmittel zur Darstellung<br />

struktureller und dynamischer Systemaspekte, die zu modellierende Systeme aus verschiedenen<br />

Sichten beschreiben (vgl. [Rumbaugh et al., 1999, S. 23ff]). Strukturelle Systemeigenschaften<br />

werden aus statischer Sicht und aus Anwendungsfall-Sicht notiert. Wie generell in<br />

objektorientierten Modellierungsansätzen, sind auch in der Unified Modeling Language Klassendiagramme<br />

das zentrale Beschreibungsmittel der statischen Sicht. Hierdurch werden die wesentlichen<br />

Konzepte des zu modellierenden Systems und deren Beziehungen auf Schemaebene<br />

modelliert. Zur exemplarischen Darstellung dieser Zusammenhänge werden darüber hinaus Objektdiagramme<br />

angeboten. Die Funktionalität des Systems aus Sicht der Systemverwendung wird<br />

durch Anwendungsfalldiagramme modelliert. Anwendungsfalldiagramme dienen zur Identifizierung<br />

der Anwendungsfälle, die das System unterstützt, und zur Darstellung der Akteure, die mit<br />

dem System interagieren. Die Modellierung dynamischer Systemaspekte hat die Darstellung des<br />

Systemverhaltens in der Zeit zum Ziel. Hierzu bietet die UML Notationen zur Modellierung des<br />

Systems aus Zustandssicht, aus Aktivitätssicht und aus Interaktionssicht. Zur Beschreibung aus<br />

Zustandssicht werden Statecharts verwendet, die die Zustände der Systemobjekte und deren Veränderungen<br />

abbilden. Dynamische Ablauffolgen in Software- und Geschäftsprozessen werden<br />

aus Aktivitätssicht mit Hilfe von Aktivitätsdiagrammen dargestellt und zur Beschreibung der Interaktion<br />

einzelner Systemkomponenten aus Interaktionssicht werden <strong>Se</strong>quenzdiagramme und<br />

Kollaborationsdiagramme eingesetzt. Das aus dem <strong>Referenz</strong>-<strong>Metaschema</strong> der Beschreibungs-


244 Unified Modeling Language<br />

mittel <strong>für</strong> Organisationen und Softwaresysteme hergeleitete <strong>Metaschema</strong> der Unified Modeling<br />

Language, integriert die Konzepte dieser Beschreibungsmittel.<br />

8.1 Integration der <strong>Metaschema</strong>ta der<br />

UML-Beschreibungsmittel<br />

Die Beschreibungsmittel der UML umfassen Notationen des Datenflußparadigmas, des Zustandsübergangsparadigmas,<br />

des Netzparadigmas, des Objekt-Instanzparadigmas, des Objekt-<br />

Interaktionsparadigmas und des Objekt-Beziehungsparadigmas. Das <strong>Metaschema</strong> der UML integriert<br />

daher die <strong>Referenz</strong>-<strong>Metaschema</strong>ta dieser Paradigmen bzw. deren Spezialisierungen <strong>für</strong><br />

die konkreten Notationen der UML.<br />

Die Konzepte der Anwendungsfalldiagramme der UML werden durch die Spezialisierung DFD-<br />

UseCase des <strong>Referenz</strong>-<strong>Metaschema</strong>s des Datenflußparadigmas abgebildet (vgl. Kapitel 6.4.1).<br />

UML verwendet zur Darstellung von Zustandsübergangsbeschreibungen Statecharts, deren<br />

Struktur bereits durch das <strong>Referenz</strong>-<strong>Metaschema</strong> des Zustandsübergangsparadigmas STP formalisiert<br />

ist (vgl. Kapitel 6.4.2). Im Gegensatz zum Metamodell der UML in [OMG, 1999] werden<br />

Aktivitätsdiagramme im <strong>Referenz</strong>-<strong>Metaschema</strong> nicht als Darstellungsmittel des Zustandsübergangsparadigmas<br />

sondern als Beschreibungsmittel des Netzparadigmas aufgefaßt (vgl. hierzu<br />

auch Kapitel 6.4.3, <strong>Se</strong>ite 195). Im hier vorgestellten <strong>Metaschema</strong> der UML werden Aktivitätsdiagramme<br />

daher durch die Spezialisierung NPActivty des Netzparadigmas modelliert.<br />

Die in der UML verwendete Notation <strong>für</strong> Objektdiagramme entspricht der Spezialisierung<br />

des <strong>Referenz</strong>-<strong>Metaschema</strong>s des Objekt-Instanzparadigmas OIPOO (vgl. Kapitel 6.5.1) <strong>für</strong> Objektdiagramme<br />

objektorientierter Methoden. <strong>Se</strong>quenzdiagramme und Kollaborationsdiagramme<br />

zur Modellierung der Objektinteraktion werden durch das <strong>Referenz</strong>-<strong>Metaschema</strong> des Objekt-<br />

Interaktionsparadigmas IAP direkt abgebildet (vgl. Kapitel 6.5.2). Zur Abbildung des <strong>Metaschema</strong>s<br />

der UML-Klassendiagramme ist auf die UML-Spezialisierung ORPUML des <strong>Referenz</strong>-<br />

<strong>Metaschema</strong>s des Objekt-Beziehungsparadigmas aus Kapitel 6.5.3 zurückzugreifen.<br />

Das resultierende <strong>Metaschema</strong> der UML inkludiert diese sechs Teil-<strong>Metaschema</strong>ta. Der EER-<br />

Teil des UML-<strong>Metaschema</strong>s UML ist in Abbildung 8.1 skizziert.<br />

for G in UML include<br />

DFPUseCase; [Spezialisierung des <strong>Referenz</strong>-<strong>Metaschema</strong>s des Datenflußparadigmas<br />

<strong>für</strong> Anwendungsfalldiagramme]<br />

STP; [<strong>Referenz</strong>-<strong>Metaschema</strong> des Zustandsübergangsparadigma]<br />

NPActivty; [Spezialisierung des <strong>Referenz</strong>-<strong>Metaschema</strong>s des Netzparadigmas<br />

<strong>für</strong> Aktivitätsdiagramme]<br />

OIPOO; [Spezialisierung des <strong>Referenz</strong>-<strong>Metaschema</strong>s des Objekt-Instanzparadigmas<br />

<strong>für</strong> Objektdiagramme objektorientierter Methoden]<br />

IAP; [<strong>Referenz</strong>-<strong>Metaschema</strong> des Objekt-Interaktionsparadigmas]<br />

ORPUML; [Spezialisierung des <strong>Referenz</strong>-<strong>Metaschema</strong>s des Objekt-Beziehungsparadigmas<br />

<strong>für</strong> UML-Klassendiagramme]<br />

end .


8.2 Paradigmenübergreifende GRAL-Zusicherungen 245<br />

Signature<br />

isSignature<br />

Method<br />

name:string<br />

visibility : string<br />

implements<br />

Domain<br />

name:string<br />

isInputSort<br />

isReturnSort<br />

objClsIsA<br />

(isA)<br />

has<br />

Operation<br />

isA<br />

relClsIsA<br />

(isA)<br />

Sort<br />

isValue<br />

ClassItem<br />

objIsInstanceOf<br />

Object<br />

Class<br />

(isInstanceOf)<br />

limits:int int<br />

cComes<br />

role:string<br />

visibility:string<br />

From<br />

(cRelates) cRelates cGoesTo<br />

(cRelates)<br />

RelationshipClass<br />

Aggregation<br />

isInstanceOf<br />

isAssociated<br />

Association<br />

DependencyClass<br />

type:string<br />

Class<br />

CompositionClass<br />

relIsInstanceOf<br />

(isInstanceOf)<br />

name : string<br />

abstract : bool<br />

name:string<br />

DfItem<br />

specializes<br />

valIs<br />

InstanceOf<br />

DfObject<br />

Terminator<br />

Value<br />

has<br />

Domain<br />

Attribute<br />

identifies<br />

name : string<br />

visibility : string<br />

has<br />

Attribute<br />

callsMethod<br />

extends includes<br />

alphaLimits: IN<br />

IN<br />

omegaLimits: IN<br />

IN<br />

associates<br />

System<br />

name:string<br />

isUseCaseIn<br />

Attribute<br />

Value<br />

Pair<br />

has<br />

Attribute<br />

ValuePair<br />

Instance<br />

Item<br />

NetItem<br />

name:string NetObject<br />

Flow<br />

OperatorFlow<br />

Merge<br />

cfGoesTo<br />

Xor<br />

Merge<br />

isInput<br />

Object<br />

Process<br />

<strong>Se</strong>nder<br />

Process<br />

Event<br />

Object<br />

Organizational<br />

Unit<br />

Start<br />

Event<br />

cfComes<br />

From<br />

criterion:string<br />

Branch<br />

sendsTo<br />

receives<br />

From<br />

Xor<br />

Branch<br />

iRelates<br />

msgComesFrom<br />

msgGoesTo<br />

isInputParameter<br />

isReturnParameter<br />

sendsEvent receivesEvent<br />

End<br />

Event<br />

restricted<br />

GoesTo<br />

(cfGoesTo)<br />

pathCondition:string<br />

Fork<br />

Join<br />

isOutput<br />

Object<br />

Receiver<br />

Process<br />

name:string<br />

Elementary<br />

Flow<br />

Message msgCorrespondsTo<br />

Call<br />

Create<br />

Call<br />

Mechanism<br />

executes<br />

Process<br />

cfRefines<br />

Destroy<br />

Call<br />

isGuard isMsgIn<br />

isGuard<br />

effects<br />

triggers<br />

isEntryAction<br />

isBlobAction<br />

isExitAction<br />

starts<br />

With<br />

Transition<br />

Return<br />

Predicate Interaction<br />

name:string<br />

Scenario<br />

name:string<br />

trans<br />

Comes<br />

From<br />

Blob<br />

AtomicBlob<br />

End<br />

Blob<br />

Xor<br />

Blob<br />

history:bool<br />

>1<br />

And<br />

Blob<br />

name:string<br />

not_rigid<br />

iteration:string<br />

duration:int<br />

contains<br />

FlatFlow<br />

OfControl<br />

AsynchronousFlow<br />

OfControl<br />

Abbildung 8.1: Spezialisierung des integrierten <strong>Referenz</strong>-<strong>Metaschema</strong>s <strong>für</strong> die Beschreibungsmittel<br />

der Unified Modeling Language (UML)<br />

Da in den Anwendungsfalldiagrammen des Datenflußparadigmas keine Datenbezüge modelliert<br />

werden und in allen <strong>Metaschema</strong>ta der in UML berücksichtigten Beschreibungsmitteln<br />

der Prozeßsicht (Anwendungsfalldiagramme, Aktivitätdiagramme und Statecharts) Prozesse bereits<br />

als konkret vereinbart sind, sind <strong>für</strong> das UML-<strong>Metaschema</strong> keine Anpassungen der GRAL-<br />

Zusicherungen der inkludierten <strong>Metaschema</strong>ta erforderlich.<br />

Relationship<br />

8.2 Paradigmenübergreifende GRAL-Zusicherungen<br />

Mit den im UML-<strong>Metaschema</strong> zusammengefaßten Beschreibungsmitteln werden zu modellierende<br />

Systeme aus Prozeß- und aus Objektsicht modelliert. Die Konsistenz dieser Teilmodelle<br />

zueinander muß auch hier durch weitere GRAL-Zusicherungen formalisiert werden.<br />

trans<br />

GoesTo<br />

contains


246 Unified Modeling Language<br />

Zusicherungen <strong>für</strong> die Beschreibungsmittel der Prozeßsicht beziehen sich <strong>für</strong> das integrierte<br />

<strong>Referenz</strong>-<strong>Metaschema</strong> (vgl. Kapitel 6.6) und <strong>für</strong> das ARIS-<strong>Metaschema</strong> (vgl. Kapitel 7) auf<br />

die Balancierung der verschiedenen darstellbaren Prozeßzerlegungen. Prozeßzerlegungen werden<br />

mit den Sprachen der UML nur durch Aktivitätsdiagramme modelliert. Anwendungsfalldiagramme<br />

und Statecharts sehen hier<strong>für</strong> keine Konzepte vor, so daß <strong>für</strong> die Integration der<br />

UML-Beschreibungsmittel der Prozeßsicht keine zusätzlichen GRAL-Prädikate nötig werden.<br />

Sichten- und paradigmenübergreifende Zusicherungen des UML-<strong>Metaschema</strong>s beziehen sich auf<br />

die Abstimmung der Darstellungen von instanz- und schemaartigen Objekt-Beschreibungen und<br />

auf die Objektverwendung in Prozeßdarstellungen.<br />

8.2.1 Paradigmenübergreifende Zusicherungen der Objektsicht<br />

Objektzusammenhänge auf Instanzebene werden durch die Beschreibungsmittel des Objekt-<br />

Instanzparadigmas und des Objekt-Interaktionsparadigmas dargestellt. Diese strukturellen bzw.<br />

interaktionsbezogenen Objektdarstellungen sind mit den in Klassendiagrammen festgelegten Definitionen<br />

der entsprechenden Objekt- und Beziehungsklassen abzustimmen.<br />

Die Inzidenz- und Attribut-Eigenschaften der Objekte in Objekt-, <strong>Se</strong>quenz- und Kollaborationsdiagrammen<br />

können analog zum <strong>Referenz</strong>-<strong>Metaschema</strong> (vgl. S. 231) mit den Definitionen<br />

aus Klassendiagrammen abgestimmt werden. Da UML-Modellierungen Beziehungen beliebiger<br />

Arität zulassen, sind hierbei kleinere Anpassungen erforderlich.<br />

Die Knotentypen der Inzidenzen in Objektdiagrammen müssen mit den Definitionen der Beziehungsklassen<br />

übereinstimmen [UML-Object 1]. Ebenso müssen diese Inzidenzen den Kardinalitätsanforderungen<br />

des zugehörigen Klassendiagramms entsprechen [UML-Object 2]. Gegenüber<br />

den Zusicherung [RMS-Object 1] und [RMS-Object 2] des <strong>Referenz</strong>-<strong>Metaschema</strong>s<br />

ist <strong>für</strong> das UML-<strong>Metaschema</strong> die Ausrichtung der Kanten unerheblich, da Objektdiagramme<br />

Objektzusammenhänge ausschließlich durch ungerichtete Graphen darstellen. Die Zusicherungen<br />

zu verträglichen Attributstrukturen [UML-Object 3] und zur Berücksichtigung abstrakter<br />

Klassen [UML-Object 4] entsprechen den Zusicherungen des <strong>Referenz</strong>-<strong>Metaschema</strong>s. Da in<br />

UML-Klassendiagrammen Beziehungen generell als injektiv angenommen werden (vgl. Zusicherung<br />

[ORPUML 8]), sind in UML-Objektdiagrammen keine Mehrfachkanten gleichen Typs<br />

zugelassen [UML-Object 5].<br />

Durch den Austausch von Nachrichten wird in <strong>Se</strong>quenz- und Kollaborationsdiagrammen das Interaktionsverhalten<br />

der Objekte modelliert. Durch Nachrichten können hierbei Methoden der<br />

Empfängerobjekte aufgerufen werden. Zur Konsistenzsicherung zwischen den Darstellungen<br />

des Objekt-Interaktionsparadigmas und den Darstellungen des Objekt-Beziehungsparadigmas<br />

ist sicherzustellen, daß nur solche Methoden aufgerufen werden, die der Klassendefinition des<br />

Empfängerobjekts entsprechen [UML-Object 6]. Für diese Nachrichten ist ebenfalls zu fordern,<br />

daß ihre Ein- und Ausgabeparameter der entsprechenden Methodensignatur genügen [UML-<br />

Object 7].


8.2 Paradigmenübergreifende GRAL-Zusicherungen 247<br />

for G in UML assert<br />

[UML-Object 1]:<br />

v : VObject ; e : VRelationship v iRelates e ¯<br />

v objIsInstanceOf<br />

£<br />

objClsIsA cRelates<br />

[UML-Object 2]:<br />

v : VObject ; e : EcRelates v objIsInstanceOf<br />

first elimits <br />

# r : EiRelates ω r v <br />

α r<br />

second elimits ;<br />

relIsInstanceOf<br />

£<br />

relClsIsA relIsInstanceOf<br />

£<br />

objClsIsA<br />

£<br />

relClsIsA<br />

[UML-Object 3]:<br />

i : VInstanceItem ; c : VClassItem i IsInstanceOf c ¯<br />

i hasAttributeValuePair identifies c<br />

£<br />

IsA hasAttribute ;<br />

[UML-Object 4]:<br />

c : V ClassItem cabstract ¯ c IsInstanceOf<br />

;<br />

[UML-Object 5]:<br />

rc : V RelationshipClass ; r 1 r 2 : V Relationship <br />

r 1 relIsInstanceOf rc relIsInstanceOf r 2 r 1 r 2 ¯<br />

r 1 iRelates r 2 iRelates ;<br />

ω e ¯<br />

e ;<br />

α e <br />

[UML-Object 6]:<br />

o : VObject ; oc : VObjectClass ; o objIsInstanceOf oc ¯<br />

o msgGoesTo &Call callsMethod oc<br />

£<br />

objClsIsA hasOperation ;<br />

[UML-Object 7]:<br />

o : VObject ; c : VCall ; o isInputParameter c ¯<br />

end .<br />

o objIsInstanceOf<br />

£<br />

objClsIsA isInputSort isSignature callsMethod<br />

o : V Object ; c : V Call ; o isOutputParameter<br />

o objIsInstanceOf<br />

c ¯<br />

c ;<br />

£<br />

objClsIsA isOutputSort isSignature callsMethod c<br />

8.2.2 Paradigmenübergreifende Zusicherungen der Prozeß- und<br />

Objektsicht<br />

In Aktivitätsdiagrammen kann der Objektfluß zwischen Prozessen modelliert werden. Implementieren<br />

diese Prozesse Methoden, so müssen die eingehenden bzw. ausgehenden Objekte auch mit<br />

der im Klassendiagramm notierten Methodensignatur bezüglich der Parametertypen als auch deren<br />

Reihenfolge verträglich sein [UML-ProcessObject 1].


248 Unified Modeling Language<br />

for G in UML assert<br />

[UML-ProcessObject 1]:<br />

p : VProcess ; m : VMethod ; s : VSignature ; p implements m isSignature s ¯<br />

p isInputObject objIsInstanceOf s isInputSort <br />

io : EisInputObject ω io p ¯<br />

is : EisInputSort ω is s α io objIsInstanceOf α is ¯<br />

orderisInputObject io Ô orderisInputSort is × ;<br />

end .<br />

p : VProcess ; m : VMethod ; s : VSignature ; p implements m isSignature s ¯<br />

p isOutputObject objIsInstanceOf s isOutputSort <br />

oo : EisOutputObject ω oo p ¯<br />

os : EisOutputSort ω os s α oo objIsInstanceOf α os ¯<br />

orderisOutputObject oo Ô orderisOutputSort os ×<br />

8.3 Anwendung des UML-<strong>Metaschema</strong>s<br />

Die Konzepte der wesentlichen UML-Modellierungsmittel werden im hier vorgestellten UML-<br />

<strong>Metaschema</strong> integriert abgebildet. Im Vergleich zum UML-<strong>Metaschema</strong> der Object Management<br />

Group [OMG, 1999] ist dieses Modell deutlicher von den Konzepten der einzelnen Beschreibungsmittel<br />

geprägt. Während im <strong>Metaschema</strong> der OMG ähnliche Konzepte in verschiedenen<br />

Vorkommen kaum unterschieden werden, sind die Konzepte einzelner Beschreibungsmittel<br />

im <strong>Metaschema</strong> UML eher auf ihren Anwendungsbezug im jeweiligen Modellierungskontext<br />

gerichtet. Die Integration der Teilschemata der einzelnen Modellierungsparadigmen stellt<br />

anschließend die Querbezüge der jeweiligen Konzepte her. Hierdurch wirkt das resultierende<br />

UML-<strong>Metaschema</strong> weniger abstrakt.<br />

Wie auch das ARIS-<strong>Metaschema</strong> kann das UML-<strong>Metaschema</strong> u. a. zur Einführung und Schulung<br />

der UML-Sprachmittel, zur Entwicklung von Werkzeugen zur Modellierung mit der UML1 (vgl. auch Kapitel 9) oder zum Vergleich der Modellierungsmächtigkeit mit Sprachmitteln anderer<br />

Modellierungsansätze z. B. mit den Sprachmitteln des ARIS-Ansatzes (vgl. das ARIS-<br />

<strong>Metaschema</strong> in Kapitel 7) eingesetzt werden.<br />

1 Auf Basis eines solchen <strong>Metaschema</strong>s <strong>für</strong> Klassendiagramme der UML wurde mit dem Meta-CASE-Werkzeug<br />

KOGGE ein Werkzeug zur Erstellung von UML-Klassendiagrammen und zum Roundtrip Engineering<br />

von JAVA-Programmen erstellt (vgl. http://www.<strong>uni</strong>-koblenz.de/case/kogge4/anleitungen/UML/<br />

UML.html; 02.11.1999).


9 Software-Evaluation<br />

Zur Unterstützung der vielfältigen Aufgaben und Geschäftsprozesse von Organisationen bietet<br />

der Markt eine große Anzahl unterschiedlicher Softwarewerkzeuge. Die Einschätzung und Auswahl<br />

der jeweils am besten geeigneten Lösung zum Einsatz in der Organisation erfordert eine<br />

tiefgehende Untersuchung des Leistungsspektrums der angebotenen Produkte, des Zusammenwirkens<br />

der Software mit vorhandenen bzw. zusätzlichen Produkten und der Einbindung der<br />

Software in die vorhandene organisatorische und technische Umgebung.<br />

Mit Software-Evaluation bezeichnet man das strukturierte Vorgehen zur Analyse und Bewertung<br />

vorhandener Softwaresysteme <strong>für</strong> den Einsatz in einem fest umrissenen Anwendungsbereich<br />

[Franzke / Winter, 1996]. Ein Vorgehensmodell zur Software-Evaluation wurde in [Dumslaff et<br />

al., 1994] entwickelt und u. a. zur Evaluation von Branchenlösungen <strong>für</strong> das Handwerk [Dumslaff<br />

et al., 1992], von Branchenlösungen <strong>für</strong> die keramische Industrie [Franzke / Zenz, 1995] und<br />

von Branchenlösungen <strong>für</strong> Krankenhausinformationssysteme [Schumm et al., 1995] angewandt.<br />

Dieses Vorgehensmodell zur Softwareevaluation basiert auf einer umfassenden Anforderungsanalyse<br />

und Modellierung des Einsatzbereichs der Software. Das hierbei resultierende Organisationsmodell<br />

dient als werkzeugunabhängiger Vergleichsmaßstab, entlang dessen die angebotenen<br />

Softwareprodukte untersucht werden können.<br />

Schwerpunkt der Organisationsmodellierung zur Software-Evaluation sind die zu unterstützenden<br />

Geschäftsprozesse. Diese werden mit den Mitteln der Datenflußmodellierung beschrieben.<br />

Zentrale Geschäftsprozesse werden zunächst durch ein Kontextdiagramm in ihrer Systemumgebung<br />

dargestellt und anschließend durch weitere Datenflußdiagramme verfeinert. Die hierbei<br />

gewonnene Verfeinerungshierarchie wird durch Aufgabengliederungspläne abgebildet und<br />

liefert somit eine vollständige Liste der zu unterstützenden Funktionen. Die datenbezogene<br />

Interaktion dieser Funktionen wird in den Datenflußmodellen abgebildet. Zur Modellierung<br />

der in den Geschäftsprozessen benötigten bzw. erzeugten Daten und Objekte werden Objekt-<br />

Beziehungsdiagramme verwendet. Die Einbettung der Geschäftsprozesse in die Organisationsstruktur<br />

erfolgt durch Organigramme. Diese beschreiben die aufbauorganisatorische Struktur der<br />

Organisation und definieren die Zuständigkeiten zur Bearbeitung einzelner Aufgaben und Teilprozesse.<br />

In [Löcher/Pühler, 1997] wurde ein Werkzeug zur Unterstützung der Software-Evaluation (SET-<br />

KOGGE) entwickelt. Dieses Werkzeug erlaubt sowohl die Erstellung von integrierten Organisationsmodellen<br />

mit Hilfe von Datenflußdiagrammen, Aufgabengliederungsplänen, Objekt-<br />

Beziehungsdiagrammen und Organigrammen als auch die Dokumentation von Evaluationsergebnissen<br />

in der Form von Modellannotationen. Dieses Werkzeug wurde mit Hilfe des Meta-<br />

CASE-Werkzeugs KOGGE (Koblenzer Generator <strong>für</strong> graphische Entwurfsumgebungen) [Ebert


250 Software-Evaluation<br />

et al., 1997b] realisiert. Die Entwicklung eines KOGGE-Werkzeugs erfolgt durch Erstellen einer<br />

Werkzeugbeschreibung, die ein Konzeptmodell der verwendeten Modellierungstechniken,<br />

die Definition der Menüstruktur des Werkzeugs und die Festlegung der Interaktion mit dem Benutzer<br />

umfaßt. Diese Werkzeugbeschreibung wird durch das KOGGE-Basissystem interpretiert<br />

(vgl. zu KOGGE auch die Einordnung der KOGGE-Modelle als Metamodell in Kapitel 4.3.1,<br />

S. 128). Das diesem Werkzeug zugrunde liegende Konzeptmodell der verwendeten Modellierungstechniken<br />

wurde aus dem <strong>Referenz</strong>-<strong>Metaschema</strong> der Beschreibungsmittel <strong>für</strong> Organisationen<br />

und Softwaresysteme abgeleitet. Dieses <strong>Metaschema</strong> integriert die Konzepte von Aufgabengliederungsplänen,<br />

Organigrammen, Kontextdiagrammen, Datenflußdiagrammen und Objekt-<br />

Beziehungsdiagrammen.<br />

9.1 Integration der <strong>Metaschema</strong>ta zur Software-Evaluation<br />

Das <strong>Metaschema</strong> des Werkzeugs zur Unterstützung der Organisationsmodellierung innerhalb der<br />

Software-Evaluation enthält die <strong>Referenz</strong>-<strong>Metaschema</strong>ta des Aufgabengliederungsparadigmas,<br />

des Stellengliederungsparadigmas, des Datenflußparadigmas und des Objekt-Beziehungsparadigmas<br />

bzw. Spezialisierungen dieser <strong>Referenz</strong>-<strong>Metaschema</strong>ta.<br />

Durch die SET-KOGGE wird die Modellierung mit einfachen Aufgabengliederungsplänen unterstützt,<br />

wie sie auch im ARIS-Ansatz Verwendung finden. Hierbei wird lediglich die Zerlegung<br />

von Aufgaben in Teilaufgaben beschrieben. Unterschiedliche Aufgabentypen werden nicht berücksichtigt.<br />

Diese Aufgabengliederungspläne (Funktionsbäume) werden durch die Spezialisierung<br />

TDPAris des Aufgabengliederungsparadigmas (vgl. Kapitel 6.2.1) definiert. Aufbaustrukturen<br />

werden durch Abteilungsorganigramme dargestellt, die neben der Untergliederung der Organisation<br />

in Abteilungen und Stellen auch die Leitungsbeziehungen zwischen den Stellen abbilden.<br />

Solche Organigramme entsprechen der Spezialisierung PDPDepartment des <strong>Referenz</strong>-<br />

<strong>Metaschema</strong>s des Stellengliederungsparadigmas (vgl. Kapitel 6.3.1). Zur Modellierung der Organisation<br />

aus Prozeßsicht bietet die SET-KOGGE Kontextdiagramme und Datenflußdiagramme<br />

des Datenflußparadigmas. Neben den aus der strukturierten Modellierung bekannten Modellierungskonzepten<br />

wird auch die Modellierung der Aufgabenträger einzelner Prozesse und die<br />

Darstellung von Anwendungsszenarien zur Konkretisierung einzelner Geschäftsprozesse unterstützt.<br />

Diese Beschreibungsmittel werden durch das <strong>Referenz</strong>-<strong>Metaschema</strong> des Datenflußparadigmas<br />

DFP abgebildet (vgl. Kapitel 6.4.1). Die Modellierung von Daten- und Objektstrukturen<br />

erfolgt durch Objekt-Beziehungsdiagramme des EER/GRAL-Ansatzes, deren <strong>Metaschema</strong><br />

durch das <strong>Referenz</strong>-<strong>Metaschema</strong> des Objekt-Beziehungsparadigmas ORP definiert ist (vgl. Kapitel<br />

6.5.3).<br />

Der zur Organisationsmodellierung in der SET-KOGGE benötigte Anteil des Konzeptmodells<br />

integriert diese vier <strong>Metaschema</strong>ta.<br />

for G in SET include<br />

TDPAris; [Spezialisierung des <strong>Referenz</strong>-<strong>Metaschema</strong>s des Aufgabengliederungsparadigmas<br />

<strong>für</strong> Funktionsbäume]<br />

PDPDepartment; [Spezialisierung des <strong>Referenz</strong>-<strong>Metaschema</strong>s des Stellengliederungsparadigmas<br />

<strong>für</strong> Abteilungsorganigramme]


9.1 Integration der <strong>Metaschema</strong>ta zur Software-Evaluation 251<br />

end .<br />

DFP; [<strong>Referenz</strong>-<strong>Metaschema</strong> des Datenflußparadigmas]<br />

ORP; [<strong>Referenz</strong>-<strong>Metaschema</strong> des Objekt-Beziehungsparadigmas]<br />

Abbildung 9.1 bilden den EER-Teil des resultierenden <strong>Metaschema</strong>s ab. Die Integration der vier<br />

<strong>Metaschema</strong>ta erfolgt analog zur Definition des integrierten <strong>Referenz</strong>-<strong>Metaschema</strong>s entlang der<br />

gemeinsamen Konzepte der Teilschemata. Neben diesen Konzepten des <strong>Referenz</strong>-<strong>Metaschema</strong>s<br />

enthält das <strong>Metaschema</strong> der SET-KOGGE exemplarisch noch einige Konzepte (Evaluation, EvaluationEntry,<br />

Product, SoftwareEvaluation) zur Dokumentation der Software-Evaluation entlang<br />

der modellierten Aufgaben.<br />

name:string<br />

DfItem<br />

objClsIsA<br />

(isA)<br />

DfObject<br />

Terminator<br />

describes<br />

name : string<br />

abstract : bool<br />

ClassItem<br />

=2 limits : int int<br />

cComes<br />

From<br />

cGoesTo<br />

isA (cRelates) cRelates (cRelates)<br />

relClsIsA<br />

(isA)<br />

Domain<br />

name:string<br />

Store<br />

PointOf<br />

Contact<br />

Object<br />

Class<br />

has<br />

Domain<br />

RelationshipClass<br />

Aggregation<br />

Class<br />

dir: bool<br />

hasAttribute<br />

dfGoesTo<br />

dfComesFrom<br />

describes<br />

dfCorrespondsTo<br />

Attribute<br />

name:string<br />

injective: bool<br />

Dataflow<br />

Dataflow<br />

Scenario<br />

dfRefines<br />

isComponentIn<br />

Mechanism<br />

Technical<br />

Means<br />

Process<br />

executesProcess<br />

OrganizationalUnit<br />

Department<br />

isObject<br />

Component<br />

isProcess<br />

Component<br />

Product<br />

name:string<br />

IsPartOf<br />

leads<br />

Position<br />

isHeadOf<br />

(isPartOf)<br />

name:string<br />

executesTask<br />

isSubtask<br />

Task<br />

isDecomposedIn<br />

name:string<br />

is<br />

Evaluated supports<br />

Evaluation<br />

Entry<br />

Software<br />

Evaluation<br />

definesCriterion<br />

isEntryIn<br />

Support<br />

Task<br />

Dekomposition<br />

Abbildung 9.1: Spezialisierung des integrierten <strong>Referenz</strong>-<strong>Metaschema</strong>s <strong>für</strong> die Beschreibungsmittel<br />

zur Software-Evaluation (SET)<br />

Das SET-KOGGE-<strong>Metaschema</strong> integriert das <strong>Referenz</strong>-<strong>Metaschema</strong> des Datenflußparadigmas<br />

und des Objekt-Beziehungsparadigmas. Datenbezüge in Datenflußdiagrammen werden somit<br />

durch die Konzepte des Objektbeziehungsparadigmas abgebildet. Die Zusicherungen des Datenflußparadigmas<br />

mit Bezug zur Daten- und Objektmodellierung ([DFP 10] und [DFP 11]) sind<br />

daher analog zum integrierten <strong>Referenz</strong>-<strong>Metaschema</strong> anzupassen [SET 1]–[SET 3].


252 Software-Evaluation<br />

for G in SET assert<br />

[SET 1]:<br />

overwrites [DFP 10] :<br />

poc : VPointOfContact ¯<br />

poc dfCorrespondsTo describes<br />

[SET 2]:<br />

[SET 3]:<br />

end .<br />

isA cGoesTo &AggregationClass cComesFrom £<br />

describes dfGoesTo dfComesFrom<br />

poc ;<br />

overwrites [DFP 11] :<br />

d : VDataflow ¯<br />

d dfGoesTo dfComesFrom &Store describes<br />

isA cGoesTo &AggregationClass cComesFrom £<br />

d ;<br />

describes<br />

V AtomicClass V AlternativeClass V IteratedClass V <strong>Se</strong>quentialClass <br />

9.2 Paradigmenübergreifende GRAL-Zusicherungen<br />

Für die vier Modellierungssichten, Aufgabensicht, Aufbausicht, Prozeßsicht und Objektsicht,<br />

inkludiert das SET-KOGGE-<strong>Metaschema</strong> jeweils ein Teil-<strong>Metaschema</strong>. Zusicherungen zur Abstimmung<br />

verschiedener Beschreibungparadigmen innerhalb einer Sicht sind daher nicht erforderlich.<br />

Die direkten Querbezüge zwischen den Darstellungen durch Aufgabengliederungspläne,<br />

Organigramme, Datenflußdiagramme und Objekt-Beziehungsdiagramme wurden bereits entlang<br />

der gemeinsamen Konzepte in den Teilmetaschemata hergestellt.<br />

Abzugleichen sind noch die Darstellungen der Prozeßsicht mit den Beschreibungen der Aufgabensicht<br />

bezüglich der Verfeinerungsstrukturen, der verwendeten Objekte und der mit der Aufgabenerledigung<br />

betrauten Organisationseinheiten.<br />

9.2.1 Paradigmenübergreifende Zusicherungen der Aufgaben- und<br />

Prozeßsicht<br />

In Aufgabengliederungsplänen und Datenflußdiagrammen werden Prozesse bzw. Aufgaben<br />

in Teilprozesse und -aufgaben zerlegt. Die Aufgabengliederung muß hierbei mit der Gliederung<br />

der entsprechenden Prozeßkomponenten der modellierten Aufgaben übereinstimmen<br />

[SET-TaskProcess 1]. Ebenso werden Aufgaben in Aufgabengliederungsplänen Objektkomponenten<br />

zugeordnet. Diese Objektkomponenten müssen sich in den Ein- bzw. Ausgabedatenflüssen<br />

der Datenflußmodellierung der entsprechenden Prozeßkomponente wiederfinden [SET-<br />

TaskProcess 2]. Bezüge zu Aufgaben- bzw. Prozeßträgern können sowohl in Aufgabengliederungsplänen<br />

als auch in Datenflußdiagrammen hergestellt werden. Auch hier müssen Aufgabenträger<br />

der Aufgaben mit denen ihrer Prozeßkomponenten übereinstimmen [SET-TaskProcess 3].


9.3 Anwendung des <strong>Metaschema</strong>s zur Software-Evaluation 253<br />

Vergleiche hierzu auch die Zusicherungen [RMS-TaskProcess 1] bis [RMS-TaskProcess 3] des<br />

integrierten <strong>Referenz</strong>-<strong>Metaschema</strong>s.<br />

for G in SET assert<br />

[SET-TaskProcess 1]:<br />

p : VProcess ; t : VTask p isProcessComponent t ¯<br />

δ p<br />

dfRefines<br />

0 δ t<br />

isDecomposedIn<br />

0<br />

p dfRefines &Process t isDecomposedIn isSubtask isProcessComponent ;<br />

[SET-TaskProcess 2]:<br />

p : VProcess ; t : VTask p isProcessComponent t ¯<br />

t isObjectComponent p dfComesFrom dfGoesTo describes ;<br />

[SET-TaskProcess 3]:<br />

p : VProcess ; t : VTask p isProcessComponent t ¯<br />

end .<br />

t executesTask p executesProcess &OrganizationalUnit<br />

9.3 Anwendung des <strong>Metaschema</strong>s zur Software-Evaluation<br />

Das <strong>Metaschema</strong> SET ist ein Teil der Werkzeugbeschreibung des KOGGE-Werkzeugs SET-<br />

KOGGE [Löcher / Pühler, 1997]. Dieses <strong>Metaschema</strong> legt die Datenstruktur des Werkzeugs zur<br />

Speicherung der Organisationsmodelle und der notwendigen Modellannotationen fest und definiert<br />

die vom Werkzeug überprüften Regeln zur Konsistenzsicherung der Teilmodelle.<br />

Abbildung 9.2 zeigt einen Bildschirmabzug der SET-KOGGE zur Evaluation von Branchenlösungen<br />

zur Unterstützung von Krankenhausinformationssystemen. Abgebildet sind hier Teile eines<br />

Aufgabengliederungsplans, eines Organigramms, eines Kontextdiagramms und eines Editors zur<br />

Erfassung angebotener Softwareunterstützung zu einer Aufgabe.


254 Software-Evaluation<br />

Abbildung 9.2: SET-KOGGE


10 Zusammenfassung und Ausblick<br />

Die Modellierung von Organisationen und Softwaresystemen basiert heute auf multiperspektivischen<br />

Darstellungen, in denen Teilmodelle unterschiedlicher Sichten miteinander kombiniert<br />

werden. Zur Darstellung dieser Teilmodelle verwenden die Methoden der Organisations- und<br />

Softwaretechnik eine kaum überschaubare Vielzahl unterschiedlicher <strong>visuelle</strong>r <strong>Modellierungssprachen</strong>,<br />

die sich sowohl in ihren konkreten Notationen als auch in den jeweils dargestellten<br />

Systemkonzepten und deren Beziehungen zueinander unterscheiden. Modelle konkreter Organisationen<br />

oder Softwaresysteme, die entlang solcher Methoden erstellt werden, bestehen aus<br />

mehreren Teilmodellen, die jeweils unterschiedliche Systemaspekte besonders herausstellen. Sowohl<br />

zur Sicherstellung der Konsistenz der einzelnen Teilmodelle zueinander als auch zur Entwicklung<br />

von Modellierungswerkzeugen sind die jeweils in den Methoden zusammengefaßten<br />

Beschreibungsmittel zu definieren und die Querbezüge zwischen den beschriebenen Konzepten<br />

festzulegen.<br />

Bezüglich der Vorgehensweisen und der eingesetzten Modellierungsmittel weisen die Modellierung<br />

und die Gestaltung von Organisationen und Softwaresystemen große Ähnlichkeiten auf.<br />

Auch bedingen sich Organisationsentwicklung und Softwareentwicklung gegenseitig. Gestaltungsmaßnahmen<br />

innerhalb einer Organisation werden einerseits durch die vorhandenen Softwaresysteme<br />

beeinflußt, wirken anderseits aber auch auf die Entwicklung bzw. die Anpassung<br />

dieser Softwaresysteme zurück. In ähnlicher Weise wird die Entwicklung von Softwaresystemen<br />

durch die Organisation beeinflußt und wirkt ihrerseits wieder auf die Organisation, die i. allg.<br />

<strong>für</strong> den bestmöglichen Einsatz der Software anzupassen ist. Vor dem Hintergrund einer durchgängigen<br />

Modellierung von Organisationen und Softwaresystemen bietet sich daher auch eine<br />

gemeinsame Betrachtung der <strong>visuelle</strong>n <strong>Modellierungssprachen</strong> der Organisations- und Softwaretechnik<br />

an.<br />

In dieser Arbeit wurde daher ein Klassifikationsschema der Beschreibungsmittel der Organisations-<br />

und Softwaretechnik entwickelt und ein integriertes <strong>Metaschema</strong> erstellt, das die konzeptionellen<br />

Grundlagen und Zusammenhänge dieser <strong>visuelle</strong>n <strong>Modellierungssprachen</strong> definiert<br />

und als <strong>Referenz</strong> u. a. zur Auswahl und Einordnung von Beschreibungsmitteln in Modellierungsmethoden<br />

und zur Entwicklung von Modellierungswerkzeugen dienen kann.<br />

Klassifikation der Beschreibungsmittel<br />

Zur Einordnung und Strukturierung der Beschreibungsmittel der Organisations- und Softwaretechnik<br />

wurde ein Klassifikationsschema entwickelt. Ausgehend von den wesentlichen, zur Modellierung<br />

von Organisationen und Softwaresystemen betrachteten Aspekten wurden die zentralen<br />

Modellierungssichten Aufgabensicht, Aufbausicht, Prozeßsicht und Objektsicht eingeführt.


256 Zusammenfassung und Ausblick<br />

Beschreibungsmittel dieser Sichten stellen jeweils die Konzepte Aufgabe, Organisationseinheit,<br />

Prozeß bzw. Objekt besonders heraus. Zur Beschreibung von Organisationen und Softwaresystemen<br />

aus diesen Sichten wurden verschiedene Beschreibungsparadigmen identifiziert, die unterschiedliche<br />

Beziehungsgeflechte zwischen den jeweils modellierten Konzepten betonen.<br />

Das dieser Arbeit zugrunde liegende Klassifikationsschema strukturiert die zur Modellierung von<br />

Organisationen und Softwaresystemen eingesetzten Beschreibungsmittel entlang dieser Sichten<br />

und Paradigmen.<br />

Durch Abstraktion von konkreten Notationen der einzelnen Beschreibungsmittel erlaubt dieses<br />

Klassifikationsschema eine sprachunabhängige Untersuchung und Darstellung der in dieser Arbeit<br />

behandelten <strong>visuelle</strong>n <strong>Modellierungssprachen</strong>. Die Darstellung und Einordnung dieser Beschreibungsmittel<br />

erfolgte entlang der in den Paradigmen zusammengefaßten Modellierungskonzepte<br />

und deren Beziehungen. Das Klassifikationsschema hat sich in dieser Arbeit sowohl<br />

zur Einführung diverser Beschreibungsmittel als auch zur strukturierten Entwicklung des integrierten<br />

<strong>Referenz</strong>-<strong>Metaschema</strong>s als umfassendes und valides Hilfsmittel erwiesen.<br />

Integriertes <strong>Referenz</strong>-<strong>Metaschema</strong><br />

Die Definition des integrierten <strong>Referenz</strong>-<strong>Metaschema</strong>s der <strong>visuelle</strong>n <strong>Modellierungssprachen</strong> <strong>für</strong><br />

Organisationen und Softwaresysteme erfolgte mit den Mitteln der graphbasierten Konzeptmodellierung<br />

entlang der Beschreibungsparadigmen des Klassifikationsschemas. Zu jedem Beschreibungsparadigma<br />

wurde ein <strong>Referenz</strong>-<strong>Metaschema</strong> entwickelt, das die wesentlichen von ihm betrachteten<br />

Modellierungskonzepte und deren Beziehungen abbildet.<br />

Die <strong>Referenz</strong>-Eigenschaft dieser paradigmenbezogenen <strong>Metaschema</strong>ta wurde durch Ableitung<br />

von <strong>Metaschema</strong>ta konkreter Beschreibungsmittel der jeweils betrachteten Paradigmen nachgewiesen.<br />

Die <strong>Metaschema</strong>ta der wesentlichen Vertreter der einzelnen Paradigmen konnten durch<br />

minimale Einschränkungen und Ergänzungen aus dem entsprechenden <strong>Referenz</strong>-<strong>Metaschema</strong><br />

entwickelt werden.<br />

Diese paradigmenbezogenen <strong>Metaschema</strong>ta besitzen bereits die Eigenschaften von <strong>Referenz</strong>modellen.<br />

Sie sind einerseits so allgemeingültig, daß die Ableitung spezialisierter <strong>Metaschema</strong>ta<br />

leicht möglich ist. Anderseits sind sie aber auch so konkret und vollständig, daß diese Ableitungen<br />

nur marginale Anpassungen der <strong>Referenz</strong>-<strong>Metaschema</strong>ta erfordern. Analog zum Nachweis<br />

der Anwendbarkeit von Entwurfsmustern wurden zu jedem <strong>Referenz</strong>-<strong>Metaschema</strong> mehrere<br />

konkrete Anwendungen aufgeführt, die in Einzelfällen bereits den <strong>Metaschema</strong>ta konkreter Beschreibungsmittel<br />

entsprachen. Die Erweiterbarkeit der <strong>Referenz</strong>-<strong>Metaschema</strong>ta wird durch den<br />

verwendeten Modellierungsansatz EER/GRAL sichergestellt. Da die Ableitung mehrerer spezialisierter<br />

<strong>Metaschema</strong>ta aus den <strong>Referenz</strong>-<strong>Metaschema</strong>ta leicht möglich war, kann auch davon<br />

ausgegangen werden, daß Spezialisierungen <strong>für</strong> hier nicht berücksichtigte konkrete Modellierungsmittel<br />

durch einfache Anpassungen möglich sind.<br />

Die Integrationsfähigkeit der paradigmenbezogenen <strong>Referenz</strong>-<strong>Metaschema</strong>ta wurde bei der Zusammenfassung<br />

zum integrierten <strong>Referenz</strong>-<strong>Metaschema</strong> der Beschreibungsmittel <strong>für</strong> Organisationen<br />

und Softwaresysteme gezeigt. Entlang der Modellierungskonzepte, die in den verschiedenen<br />

Paradigmen gemeinsam abgebildet werden, wurden die einzelnen <strong>Referenz</strong>-<strong>Metaschema</strong>ta


Zusammenfassung und Ausblick 257<br />

vereinigt. Dieses integrierte <strong>Referenz</strong>-<strong>Metaschema</strong> definiert die zentralen, heute zur Modellierung<br />

von Organisationen und Softwaresystemen dargestellten Konzepte und deren Beziehungen<br />

in ihrem multiperspektivischen Kontext.<br />

Das integrierte <strong>Referenz</strong>-<strong>Metaschema</strong> wurde zur Ableitung spezialisierter, integrierter <strong>Metaschema</strong>ta<br />

konkreter Modellierungsmethoden und -sprachen zur Organisations- und Softwaremodellierung<br />

eingesetzt. So wurden hieraus exemplarisch <strong>Metaschema</strong>ta zur Definition der Beschreibungskonzepte<br />

des ARIS-Ansatzes, der Unified Modeling Language und der Organisationsmodellierung<br />

im Rahmen der Software-Evaluation abgeleitet. Auch diese Spezialisierungen des integrierten<br />

<strong>Referenz</strong>-<strong>Metaschema</strong>s erforderten nur geringfügige Anpassungen der hierbei eingebundenen<br />

paradigmenbezogenen <strong>Referenz</strong>-<strong>Metaschema</strong>ta und der zur Integration erforderlichen<br />

Zusicherungen. In ähnlicher Weise können aus dem integrierten <strong>Referenz</strong>-<strong>Metaschema</strong> auch <strong>Metaschema</strong>ta<br />

anderer Ansätze und Sprachen zur Modellierung von Organisationen und Softwaresystemen<br />

abgeleitet werden.<br />

Neben der zuvor skizzierten Verwendung der <strong>Referenz</strong>-<strong>Metaschema</strong>ta als Modellierungsmittel<br />

zur Erstellung spezialisierter <strong>Metaschema</strong>ta konkreter Methoden und Techniken erlaubt das integrierte<br />

<strong>Referenz</strong>-<strong>Metaschema</strong> die konzeptbasierte Beschreibung und Untersuchung von Modellierungsmethoden.<br />

Unabhängig von konkreten Notationen kann die Schulung von Modellierungsmethoden<br />

entlang der darzustellenden Konzepte und deren Beziehungen erfolgen. Das integrierte<br />

<strong>Referenz</strong>-<strong>Metaschema</strong> stellt die Modellierungskonzepte in ihrem sichtenübergreifenden<br />

Zusammenhang dar. Daher eignet es sich auch zur Festlegung einer einheitlichen und methodenübergreifenden<br />

Terminologie der insgesamt im Rahmen der Organisations- und Softwaremodellierung<br />

zu beschreibenden Konzepte. Ebenso bietet das integrierte <strong>Referenz</strong>-<strong>Metaschema</strong> einen<br />

von konkreten Modellierungsmethoden unabhängigen Maßstab zum Vergleich und zur Diskussion<br />

unterschiedlicher Modellierungsansätze. Insbesondere die Betrachtung der Abweichungen<br />

der <strong>Metaschema</strong>ta konkreter Modellierungsansätze vom <strong>Referenz</strong>-<strong>Metaschema</strong> ermöglicht Aussagen<br />

über die Mächtigkeit der zu vergleichenden Ansätze hinsichtlich der Unterstützung der<br />

multiperspektivischen Modellierung aus den vier Modellierungssichten und den hierbei verwendeten<br />

Modellierungsparadigmen.<br />

Das integrierte <strong>Referenz</strong>-<strong>Metaschema</strong> liefert darüber hinaus auch einen wesentlichen Beitrag<br />

zur Erstellung von Softwarewerkzeugen zur Unterstützung der Modellierung von Organisationen<br />

und Softwaresystemen. Das <strong>Referenz</strong>-<strong>Metaschema</strong> definiert hierzu die Repository-Struktur<br />

zur internen Verwaltung der Modelldaten und formalisiert die Konsistenz der Teilmodelle unterschiedlicher<br />

Beschreibungsparadigmen zueinander. Die Anwendung des integrierten <strong>Referenz</strong>-<br />

<strong>Metaschema</strong>s zur Entwicklung von Modellierungswerkzeugen wurde anhand eines Werkzeugs<br />

zur Unterstützung der Softwareevaluation gezeigt. Auf Basis des KOGGE Meta-CASE-Ansatzes<br />

können in ähnlicher Weise Modellierungswerkzeuge zur Unterstützung weiterer Ansätze zur Organisations-<br />

und Softwaremodellierung erstellt werden.<br />

Ausblick<br />

Neben den Anwendungsbereichen, die in der vorliegenden Arbeit diskutiert wurden, eröffnen<br />

sowohl das hier entwickelte <strong>Referenz</strong>-<strong>Metaschema</strong> der Beschreibungsmittel <strong>für</strong> Organisationen<br />

und Softwaresysteme als auch der hierzu verwendete Ansatz zur <strong>Referenz</strong>-Metamodellierung<br />

weitergehende Anwendungsbereiche im Method-Engineering und im Werkzeugbau.


258 Zusammenfassung und Ausblick<br />

Auf syntaktischer Ebene dient das integrierte <strong>Referenz</strong>-<strong>Metaschema</strong> u. a. zur Konsolidierung des<br />

Method-Engineerings, und es erlaubt damit die sichten- und paradigmenübergreifende Integration<br />

der Modellierungsmethoden der Organisations- und Softwaretechnik. Es bildet die Grundlage<br />

zur Unterstützung der Interoperabilität von Modellierungswerkzeugen und definiert eine Basis<br />

zur Formalisierung der <strong>Se</strong>mantik von <strong>Modellierungssprachen</strong>.<br />

Das <strong>Referenz</strong>-<strong>Metaschema</strong> legt die Konzepte und Beziehungen der zur Modellierung verwendeten<br />

<strong>visuelle</strong>n Sprachen fest und dient hiermit zur Konsolidierung der Methoden und Techniken<br />

in Organisations- und Softwaretechnik.<br />

Die abstrakte Syntax der Modellierungsmittel wird durch das <strong>Referenz</strong>-<strong>Metaschema</strong>, unabhängig<br />

von konkreten Notationen, in einer allgemeingültigen Form beschrieben. Durch die Berücksichtigung<br />

der heute zur Modellierung von Organisationen und Softwaresystemen verwendeten<br />

Beschreibungsmitteln repräsentiert es den aktuellen Stand dieser Modellierungsmittel auf Ebene<br />

der abstrakten Syntax.<br />

Wird das hier vorgeschlagene <strong>Metaschema</strong> als allgemeingültiges <strong>Referenz</strong>-<strong>Metaschema</strong> der zur<br />

Modellierung eingesetzten Notationen akzeptiert, kann es aufgrund des damit verbundenen normativen<br />

Charakters als ein stabiles Fundament zur Entwicklung neuer Beschreibungsformen dienen.<br />

Mit Ausnahme weniger, marginaler Anpassungen des <strong>Referenz</strong>-<strong>Metaschema</strong>s kann sich die<br />

Gestaltung neuer Modellierungsnotationen auf die Entwicklung ergonomischer und an den Modellierungskontext<br />

angepaßter konkreter Notationen und auf die Formalisierung der <strong>Se</strong>mantik<br />

dieser <strong>Modellierungssprachen</strong> konzentrieren.<br />

Die Modellierungsansätze der Organisationstechnik und der Softwaretechnik wurden bislang<br />

eher unabhängig voneinander betrachtet. Durch das hier entwickelte <strong>Referenz</strong>-<strong>Metaschema</strong> wird<br />

ein Beitrag zur Integration dieser Techniken geleistet.<br />

Diese unabhängige Betrachtung von Organisationen und Softwaresystemen hatte u. a. zur Folge,<br />

daß bei der Übertragung von Organisationsmodellen in Softwaremodelle bzw. von Softwaremodellen<br />

in Organisationsmodelle weitreichende Überarbeitungen nötig wurden. Auch wenn zur<br />

Organisationsmodellierung und zur Softwaremodellierung weiterhin unterschiedliche Notationen<br />

verwendet werden, können diese Darstellungen aufgrund der integrativen Ausrichtung des<br />

<strong>Referenz</strong>-<strong>Metaschema</strong>s auf einem gemeinsamen <strong>Metaschema</strong> basieren.<br />

Das hier vorgeschlagene <strong>Referenz</strong>-<strong>Metaschema</strong> faßt die Konzepte der <strong>visuelle</strong>n Modellierungsprachen<br />

der Organisationstechnik und die Konzepte der <strong>visuelle</strong>n Modellierungsprachen der<br />

Softwaretechnik in einem gemeinsamen Modell zusammen. Hierdurch werden insbesondere die<br />

Querbezüge zwischen Modellen aus Sicht der Organisation i. e. S. und Modellen aus Sicht der<br />

Softwaresysteme i. e. S. spezifiziert. Das integrierte <strong>Referenz</strong>-<strong>Metaschema</strong> bietet hierdurch eine<br />

Grundlage zur Vereinigung der Organisations- und Softwaremodelle und verwischt die Grenzen<br />

zwischen Organisations- und Softwaretechnik auf notationeller Ebene.<br />

Zur Modellierung von Organisationen und von Softwaresystemen existiert ein weites Spektrum<br />

verschiedener Softwarewerkzeuge, die unterschiedliche Modellierungsmethoden und Notationen<br />

unterstützen. Die Übernahme von vorhandenen Modellen in Werkzeuge, die erweiterte Funktionalitäten<br />

anbieten oder modernere Notationen bereitstellen, ist kaum möglich, da es z. Z. keinen<br />

allgemein akzeptierten Mechanismus zur Interoperabilität von unterschiedlichen Modellierungswerkzeugen<br />

gibt. Das <strong>Referenz</strong>-<strong>Metaschema</strong> kann jedoch als Grundlage dienen, die Interoperabilität<br />

dieser Werkzeuge zu ermöglichen.


Zusammenfassung und Ausblick 259<br />

Die Kombination verschiedener Modellierungswerkzeuge setzt insbesondere Kenntnis der durch<br />

diese Werkzeuge abgebildeten Modellierungskonzepte voraus. Die Interoperabilität zwischen<br />

Modellierungswerkzeugen erfordert eine Einigung über die jeweils in den Werkzeugen verwendeten<br />

<strong>Metaschema</strong>ta und über die <strong>Metaschema</strong>ta, die die gemeinsame Nutzung der Modelldaten<br />

ermöglichen. Durch das <strong>Referenz</strong>-<strong>Metaschema</strong> wird sowohl eine Unterstützung zur Ableitung<br />

der individuellen <strong>Metaschema</strong>ta der einzelnen Werkzeuge geboten, als auch die Festlegung eines<br />

den aktuellen Interoperabilitätskontext beschreibenden <strong>Metaschema</strong>s ermöglicht.<br />

Auf Basis dieser <strong>Metaschema</strong>ta können, mit Hilfe entsprechender Mechanismen zur Schematransformation,<br />

Überführungsfunktionen zur Unterstützung der Datenmigration zwischen unterschiedlichen<br />

Modellierungswerkzeugen in konkreten Interoperabilitätsszenarien abgeleitet werden.<br />

Der Austausch von Modelldaten zwischen unterschiedlichen Werkzeugen erfordert, neben<br />

den Modelldaten selbst, auch die schematische Beschreibung dieser Daten durch ein <strong>Metaschema</strong>.<br />

Zum gemeinsamen Austausch von Schemainformationen und Modelldaten wurde in [Ebert<br />

et al., 1999a] das GraX-Austauschformat (graph exchange format) im Kontext der Interoperabilität<br />

von Software-Reengineering-Werkzeugen vorgestellt. In analoger Form können hiermit auch<br />

Organisations- und Softwaremodelle, einschließlich der zugehörigen <strong>Metaschema</strong>ta, zwischen<br />

Modellierungswerkzeugen ausgetauscht werden.<br />

Die Betrachtungen der Modellierungsmittel in dieser Arbeit bezogen sich ausschließlich auf syntaktische<br />

und notationelle Aspekte. Nicht betrachtet wurde die <strong>Se</strong>mantik dieser Beschreibungsmittel.<br />

Durch die in dieser Arbeit definierten bzw. abgeleiteten <strong>Metaschema</strong>ta wurde lediglich die<br />

syntaktische Korrektheit der hierdurch abgebildeten Modelle festgelegt. Die Bedeutung dieser<br />

Modelle wurde nur soweit berücksichtigt, wie es <strong>für</strong> ein intuitives Verstehen der Darstellungstechniken<br />

und der Festlegung der abgebildeten Konzepte und deren Beziehungen notwendig war.<br />

Das <strong>Referenz</strong>-<strong>Metaschema</strong> bietet jedoch auch die Grundlage zur Formalisierung der <strong>Se</strong>mantik<br />

dieser Beschreibungsmittel. In [Ebert / Süttenbach, 1997b], [Süttenbach, 1998], [Süttenbach,<br />

2000] wird ein Ansatz zur operationalen Definition der <strong>Se</strong>mantik <strong>visuelle</strong>r Sprachen objektorientierter<br />

Methoden vorgestellt, der auf <strong>Metaschema</strong>ta dieser Sprachen basiert.<br />

Ebenso erlaubt der in dieser Arbeit vorgestellte und verwendete Ansatz zur <strong>Referenz</strong>-Metamodellierung<br />

auch die Anwendung in anderen Bereichen der Softwaretechnik, z. B. im Software-<br />

Reengineering, und eröffnet vielfältige Möglichkeiten zur Weiterentwicklung der Metatechnologie.<br />

Die Methoden und Techniken des Software-Reengineerings untersuchen Softwaresysteme aus<br />

unterschiedlichen Sichten. Hierbei ist ein weites Spektrum zwischen sehr grobgranularen Softwarerepräsentationen<br />

zur Analyse auf der Ebene der Softwarearchitektur und sehr feingranularen<br />

Betrachtungen zur Analyse von Daten- und Kontrollflußabhängigkeiten auf Ebene abstrakter<br />

Syntaxbäume abzubilden. Ebenso sind auch Softwaresysteme unterschiedlicher Programmiersprachen,<br />

Datenbanksprachen und Job-Control-Sprachen, die auch kombiniert eingesetzt werden,<br />

zu berücksichtigen.<br />

Mit Hilfe des in dieser Arbeit verwendeten Modellierungsansatzes können auch <strong>Referenz</strong>-<br />

<strong>Metaschema</strong>ta <strong>für</strong> ausgewählte Anwendungsszenarien des Software-Reengineerings entwickelt<br />

werden. Im GUPRO-Projekt (vgl. u. a. [Ebert et al., 1998], [Kullbach et al., 1998], [Kullbach /<br />

Winter, 1999]) wurden bereits solche EER/GRAL-<strong>Metaschema</strong> <strong>für</strong> integrierte Softwaresysteme<br />

auf Architekturebene und <strong>für</strong> feingranulare Daten- und Kontrollflußanalysen entwickelt. Die-


260 Zusammenfassung und Ausblick<br />

se <strong>Metaschema</strong>ta können als Ausgangspunkt zur Entwicklung von <strong>Referenz</strong>-<strong>Metaschema</strong>ta des<br />

Software-Reengineerings dienen.<br />

Auch der in dieser Arbeit verwendete EER/GRAL-Ansatz zur graphbasierten Konzeptmodellierung<br />

bietet noch umfangreichen Spielraum zur Weiterentwicklung der hier zur Modellierung<br />

bereitgestellten Metatechnologie.<br />

Während die Ableitung spezieller Metamodelle in dieser Arbeit eher intuitiv erfolgte, könnte<br />

durch die Formalisierung von Operationen auf <strong>Metaschema</strong>ta die Spezialisierung von <strong>Referenz</strong>-<br />

<strong>Metaschema</strong>ta deutlicher strukturiert und vereinfacht werden. Beispielsweise könnten, ausgehend<br />

von <strong>Referenz</strong>-<strong>Metaschema</strong>ta und zugehörigen Ableitungsfunktionen zur Spezialisierung,<br />

auf Basis von Schema-Algebren, Transformationsfunktionen zur Migration von Modelldaten unterschiedlicher<br />

Schemata generiert werden. Solche Mechanismen könnten insbesondere im Rahmen<br />

der Re-Technologien zur Transformation von Modellen und Programmsystemen eingesetzt<br />

werden.<br />

Mit dem in dieser Arbeit vorgestellten und validierten <strong>Referenz</strong>-<strong>Metaschema</strong> der Beschreibungsmittel<br />

<strong>für</strong> Organisationen und Softwaresysteme wurde ein Beitrag zur Konsolidierung und Stabilisierung<br />

des aktuellen Standes des Method-Engineerings im Kontext der integrierten Modellierung<br />

von Organisationen und Softwaresystemen auf notationeller Basis geleistet. Sowohl dieses<br />

integrierte <strong>Referenz</strong>-<strong>Metaschema</strong> als auch der zu seiner Erstellung verwendete EER/GRAL-<br />

Ansatz erlauben, über diese Arbeit hinaus, eine weitergehende Anwendung in der Organisationsund<br />

Softwaretechnik.


A Formalisierung des<br />

<strong>Referenz</strong>-<strong>Metaschema</strong>s der<br />

Beschreibungsmittel <strong>für</strong><br />

Organisationen und Softwaresysteme<br />

(zusammenfassende Darstellung)<br />

In den folgenden Kapiteln wird die Definition des <strong>Referenz</strong>-<strong>Metaschema</strong>s der Beschreibungsmittel<br />

<strong>für</strong> Organisationen und Software-Systeme zusammengefaßt dargestellt. Auf das EER-<br />

Diagramm in Kapitel A.1 folgen in Kapitel A.2 bis A.6 die GRAL-Zusicherungen der Einzelparadigmen<br />

und die paradigmenübergreifenden Zusicherungen.


262 Formalisierung des <strong>Referenz</strong>-<strong>Metaschema</strong>s<br />

A.1 EER-Modell<br />

MeansOfComm<strong>uni</strong>cation<br />

Document<br />

personal Phone<br />

Delivery:bool<br />

iteration : string<br />

duration : int<br />

Message msgCorrespondsTo<br />

msgComesFrom<br />

Comm<strong>uni</strong>cation<br />

frequency:float<br />

duration:float<br />

FlatFlow<br />

OfControl<br />

Attribute<br />

Value<br />

Pair<br />

isValue<br />

valIsInstanceOf<br />

Call<br />

Create<br />

Call<br />

Value<br />

transmits<br />

msgGoesTo<br />

AsynchronousFlow<br />

OfControl<br />

Return<br />

Destroy<br />

Call<br />

isInputParameter<br />

Fax EMail<br />

identifies isReturnParameter<br />

comm<strong>uni</strong>cates<br />

name:string<br />

Attribute<br />

has<br />

Domain<br />

name:string<br />

Domain<br />

comesFrom<strong>Se</strong>nder<br />

(comm<strong>uni</strong>cates)<br />

goesToReceiver<br />

(comm<strong>uni</strong>cates)<br />

isMsgIn<br />

callsMethod<br />

isGuard<br />

hasAttribute<br />

ValuePair<br />

name:string<br />

>1<br />

hasAttribute<br />

Comm<strong>uni</strong>cationPartner<br />

isMemberOf informs<br />

Interaction<br />

Scenario<br />

name : string<br />

Method<br />

name : string<br />

Predicate<br />

name : string<br />

OrganizationalUnit<br />

Instance<br />

Item<br />

name : string<br />

abstract : bool<br />

objIsInstanceOf<br />

(isInstanceOf)<br />

ClassItem<br />

Object<br />

Class<br />

=2<br />

External<br />

Partner<br />

LEPosition<br />

assists Leading Executing<br />

Position Position<br />

Position<br />

Object<br />

objClsIsA<br />

(isA)<br />

Group<br />

Assisting<br />

Position<br />

=2<br />

iRelates<br />

iGoesTo iComesFrom<br />

(iRelates)<br />

(iRelates)<br />

limits : int int<br />

Department<br />

isInstanceOf<br />

cGoesTo<br />

(cRelates)<br />

cRelates<br />

cComes<br />

From<br />

isA (cRelates)<br />

leads<br />

isHeadOf<br />

(isPartOf)<br />

delegates<br />

injective:bool<br />

order : int<br />

Relationship<br />

relIsInstanceOf<br />

(isInstanceOf)<br />

RelationshipClass<br />

AggregationClass<br />

dir: bool<br />

relClsIsA<br />

(isA)<br />

IsPartOf instructs substitutes<br />

rank : string<br />

competence: string<br />

qualification : string<br />

capacity : int<br />

Mechanism<br />

Technical<br />

Means<br />

describes<br />

describes<br />

executesTask<br />

isObject<br />

Component<br />

executesProcess<br />

name:string<br />

executionRole : string<br />

TaskDecomposition<br />

isDecomposedIn<br />

Process<br />

Atomic<br />

Process <strong>Se</strong>quence Parallel<br />

name:string<br />

DfItem<br />

DfObject<br />

criterion:<br />

{process, object}<br />

connection:<br />

{and,or}<br />

isProcess<br />

Component<br />

Iteration Alternative<br />

dfRefines<br />

isSubtask<br />

Task<br />

name : string<br />

location : string<br />

duration : float<br />

time : date<br />

resources:string<br />

dfGoesTo<br />

Store<br />

isSubprocess<br />

controls<br />

Dataflow<br />

isSubprocess<br />

isSubprocess<br />

Terminator<br />

isAlternative isSubprocess<br />

dfComesFrom<br />

isExecutionTask (isSubtask)<br />

isLeadingTask (isSubtask)<br />

isPlanningTask (isSubtask)<br />

isControllingTask (isSubtask)<br />

isAdministrativeTask(isSubtask)<br />

dfCorrespondsTo<br />

PointOf<br />

Contact<br />

Transition<br />

Case<br />

Predicate<br />

name:string<br />

controls<br />

cfRefines<br />

isComponentIn<br />

transComesFrom transGoesTo<br />

isGuard<br />

triggers<br />

effects<br />

NetItem<br />

name:string<br />

Blob<br />

AtomicBlob<br />

NetObject<br />

name:string<br />

Dataflow<br />

Scenario<br />

End<br />

Blob<br />

isEntryAction<br />

isBlobAction<br />

isExitAction<br />

Event<br />

contains<br />

Xor<br />

Blob<br />

history:bool<br />

>1<br />

cfComesFrom cfGoesTo<br />

starts<br />

With<br />

contains<br />

Flow<br />

OperatorFlow<br />

Merge Branch<br />

And<br />

Blob<br />

Elementary<br />

Flow<br />

Fork<br />

Xor<br />

Branch<br />

Xor<br />

Merge<br />

Join<br />

Or<br />

Branch<br />

Or<br />

Merge


A.2 GRAL-Zusicherungen der Aufgabensicht 263<br />

A.2 GRAL-Zusicherungen der Aufgabensicht<br />

A.2.1 GRAL-Zusicherungen des Aufgabengliederungsparadigmas<br />

for G in RMS assert<br />

[RMS-TDP 1]:<br />

isTree eGraph EisDecomposedIn E isSubtask<br />

end .<br />

for G in RMS define<br />

mainTask : VTask where<br />

end .<br />

mainTask root eGraph E isDecomposedIn E<br />

isSubtask<br />

A.3 GRAL-Zusicherungen der Aufbausicht<br />

A.3.1 GRAL-Zusicherungen des Stellengliederungsparadigmas<br />

for G in RMS assert<br />

[RMS-PDP 1]:<br />

isDag eGraph Eleads ;<br />

isDag eGraph Einstructs ;<br />

isDag eGraph Esubstitutes ;<br />

isDag eGraph Edelegates ;<br />

[RMS-PDP 2]:<br />

isTree eGraph E<br />

isPartOf<br />

[RMS-PDP 3]:<br />

d : VDepartment ; h : VLeadingPosition h isHeadOf<br />

end .<br />

;<br />

d isPartOf &Position h leads instructs £<br />

d ¯


264 Formalisierung des <strong>Referenz</strong>-<strong>Metaschema</strong>s<br />

A.3.2 GRAL-Zusicherungen des Komm<strong>uni</strong>kationsparadigmas<br />

for G in RMS assert<br />

[RMS-CommP 1]:<br />

c : VComm<strong>uni</strong>cation δ<br />

comesFrom<strong>Se</strong>nder<br />

c 1 δ c<br />

goesToReceiver<br />

1 ¯<br />

δ type<br />

comm<strong>uni</strong>cates<br />

c 0<br />

end .<br />

A.4 GRAL-Zusicherungen der Prozeßsicht<br />

A.4.1 GRAL-Zusicherungen des Datenflußpardigmas<br />

for G in RMS assert<br />

[RMS-DFP 1]:<br />

s1 s2 : VStore s1 dfComesFrom dfGoesTo s2 <br />

t1 t2 : VTerminator t1 dfComesFrom dfGoesTo t2 <br />

p1 p2 : VPointOfContact p1 dfComesFrom dfGoesTo p2 ;<br />

[RMS-DFP 2]:<br />

p : V Process δ dfRefines p 0 ¯ 3 δ dfRefines p 6;<br />

[RMS-DFP 3]:<br />

isDag eGraph E dfRefines<br />

[RMS-DFP 4]:<br />

a b : VDfItem a dfRefines dfRefines b ¯<br />

a dfRefines b dfRefines ;<br />

[RMS-DFP 5]:<br />

a b : VDfObject a dfComesFrom dfGoesTo b ¯<br />

a dfRefines b dfRefines ;<br />

[RMS-DFP 6]:<br />

c : E ÓÖÖ×ÔÓÒ×ÌÓ ¯ p : V ÈÖÓ ×× δ dfRefines p 0 ¯<br />

ω c dfGoesTo dfComesFrom<br />

;<br />

[RMS-DFP 7]:<br />

d : VDataflow ; p : VProcess δ<br />

dfRefines<br />

p 0 d dfGoesTo p ¯<br />

1 poc : VPointOfContact d dfCorresponds poc p ;<br />

dfRefines p ¯<br />

p ;<br />

poc dfComesFrom dfGoesTo dfRefines


A.4 GRAL-Zusicherungen der Prozeßsicht 265<br />

d : VDataflow ; p : VProcess δ<br />

dfRefines<br />

p 0 d dfComesFrom p ¯<br />

1 poc : VPointOfContact d dfCorresponds poc p ;<br />

dfRefines p ¯<br />

poc dfGoesTo dfComesFrom dfRefines<br />

[RMS-DFP 8]:<br />

p : V Process ; d 1 d 2 : V Dataflow ; poc 1 poc 2 : V PointOfContact <br />

d 1 d 2 d 1 dfGoesTo dfComesFrom p dfRefines poc 1 dfCorrespondsTo d 1 <br />

d 2 dfGoesTo dfComesFrom p dfRefines poc 2 dfCorrespondsTo d 2 ¯<br />

poc 1 poc 2 ;<br />

[RMS-DFP 9]:<br />

d : VDataflow ; p : VProcess d dfRefines p ¯<br />

p ;<br />

d dfGoesTo dfComesFrom dfRefines<br />

[RMS-DFP 10]:<br />

poc : V PointOfContact ¯<br />

poc dfCorrespondsTo describes<br />

isA cGoesTo &AggregationClass cComesFrom £<br />

describes dfGoesTo dfComesFrom<br />

poc ;<br />

[RMS-DFP 11]:<br />

d : V Dataflow ¯<br />

d dfGoesTo dfComesFrom &Store describes<br />

isA cGoesTo &AggregationClass cComesFrom £<br />

end .<br />

describes d<br />

A.4.2 GRAL-Zusicherungen des Zustandsübergangsparadigmas<br />

for G in RMS assert<br />

[RMS-STP 1]:<br />

e : VEndBlob ¯ δ e 0;<br />

transComesFrom<br />

[RMS-STP 2]:<br />

isTree eGraph E contains<br />

[RMS-STP 3]:<br />

type root eGraph E contains<br />

;<br />

XorBlob ;<br />

[RMS-STP 4]:<br />

δ transComesFrom root eGraph E contains δ transGoesTo root eGraph E contains 0;<br />

[RMS-STP 5]:<br />

1 b : V Blob ¯ b contains root eGraph E contains startsWith<br />

b ;


266 Formalisierung des <strong>Referenz</strong>-<strong>Metaschema</strong>s<br />

[RMS-STP 6]:<br />

x : V XorBlob δ transGoesTo x 0 x contains &AndBlob ¯<br />

δ startsWith x 1;<br />

[RMS-STP 7]:<br />

e : E startsWith ¯ α e contains<br />

ω e ;<br />

[RMS-STP 8]:<br />

x y : VXorBlob x contains &AndBlob contains y x y ¯<br />

x<br />

y ;<br />

£<br />

contains transComesFrom transGoesTo<br />

£<br />

contains<br />

[RMS-STP 9]:<br />

t1 t2 : VTransition ; a b c d : VBlob t1 t2 <br />

t1 triggers &Event triggers t2 <br />

a transComesFrom t1 transGoesTo b <br />

c transComesFrom t2 transGoesTo d ¯<br />

lca a b lca c d <br />

a c <br />

a c a<br />

a<br />

£<br />

contains c a<br />

£<br />

contains c <br />

end .<br />

hierbei gilt:<br />

b d <br />

b d b<br />

b<br />

lca : V Blob ¢V Blob V Blob<br />

£<br />

contains &AndBlob<br />

£<br />

contains<br />

£<br />

contains &AndBlob<br />

£<br />

lca λvw : VBlob ¯ µx: VBlob ¯ v contains x<br />

y : VBlob v<br />

£<br />

contains c<br />

d b<br />

£<br />

contains<br />

£<br />

contains d<br />

w <br />

£<br />

contains<br />

£<br />

contains y<br />

A.4.3 GRAL-Zusicherungen des Netzparadigmas<br />

d <br />

£<br />

contains w ¯ x<br />

for G in RMS assert<br />

[RMS-NP 1]:<br />

f : VElementaryFlow ¯ δ<br />

cfComesFrom<br />

f 1 δ<br />

cfGoesTo<br />

f 1;<br />

[RMS-NP 2]:<br />

f : V Branch V Fork ¯ δ cfComesFrom f 1 δ cfGoesTo<br />

[RMS-NP 3]:<br />

f : V Merge V Join ¯ δ cfComesFrom f 1 δ cfGoesTo<br />

f 1;<br />

f 1;<br />

£<br />

contains y


A.5 GRAL-Zusicherungen der Objektsicht 267<br />

[RMS-NP 4]:<br />

isDag eGraph E cfRefines<br />

;<br />

[RMS-NP 5]:<br />

a b : V NetItem a cfRefines cfRefines b ¯ a cfRefines b cfRefines ;<br />

[RMS-NP 6]:<br />

a b : V NetObject a cfComesFrom cfGoesTo b ¯ a cfRefines b cfRefines ;<br />

[RMS-NP 7]:<br />

p 1 : V Process δ cfRefines 0 ¯<br />

end .<br />

p 1 executesProcess Ë p 2 : V Process p 1 cfRefines p 2 ¯ p 2 executesProcess <br />

A.4.4 GRAL-Zusicherungen des Kontrollflußparadigmas<br />

for G in RMS assert<br />

[RMS-CP 8]:<br />

isDag eGraph EisSubprocess EisAlternative end .<br />

A.5 GRAL-Zusicherungen der Objektsicht<br />

A.5.1 GRAL-Zusicherungen des Objekt-Instanzpardigmas<br />

for G in RMS assert<br />

[RMS-OIP 1]:<br />

e : EiRelates ¯ 1 eorder δ ω e ;<br />

iRelates<br />

[RMS-OIP 2]:<br />

e 1 e 2 : E iRelates e 1 e 2 ω e 1 ω e 2 ¯ e 1 order e 2 order ;<br />

[RMS-OIP 3]:<br />

a : VAttribute ; v : VValue a identifies isValue v ¯<br />

a hasDomain valIsInstanceOf v<br />

end .<br />

A.5.2 GRAL-Zusicherungen des Objekt-Interaktionsparadigmas<br />

for G in RMS assert<br />

[RMS-IAP 1]:<br />

c : VCall ; r : VReturn r msgCorrespondsTo c ¯<br />

c msgComesFrom r msgGoesTo c msgGoesTo r msgComesFrom ;


268 Formalisierung des <strong>Referenz</strong>-<strong>Metaschema</strong>s<br />

[RMS-IAP 2]:<br />

e 1 e 2 : E isMsgIn ω e 1 ω e 2 α e 1 msgCorrespondsTo α e 2 ¯<br />

order isMsgIn e 1 ω e 1 order isMsgIn e 2 ω e 2 ;<br />

[RMS-IAP 3]:<br />

e1 e2 : EisMsgIn ω e1 ω e2 α e1 msgCorrespondsTo α e2 ¯<br />

e3 : EisMsgIn ω e1 ω e2 ω e3 <br />

orderisMsgIn e1 ω e1 orderisMsgIn e3 ω e3 <br />

orderisMsgIn e2 ω e2 ¯<br />

end .<br />

α e 1 msgComesFrom msgComesFrom msgGoesTo α e 3<br />

A.5.3 GRAL-Zusicherungen des Objekt-Beziehungsparadigmas<br />

for G in RMS assert<br />

[RMS-ORP 1]:<br />

e f : VRelationshipClass ; a b c d : VObjectClass e relClsIsA f <br />

a cComesFrom e cGoesTo b c cComesFrom f cGoesTo d ¯<br />

a c b d ;<br />

£<br />

objClsIsA<br />

£<br />

objClsIsA<br />

[RMS-ORP 2]:<br />

e f : EcRelates α e relClsIsA α f ω e<br />

£<br />

objClsIsA ω f ¯<br />

first elimits first f limits second elimits second f limits ;<br />

[RMS-ORP 3]:<br />

t1 : ÎClassItem t1abstract true ¯<br />

t2 : ÎClassItem t2 isA t1 ¯ t2abstract false<br />

end .<br />

A.6 Sichten- und Paradigmenübergreifende<br />

GRAL-Zusicherungen<br />

Paradigmenübergeifende Zusicherungen der Prozeßsicht<br />

for G in RMS assert<br />

[RMS-Process 1]:<br />

p : VProcess ¯<br />

[Datenfluß- und Netzparadigma]<br />

δ p 0 δ p<br />

dfRefines cfRefines<br />

p dfRefines &Process p cfRefines &Process


A.6 Sichten- und Paradigmenübergreifende GRAL-Zusicherungen 269<br />

end .<br />

[Datenfluß- und Kontrollflußparadigma]<br />

δ dfRefines p 0 type p <strong>Se</strong>quence Parallel Iteration Alternative<br />

p dfRefines &Process p isAlternative ℄ isSubprocess <br />

[Netz- und Kontrollflußparadigma]<br />

δ cfRefines p 0 type p <strong>Se</strong>quence Parallel Iteration Alternative<br />

p cfRefines &Process p isAlternative ℄ isSubprocess<br />

Paradigmenübergeifende Zusicherungen der Objektsicht<br />

for G in RMS assert<br />

[RMS-Object 1]:<br />

v : VObject ; e : VRelationship v iComesFrom e ¯<br />

v objIsInstanceOf<br />

£<br />

objClsIsA cComesFrom<br />

v : V Object ; e : V Relationship v iGoesTo<br />

v objIsInstanceOf<br />

£<br />

objClsIsA cGoesTo<br />

£<br />

relClsIsA relIsInstanceOf<br />

e ¯<br />

£<br />

relClsIsA relIsInstanceOf<br />

[RMS-Object 2]:<br />

v : VObject ; e : EcComesFrom v objIsInstanceOf<br />

£<br />

objClsIsA ω e ¯<br />

first elimits # r : EiComesFrom ω r v <br />

α r relIsInstanceOf<br />

second elimits ;<br />

v : VObject ; e : EcGoesTo v objIsInstanceOf<br />

£<br />

objClsIsA ω e ¯<br />

first elimits # r : EiGoesTo ω r v <br />

α r relIsInstanceOf<br />

second elimits ;<br />

[RMS-Object 3]:<br />

i : VInstanceItem ; c : VClassItem i IsInstanceOf c ¯<br />

i hasAttributeValuePair identifies c<br />

£<br />

IsA hasAttribute ;<br />

[RMS-Object 4]:<br />

c : V ClassItem cabstract ¯ c IsInstanceOf<br />

;<br />

e ;<br />

e ;<br />

£<br />

relClsIsA<br />

£<br />

relClsIsA<br />

α e <br />

α e <br />

[RMS-Object 5]:<br />

rc : V RelationshipClass ; r 1 r 1 : V Relationship <br />

rcinjective r 1 relIsInstanceOf rc relIsInstanceOf r 2 r 1 r 2 ¯<br />

r 1 iGoesTo r 2 iGoesTo r 1 iComesFrom r 2 iComesFrom<br />

end .


270 Formalisierung des <strong>Referenz</strong>-<strong>Metaschema</strong>s<br />

Paradigmenübergeifende Zusicherungen der Aufgaben- und Prozeßsicht<br />

for G in RMS assert<br />

[RMS-TaskProcess 1]:<br />

p : VProcess ; t : VTask p<br />

[Datenflußparadigma]<br />

isProcessComponent t ¯<br />

δ p<br />

dfRefines<br />

0 δ t<br />

isDecomposedIn<br />

0<br />

p dfRefines &Process t isDecomposedIn isSubtask isProcessComponent <br />

[Netzparadigma]<br />

δ cfRefines p 0 δ isDecomposedIn t 0<br />

p cfRefines &Process t isDecomposedIn isSubtask isProcessComponent <br />

[Kontrollflußparadigma]<br />

type p <strong>Se</strong>quence Parallel Iteration Alternative <br />

δ isDecomposedIn t 0<br />

p isAlternative ℄ isSubprocess <br />

t isDecomposedIn isSubtask isProcessComponent ;<br />

[RMS-TaskProcess 2]:<br />

p : VProcess ; t : VTask p isProcessComponent t <br />

p dfComesFrom dfGoesTo describes ¯<br />

t isObjectComponent p dfComesFrom dfGoesTo describes ;<br />

[RMS-TaskProcess 3]:<br />

p : VProcess ; t : VTask p isProcessComponent t ¯<br />

end .<br />

t executesTask p executesProcess &OrganizationalUnit<br />

Paradigmenübergeifende Zusicherungen der Aufbau- und Prozeßsicht<br />

for G in RMS assert<br />

[RMS-PositionProcess 1]:<br />

p1 p2 : VProcess ; s1 s2 : VOrganizationalUnit s1 s2 <br />

s1 executesProcess p1 s2 executesProcess p2 ¯<br />

p1 dfComesFrom dfGoesTo p2 s1 comm<strong>uni</strong>cates comm<strong>uni</strong>cates s2 end .<br />

Paradigmenübergeifende Zusicherungen der Aufbau- und Objektsicht<br />

for G in RMS assert<br />

[RMS-PositionObject 1]:<br />

s1 s2 : VOrganizationalUnit ¯<br />

s1 msgComesFrom msgGoesTo s2 s1 comm<strong>uni</strong>cates comm<strong>uni</strong>cates s2 end .


B Glossar<br />

B.1 Grundlegende Definitionen<br />

Konzeptmodellierung<br />

Modell<br />

Abstraktion der Realität durch mentale Reprä- Zielgerichtetes Abbild eines Systems, das zum<br />

sentationen (Konzepte) realen oder abstrakten einen ähnliche Beobachtungen und Aussagen<br />

Dinge der zu modellierenden Diskurswelt und ermöglicht wie dieses System, zum anderen<br />

den hierzwischen bestehenden Beziehungen. diese Realität durch Abstraktion auf die jeweils<br />

Die Konzepte werden in einer symbolischen<br />

Form notiert.<br />

Metaaktivitätsmodell<br />

relevanten Aspekte vereinfacht.<br />

Organisation<br />

Teil eines Metamodells, durch den das Mo- 1. System formaler Regeln, das als Instrudellierungsvorgehen<br />

beschrieben wird.<br />

ment zur Steuerung sozio-technischer<br />

Systeme dient (organisatatorische Struk-<br />

Metamodell<br />

tur).<br />

Konzeptionelle Beschreibung einer Modellie- 2. Organisatatorische Struktur und deren<br />

rung, die sowohl die verwendeten Modellie- Einbettung in das umgebende soziorungskonzepte<br />

als auch ihre Verwendung verdeutlicht.<br />

Hierbei wird die Vorgehensweise der<br />

Modellierung in einem Metaaktivitätsmodell<br />

technische System.<br />

und die Modellierungsmittel durch ihre abstrakte<br />

Syntax in einem <strong>Metaschema</strong> be-<br />

Organisationstechnik<br />

schrieben.<br />

1. Entwicklung von Prinzipien, Methoden,<br />

<strong>Metaschema</strong><br />

und Werkzeugen zur Organisationsgestaltung.<br />

Teil eines Metamodells, durch den die zur<br />

Modellierung verwendeten Sprachmittel, unabhängig<br />

von ihrer konkreten Notation, durch ihre<br />

abstrakte Syntax beschrieben werden.<br />

2. Anwendung dieser Mittel zur Durchführung<br />

gezielter organisatorischer Änderungen<br />

und zum Betrieb diese Organisationen.


272 Glossar<br />

<strong>Referenz</strong>modell<br />

Ausgewiesenes Modell, das charakteristische<br />

Eigenschaften einer Klasse gleichartiger Systeme<br />

beschreibt und als Bezugspunkt <strong>für</strong> spezielle<br />

Modelle dient.<br />

Softwaretechnik<br />

1. Entwicklung von Prinzpien, Methoden<br />

und Techniken zur Software-Erstellung.<br />

2. Anwendung dieser Mittel zur Erstellung,<br />

zum Betrieb und zur Wartung von umfangreichen<br />

Softwareprodukten.<br />

B.2 Konzepte des <strong>Referenz</strong>-<strong>Metaschema</strong>s<br />

Visuelle <strong>Modellierungssprachen</strong> des Requirements-Engineering<br />

der Organisationstechnik:<br />

Hilfsmittel zur Erhebung und Beschreibung<br />

organisatorischer Zusammenhänge<br />

bezogen auf die statische und dynamische<br />

Organisationsstruktur und das umgebende<br />

sozio-technische System.<br />

der Softwaretechnik:<br />

Hilfsmittel zur Erhebung und Beschreibung<br />

von Softwaresystemen bezogen auf<br />

ihre statische und dynamische Struktur<br />

und das umgebende Anwendungssystem.<br />

Das folgende graphische Glossar stellt die objektartigen Konzepte des <strong>Referenz</strong>-<strong>Metaschema</strong>s<br />

der Beschreibungsmittel <strong>für</strong> Organisationen und Softwaresysteme in ihrem Schemakontext dar,<br />

und definiert somit die Einbettung der durch diese Konzepte modellierten Begriffe in ihr Begriffsumfeld.<br />

AggregationClass<br />

Alternative<br />

AndBlob<br />

RelationshipClass<br />

Process<br />

Alternative<br />

isAlternative<br />

Case<br />

Blob<br />

Xor<br />

Blob<br />

history : bool<br />

>1<br />

contains<br />

And<br />

Blob<br />

AssistingPosition<br />

Position<br />

Assisting<br />

Position<br />

delegates<br />

assists Leading<br />

Position<br />

AsynchroneousFlowOfControl<br />

Message<br />

AtomicProcess<br />

Process<br />

AtomicBlob<br />

Blob


B.2 Konzepte des <strong>Referenz</strong>-<strong>Metaschema</strong>s 273<br />

Attribute<br />

Domain<br />

name:string<br />

has<br />

Domain<br />

hasAttribute<br />

AttributeValuePair<br />

Blob<br />

NetObject<br />

Branch<br />

Attribute<br />

name:string<br />

Value<br />

identifies<br />

isEntryAction<br />

isBlobAction<br />

isExitAction<br />

starts<br />

With<br />

Attribute<br />

name:string<br />

ClassItem<br />

isValue<br />

End<br />

Blob<br />

identifies<br />

Attribute<br />

Value<br />

Pair<br />

Instance<br />

Item<br />

Transition<br />

Blob<br />

AtomicBlob<br />

Xor<br />

Blob<br />

history:bool<br />

>1<br />

And<br />

Blob<br />

contains<br />

isValue<br />

Value<br />

hasAttribute<br />

ValuePair<br />

transComesFrom transGoesTo<br />

OperatorFlow<br />

Branch<br />

Xor<br />

Branch<br />

Or<br />

Branch<br />

Attribute<br />

Value<br />

Pair<br />

name:string<br />

contains<br />

Call<br />

Object<br />

Case<br />

ClassItem<br />

isA<br />

isInputParameter<br />

isReturnParameter<br />

ClassItem<br />

cComes<br />

From<br />

(cRelates)<br />

Predicate<br />

name:string<br />

Process<br />

Message msgCorrespondsTo<br />

Call<br />

Alternative<br />

Create<br />

Call<br />

Case<br />

Method<br />

name:string<br />

Destroy<br />

Call<br />

callsMethod<br />

isAlternative isSubprocess<br />

controls<br />

hasAttribute<br />

Object<br />

Class<br />

=2<br />

cRelates<br />

describes<br />

Attribute<br />

RelationshipClass<br />

Aggregation<br />

Class<br />

dir:bool<br />

DFItem<br />

limits : int int<br />

cGoesTo<br />

(cRelates)<br />

injective:bool<br />

name : string<br />

abstract : bool<br />

isInstanceOf<br />

Return<br />

Instance<br />

Item


274 Glossar<br />

Comm<strong>uni</strong>cation<br />

comesFrom<strong>Se</strong>nder<br />

(comm<strong>uni</strong>cates)<br />

Comm<strong>uni</strong>Comm<strong>uni</strong>-<br />

>1<br />

cationcation<br />

comm<strong>uni</strong>cates<br />

Partner<br />

frequency: float<br />

duration: float<br />

goesToReceiver<br />

(comm<strong>uni</strong>cates)<br />

Comm<strong>uni</strong>cationPartner<br />

isMemberOf<br />

Group<br />

Department<br />

IsPartOf<br />

Position<br />

CreateCall<br />

Call<br />

Dataflow<br />

Assisting<br />

Position<br />

delegates<br />

informs<br />

Comm<strong>uni</strong>cation<br />

frequency: float<br />

duration: float<br />

>1<br />

transmits<br />

goesToReceiver<br />

comm<strong>uni</strong>cates<br />

comesFrom<strong>Se</strong>nder<br />

(comm<strong>uni</strong>cates) (comm<strong>uni</strong>cates)<br />

DfItem<br />

DfObject<br />

PointOf<br />

Contact<br />

DataflowScenario<br />

Department<br />

Dataflow<br />

Scenario<br />

instructs substitutes<br />

OrganizationalUnit<br />

assists<br />

LEPosition<br />

Leading Executing<br />

Position Position<br />

isHeadOf<br />

(isPartOf)<br />

OrganizationalUnit<br />

Department<br />

IsPartOf<br />

leads<br />

dfGoesTo<br />

Dataflow<br />

dfComesFrom<br />

dfCorrespondsTo<br />

isComponentIn<br />

isHeadOf<br />

(isPartOf)<br />

DfItem<br />

Leading<br />

Position<br />

MeansOf<br />

Comm<strong>uni</strong>cation<br />

Comm<strong>uni</strong>cationPartner<br />

rank : string<br />

competence: string<br />

qualification : string<br />

capacity : int<br />

name: string<br />

External<br />

Partner<br />

DestroyCall<br />

DfItem<br />

DfItem<br />

DfObject<br />

Terminator<br />

Scenario<br />

DfObject<br />

Call<br />

Store<br />

isComponentIn<br />

DfObject<br />

Terminator<br />

Process<br />

PointOf<br />

Contact<br />

dfGoesTo<br />

dfComesFrom<br />

dfCorrespondsTo<br />

Store<br />

PointOf<br />

Contact<br />

Dataflow<br />

name:string<br />

dfGoesTo<br />

dfComesFrom<br />

Document<br />

MeansOfComm<strong>uni</strong>cation<br />

Domain<br />

EMail<br />

Domain<br />

name:string<br />

valIsInstanceOf<br />

has<br />

Domain<br />

value<br />

Attribute<br />

name:string<br />

MeansOfComm<strong>uni</strong>cation<br />

EndBlob<br />

Blob<br />

ElementaryFlow<br />

Flow<br />

dfRefines<br />

Dataflow<br />

Process


B.2 Konzepte des <strong>Referenz</strong>-<strong>Metaschema</strong>s 275<br />

Event<br />

NetObject<br />

Event<br />

ExecutingPosition<br />

LEPosition<br />

triggers<br />

Transition<br />

ExternalPartner<br />

Comm<strong>uni</strong>cationPartner<br />

Fax<br />

MeansOfComm<strong>uni</strong>cation<br />

FlatFlowOfControl<br />

Message<br />

Flow<br />

Fork<br />

Group<br />

NetObject<br />

OperatorFlow<br />

Group<br />

isMemberOf<br />

OrganizationalUnit<br />

Position<br />

InstanceItem<br />

Instance<br />

Item<br />

Object<br />

ClassItem<br />

isInstanceOf<br />

iGoesTo<br />

(iRelates)<br />

=2<br />

iRelates<br />

InteractionScenario<br />

Iteration<br />

Join<br />

Interaction<br />

Scenario<br />

Process<br />

Iteration<br />

isMsgIn<br />

Relationship<br />

Message<br />

Predicate<br />

controls name:string<br />

isSubprocess<br />

OperatorFlow<br />

MeansOfComm<strong>uni</strong>cation<br />

Comm<strong>uni</strong>cation<br />

frequency: float<br />

duration: float<br />

Mechanism<br />

Mechanism<br />

Object<br />

LEPosition<br />

transmits<br />

Technical<br />

Means<br />

LEPosition<br />

Leading<br />

Position<br />

name:string<br />

iComesFrom<br />

(iRelates)<br />

order : int<br />

MeansOfComm<strong>uni</strong>cation<br />

Document<br />

personal Phone<br />

Delivery:bool<br />

Fax EMail<br />

executesProcess<br />

leads<br />

Executing<br />

Position<br />

Process


276 Glossar<br />

LeadingPosition<br />

Department<br />

Merge<br />

Message<br />

Object<br />

Method<br />

msgComes<br />

From<br />

msg<br />

GoesTo<br />

Assisting<br />

Position<br />

isHeadOf<br />

(isPartOf)<br />

Call<br />

assists<br />

OperatorFlow<br />

Merge<br />

Create<br />

Call<br />

Xor<br />

Merge<br />

Or<br />

Merge<br />

Destroy<br />

Call<br />

Position<br />

LEPosition<br />

Leading<br />

Position<br />

Message msgCorrespondsTo<br />

isGuard isMsgIn<br />

Predicate Interaction<br />

name:string<br />

Scenario<br />

Method<br />

name:string<br />

NetItem<br />

NetObject<br />

callsMethod<br />

Return<br />

Call<br />

leads<br />

Executing<br />

Position<br />

FlatFlow<br />

OfControl<br />

AsynchronousFlowOf<br />

Control<br />

iteration : string<br />

duration : int<br />

NetObject<br />

NetItem<br />

name: string<br />

Xor<br />

Merge<br />

Or<br />

Merge<br />

NetObject<br />

Process<br />

Xor<br />

Branch<br />

Or<br />

Branch<br />

cfRefines<br />

cfComesFrom cfGoesTo<br />

Flow<br />

OperatorFlow<br />

Merge Branch<br />

Object<br />

Object<br />

Class<br />

ObjectClass<br />

objClsIsA<br />

(isA)<br />

Event<br />

Fork<br />

Join<br />

Relationship<br />

Elementary<br />

Flow<br />

msgComesFrom isReturnParameter<br />

objIsInstanceOf<br />

Instance<br />

(isInstanceOf)<br />

Item<br />

Object<br />

ClassItem<br />

msgGoesTo<br />

iGoesTo<br />

(iRelates)<br />

Object<br />

Class<br />

=2<br />

cComes<br />

From<br />

(cRelates) cRelates<br />

Relationship<br />

Class<br />

Message<br />

Call<br />

=2<br />

iRelates<br />

limits : int int<br />

cGoesTo<br />

(cRelates)<br />

isInputParameter<br />

iComesFrom<br />

(iRelates)<br />

order : int<br />

effects<br />

triggers<br />

isEntryAction<br />

isBlobAction<br />

isExitAction<br />

objIsInstanceOf<br />

(isInstanceOf)<br />

isObject<br />

Component<br />

Mechanism<br />

Transition<br />

Blob<br />

Organizational<br />

Unit<br />

Object<br />

Task<br />

name: string<br />

location: string<br />

duration: float<br />

time: date<br />

resources: string


B.2 Konzepte des <strong>Referenz</strong>-<strong>Metaschema</strong>s 277<br />

OperatorFlow<br />

Flow<br />

OperatorFlow<br />

Merge Branch<br />

Xor<br />

Merge<br />

Or<br />

Merge<br />

Xor<br />

Branch<br />

Or<br />

Branch<br />

OrganizationalUnit<br />

Object<br />

OrBranch<br />

isMemberOf<br />

Group<br />

Department<br />

Branch<br />

OrMerge<br />

Merge<br />

Parallel<br />

IsPartOf<br />

Position<br />

Process<br />

Assisting<br />

Position<br />

delegates<br />

Parallel<br />

isSubprocess<br />

informs<br />

executionRole : string<br />

Fork<br />

Join<br />

instructs substitutes<br />

executesTask<br />

Task<br />

name: string<br />

location: string<br />

duration: float<br />

time: date<br />

resources: string<br />

Elementary<br />

Flow<br />

OrganizationalUnit<br />

assists<br />

LEPosition<br />

Leading Executing<br />

Position Position<br />

isHeadOf<br />

(isPartOf)<br />

Phone<br />

MeansOfComm<strong>uni</strong>cation<br />

PointOfContact<br />

DfObject<br />

PointOf<br />

Contact<br />

dfCorrespondsTo<br />

Dataflow<br />

leads<br />

rank : string<br />

competence: string<br />

qualification : string<br />

capacity : int<br />

Position<br />

isMemberOf informs<br />

Group<br />

Predicate<br />

Message<br />

Process<br />

DfItem<br />

DfObject<br />

isGuard<br />

dfRefines<br />

isSubprocess<br />

Position<br />

Assisting<br />

Position<br />

delegates<br />

OrganizationalUnit<br />

assists<br />

LEPosition<br />

Leading Executing<br />

Position Position<br />

leads<br />

instructs substitutes<br />

Iteration<br />

Predicate<br />

controls<br />

name:string<br />

Process<br />

Atomic<br />

Process<br />

name:string<br />

<strong>Se</strong>quence Parallel<br />

Relationship<br />

NetObject<br />

isSubprocess<br />

RelationshipClass<br />

relIsInstanceOf<br />

(isInstanceOf)<br />

Case<br />

controls<br />

isGuard<br />

Iteration Alternative<br />

isSubprocess<br />

controls<br />

Instance<br />

Item<br />

iGoesTo<br />

(iRelates)<br />

executesProcess<br />

Predicate<br />

name:string<br />

Mechanism<br />

Case<br />

rank : string<br />

competence: string<br />

qualification : string<br />

capacity : int<br />

Transition<br />

isAlternative isSubprocess<br />

controls<br />

Object<br />

=2<br />

iRelates<br />

Relationship<br />

isProcess<br />

Component<br />

iComesFrom<br />

(iRelates)<br />

order : int<br />

Task


278 Glossar<br />

RelationshipClass<br />

relClsIsA<br />

(isA)<br />

Return<br />

ClassItem<br />

cComes<br />

From<br />

(cRelates)<br />

<strong>Se</strong>quence<br />

Store<br />

Task<br />

Object<br />

Class<br />

name:string<br />

Process<br />

name:string<br />

Object<br />

Class<br />

=2<br />

cRelates<br />

RelationshipClass<br />

Aggregation<br />

Class<br />

dir: bool<br />

isObject<br />

Component<br />

isProcess<br />

Component<br />

DfObject<br />

Message<br />

Store<br />

limits : int int<br />

cGoesTo<br />

(cRelates)<br />

injective: bool<br />

msgCorrespondsTo<br />

Call Return<br />

Process<br />

<strong>Se</strong>quence<br />

isSubprocess<br />

Organizational<br />

Unit<br />

Task<br />

name: string<br />

location: string<br />

duration: float<br />

time: date<br />

resources: string<br />

describes<br />

relIsInstanceOf<br />

(isInstanceOf)<br />

ClassItem<br />

executesTask<br />

executionRole : string<br />

isDecomposedIn<br />

isSubtask<br />

isExecutionTask (isSubtask)<br />

isLeadingTask (isSubtask)<br />

isPlanningTask (isSubtask)<br />

isControllingTask (isSubtask)<br />

isAdministrativeTask(isSubtask)<br />

Relationship<br />

TaskDecomposition<br />

criterion:<br />

{process, object}<br />

connection:<br />

{and,or}<br />

TaskDecomposition<br />

Task<br />

name: string<br />

location: string<br />

duration: float<br />

time: date<br />

resources: string<br />

TechnicalMeans<br />

Mechanism<br />

Terminator<br />

DfObject<br />

Transition<br />

Value<br />

NetObject<br />

Process<br />

Domain<br />

name:string<br />

XorBlob<br />

Predicate<br />

isDecomposedIn<br />

isSubtask<br />

isExecutionTask (isSubtask)<br />

isLeadingTask (isSubtask)<br />

isPlanningTask (isSubtask)<br />

isControllingTask (isSubtask)<br />

isAdministrativeTask(isSubtask)<br />

Event<br />

isGuard<br />

valIsInstanceOf<br />

starts<br />

With<br />

XorBranch<br />

Branch<br />

XorMerge<br />

Merge<br />

effects<br />

triggers<br />

Value<br />

Blob<br />

Xor<br />

Blob<br />

history : bool<br />

>1<br />

And<br />

Blob<br />

Transition<br />

contains<br />

isValue<br />

TaskDecomposition<br />

criterion:<br />

{process, object}<br />

connection:<br />

{and,or}<br />

trans<br />

Comes<br />

From<br />

Blob<br />

contains<br />

trans<br />

Goes<br />

To<br />

Attribute<br />

Value<br />

Pair


Literaturverzeichnis<br />

[Acker, 1973] H. B. Acker. Organisationsanalyse, Verfahren und Techniken praktischer Organisationsarbeit.<br />

Gehlen, Baden-Baden, 9. Auflage, 1973.<br />

[Andersen et al., 1991] R. Andersen, J. A. Bubenko, A. Sølvberg (eds.). Advanced Information<br />

Systems Engineering, Third International Conference CAiSE’91, Trondheim, Norway, May<br />

1991, Proceedings, LNCS 498. Springer, Berlin, 1991.<br />

[ANSI/IEEE Std. 729, 1983] IEEE Standard Glossary of Software Engineering Terminology<br />

(ANSI/IEEE Std. 729-1983). The Institute of Electrical and Electronics Engineering, New<br />

York, Spring 1983.<br />

[Apostel, 1960] L. Apostel. Towards the formal study of models in a non formal science. Synthese,<br />

12:125–161, 1960.<br />

[Arnold, 1993a] R. S. Arnold. A Roadmap Guide to Software Reengineering Technology. in<br />

[Arnold, 1993b], 3–22. 1993.<br />

[Arnold, 1993b] R. S. Arnold (ed.). Software Reengineering. IEEE Computer Society Press,<br />

Los Alamitos, 2. edition, 1993.<br />

[Arthur Young International, 1988] Information Engineering, Computer System Methodology:<br />

Planning, June 1988.<br />

[Auramäki et al., 1987] E. Auramäki, M. Leppänen, V. Savolainen. Universal Framework for<br />

Information Activities. Data Base, 11–20, Fall/Spring 1987.<br />

[Balzert / Balzert, 1994] H. Balzert, H. Balzert. Werkzeuge <strong>für</strong> die objektorientierte Softwareentwicklung.<br />

CD-ROM in [Balzert, 1994], 1994.<br />

[Balzert, 1988] H. Balzert. Die Entwicklung von Software–Systemen, Prinzipien, Methoden,<br />

Sprachen, Werkzeuge. Bibliographisches Institut, Zürich, 1988.<br />

[Balzert, 1993] H. Balzert (Hrsg.). CASE Systeme und Werkzeuge. BI Wissenschaftsverlag,<br />

Mannheim, 5. Auflage, 1993.<br />

[Balzert, 1994] H. Balzert. Methoden der objektorientierten Systemanalyse. Bibliographisches<br />

Institut, Mannheim, 1994.<br />

[Balzert, 1996a] H. Balzert. Lehrbuch der Softwaretechnik, Softwareentwicklung, Band 1.<br />

Spektrum, Heidelberg, 1996.


280 Literaturverzeichnis<br />

[Balzert, 1996b] H. Balzert. SWT CD ROM. CD-ROM in [Balzert, 1996a], 1996.<br />

[Balzert, 1998a] H. Balzert. Lehrbuch der Softwaretechnik, Software-Management, Software-<br />

Qualitätssicherung, Unternehmensmodellierung, Band 2. Spektrum, Heidelberg, 1998.<br />

[Balzert, 1998b] H. Balzert. SWT 2 CD ROM V1.0. CD-ROM in [Balzert, 1998a], 1998.<br />

[Batini et al., 1992] C. Batini, S. Ceri, S. B. Navathe. Conceptual Database Design. Benjamin/Cummings,<br />

Redwood City, 1992.<br />

[Bauer, 1993] F. L. Bauer. Software Engineering, Wie es begann. Informatik Spektrum,<br />

16(5):259–260, Oktober 1993.<br />

[Baumgarten, 1996] B. Baumgarten. Petri-Netze, Grundlagen und Anwendungen. Spektrum,<br />

Heidelberg, 2. Auflage, 1996.<br />

[Becker / Schütte, 1997] J. Becker, R. Schütte. <strong>Referenz</strong>-Informationsmodelle <strong>für</strong> den Handel:<br />

Begriff, Nutzen und Empfehlung <strong>für</strong> die Gestaltung und unternehmensspezifische Adaption<br />

von <strong>Referenz</strong>modellen. in [Krallmann, 1997], 427–448. 1997.<br />

[Becker / Vossen, 1996a] J. Becker, G. Vossen. Geschäftsprozeßmodellierung und Workflow-<br />

Management: Eine Einführung. in [Becker / Vossen, 1996b], 17–26. 1996.<br />

[Becker / Vossen, 1996b] J. Becker, G. Vossen (Hrsg.). Geschäftsprozeßmodellierung und Workflows,<br />

Modelle, Methoden, Werkzeuge. Thomson, Bonn, 1996.<br />

[Becker et al., 1995] J. Becker, M. Rosemann, R. Schütte. Grundsätze ordnungsmäßiger Modellierung.<br />

Wirtschaftsinformatik, 37(5):435–445, 1995.<br />

[Becker et al., 1997] J. Becker, M. Rosemann, R. Schütte (Hrsg.). Entwicklungsstand und Entwicklungsperspektiven<br />

der <strong>Referenz</strong>modellierung, Münster, März 1997. Westfälische Wilhelms<br />

Universität, Münster, Institut <strong>für</strong> Wirtschaftsinformatik.<br />

[Berge, 1976] C. Berge. Graphs and Hypergraphs. North-Holland, Amsterdam, 2. edition, 1976.<br />

[Bernus et al., 1998] P. Bernus, K. Mertins, G. Schmidt (eds.). Handbook on Architectures of<br />

Information Systems, in: International Handbooks of Information Systems. Springer, Berlin,<br />

1998.<br />

[Berztiss / Matjasko, 1995] A. T. Berztiss, K. J. Matjasko. Queries and the Incremental Construction<br />

of Conceptual Models. in [Kangassalo et al., 1995], 175–185. 1995.<br />

[Bihr / <strong>Se</strong>elos, 1997] H. Bihr, H.-J. <strong>Se</strong>elos. Entwicklung eines <strong>Referenz</strong>datenmodells <strong>für</strong> Krankenhäuser.<br />

Wirtschaftsinformatik, 39(4):367–371, August 1997.<br />

[Blaha, 1992] M. Blaha. Models of models. Journal of Object-Oriented Programming, 5(5):13–<br />

18, <strong>Se</strong>ptember 1992.<br />

[Blum, 1980a] E. Blum. Möglichkeit und Grenzen des Organigramms unter besonderer Berücksichtigung<br />

großbetrieblicher und mehrdimensionaler Organisationsstrukturen, Teil 1: Konventionelle<br />

Organigramme. Zeitschrift <strong>für</strong> Organisation, (1):42–51, 1980.


Literaturverzeichnis 281<br />

[Blum, 1980b] E. Blum. Möglichkeit und Grenzen des Organigramms unter besonderer Berücksichtigung<br />

großbetrieblicher und mehrdimensionaler Organisationsstrukturen, Teil 2: Organigramme<br />

<strong>für</strong> mehrdimensionale Organisationsstrukturen. Zeitschrift <strong>für</strong> Organisation, 84–91,<br />

1980.<br />

[Blum, 1991] E. Blum. Betriebsorganisation, Methoden und Techniken, Organisation als Gestaltungsprozeß,<br />

Erhebungs- und Darstellungstechniken, Problemanalyse/Alternativensuche,<br />

interne Kontrolle. Gabler, Wiesbaden, 3. Auflage, 1991.<br />

[Boehm, 1976] B. W. Boehm. Software Engineering. IEEE Transactions on Computers,<br />

25(12):1226–1241, December 1976.<br />

[Boehm, 1979] B. W. Boehm. Guidelines for Verifying and Validating Software Requirements<br />

and Design Specifications. in [Samet, 1979], 711–719. 1979.<br />

[Boehm, 1981] B. W. Boehm. Software Engineering Economics. Prentice Hall, Englewood<br />

Cliffs, 1981.<br />

[Boehm, 1988] B. W. Boehm. A Spiral Model of Software Development and Enhancement.<br />

IEEE Computer, 21(5):61–72, 1988.<br />

[Booch et al., 1999] G. Booch, J. Rumbaugh, I. Jacobson. The Unified Modeling Language User<br />

Guide. Addison Wesley, Reading, 1999.<br />

[Booch, 1994] G. Booch. Object Oriented Design with Applications. Benjamin/Cummings,<br />

Redwood City, 2. edition, 1994.<br />

[Booch, 1996] G. Booch. Konsolidierung der Methoden. Object Spectrum, (4):57 – 60, Juli/August<br />

1996.<br />

[Bosch / Mitchel, 1997] J. Bosch, S. Mitchel (eds.). Object-Oriented Technology, ECOOP’97-<br />

Workshop Reader, LNCS 1357. Springer, Berlin, 1997.<br />

[Braek / Haugen, 1993] R. Braek, O. Haugen. Engineering Real Time Systems. Prentice-Hall,<br />

Englewood Cliffs, 1993.<br />

[Brinkkemper et al., 1989] S. Brinkkemper, M. Geruts, I. van de Kamp, J. Acohen. On a Formal<br />

Approach to the Methodology of Information Planning. Technical Report 89-12, University<br />

of Nijmegen, Department of Informatics, Nijmegen, August 1989.<br />

[Brinkkemper et al., 1990] S. Brinkkemper, M. de Lange, R. Looman, F. H. G. C. van der Steen.<br />

On the Derivation of Method Comparison by Meta-Modeling. ACM SIGSOFT Software<br />

Engineering Notes, 15(1):49–58, 1990.<br />

[Brinkkemper et al., 1996] S. Brinkkemper, K. Lyytinen, R. Welke (eds.). Proceedings of the<br />

IFIP TC8 Working Conference on Method Engineering: Principles of Method Construction<br />

and Tool Support. Chapman & Hall, 1996.<br />

[Brinkkemper, 1990] S. Brinkkemper. Formalisation of Information Systems Modeling. Thesis<br />

Publishers, Amsterdam, 1990.


282 Literaturverzeichnis<br />

[Brinkkemper, 1996] S. Brinkkemper. Method Engineering: Engineering of Information Systems<br />

Developement Methods and Tools. Information & Software Technology, 38(4):275–<br />

280, 1996.<br />

[Brodie et al., 1986] M. Brodie, J. Mylopoulos, J. W. Schmidt (eds.). On Conceptual Modeling,<br />

Perspectives from Artificial Intelligence, Databases and Programming Languages. Springer,<br />

New York, 2. edition, 1986.<br />

[Brombacher, 1991] R. Brombacher. Effizientes Informationsmanagement, Die Herausforderung<br />

von Gegenwart und Zukunft. Schriften zur Unternehmensführung, 44:111–134, 1991.<br />

[Büchli / Chrobok, 1997] R. Büchli, R. Chrobok. Organisations- und Planungstechniken im Unternehmen,<br />

Methoden, Instrumente und Handlungsempfehlungen nach dem ganzheitlichen<br />

Organisationsmodell GOM. Schäffer Poeschel, Stuttgart, 2. Auflage, 1997.<br />

[Bußmann, 1990] H. Bußmann. Lexikon der Sprachwissenschaft. Kröner, Stuttgart, 2. Auflage,<br />

1990.<br />

[Capellmann / Franzke, 1991] C. Capellmann, A. Franzke. GRAL Eine Sprache <strong>für</strong> die graphbasierte<br />

Modellierung. Diplomarbeit D 143, Universität Koblenz-Landau, Fachbereich Informatik,<br />

Koblenz, 1991.<br />

[Carnap, 1968] R. Carnap. Logische Syntax der Sprache. Springer, Wien, 2. Auflage, 1968.<br />

[Carstensen et al., 1994] M. Carstensen, J. Ebert, A. Winter. Deklarative Beschreibung von Graphsprachen<br />

(Erweiterte Kurzfassung). in [Simon, 1994]. 1994.<br />

[Carstensen, 1996] M. Carstensen. Konzept eines Generators <strong>für</strong> CASE-Umgebungen. Manuskript,<br />

August 1996.<br />

[Chapin, 1970] N. Chapin. Flowcharting with the ANSI Standard: A Tutorial. ACM Computing<br />

Surveys, 2:119–146, 1970.<br />

[Chen, 1976] P. P. Chen. The Entity–Relationship Model, Toward a Unified View of Data. ACM<br />

Transactions on Database Systems, 1(1):9–36, March 1976.<br />

[Chen, 1983] P. P. Chen (ed.). Entity-Relationship Approach to Information Modeling. Elsevier,<br />

Amsterdam, 1983.<br />

[Coad / Yourdon, 1991] P. Coad, E. Yourdon. Object-Oriented Analysis. Yourdon Press, Englewood<br />

Ciffs, 2. edition, 1991.<br />

[Coleman et al., 1994] D. Coleman, P. Arnold, S. Bodoff, C. Dollin, H. Gilchrist, F. Hayes, P. Jeremaes.<br />

Object-Oriented Development, The Fusion Method. Prentice Hall, London, 1994.<br />

[Constantopoulos et al., 1996] P. Constantopoulos, J. Mylopoulos, Y. Vassiliou, (eds.). Advanced<br />

Inforamtion Systems Engineering, 8th International Confernce, CAiSE’96, Heraklion,<br />

LNCS 1080. Springer, Berlin, 1996.<br />

[Cook / Daniels, 1994] S. Cook, J. Daniels. Designing Object Systems: Object Modeling with<br />

Syntropy. Prentice Hall, 1994.


Literaturverzeichnis 283<br />

[Coy, 1989] W. Coy. Brauchen wir eine Theorie der Informatik? Informatik-Spektrum,<br />

12(5):256–266, Oktober 1989.<br />

[Dahm / Widmann, 1998] P. Dahm, F. Widmann. Das Graphenlabor, Version 4.2. Fachbericht<br />

Informatik 11/98, Universität Koblenz-Landau, Institut <strong>für</strong> Informatik, Koblenz, 1998.<br />

[Dahm et al., 1998a] P. Dahm, J. Ebert, A. Franzke, M. Kamp, A. Winter. TGraphen und EER-<br />

Schemata, Formale Grundlagen. in [Ebert et al., 1998], 51–65. 1998.<br />

[Dahm et al., 1998b] P. Dahm, M. Kamp, F. Moskopp. Das Schemamodul, Schnittstellenbeschreibung.<br />

Projektbericht 1/98, Universität Koblenz-Landau, Institut <strong>für</strong> Softwaretechnik,<br />

Koblenz, 1998.<br />

[Davenport, 1993] T. H. Davenport. Process Innovation, Reengineering Work through Information<br />

Technologie. Harvard Business School Press, Boston, 1993.<br />

[Day / Zimmermann, 1983] J. D. Day, H. Zimmermann. The OSI Reference Model. Proceedings<br />

of the IEEE, 71:1334–1340, December 1983.<br />

[DeMarco, 1978] T. DeMarco. Structured Analysis and System Specification. Yourdon Inc.,<br />

New York, 1978.<br />

[Denert, 1991] E. Denert. Software Engineering. Springer, Heidelberg, 1991.<br />

[Derungs et al., 1996] M. Derungs, P. Vogler, H. Österle. Metamodell Workflow. Version 1.5.<br />

Bericht IM HSG/CC PSI/3, Institut <strong>für</strong> Wirtschaftsinformatik, Universität St. Gallen, 24. Mai<br />

1996.<br />

[Dijkstra, 1968] E. W. Dijkstra. Go To Statement Considererd Harmfull. Comm<strong>uni</strong>cation of the<br />

ACM, 11(3):147–148, March 1968.<br />

[Diller, 1990] A. Diller. Z, An Introduction to Formal Methods. Wiley, 1990.<br />

[DIN 2330, 1993] Begriffe und Benennungen, Allgemeine Grundsätze. Beuth, Berlin, Dezember<br />

1993.<br />

[DIN 66001, 1983] Sinnbilder und ihre Anwendung. Beuth, Berlin, Dezember 1983.<br />

[DIN 66261, 1985] Sinnbilder <strong>für</strong> Struktogramme nach Nassi-Shneiderman. Beuth, Berlin, November<br />

1985.<br />

[DIN 69900, 1987] Netzplantechnik. Beuth, Berlin, August 1987.<br />

[DIVO, 1966] DIVO (Hrsg.). MPM: Die Metra-Potential-Methode, in: DIVO Information, Reihe<br />

2, Sonderheft 1. DIVO Institut <strong>für</strong> Wirtschaftsforschung, Sozialforschung und angewandte<br />

Mathematik, 2. Auflage, Januar 1966.<br />

[Dörner, 1993] D. Dörner. Modellbildung und Simulation. in [Roth, 1993], 327–340. 1993.<br />

[Drüke, 1996] M. Drüke. Dokumentation <strong>für</strong> den Datenflußdiagramm-Editor. Studienarbeit<br />

S 429, Universität Koblenz-Landau, Fachbereich Informatik, Koblenz, Mai 1996.


284 Literaturverzeichnis<br />

[Dumslaff et al., 1992] U. Dumslaff, M. Mertesacker, A. Winter. Konzeptualisierung und<br />

Durchführung der Branchensoftwareanalyse. in [Ebert et al., 1992], 235–333. 1992.<br />

[Dumslaff et al., 1994] U. Dumslaff, J. Ebert, M. Mertesacker, A. Winter. Ein Vorgehensmodell<br />

zur Software-Evaluation. HMD, 31(175):89–105, Januar 1994.<br />

[Ebert / Engels, 1994] J. Ebert, G. Engels. Design Representation. in [Marciniak, 1994], 382–<br />

394. 1994.<br />

[Ebert / Franzke, 1995] J. Ebert, A. Franzke. A Declarative Approach to Graph Based Modeling.<br />

in [Mayr et al., 1995], 38–50. 1995.<br />

[Ebert / Süttenbach, 1997a] J. Ebert, R. Süttenbach. An OMT Metamodel. Fachbericht Informatik<br />

13/97, Universität Koblenz-Landau, Institut <strong>für</strong> Informatik, Koblenz, 1997.<br />

[Ebert / Süttenbach, 1997b] J. Ebert, R. Süttenbach. Integration of Z-based <strong>Se</strong>mantics of OO-<br />

Notations. in [Bosch / Mitchel, 1997]. 1997.<br />

[Ebert et al., 1992] J. Ebert, D. Euler, M. Twardy (Hrsg.). Computerunterstützte Auftragsabwicklung<br />

im Handwerk, Untersuchung von Problemfeldern und Konzeptualisierung von Bildungsmaßnahmen<br />

<strong>für</strong> die Bereiche der Energie- und Fertigungstechnik. Carl, Laasphe, 1992.<br />

[Ebert et al., 1996a] J. Ebert, R. Gimnich, A. Winter. Wartungsunterstützung in heterogenen<br />

Sprachumgebungen, Ein Überblick zum Projekt GUPRO. in [Lehner, 1996], 263–275. 1996.<br />

[Ebert et al., 1996b] J. Ebert, A. Winter, P. Dahm, A. Franzke, R. Süttenbach. Graph Based<br />

Modeling and Implementation with EER/GRAL . in [Thalheim, 1996], 163–178. 1996.<br />

[Ebert et al., 1997a] J. Ebert, A. Franzke, M. Kamp, D. Polock, F. Widmann. TGREP – Graphklasse<br />

zur Repräsentation von TGraph–bezogenen Ausdrücken und Prädikaten. Projektbericht<br />

12/97, Universität Koblenz-Landau, Institut <strong>für</strong> Softwaretechnik, Koblenz, 1997.<br />

[Ebert et al., 1997b] J. Ebert, R. Süttenbach, I. Uhe. Meta-CASE in Practice: a Case for KOG-<br />

GE. in [Olivé / Pastor, 1997], 203–216. 1997.<br />

[Ebert et al., 1998] J. Ebert, R. Gimnich, H. H. Stasch, A. Winter (Hrsg.). GUPRO, Generische<br />

Umgebung zum Programmverstehen. Fölbach, Koblenz, 1998.<br />

[Ebert et al., 1999a] J. Ebert, B. Kullbach, A. Winter. GraX – An Interchange Format for Reengineering<br />

Tools. in [WCRE, 1999], 89–98. 1999.<br />

[Ebert et al., 1999b] J. Ebert, R. Süttenbach, I. Uhe. JKogge: a Component-Based Approach for<br />

Tools in the Internet. in [STJA, 1999]. 1999.<br />

[Ebert, 1981] J. Ebert. Effiziente Graphenalgorithmen. Akademische Verlagsgesellschaft, 1981.<br />

[Ebert, 1993] J. Ebert. Efficient Interpretation of State Charts. in [Ésik, 1993], 121–221. 1993.<br />

[Ebert, 1997] J. Ebert. MetaCASE: Generierung und Anpassung von CASE-Werkzeugen. in<br />

[Gens, 1997], 191–196. 1997.


Literaturverzeichnis 285<br />

[ECMA, 1991] A Reference Model for Computer Assisted Software Engineering Environments<br />

Frameworks. Technical Report TR/55, European Computer Manufacturers Association, 111<br />

Rue du Rhône, CH-1204 Genf, 1991.<br />

[Ehrig / Mahr, 1985] H. Ehrig, B. Mahr. Fundamentals of Algebraic Specification. Springer,<br />

Berlin, 1985.<br />

[Ehrig et al., 1991] H. Ehrig, H.-J. Kreowski, G. Rozenberg (eds.). Graph Grammars and their<br />

Application to Computer Science, LNCS 532. Springer, Berlin, 1991.<br />

[EIA/IS-107, 1994] CDIF Framework for Modeling and Extensibility. (Extract of Interim Standard)<br />

http://www.eigroup.org/cdif/how-to-obtain-standards.html (20.08.1999)<br />

EIA/IS-107, Electronic Industries Association, Arlington, January 1994.<br />

[EIA/IS-108, 1994] CDIF Transfer Format – General Rules for Syntaxes and Encodings.<br />

(Extract of Interim Standard) http://www.eigroup.org/cdif/how-to-obtainstandards.html<br />

(20.08.1999) EIA/IS-108, Electronic Industries Association, Arlington, January<br />

1994.<br />

[EIA/IS-109, 1994] CDIF Transfer Format – Transfer Format Syntax SYNTAX.1. (Extract<br />

of Interim Standard) http://www.eigroup.org/cdif/how-to-obtain-standards.html<br />

(20.08.1999) EIA/IS-109, Electronic Industries Association, Arlington, January 1994.<br />

[EIA/IS-110, 1994] CDIF Transfer Format – Transfer Format Encoding ENCODING.1. (Extract<br />

of Interim Standard) http://www.eigroup.org/cdif/how-to-obtain-standards.html<br />

(20.08.1999) EIA/IS-110, Electronic Industries Association, Arlington, January 1994.<br />

[EIA/IS-111, 1994] CDIF Integrated Meta-model, Foundation Subject Area. (Extract of Interim<br />

Standard) http://www.eigroup.org/cdif/how-to-obtain-standards.html (20.<br />

08.1999) EIA/IS-111, Electronic Industries Association, Arlington, January 1994.<br />

[EIA/IS-112, 1995] CDIF Integrated Meta-model, Common Subject Area. (Extract of Interim<br />

Standard) http://www.eigroup.org/cdif/how-to-obtain-standards.html (20.<br />

08.1999) EIA/IS-112, Electronic Industries Association, Arlington, December 1995.<br />

[EIA/IS-113, 1994] CDIF Integrated Meta-model, Data Modeling Subject Area. (Extract of Interim<br />

Standard) http://www.eigroup.org/cdif/how-to-obtain-standards.html (20.<br />

08.1999) EIA/IS-113, Electronic Industries Association, Arlington, December 1994.<br />

[EIA/IS-115, 1995] CDIF Integrated Meta-model Data Flow Model, Subject Area. (Extract<br />

of Interim Standard) http://www.eigroup.org/cdif/how-to-obtain-standards.html<br />

(20.08.1999) EIA/IS-115, Electronic Industries Association, Arlington, December 1995.<br />

[Elmasri / Navathe, 2000] R. A. Elmasri, S. B. Navathe. Fundamentals of Database Systems.<br />

Addison Wesley, Reading, 3. edition, 2000.<br />

[Elmasri / Wiederhold, 1983] R. A. Elmasri, G. Wiederhold. GORDAS: A formal high-level<br />

Query Language for the Entity-Relationship Model. in [Chen, 1983], 49–72. 1983.


286 Literaturverzeichnis<br />

[Elmasri et al., 1993] R. A. Elmasri, V. Kouramajian, B. Thalheim (eds.). Entity-Relationship<br />

Approach, ER’93. 12th International Conference on the Entity-Relationship Approach, Arlington,<br />

Texas, LNCS 823. Springer, Berlin, December 1993.<br />

[Embley / Goldstein, 1997] D. W. Embley, R. C. Goldstein (eds.). Conceptual Modeling, ER’97,<br />

LNCS 1331. Springer, Berlin, 1997.<br />

[Engel, 1993] A. Engel. Organisationsforschung und Informatik. Vorlesungsskript, Institut <strong>für</strong><br />

Sozialwissenschaftliche Informatik, Universität Koblenz-Landau, August 1993.<br />

[Engel, 1995] A. Engel. Vorgangsbearbeitung im Informationsverbund. in [Huber-Wäschle et<br />

al., 1995], 118–126. 1995.<br />

[Engel, 1996] A. Engel. Verwaltungsreorganisation mit <strong>Referenz</strong>modellen. Ein Beitrag zur Konzeption<br />

einer Vorgangsunterstützungsumgebung <strong>für</strong> die Öffentliche Verwaltung. in [Scheer,<br />

1996], 457–483. 1996.<br />

[Engels et al., 1992] G. Engels, C. Lewerentz, M. Nagl, W. Schäfer, A. Schürr. Building Integrated<br />

Software Development Environments. Part 1: Tool Specification. ACM Transactions<br />

on Software Engineering and Methodology, 1(2):135–167, 1992.<br />

[Ernst and Young, 1990] NAVIGATOR System <strong>Se</strong>ries, Reference Manual, Analysis Phase Manual,<br />

Release 1.0. 1990.<br />

[Ernst, 1997] J. Ernst. Introduction to CDIF. http://www.eigroup.org/cdif/intro.html<br />

(19.07.1999), <strong>Se</strong>ptember 1997.<br />

[Ésik, 1993] Z. Ésik (eds.). Fundamentals of Computation Theory, 9th International Conference<br />

FCT’93, Szeded, Hungary, 23–27 August, 1993, LNCS 710. Spinger, Berlin, 1993.<br />

[Euler, 1989] D. Euler. Gestaltung von computerunterstützten Informationssystemen: von der<br />

bildungspolitischen Programmatik zur didaktischen Konzeption. Kölner Zeitschrift <strong>für</strong> Wirtschaft<br />

und Pädagogik, (7):63–107, November 1989.<br />

[Even, 1979] S. Even. Graph Algorithms. Pitman, Maryland, 1979.<br />

[Eversheim, 1996] W. Eversheim (Hrsg.). Prozeßorientierte Unternehmensorganisation: Konzepte<br />

und Methoden zur Gestaltung schlanker Organisationen. Springer, Berlin, 2. Auflage,<br />

1996.<br />

[Falkenberg et al., 1995] E. D. Falkenberg, W. Hesse, A. Olivé (eds.). Information System Concepts,<br />

Towards a Consolidation of Views. London, 1995.<br />

[Falkenberg et al., 1998] E. D. Falkenberg, W. Hesse, P. Lindgreen, B. E. Nilsson, J. L. H. Oei,<br />

C. Rolland, R. K. Stamper, F. J. M. van Assche, A. A. Verrijn-Stuart, K. Voss. FRISCO, A<br />

Framework of Information System Concepts, The FRISCO Report (Web edition). Department<br />

of Computer Science, University of Leiden, ftp://ftp.leiden<strong>uni</strong>v.nl/pub/rul/<br />

fri-full.zip (15.11.1999), 1998.<br />

[Färberböck et al., 1991] H. Färberböck, T. Gutzwiller, M. Heym. Ein Vergleich von Requirements<br />

Engineering Methoden auf Metamodell-Basis. in [Timm, 1991], 40–66. 1991.


Literaturverzeichnis 287<br />

[Fayol, 1919] H. Fayol. Allgemeine und industrielle Verwaltung. München, 1919.<br />

[Ferstl / Sinz, 1996] O. K. Ferstl, E. J. Sinz. Geschäftsprozeßmodellierung im Rahmen des <strong>Se</strong>mantischen<br />

Objektmodells. in [Becker / Vossen, 1996b], 47–61. 1996.<br />

[Flatscher, 1996] R. G. Flatscher. An Overview of the Architecture of EIA’a CASE Data Interchange<br />

Format (CDIF). Rundbrief des GI-Fachausschuß 5.2 http://www.eigroup.org<br />

/cdif/online.html (19.07.1999), 3(1):26–30, Sommer 1996.<br />

[Flatscher, 1998] R. G. Flatscher. Meta-Modellierung in EIA/CDIF. ADV-Verlag, Wien, 1998.<br />

[Floyd et al., 1997] C. Floyd, A. Krabbel, S. Ratuski, I. Wetzel. Zur Evolution der evolutionären<br />

Systementwicklung: Erfahrungen aus einem Krankenhausprojekt. Informatik Spektrum,<br />

20(1):13–20, Februar 1997.<br />

[Fowler / Scott, 1998] M. Fowler, K. Scott. UML konzentriert, Die neue Standard-Objektmodellierungssprache<br />

anwenden. Addison Wesley, Bonn, 1998.<br />

[Frank / Prasse, 1997a] U. Frank, M. Prasse. Ein Bezugsrahmen zur Beurteilung objektorientierter<br />

<strong>Modellierungssprachen</strong> – Veranschaulicht am Beispiel von OML und UML. Arbeitsbericht<br />

6, Institut <strong>für</strong> Wirtschaftsinformatik, Universität Koblenz-Landau, <strong>Se</strong>ptember 1997.<br />

[Frank / Prasse, 1997b] U. Frank, M. Prasse. Zur Standardisierung objektorientierter <strong>Modellierungssprachen</strong>:<br />

Eine kritische Betrachtung des State of the Art am Beispiel der Unified<br />

Modeling Language. Rundbrief des GI-Fachausschußes 5.2, 4(1), <strong>Se</strong>ptember 1997.<br />

[Frank, 1994] U. Frank. Multiperspektivische Unternehmensmodellierung. Theoretischer Hintergrund<br />

und Entwurf einer objektorientierten Entwurfsumgebung. Bericht 225, GMD, München/Wien,<br />

1994.<br />

[Frank, 1997a] U. Frank. Enriching Object-Oriented Methods with Domain Specific Knowledge:<br />

Outline of a Method for Enterprise Modeling. Arbeitsbericht 4, Institut <strong>für</strong> Wirtschaftsinformatik,<br />

Universität Koblenz-Landau, Koblenz, Juli 1997.<br />

[Frank, 1997b] U. Frank. Towards a Standardization of Object-Oriented Modeling Languages.<br />

Arbeitsbericht 3, Institut <strong>für</strong> Wirtschaftsinformatik, Universität Koblenz-Landau, Koblenz,<br />

Mai 1997.<br />

[Frank, 1998] U. Frank. The MEMO Object Modeling Language (MEMO-OML). Arbeitsbericht<br />

10, Institut <strong>für</strong> Wirtschaftsinformatik, Universität Koblenz-Landau, J<strong>uni</strong> 1998.<br />

[Franzke / Winter, 1996] A. Franzke, A. Winter. Softwareevaluation mit Mitteln des RequirementsEngineering.<br />

EMISA FORUM, (1):71–74, 1996.<br />

[Franzke / Zenz, 1995] A. Franzke, I. Zenz. Studie: Auswahl eines Standardsoftwarepakets <strong>für</strong><br />

die keramische Industrie. Projektbericht, Institut <strong>für</strong> Softwaretechnik, Universität Koblenz-<br />

Landau, J<strong>uni</strong> 1995.<br />

[Franzke, 1997] A. Franzke. GRAL: A Reference Manual. Fachbericht Informatik 3/97, Universität<br />

Koblenz-Landau, Fachbereich Informatik, Koblenz, 1997.


288 Literaturverzeichnis<br />

[Frege, 1891] G. Frege. Funktion und Begriff. Vortrag, gehalten in der Sitzung vom 9.1.1891 in<br />

der Jenaischen Gesellschaft <strong>für</strong> Medizin und Naturwissenschaft (in [Frege, 1994][S. 18–39]),<br />

1891.<br />

[Frege, 1994] G. Frege. Funktion, Begriff, Bedeutung. Vandenhoeck & Ruprecht, Göttingen,<br />

7. Auflage, 1994.<br />

[Gaitanides et al., 1994a] M. Gaitanides, R. Scholz, A. Vrohlings. Prozeßmanagement, Grundlagen<br />

und Zielsetzungen. in [Gaitanides et al., 1994b], 1–19. 1994.<br />

[Gaitanides et al., 1994b] M. Gaitanides, R. Scholz, A. Vrohlings, M. Raster (Hrsg.). Prozeßmanagement:<br />

Konzepte, Umsetzungen und Erfahrungen des Reengineering. Hanser, München,<br />

1994.<br />

[Gaitanides, 1983] M. Gaitanides. Prozeßorganisation, Entwicklung, Ansätze und Programme<br />

prozeßorientierter Organisationsgestaltung. Vahlen, München, 1983.<br />

[Gamma et al., 1994] E. Gamma, R. Helm, R. Johnson, J. Vlissides. Design Patterns. Elements<br />

of Reusable Object-Oriented Software. Addison-Wesley, Reading, 1994.<br />

[Gamma, 1996] E. Gamma. Java und Design Patterns, Eine vielversprechende Kombination.<br />

Java Spektrum, 19–24, <strong>Se</strong>ptember/Oktober 1996.<br />

[Gane / Sarson, 1979] C. Gane, T. Sarson. Structured Systems Analysis, Tools & Techniques.<br />

Prentice-Hall, Englewood Cliffs, 1979.<br />

[Gane, 1990] C. Gane. Computer Aided Software Engineering. The Methodologies, the Products,<br />

and the Future. Prentice Hall, Englewood Cliffs, 1990.<br />

[Genrich / Lautenbach, 1981] H. J. Genrich, K. Lautenbach. System Modeling with High-Level<br />

Petri Nets. Theoretical Computer Science, 13:109–136, 1981.<br />

[Gens, 1997] W. Gens (Hrsg.). STJA’97, Smalltalk und Java in Industrie und Ausbildung. Technische<br />

Universität Illmenau, Illmenau, 10.-11. <strong>Se</strong>ptember 1997.<br />

[Gigch, 1991] J. P. van Gigch. System Design, Modeling and Metamodeling. Plenum Press,<br />

New York, 1991.<br />

[Göhner, 1984] P. Göhner. Methoden zur Entwicklung von Realzeitsystemen und ihre praktische<br />

Anwendung in EPOS. in [Trauboth / Jaeschke, 1984], 325–335. 1984.<br />

[Goor et al., 1992] G. van den Goor, S. Hong, S. Brinkkemper. A Comparison of Six Object-<br />

Oriented Analysis and Design Methods. Technical report, Method Engineering Institute, University<br />

of Twente, 1992.<br />

[Göttler, 1988] H. Göttler. Graph Grammars used in Software Engineering, IFB 178. Springer,<br />

Berlin, 1988.<br />

[Graham, 1994] I. Graham. Object-Oriented Methods. Addison-Wessley, Wokingham, 2. edition,<br />

1994.


Literaturverzeichnis 289<br />

[Grochla, 1974] E. Grochla. Integrierte Gesamtmodelle der Datenverarbeitung, Entwicklung<br />

und Anwendung des Kölner Integrationsmodells (KIM), in: Reihe Betriebsinformatik. Hanser,<br />

München, Wien, 1974.<br />

[Grochla, 1978] E. Grochla. Einführung in die Organisationstheorie. Poeschel, Stuttgart, 1978.<br />

[Grochla, 1980] E. Grochla (Hrsg.). Handwörterbuch der Organisation. Poeschel, Stuttgart,<br />

2. Auflage, 1980.<br />

[Grochla, 1982] E. Grochla. Grundlagen der organisatorischen Gestaltung. Poeschel, Stuttgart,<br />

1982.<br />

[Grupp, 1990] B. Grupp. Darstellungstechniken <strong>für</strong> Organisatoren, Programmierer, EDV-<br />

Anwender, Revisoren. Forkel, Wiesbaden, 1990.<br />

[Gutzwiller, 1994] T. A. Gutzwiller. Das CC RIM-<strong>Referenz</strong>modell <strong>für</strong> den Entwurf von betrieblichen,<br />

transaktionsorientierten Informationssystemen, in: Betriebs- und Wirtschaftsinformatik.<br />

Physika, Heidelberg, 1994.<br />

[Haines, 1996] M. N. Haines. Ein <strong>Referenz</strong>modell <strong>für</strong> Krankenhausinformationssysteme. Diplomarbeit,<br />

Institut <strong>für</strong> Informatik, Universität Koblenz-Landau, Koblenz, <strong>Se</strong>ptember 1996.<br />

[Hammer / Champy, 1996] M. Hammer, J. Champy. Business Reengineering, Die Radikalkur<br />

<strong>für</strong> das Unternehmen. Campus, Frankfurt, 6. Auflage, 1996.<br />

[Harary, 1976] F. Harary. Graphentheorie. Oldenburger, München, 1976.<br />

[Harel, 1987] D. Harel. Statecharts: A Visual Formalism for Complex Systems. Science of<br />

Computer Programming, 8:231–274, 1987.<br />

[Harel, 1988] D. Harel. On Visual Formalisms. Comm<strong>uni</strong>cation of the ACM, 31(5):514–530,<br />

May 1988.<br />

[Hars, 1994] A. Hars. <strong>Referenz</strong>datenmodelle: Grundlagen effizienter Datenmodellierung. Gabler,<br />

Wiesbaden, 1994.<br />

[Hasselbring, 1997] W. Hasselbring (Hrsg.). Erfolgsfaktor Softwaretechnik <strong>für</strong> die Entwicklung<br />

von Krankenhausinformationssystemen, in: Informatik <strong>für</strong> Systementwickler, Band 4. Krehl,<br />

Münster, 1997.<br />

[Haux et al., 1998] R. Haux, A. Lagemann, P. Knaup, P. Schmücker, A. Winter. Management<br />

von Informationssystemen, Analyse, Bewertung, Auswahl, Bereitstellung und Einführung von<br />

Informationssystemkomponenten am Beispiel von Krankenhausinformationssystemen. Teubner,<br />

Stuttgart, 1998.<br />

[Heinrich, 1997] L. J. Heinrich. Grundlagen der Wirtschaftsinformatik. in [Rechenberg / Pomberger,<br />

1997], 859–874. 1997.<br />

[Hess et al., 1995] T. Hess, L. Brecht, H. Österle. Metamodell Prozessentwurf. Version 1.5.<br />

Bericht IM HSG/CC PRO/13, Institut <strong>für</strong> Wirtschaftsinformatik, Hochschule St. Gallen, 18.<br />

April 1995.


290 Literaturverzeichnis<br />

[Hesse et al., 1984] W. Hesse, H. Keutgen, A. Luft, D. Rombach. Ein Begriffssystem <strong>für</strong> die<br />

Softwaretechnik, Vorschlag zur Terminologie. Informatik Spektrum, 7:200–213, 1984.<br />

[Heym / Österle, 1993] M. Heym, H. Österle. Computer-aided Methodology Engineering. Information<br />

and Software Technology, 35(6/7):345–354, June/July 1993.<br />

[Heym, 1995] M. Heym. Prozeß- und Methodenmanagement <strong>für</strong> Informationssysteme. Überblick<br />

und <strong>Referenz</strong>modell. Springer, Berlin, 1995.<br />

[Hill et al., 1994] W. Hill, R. Fehlbaum, P. Ulrich. Organiationslehre 1, Ziele, Instrumente und<br />

Bedingungen der Organisation sozialer Systeme. Haupt, Bern, 5. Auflage, 1994.<br />

[Hoffmann, 1980] F. Hoffmann. Begriff der Organisation. in [Grochla, 1980], 1425–1431. 1980.<br />

[Hollingsworth, 1994] D. Hollingsworth. The Workflow Reference Model. Technical Report<br />

TC00-1003, Workflow Management Coalition, Brussels, 29. November 1994.<br />

[Hopcroft / Ullmann, 1979] J.E. Hopcroft, J.D. Ullmann. Introduction to Automata Theory, Languages<br />

and Computation. Addison Wessley, Reading, Massachusets, 1979.<br />

[Hoppen, 1992] D. Hoppen. Organisation und Informationstechnologie, Grundlagen <strong>für</strong> ein<br />

Konzept zur Organisationsgestaltung. Dr. Kovač, Hamburg, 1992.<br />

[Hub / Fischer, 1977] H. Hub, W. Fischer. Techniken der Aufbauorganisation. W. Kohlhammer,<br />

Stuttgart, 1977.<br />

[Huber-Wäschle et al., 1995] F. Huber-Wäschle, H. Schauer, P. Widmayer (Hrsg.). GISI 95,<br />

Herausforderungen eines globalen Informationsverbundes <strong>für</strong> die Informatik, in: Informatik<br />

aktuell. Springer, Berlin, 1995.<br />

[Hull / King, 1987] R. Hull, R. King. <strong>Se</strong>mantic Database Modeling: Survey, Applications, and<br />

Research Issues. ACM Computing Surveys, 19(3):201–260, <strong>Se</strong>ptember 1987.<br />

[Hunt, 1999] J. Hunt. Product Roundup, Mad About Modeling. Application Development<br />

http://www.appdevadvisor.com/html/prd roundup/index.shtml, (22.06.1999), May<br />

1999.<br />

[IDS, 1995] ARIS Methoden. Handbuch, IDS Prof. Scheer GmbH, Saarbrücken, April 1995.<br />

[IDS, 1998] ARIS Toolset 4.0, Whitepaper. http://www.ids-scheer.de/support.htm (25.<br />

06.1999), IDS Prof. Scheer GmbH, 20. Juli 1998.<br />

[Imhoff / Paczkowski, 1997] B. Imhoff, J. Paczkowski. Erstellung und Validierung eines <strong>Referenz</strong>modells<br />

<strong>für</strong> Krankenhausinformationssysteme. in [Hasselbring, 1997], 55–63. 1997.<br />

[Imhoff et al., 1996] B. Imhoff, C. Jostes, G. Mies. Datenmodell Bundeswehrkrankenhaus, Studienergebnis.<br />

Abschlußbericht, Sanitätsamt der Bundeswehr, Abteilung IV, Medizinische Informatik<br />

und Informationstechnik, Bonn, Oktober 1996.<br />

[ISG, 1999] OEW-Handbuch. Programmdokumentation, Object Engineering Workbench Version<br />

3.0.3, Demo Version, Innovative Software GmbH, Frankfurt, 1999.


Literaturverzeichnis 291<br />

[ISO/IEC DIS 15474, 1998] Information Technology, Software Engineering Data Definition<br />

and Interchange, Overview and Framework. Technical Report DIS 15475, 1998.<br />

[ISO/IEC DIS 15475, 1998] Information Technology – Software Engineering Data Definition<br />

and Interchange – Transfer Format. Technical Report DIS 15475, 1998.<br />

[ISO/IEC DIS 15476, 1998] Information Technology – Software Engineering Data Definition<br />

and Interchange – Integrated Meta-model. Technical Report DIS 15476, 1998.<br />

[ITU, 1988] ITU-T Recommendation B.17: Adoption of the CCITT Specification and description<br />

Language (SDL). ITU, 1988.<br />

[ITU, 1996] ITU-TS Recommendation Z.120: Message <strong>Se</strong>quence Chart (MSC). ITU, Geneva,<br />

1996.<br />

[Jablonski / Bussler, 1996] S. Jablonski, C. Bussler. Workflow-Management: Modeling Concepts,<br />

Architectures and Implementation. International Thomson Computer Press, London,<br />

1996.<br />

[Jablonski et al., 1997] S. Jablonski, M. Böhm, W. Schulze (Hrsg.). Workflow-Management,<br />

Entwicklung von Anwendungen und Systemen, Facetten einer neuen Technologie. dpunkt,<br />

Heidelberg, 1997.<br />

[Jackson, 1975] M. A. Jackson. Principles of Program Design. Academic Press, London, 1975.<br />

[Jackson, 1983] M. A. Jackson. System Developement. Prentice Hall, Englewood Cliffs, 1983.<br />

[Jacobson et al., 1993] I. Jacobson, M. Christerson, P. Jonsson, G. Övergaard. Object-Oriented<br />

Software Engineering, A Use Case Driven Approach. Addison Wessley, Wokingham, 4. edition,<br />

1993.<br />

[Jacobson et al., 1994] I. Jacobson, M. Ericsson, A. Jacobson. The Object Advantage, Business<br />

Process Reengineering with Object Technology. Addison Wesley, Wokingham, 1994.<br />

[James Martin Associates, 1987] ISP - Information Strategie Planing Handbook. Dublin, 1987.<br />

[James Martin Associates, 1989] Business Area Analysis Handbook. Ashford, 1989.<br />

[Jarke et al., 1995] M. Jarke, R. Gallersdörfer, M. A. Jeusfeld, M. Staudt, S. Eherer. Concept-<br />

Base, a Deductive Object Base for Meta Data Management. Journal of intelligent Information<br />

Systems, Special Issue on Advances in Deductive Object-Oriented Databases, 4(2):167–192,<br />

1995.<br />

[Jensen, 1998] K. Jensen. An Introduction to the Practical Use of Coloured Petri Nets. in [Reisig<br />

/ Rozenberg, 1998], 237–292. 1998.<br />

[Johansson et al., 1993] H. Johansson, P. McHugh, J. Pendlebury, W. Wheeler. Business Process<br />

Reengineering, Breakpoint Strategies for Market Dominance. Wiley, Chichester, 1993.<br />

[Jones, 1990] C. B. Jones. Systematic Software Development Using VDM. Prentice-Hall, Hempel<br />

Hempstead, 2. edition, 1990.


292 Literaturverzeichnis<br />

[Jordt / Gscheidle, (o.J.)] A. Jordt, K. Gscheidle. Fernkurs <strong>für</strong> Organisation, Lehrbriefe 1–6.<br />

Gabler, Wiesbaden, (o.J.).<br />

[Joschke, 1980] H. K. Joschke. Darstellungstechniken. in [Grochla, 1980], 431–462. 1980.<br />

[Kamp, 1998] M. Kamp. GReQL, Eine Anfragesprache <strong>für</strong> das GUPRO-Repository, Sprachbeschreibung<br />

(Version 1.2). in [Ebert et al., 1998], 173–202. 1998.<br />

[Kangassalo et al., 1995] H. Kangassalo, H. Jaakkola, S. Ohsuga, B. Wangler (eds.). Information<br />

Modeling and Knowledge Bases VI, in: Frontiers in Artificial Intelligence and Applications,<br />

Volume 26. IOS Press, Amsterdam, 1995.<br />

[Kaucky, 1988] G. Kaucky. Informationstechnologie und organisatorische Änderungen. Deutscher<br />

Universitäts-Verlag, Wiesbaden 1988, 1988.<br />

[Keller et al., 1992] G. Keller, M. Nüttgens, A.-W. Scheer. <strong>Se</strong>mantische Prozeßmodellierung<br />

auf der Grundlage „Ereignisgesteuerter Prozeßketten“ (EPK). IWi-Heft Heft 89, Institut <strong>für</strong><br />

Wirtschaftsinformatik, Saarbrücken, Januar 1992.<br />

[Kelley, 1961] J.E. Kelley. Critical-Path Planning and Scheduling: Mathematical Basis. Operations<br />

Research, 9:296–320, 1961.<br />

[Kelter, 1988] U. Kelter. PCTE, Weiterentwicklung und Standardisierung. Softwaretechnik-<br />

Trends, 8(1):33–42, August 1988.<br />

[Kelter, 1989] U. Kelter. PCTE. Informatik Spektrum, 12(3):165–166, J<strong>uni</strong> 1989.<br />

[Kelly et al., 1996] S. Kelly, K. Lyytinen, M. Rossi. MetaEdit+, A Fully Configurable Multi-<br />

User and Multi-Tool CASE and CAME Environment. in [Constantopoulos et al., 1996], 1–21.<br />

1996.<br />

[KGSt, 1995] Kommunales Informationsmodell KIM. Bericht 12/1995, Kommunale Gemeinschaftsstelle<br />

(KGSt), Köln, Dezember 1995.<br />

[Kieser / Kubicek, 1992] A. Kieser, H. Kubicek. Organisation. Walter de Gruyter, Berlin, New<br />

York, 3. Auflage, 1992.<br />

[King et al., 1988] S. King, I. H. Sørensen, J. Woodcock. Z: Grammar and Concrete and Abstract<br />

Syntaxes, Version 2.0. Technical Monograph PRG-68, Oxford University Compution<br />

Labaratory, Programming Research Group, Oxford, July 1988.<br />

[Kling, 1993] R. Kling. Organizational Analysis in Computer Science. The Information Society,<br />

9(2):71–87, March-May 1993.<br />

[KnowledgeWare, 1987] Information Engineering Workbench: Planning, Analysis and Design<br />

Workstation Guide, ESP release 4.0, 1987.<br />

[Knuth, 1974] D. E. Knuth. Structured Programming with go to Statements. Computing Surverys,<br />

6(4):261–301, December 1974.


Literaturverzeichnis 293<br />

[Kölzer / Uhe, 1997] A. Kölzer, I. Uhe. Benutzerhandbuch <strong>für</strong> das KOGGE-Tool BONsai, Version<br />

3.0. Projektbericht 2/97, Universität Koblenz-Landau, Institut <strong>für</strong> Softwaretechnik, Koblenz,<br />

1997.<br />

[KoopA ADV, 1997] Handlungsleitfaden „IT-gestützte Vorgangsbearbeitung“. Schriftenreihe<br />

der KBST 35, Bundesministerium des Innern, Arbeitsgruppe O I 3 (KBSt), Kooperationsausschuß<br />

ADV, Arbeitsgruppe IT-gestützte Vorgangsbearbeitung, Redaktion: A. Engel, Forschungsstelle<br />

<strong>für</strong> Verwaltungsinformatik, Universität Koblenz-Landau, 1997.<br />

[Kornwachs, 1997] K. Kornwachs. Um wirklich Informatiker zu sein, genügt es nicht, Informatiker<br />

zu sein. Informatik Spektrum, 20(2):79–87, April 1997.<br />

[Kosiol, 1976] E. Kosiol. Organisation der Unternehmung. Th. Gabler, Wiesbaden, 2. Auflage,<br />

1976.<br />

[Krabbel et al., 1996] A. Krabbel, I. Wetzel, S. Ratuski. Objektorientierte Analysetechniken <strong>für</strong><br />

übergreifende Aufgaben. Softwaretechnik-Trends, 16(3):65–72, <strong>Se</strong>ptember 1996.<br />

[Krabbel et al., 1997] A. Krabbel, I. Wetzel, S. Ratuski. Anforderungsermittlung <strong>für</strong> Krankenhausinformationssysteme:<br />

Definition von Kernsystem und Ausbaustufen. in [Hasselbring,<br />

1997], 1–8. 1997.<br />

[Krallmann / Wood, 1998] H. Krallmann, G. Wood. Bonapart. in [Bernus et al., 1998], 568–587.<br />

1998.<br />

[Krallmann, 1997] H. Krallmann (Hrsg.). Wirtschaftsinformatik ’97. Heidelberg, 1997.<br />

[Krogstie et al., 1995] J. Krogstie, O. I. Lindland, G. Sindre. Defining Quality Aspects for Conceptual<br />

Models. in [Falkenberg et al., 1995], 216–231. 1995.<br />

[Krüger, 1981] Wilfried Krüger. Aufgabenanalyse: Renaissance einer Organisationstechnik.<br />

Zeitschrift <strong>für</strong> Organisation, (4):185–198, 1981.<br />

[Kuhn, 1979] T. S. Kuhn. Die Struktur wissenschaftlicher Revolutionen. Suhrkamp, Frankfurt,<br />

4. Auflage, 1979.<br />

[Kullbach / Winter, 1999] B. Kullbach, A. Winter. Querying as an Enabling Technology in Software<br />

Reengineering. in [Nesi / Verhoef, 1999], 42–50. 1999.<br />

[Kullbach et al., 1998] B. Kullbach, A. Winter, P. Dahm, J. Ebert. Program Comprehension in<br />

Multi-Language Systems. in [WCRE, 1998], 135–143. 1998.<br />

[Laender / Flynn, 1993] A. H. Laender, D. J. Flynn. A semantic Comparison of the Modeling<br />

Capabilities of the ER and NIAM Models. in [Elmasri et al., 1993], 242–256. 1993.<br />

[Langer et al., 1997] P. Langer, C. Schneider, J. Wehler. Prozeßmodellierung mit Ereignisgesteuerten<br />

Prozeßketten (EPKs) und Petri-Netzen. Wirtschaftsinformatik, 39(5):479–489,<br />

1997.<br />

[Leavitt / Bahrami, 1988] H. J. Leavitt, H. Bahrami. Managerial Psychology. The University of<br />

Chicago Press, Chicago, 5. edition, 1988.


294 Literaturverzeichnis<br />

[Leavitt, 1965] H. J. Leavitt. Applied Organizational Change in Industry: Structural, Technological<br />

and Humanistic Approaches. in [March, 1965], 1144–1170. 1965.<br />

[Lehner et al., 1991] F. Lehner, W. Auer-Rizzi, R. Bauer, K. Breit, J. Lehner, G. Reber. Organisationslehre<br />

<strong>für</strong> Wirtschaftsinformatiker. Hanser, München, Wien, 1991.<br />

[Lehner et al., 1995] F. Lehner, R. Maier, K. Hildebrand. Wirtschaftsinformatik. Theoretische<br />

Grundlagen. Hanser, München, 1995.<br />

[Lehner, 1995] F. Lehner. Modelle und Modellierung. in [Lehner et al., 1995], 73–164. 1995.<br />

[Lehner, 1996] F. Lehner (Hrsg.). Softwarewartung und Reengineering, Erfahrungen und Entwicklungen.<br />

Gabler, Wiesbaden, 1996.<br />

[Lindland et al., 1994] O. I. Lindland, G. Sindre, A. Sølvberg. Understanding Quality in Conceptual<br />

Modeling. IEEE Software, (2):42–49, March 1994.<br />

[Ling et al., 1998] T. W. Ling, S. Ram, M. L. Lee (eds.). Conceptual Modeling, ER’98, LN-<br />

CS 1507. Springer, Berlin, 1998.<br />

[Löcher / Pühler, 1997] M. Löcher, T. Pühler. Entwicklung eines Softwareevaluationstools. Studienarbeit,<br />

Universität Koblenz-Landau, Fachbereich Informatik, Koblenz, Juli 1997.<br />

[Longworth / Nicholls, 1986] G. Longworth, D. Nicholls. SSADM Manual. NCC Publications,<br />

Manchester, 1986.<br />

[Loucopoulos / Zicari, 1992] P. Loucopoulos, R. Zicari (eds.). Conceptual Modeling, Databases,<br />

and CASE. Wiley, New York, 1992.<br />

[Loucopoulos, 1992] P. Loucopoulos. Conceptual Modeling. in [Loucopoulos / Zicari, 1992],<br />

1–26. 1992.<br />

[Loucopoulos, 1994] P. Loucopoulos (eds.). Entity-Relationship Approach, ER’94. Business<br />

Modeling and Re-Engineering. 13th International Conference on the Entity-Relationship Approach,<br />

LNCS 881. Springer, Berlin, 13.-16. December 1994.<br />

[Lyytinen / Tahvanainen, 1992] K. Lyytinen, V.-P. Tahvanainen (eds.). Next Generation CASE<br />

Tools. IOS Press, Amsterdam, 1992.<br />

[Malcolm et al., 1959] D. G. Malcolm, J. H. Roseboom, C. E. Clark, W. Fazar. Application of a<br />

Technique for Resarch and Development Program Evaluation. Operations Research, 7:646–<br />

669, 1959.<br />

[Marca / McGowan, 1988] D. A. Marca, C. L. McGowan. SADT, Structured Analysis and Design<br />

Technique. McGraw Hill, New York, 1988.<br />

[March, 1965] J. G. March (ed.). Handbook of Organizations. Chicago, 1965.<br />

[Marciniak, 1994] J. J. Marciniak (ed.). Encyclopedia of Software Engineering. Wiley, New<br />

York, 1994.


Literaturverzeichnis 295<br />

[Marent, 1995] C. Marent. Branchenspezifische <strong>Referenz</strong>modelle <strong>für</strong> betriebswirtschaftliche IV-<br />

Anwendungsbereiche. Wirtschaftsinformatik, 37(3):303–313, 1995.<br />

[Martin / McClure, 1985a] J. Martin, C. McClure. Diagramming Techniques for Analysts and<br />

Programmers. Prentice Hall, Englewood Cliffs, 1985.<br />

[Martin / McClure, 1985b] J. Martin, C. McClure. Structured Techniques for Computing. Prentice<br />

Hall, Englewood Cliffs, 1985.<br />

[Martin / Odell, 1992] J. Martin, J. J. Odell. Object-Oriented Analysis and Design. Prentice<br />

Hall, Englewood Cliffs, 1992.<br />

[Martin, 1982] J. Martin. Strategic Data Planning. Prentice Hall, Englewood Cliffs, 1982.<br />

[Marx, 1998] T. Marx. NetCase, Softwareentwurf und Workflow-Modellierung mit Petri-<br />

Netzen. Shaker, Aachen, 1998.<br />

[Mayntz, 1985] R. Mayntz. Soziologie der öffentlichen Verwaltung. Müller, Heidelberg, 3. Auflage,<br />

1985.<br />

[Mayr et al., 1995] E. Mayr, G. Schmidt, G. Tinhofer (eds.). Graphtheoretic Concepts in Computer<br />

Science, LNCS 903. Springer, Berlin, 1995.<br />

[McDermid / Rook, 1991] J. A. McDermid, P. Rook. Software Development Process Models. in<br />

[McDermid, 1991], 15/1–15/36. 1991.<br />

[McDermid, 1991] J. A. McDermid. Software Engineer’s Reference Book. Butterworth-<br />

Heinemann, Oxford, 1991.<br />

[Mehlhorn, 1984] K. Mehlhorn. Graph Algorithms and NP-Completeness, in: Data structures<br />

and algorithms, Volume 2. Springer, Berlin, 1984.<br />

[Menzel / Mayer, 1998] C. Menzel, R. J. Mayer. The IDEF Family of Languages. in [Bernus et<br />

al., 1998], 208–241. 1998.<br />

[Menzl / Nauer, 1974] A. Menzl, E. Nauer. Das Funktionendiagramm, ein flexibles Organisations-<br />

und Führungsmittel. Paul Haupt, Bern, 2. Auflage, 1974.<br />

[Miˇsić / Moser, 1997] V. B. Miˇsić, S. Moser. Formal Approach to Metamodeling: A Generic<br />

Object-Oriented Perspective. in [Embley / Goldstein, 1997], 243–256. 1997.<br />

[Micro Tool, 1997] case/4/0/ im Überblick. http://www.microTool.de/prod.d/pdf/case<br />

40/faltblatt42.pdf (24.06.1999), Micro Tool GmbH, Berlin, 1997.<br />

[Micro Tool, 1998] case/4/0/ Quicktour. http://www.microTool.de/prod.d/pdf/case40/<br />

quicktour43.pdf (24.06.1999), Micro Tool GmbH, Berlin, 1998.<br />

[Microsoft, 1998] PROJECT-98, Das Handbuch. Microsoft Press, Redmond, 1998.<br />

[Miller, 1956] G. A. Miller. The magical Number <strong>Se</strong>ven, plus or minus two: Some Limits on<br />

our Capacity for processing Information. Psychology Review, 63(2):81–97, March 1956.


296 Literaturverzeichnis<br />

[Mittelstraß, 1984] J. Mittelstraß (Hrsg.). Enzyklopädie Philosophie und Wissenschaftstheorie.<br />

Bibliographisches Institut, Mannheim, 1984.<br />

[Moody / Shanks, 1994] D. L. Moody, G. G. Shanks. What Makes a Good Data Model? Evaluating<br />

the Quality of Entity Relationship Models. in [Loucopoulos, 1994], 94–111. 1994.<br />

[Münch et al., 1998] M. Münch, A. Schürr, A. J. Winter. Integrity Constraints in the Multiparadigm<br />

Language PROGRES. Technical Report DSSE-TR-98-2, Department of Electronics<br />

and Computer Science, University of Southampton, Southampton, February 1998.<br />

[Mylopoulos / Levesque, 1996] J. Mylopoulos, H. J. Levesque. An Overview of Knowledge<br />

Representation. in [Brodie et al., 1986], 3–17. 1996.<br />

[Mylopoulos et al., 1990] J. Mylopoulos, A. Borgida, M. Jarke, M. Koubarkis. Telos: Representing<br />

Knowledge About Information Systems. ACM Transactions on Information Systems,<br />

8(4):325–262, October 1990.<br />

[Mylopoulos, 1992] J. Mylopoulos. Conceptual Modeling with TELOS. in [Loucopoulos / Zicari,<br />

1992], 49–68. 1992.<br />

[Nagl, 1979] M. Nagl. Graph-Grammatiken, Theorie, Implementierung, Anwendung. Vieweg,<br />

Braunschweig, 1979.<br />

[Nagle et al., 1992] T. Nagle, J. Nagle, L. Gerholz, P. Eklund (eds.). Conceptual Structures:<br />

Current Research and Practice. Ellis, Horwood, 1992.<br />

[Nassi / Shneiderman, 1973] I. Nassi, B. Shneiderman. Flowchart Techniques for Structured Programming.<br />

ACM SIGPLAN Notices, (8):12–26, 1973.<br />

[Naur / Randell, 1969] P. Naur, B. Randell (eds.). Software Engineering, Report on a Conference<br />

sponsored by the NATO Science Committee, Garmisch, Germany, October 7-11, 1968.<br />

Scientific Affairs Division NATO, Brussels, January 1969.<br />

[Nesi / Verhoef, 1999] P. Nesi, C. Verhoef (eds.). Proceedings of the 3nd European Conference<br />

on Software Maintenance and Reengineering. IEEE Computer Society, Los Alamitos, 1999.<br />

[Nordsieck, 1962] F. Nordsieck. Die schaubildliche Erfassung und Untersuchung der Betriebsorganisation.<br />

Poeschel, Stuttgart, 6. Auflage, 1962.<br />

[Nordsieck, 1972] F. Nordsieck. Betriebsorganisation, Lehre und Technik. Poeschel, Stuttgart,<br />

2. Auflage, 1972.<br />

[Oestereich, 1998] B. Oestereich. Objektorientierte Geschäftsprozeßmodellierung mit der<br />

UML. Objektspektrum, (2):48–52, März/April 1998.<br />

[Ogden / Richards, 1923] C. K. Ogden, I. A. Richards. The Meaning of Meaning, A Study of the<br />

Influence of Language upon Thought and of the Science of Symbolism. Harcourt, Base and<br />

Company, New York, 1923.<br />

[Olivé / Pastor, 1997] A. Olivé, J. A. Pastor (eds.). Advanced Information Systems Engineering,<br />

9th international Conference, CAiSE’97, LNCS 1250. Springer, Berlin, 1997.


Literaturverzeichnis 297<br />

[Olle et al., 1982] T. W. Olle, H. G. Sol, A. A. Verrijn-Stuart (eds.). Information Systems Methodologies.<br />

North Holland, Amsterdam, 1982.<br />

[Olle et al., 1987] T. W. Olle, G. H. Sol, A. A. Verrijn-Stuart (eds.). Information Systems Design<br />

Methodologies: A Comparative Review. Proceedings of the IFIP WG 8.1 Working Conference<br />

on Comparative Review of Information Systems Design Methodologies, Noordwijkerhout,<br />

19-14. May 1982. Elsevier, North-Holland, 3. edition, 1987.<br />

[Olle et al., 1991] T. W. Olle, J. Hagelstein, I. G. Macdonald, C. Rolland, H. G. Sol, F. J. M.<br />

van Assche, A. A. Verrijn-Stuart. Information Systems Methodologies. A Framework for<br />

Understanding. Addison-Wesley, Wokingham, 2. edition, 1991.<br />

[OMG, 1999] Unified Modeling Language Specification, Version 1.3a1. CD-ROM in [Rumbaugh<br />

et al., 1999], January 1999.<br />

[Österle / Gutzwiller, 1992] H. Österle, T. Gutzwiller. Konzepte angewandter Analyse- und Design-Methoden.<br />

Ein <strong>Referenz</strong>-Metamodell <strong>für</strong> die Analyse und das System-Design, Band 1.<br />

Angewandte Informationstechnik, Hallbergmoos, 1992.<br />

[Papazoglou, 1995] M. P. Papazoglou (ed.). OOER’95: Object-Oriented and Entity Relationship<br />

Modeling, LNCS 1021. Springer, Berlin, 1995.<br />

[Partsch, 1998] H. Partsch. Requirements-Engineering systematisch. Springer, Berlin, 1998.<br />

[PERT, 1958] PERT Summary Report, Phase 1. Technical report, Special Projects Office, Buerau<br />

of Naval Weapons, Department of the Navy, U.S. Government Printing Office, Washington,<br />

D.C., July 1958.<br />

[Petri, 1962] C. A. Petri. Komm<strong>uni</strong>kation mit Automaten. Schriften des Institutes <strong>für</strong> instrumentelle<br />

Mathematik, Bonn, 1962.<br />

[Popkin, 1999] Enterprise Modeling, Aligning Business and Information Technology. White<br />

Paper, Popkin Software and Systems Ltd, Leamington, 1999.<br />

[Porter, 1985] M. E. Porter. Competitive Advantage. Free Press, New York, 1985.<br />

[Pressman, 1997] R. S. Pressman. Software Engineering, A Practitioners’s Approach. McCraw-<br />

Hill, New York, 4. edition, 1997.<br />

[Pro Ubis, 1999a] <strong>Referenz</strong>-Handbuch Bonapart 2.3. http://www.proubis.de/bonapartcd/<br />

(21.06.1999), Pro Ubis GmbH, Berlin, 1999.<br />

[Pro Ubis, 1999b] Tutorial Bonapart 2.3. http://www.proubis.de/bonapartcd/ (21.06.<br />

1999), Pro Ubis GmbH, Berlin, 1999.<br />

[Raet BV, 1988] Information Planning, De aanpak van Raet, J<strong>uni</strong> 1988.<br />

[Raue, 1996] H. Raue. Wiederverwendbare betriebliche Anwendungssysteme, Grundlagen und<br />

Methoden ihrer objektorientierten Entwicklung. Deutscher Universitäts-Verlag, Wiesbaden,<br />

1996.


298 Literaturverzeichnis<br />

[Rechenberg / Pomberger, 1997] P. Rechenberg, G. Pomberger (Hrsg.). Informatik Handbuch.<br />

Hanser, München, 1997.<br />

[REFA, 1992] REFA. Methodenlehre der Betriebsorganisation, Aufbauorganisation. Hanser,<br />

München, 1992.<br />

[Reisig / Rozenberg, 1998] W. Reisig, G. Rozenberg (eds.). Lectures on Petri Nets II: Applications,<br />

Advances in Petri Nets, LNCS 1492. Springer, Berlin, 1998.<br />

[Reisig, 1992] W. Reisig. Petrinetze, Eine Einführung. Springer, Berlin, 2. Auflage, 1992.<br />

[Rolf, 1998a] A. Rolf. Grundlagen der Organisations- und Wirtschaftsinformatik. Springer,<br />

Berlin, 1998.<br />

[Rolf, 1998b] A. Rolf. Herausforderungen <strong>für</strong> die Wirtschaftsinformatik. Informatik Spektrum,<br />

21(5):259–264, Oktober 1998.<br />

[Rolland / Cauvet, 1992] C. Rolland, C. Cauvet. Trends and Perspectives in Conceptual Modeling.<br />

in [Loucopoulos / Zicari, 1992], 27–48. 1992.<br />

[Rosemann / Schütte, 1997] M. Rosemann, R. Schütte. Grundsätze ordnungsmäßiger <strong>Referenz</strong>modellierung.<br />

in [Becker et al., 1997], 16–33. 1997.<br />

[Rosemann / zur Mühlen, 1995] M. Rosemann, M. zur Mühlen. Der Lösungsbeitrag von Metadatenmodellen<br />

beim Vergleich von Workflowmanagementsystemen. Arbeitsbericht 48, Institut<br />

<strong>für</strong> Wirtschaftsinformatik, Westfälische Wilhelms-Universität Münster, J<strong>uni</strong> 1995.<br />

[Rosemann / zur Mühlen, 1998] M. Rosemann, M. zur Mühlen. Modellierung der Aufbauorganisation<br />

in Workflow-Management-Systemen: Kritische Bestandsaufnahme und Gestaltungsvorschläge.<br />

EMISA-Forum, (1):78–85, 1998.<br />

[Rosemann, 1996] M. Rosemann. Komplexitätsmanagement in Prozeßmodellen: methodenspezifische<br />

Gestaltungsempfehlungen <strong>für</strong> die Informationsmodellierung. Gabler, Wiesbaden,<br />

1996.<br />

[Ross, 1977] D. T. Ross. Structured Analysis (SA): A Language for Comm<strong>uni</strong>cating Ideas.<br />

IEEE Transactions on Software Engineering, 3(1):16–34, January 1977.<br />

[Roth, 1993] E. Roth (Hrsg.). Sozialwissenschaftliche Methoden. Lehr- und Handbuch <strong>für</strong> Forschung<br />

und Praxis. Oldenbourg, München, 3. Auflage, 1993.<br />

[Roy, 1962] B. Roy. Cheminement et connexité dans les graphs. Applications aux problémes d’<br />

ordonnancement. METRA: Série Spéciale No. 1, Mai 1962.<br />

[Royce, 1970] W. W. Royce. Managing the Development of large Software Systeme. Proceedings<br />

of IEEE WESCON 1970 (Reprint in [Thayer, 1988, 118–127]), 1–9, 1970.<br />

[Rozenberg, 1997] G. Rozenberg (ed.). Handbook of Graph Grammars and Computing by<br />

Graph Transformation, Volume 1: Foundations. World Scientific, 1997.


Literaturverzeichnis 299<br />

[Rudolph et al., 1996] E. Rudolph, P. Graubmann, J. Grabowski. Tutorial on Message <strong>Se</strong>quence<br />

Charts. Computer Networks and ISDN Systems, 28(12):1629–1641, 1996.<br />

[Rumbaugh et al., 1991] J. Rumbaugh, M. Blaha, W. Premerlani, F. Eddy, W. Lorensen. Object-<br />

Oriented Modeling and Design. Prentice Hall, Englewood Cliffs, 1991.<br />

[Rumbaugh et al., 1999] J. Rumbaugh, I. Jacobson, G. Booch. The Unified Modeling Language<br />

Reference Manual. Addison Wesley, Reading, 1999.<br />

[Rumbaugh, 1995] J. Rumbaugh. What is a Method. Journal of Object-Oriented Programming,<br />

8(6):10–26, 1995.<br />

[Saeki, 1995] M. Saeki. Object-Oriented Meta Modeling. in [Papazoglou, 1995], 250–259.<br />

1995.<br />

[Samet, 1979] P. A. Samet (ed.). EURO IFIP 79. North Holland, Amsterdam, 1979.<br />

[Scheer, 1992] A.-W. Scheer. Architektur integrierter Informationssysteme, Grundlagen der Unternehmensmodellierung.<br />

Springer, Berlin, 2. Auflage, 1992.<br />

[Scheer, 1994] A.-W. Scheer. Wirtschaftsinformatik, <strong>Referenz</strong>modelle <strong>für</strong> industrielle Geschäftsprozesse.<br />

Springer, Berlin, 5. Auflage, 1994.<br />

[Scheer, 1996] A.-W. Scheer (Hrsg.). Rechnungswesen und EDV 96. Kundenorientierung in Industrie,<br />

Dienstleistung und Verwaltung. 17. Saarbrücker Arbeitstagung. Physica, Heidelberg,<br />

1996.<br />

[Scheer, 1997] A.-W. Scheer. ARIS House of Business Engineering, Konzept zur Beschreibung<br />

und Ausführung von <strong>Referenz</strong>modellen. in [Becker et al., 1997], 3–15. 1997.<br />

[Scheer, 1998] A.-W. Scheer. ARIS. in [Bernus et al., 1998], 541–565. 1998.<br />

[Schmidt, 1980] G. Schmidt. Die Entwicklung von Organisationsmethoden und Techniken.<br />

Zeitschrift <strong>für</strong> Organisation, 322–335, 1980.<br />

[Schmidt, 1989] G. Schmidt. Methode und Technik der Organisation, in: Schriftenreihe „Der<br />

Organisator“, Band 1. Verlag Dr. Götz Schmidt, Gießen, 8. Auflage, 1989.<br />

[Scholz-Reiter, 1990] B. Scholz-Reiter. CIM-Informations- und Komm<strong>uni</strong>kationssyteme, Darstellung<br />

von Methoden und Konzeption eines rechnergestützten Werkzeugs <strong>für</strong> die Planung.<br />

Oldenbourg, München, 1990.<br />

[Schulz, 1988] A. Schulz. Software Entwurf, Methoden und Werkzeuge. Oldenburg, München,<br />

1988.<br />

[Schumm et al., 1995] T. Schumm, C. Thomann, A. Winter. Evaluation von Krankenhausinformationssystemen.<br />

Projektbericht 4/95, Institut <strong>für</strong> Softwaretechnik, Universität Koblenz-<br />

Landau, Juli 1995.<br />

[Schürr / Westfechtel, 1992] A. Schürr, B. Westfechtel. Graphgrammatiken und Graphersetzungssyteme.<br />

Aachener Informatik Berichte AIB 92–15, Fachgruppe Informatik, RWTH<br />

Aachen, 1992.


300 Literaturverzeichnis<br />

[Schürr, 1991a] A. Schürr. Operationales Spezifizieren mit Programmierten Graphersetzungssystemen:<br />

Formale Definitionen, Anwendungen und Werkzeuge. Deutscher Universitätsverlag,<br />

Braunschweig, 1991.<br />

[Schürr, 1991b] A. Schürr. PROGRES: A VHL-Language Based on Graph Grammars. in [Ehrig<br />

et al., 1991], 641–659. 1991.<br />

[Schürr, 1994] A. Schürr. PROGRES, A Visual Language and Environment for PROgramming<br />

with Graph REwriting Systems. Aachener Informatik Berichte AIB 94–11, Lehrstuhl <strong>für</strong><br />

Informatik III, RWTH Aachen, 1994.<br />

[Schütte / Rotthowe, 1998] R. Schütte, T. Rotthowe. The Guidelines to Modeling, An Approach<br />

to Enhance the Quality in Information Models. in [Ling et al., 1998], 240–254. 1998.<br />

[Schütte, 1996] R. Schütte. <strong>Referenz</strong>prozeßmodelle <strong>für</strong> Handelsunternehmen. HMD, 33(192):<br />

72–87, 1996.<br />

[Schwarz, 1980] H. Schwarz. Stelle. in [Grochla, 1980], 2113–2118. 1980.<br />

[Schwarze, 1994] J. Schwarze. Netzplantechnik, Eine Einführung in das Projektmanagement.<br />

Neue Wirtschafts-Briefe, Herne, 7. Auflage, 1994.<br />

[<strong>Se</strong>ubert, 1997] M. <strong>Se</strong>ubert. Business Objekte und objektorientiertes Prozeßdesign. in [Becker<br />

et al., 1997], 46–64. 1997.<br />

[Shlaer / Mellor, 1988] S. Shlaer, S. J. Mellor. Object-Oriented Systems Analysis: Modeling the<br />

World in Data. Yourdon Press, Englewood Cliffs, 1988.<br />

[Simon et al., 1997] C. Simon, H. Ridder, T. Marx. The Petri Net Tools Neptun and Posidon.<br />

Fachbericht Informatik 15/97, Universität Koblenz-Landau, Institut <strong>für</strong> Informatik, Koblenz,<br />

1997.<br />

[Simon, 1994] F. Simon. Tagungsband zum Workshop „Deklarative Programmierung und Spezifikation“,<br />

der GI-Fachgruppe 2.1.4 Alternative Konzepte <strong>für</strong> Sprachen und Rechner, 9.-11.<br />

Mai 1994, Bad Honnef. Fachbericht Nr. 9412, Institut <strong>für</strong> Informatik und praktische Mathematik,<br />

Universität Kiel, Kiel, <strong>Se</strong>ptember 1994.<br />

[Smith / Smith, 1977] J. M. Smith, D. C. P. Smith. Databases Abstractions: Aggregation. Comm<strong>uni</strong>cations<br />

of the ACM, 20:405–413, 1977.<br />

[Smith, 1990] A. Smith. Der Wohlstand der Nationen, Eine Untersuchung seiner Natur und<br />

seiner Ursachen. dtv, 5. Auflage, 1990.<br />

[Sommerville, 1996] I. Sommerville. Software Engineering. Addison-Wesley, Wokingham,<br />

5. edition, 1996.<br />

[Sowa / Zachman, 1992] J. F. Sowa, J. A. Zachman. Extending and formalizing the framework<br />

for information systems architecture. IBM Systems Journal, 31(3):590–616, 1992.<br />

[Sowa, 1984] J. F. Sowa. Conceptual Structures. Information, Processing in Mind and Machine,<br />

in: The Systems Programming <strong>Se</strong>ries. Addison-Wesley, Reading, 1984.


Literaturverzeichnis 301<br />

[Sowa, 1992] J. F. Sowa. Conceptual Graphs Summary. in [Nagle et al., 1992], 3–51. 1992.<br />

[Spivey, 1992] J. M. Spivey. The Z Notation: A Reference Manual, in: International <strong>Se</strong>ries in<br />

Computer Science. Prentice Hall, Englewood Cliffs, 2. edition, 1992.<br />

[Staff, 1996] J. Staff. MS Project 4.1. Tewi, München, 1996.<br />

[Staud, 1999] J. Staud. Geschäftsprozeßanalyse mit Ereignisgesteuerten Prozeßketten, Grundlage<br />

des Business Reengineering <strong>für</strong> SAP R/3 und andere Betriebswirtschaftliche Standardsoftware.<br />

Springer, Berlin, 1999.<br />

[Stegmüller, 1973] W. Stegmüller. Probleme und Resultate der Wissenschaftstheorie und analytischen<br />

Philosophie, Band 2, Theorie und Erfahrung. Springer, Berlin, 2. Auflage, 1973.<br />

[Steinebach, 1983] N. Steinebach. Verwaltungsbetriebslehre, in: Das Verwaltungstudium in<br />

Grundrissen, Band 6. Walhalla und Praetoria, Regensburg, 2. Auflage, 1983.<br />

[STJA, 1999] STJA. STJA 99, 5. Fachkonferenz Smalltalk und Java in Industrie und Ausbildung.<br />

CD-ROM, 1999.<br />

[Strahringer, 1996] S. Strahringer. Metamodellierung als Instrument des Methodenvergleichs,<br />

Eine Evaluierung am Beispiel objektorientierter Analysemethoden. Shaker, Aachen, 1996.<br />

[Süttenbach / Ebert, 1997] R. Süttenbach, J. Ebert. A Booch Metamodel. Fachbericht Informatik<br />

5/97, Universität Koblenz-Landau, Institut <strong>für</strong> Informatik, Koblenz, 1997.<br />

[Süttenbach, 1998] R. Süttenbach. Formalizing Visual Languages of Object-Oriented Methods.<br />

in [Thurner / Erni, 1998]. 1998.<br />

[Süttenbach, 2000] R. Süttenbach. Formalisierung <strong>visuelle</strong>r <strong>Modellierungssprachen</strong> objektorientierter<br />

Methoden. Abstrakte Syntax und <strong>Se</strong>mantik. erscheint 2000.<br />

[Tanenbaum, 1990] A. S. Tanenbaum. Computer Netzwerke. Wolfram, Attenkirchen, 2. Auflage,<br />

1990.<br />

[Taylor, 1919] F. W. Taylor. Die Grundsätze wissenschaftlicher Betriebsführung. Oldenbourg,<br />

München, 1919.<br />

[Teorey et al., 1989] T. J. Teorey, G. Wei, D. L. Bolton, J. A. Koenig. ER Model Clustering as<br />

an Aid for User Comm<strong>uni</strong>cation and Documentation in Database Design. Comm<strong>uni</strong>cations<br />

of the ACM, 32(8):975–987, August 1989.<br />

[Thalheim, 1996] B. Thalheim (ed.). Conceptual Modeling, ER’96, LNCS 1157. Springer,<br />

Berlin, 1996.<br />

[Thayer, 1988] R. H. Thayer (ed.). IEEE Tutorial on Software Engineering Project Management.<br />

Computer Society of the IEEE, Los Angeles, 1988.<br />

[Thurner / Erni, 1998] V. Thurner, A. Erni. CAiSE’98 5th Doctoral Consortium on Advanced Information<br />

Systems Engineering, Proceedings. Technical Report, Eidgenössische Technische<br />

Hochschule Zürich, Zürich, May 1998.


302 Literaturverzeichnis<br />

[Timm, 1991] M. Timm (Hrsg.). Requirements Engineering ’91. „Structured Analysis“ und<br />

verwandte Ansätze, Marburg, 10./11. April 1991, Proceedings, IFB 273. Springer, Berlin,<br />

1991.<br />

[Tolvanen et al., 1996] J.-P. Tolvanen, M. Rossi, H. Liu. Method Engineering: Current Research<br />

Directions and Implications for Future Research. in [Brinkkemper et al., 1996], 296–317.<br />

1996.<br />

[Tolvanen, 1998] J.-P. Tolvanen. Incremental Method Engineering with Modeling Tools, in:<br />

Jyväskylä Studies in Computer Science, Economics and Statistics, Volume 47. University of<br />

Jyväskylä, Jyväskylä, 1998.<br />

[Trauboth / Jaeschke, 1984] H. Trauboth, A. Jaeschke (Hrsg.). Prozeßrechner 1984, Prozeßdatenverarbeitung<br />

im Wandel, 4. GI/GMR/KfK-Fachtagung, Karlsruhe, 26.-28. <strong>Se</strong>ptember<br />

1984, IFB 86. Springer, Berlin, 1984.<br />

[Troitzsch, 1990] K. G. Troitzsch. Modellbildung und Simulation in den Sozialwissenschaften.<br />

Westdeutscher Verlag, Opladen, 1990.<br />

[Turner et al., 1987] W. S. Turner, R. P. Langerhorst, G. E. Hice, H. B. Eilers, A. A. Uijtenbroek.<br />

System Development Methodology (SDM II). North Holland and Pandata, 1987.<br />

[Verheijen / van Bekkum, 1982] G. M. A. Verheijen, J. van Bekkum. NIAM: An Information<br />

Analysis Method. in [Olle et al., 1982], 537–589. 1982.<br />

[Verhoef et al., 1991] T. F. Verhoef, A. H. M. ter Hofstede, G. M. Wijers. Structuring Modeling<br />

Knowledge for CASE Shells, SOCRATES Project. in [Andersen et al., 1991], 501–524. 1991.<br />

[Versteegen / Versteegen, 1998] C. Versteegen, G. Versteegen. UML inside, CASE-Markt: Stand<br />

der Dinge. iX, (9):85–89, <strong>Se</strong>ptember 1998.<br />

[Versteegen, 1998] G. Versteegen. Objektorientierte Geschäftsprozeßmodellierung mit der<br />

UML: die „Innovator Business Workbench“. Objektspektrum, (1):62–67, Januar/Februar<br />

1998.<br />

[Vescoukis et al., 1996] V. Vescoukis, N. Papaspyrou, E. Theodorakis (eds.). CAiSE’96, Software<br />

engineering Challenges in Modern Information Systems, 3rd Doctoral Consortium,<br />

Athens, May 1996. Software Engineering Laboratory, National Technical University of<br />

Athens.<br />

[Voßbein, 1987] R. Voßbein. Organisation. Oldenbourg, München, 2. Auflage, 1987.<br />

[Vossen, 1994] G. Vossen. Datenmodelle, Datenbanksprachen und Datenbank-Management-<br />

Systeme. Addison-Wesley Publishing Company, Bonn, 2. Auflage, 1994.<br />

[Ward / Mellor, 1985] P. T. Ward, S. J. Mellor. Structured Development for Real-Time Systems,<br />

Volume 1 Introduction and Tools. Prentice-Hall, Englewood Cliffs, 1985.<br />

[Warnier, 1974] J. D. Warnier. Logical Construction of Programs. Stefert Kroese, Leiden, 1974.


Literaturverzeichnis 303<br />

[WCRE, 1998] Fifth Working Conference on Reverse Engineering. IEEE Computer Society,<br />

Los Alamitos, 1998.<br />

[WCRE, 1999] Sixth Working Conference on Reverse Engineering. IEEE Computer Society,<br />

Los Alamitos, 1999.<br />

[WfMC, 1996] Terminology & Glossary. Technical Report WFMC-TC-1011, Workflow Management<br />

Coalition, Brussels, June 1996.<br />

[Wieringa, 1998] R. J. Wieringa. A Survey of Structured and Object-Oriented Software Specification<br />

Methods and Techniques. ACM Computing Surveys, 30(4):459–527, December<br />

1998.<br />

[Wijers et al., 1992] G. M. Wijers, A. H. M. ter Hofstede, N. E. van Oostermon. Representation<br />

of Information Modeling Knowledge. in [Lyytinen / Tahvanainen, 1992], 167–223. 1992.<br />

[Willke, 1982] H. Willke. Systemtheorie, Eine Einführung in die Grundprobleme. Gustav Fischer,<br />

Stuttgart, 1982.<br />

[Wilson, 1976] R. J. Wilson. Einführung in die Graphentheorie. Vandenhoeck & Ruprecht,<br />

Göttingen, 1976.<br />

[Winter / Ebert, 1996] A. Winter, J. Ebert. Ein <strong>Referenz</strong>-Schema zur Organisationsbeschreibung.<br />

in [Becker / Vossen, 1996b], 101–123. 1996.<br />

[Winter / Ebert, 1997] A. Winter, J. Ebert. <strong>Referenz</strong>modelle <strong>für</strong> Krankenhausinformationssysteme<br />

und deren Anwendung. in [Zwierlein, 1997], 548–562. 1997.<br />

[Winter et al., 1999] A. Winter, A. Winter, K. Becker, O. Bott, B. Birgl, S. Gräber, W. Hasselbring,<br />

R. Haux, C. Jostes, O.-S. Penger, H.-U. Prokosch, J. Ritter, R. Schütte, A. Terstappen.<br />

<strong>Referenz</strong>modelle <strong>für</strong> die Unterstützung des Managements von Krankenhausinformationssystemen.<br />

Informatik, Biometrie und Epidemiologie in Medizin und Biologie, 30(4):173–189,<br />

1999.<br />

[Winter, 1992] A. Winter. Spezifikation der abstrakten und konkreten Syntax <strong>für</strong> die Modellierung<br />

nach dem Entity-Relationship-Paradigma. Diplomarbeit D 165, Universität Koblenz-<br />

Landau, Fachbereich Informatik, Koblenz, März 1992.<br />

[Winter, 1996] A. Winter. A Reference-Scheme for Describing Organizations. in [Vescoukis et<br />

al., 1996], 68–71. 1996.<br />

[Wintraeken, 1985] J. J. V. R. Wintraeken. Informatie-analyse volgens NIAM. Academic <strong>Se</strong>rvice,<br />

Den Haag, 1985.<br />

[Wirfs-Brock et al., 1990] R. Wirfs-Brock, B. Wilkerson, L. Wiener. Designing Object-Oriented<br />

Software. Prentice Hall, Englewood Cliffs, 1990.<br />

[Wordsworth, 1993] J. B. Wordsworth. Software Development with Z, A Practical Approach to<br />

Formal Methods in Software Enginering. Addison-Wesley, 1993.


304 Literaturverzeichnis<br />

[Yourdon, 1989] E. Yourdon. Modern Structured Analysis. Prentice Hall, Englewood Cliffs,<br />

1989.<br />

[Zamperoni / Löhr-Richter, 1993] A. Zamperoni, P. Löhr-Richter. Enhancing the Quality of<br />

Conceptual Database Specification through Validation. in [Elmasri et al., 1993], 85–98. 1993.<br />

[Zemanek, 1971] H. Zemanek. Was ist Informatik?, in: Rektorat der Technischen Hochschule<br />

in Wien (Hrsg.): Informatik, Aspekte und Studienmodelle. Wien, New York, 1971.<br />

[Zimmermann, 1971] H. J. Zimmermann. Netzplantechnik. Walter de Gruyter, Berlin, New<br />

York, 1971.<br />

[Zinnen, 1995] H. Zinnen. Polymorphie und Typanalysen in PROGRES. Diplomarbeit, RWTH<br />

Aachen, Lehrstuhl <strong>für</strong> Informatik III, Aachen, 1995.<br />

[Zündorf, 1996] A. Zündorf. PROgrammierte GRaph ErsetzungsSysteme, Spezifikation, Implementierung<br />

und Anwendung einer integrierten Entwicklungsumgebung. Deutscher Universitäts-Verlag,<br />

1996.<br />

[Zwierlein, 1997] E. Zwierlein (Hrsg.). Klinikmanagement, Erfolgsstrategien <strong>für</strong> die Zukunft.<br />

Urban & Schwarzenberg, München, 1997.


Andreas Winter studierte von 1984 bis 1992 Informatik mit Anwendungsschwerpunkt sozialwissenschaftliche<br />

Informatik (Verwaltungsinformatik) an der Universität Koblenz-Landau. Anschließend<br />

wurde er wissenschaftlicher Mitarbeiter der Universität Koblenz-Landau in der Forschungsgruppe<br />

Softwaretechnik bei Prof. Dr. Jürgen Ebert. Von <strong>Se</strong>ptember 1992 bis August<br />

1994 wurden seine wissenschaftlichen Arbeiten durch ein Graduiertenstipendium des Landes<br />

Rheinland-Pfalz unterstützt.<br />

<strong>Se</strong>ine wissenschaftlichen Interessen beziehen sich sowohl auf die formalen Grundlagen als auch<br />

auf die interdisziplinäre Anwendung der Softwaretechnik. Die Schwerpunkte seiner wissenschaftlichen<br />

Arbeiten sind in den Bereichen der Metamodellierung <strong>visuelle</strong>r und textueller Sprachen,<br />

der Methoden und Techniken des Software-Reengineerings und der Modellierung von Informationssystemen<br />

(insbesondere Krankenhausinformationssysteme) anzusiedeln.

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!