Table Of ContentXpert. press
Springer-Verlag Berlin Heidelberg GmbH
Die ReiheXpert.press des Springer-Verlags vermittelt
Professionals im Projektmanagement sowie in den
Bereichen Betriebs- und Informationssysteme, Software
Engineering und Programmiersprachen aktuell und
kompetent relevantes Fachwissen über Methoden,
Technologien und Produkte zur Entwicklung und
Anwendung moderner Informationstechnologien.
Manfred Broy • Ralf Steinbrüggen
Modellbildung
in der Informatik
Mit 51 Abbildungen und CD-ROM
Springer
Manfred Broy • Ralf Steinbruggen
Technische Universităt Munchen
Institut fiir Informatik
Boltzmannstr. 3
85748 Garching
Bibliografische Information der Deutschen Bibliothek
Die Deutsche Bibliothek verzeichnet diese Publikation
in der Deutschen N ationalbibliografie; detaillierte bibliografische
Daten sind im Internet iiber <http://dnb.ddb.de> abrufbar.
Additional material to this book can be downloaded from http://extras.springer.com.
ISSN 1439-5428
ISBN 978-3-642-62267-0 ISBN 978-3-642-18732-2 (eBook)
DOI 10.1007/978-3-642-18732-2
Dieses Werkist urheberrechtlich geschiitzt. Die dadurch begriindeten Rechte,
insbesondere die der Ubersetzung, des Nachdrucks, des Vortrags, der Ent
nahme von Abbildungen und Tabellen, der Funksendung, der Mikroverfil
mung oder der Vervielfăltigung auf anderen Wegen und der Speicherung in
Datenverarbeitungsanlagen bleiben, auch bei nur auszugsweiser Verwertung,
vorbehalten. Eine Vervielfăltigung dieses Werkes oder von Teilen dieses Werkes
ist auch im Einzelfall nur in den Grenzen der gesetzlichen Bestimmungen
des Urheberrechtsgesetzes der Bundesrepublik Deutschland vom 9. Septem
ber 1965 in der jeweils geltenden Fassung zulăssig. Sie ist grundsătzlich
vergiitungspflichtig. Zuwiderhandlungen unterliegen den Strafbestim
mungen des Urheberrechtsgesetzes.
Der Springer-Verlag ist nicht Urheber der Daten und Programme. Weder der
Springer-Verlag noch der Autor iibernehmen Haftung fiir die CD-ROM und
das Buch, einschlieBlich ihrer Qualităt, Handels- oder Anwendungseignung.
In keinem Fall iibernehmen der Springer-Verlag oder der Autor Haftung fiir
direkte, indirekte, zufăllige oder Folgeschăden, die sich aus der Nutzung der
CD-ROM oder des Buches ergeben.
http://www.springer.de
© Springer-Verlag Berlin Heidelberg 2004
Ursprünglich erschienen bei Springer-Verlag Berlin Heidelberg New York 2004
Softcover reprint of the hardcover lst edition 2004
Die Wiedergabe von Gebrauchsnamen, Handelsnamen, Warenbezeichnungen
usw. in diesem Werk berechtigt auch ohne besondere Kennzeichnung nicht zu
der Annahme, dass solche Namen im Sinne der Warenzeichen- und Marken
schutzgesetzgebung als frei zu betrachten wăren und daher von jedermann
benutzt werden diirften.
Umschlaggestaltung: KiinkelLopka, Heidelberg
Satz: Reproduktionsfertige Vorlagen durch den Autor
Gedruckt auf săurefreiem Papier 33/3142PS -5 4 3 2 1 O
Vorwort
Informatik hat viele Facetten. Einer ihrer herausragenden Züge ist
die Modellbildung in der Informationsverarbeitung: Welches sind
die Grundlinien unseres Faches als technische und wissenschaftliche
Disziplin der Modellierung von informatischen Systemen?
Dieses Buch gibt eine Einführung in grundlegende Begriffe und
Methoden. Es vermittelt durch begleitendeAufgaben (mit Lösungs
vorschlägen) professionelle Fertigkeiten. Auf der beiliegenden CD
ist ein CASE Tool bereitgestellt, das für den Gebrauch an Hoch
schulen und Schulen frei zur Verfügung steht. Für Firmen gibt es
einreichhaltiges Schulungsangebot.
Wir wenden uns an zwei Gruppen von Lesern, an Lehrer mit
(vorhandener oder angestrebter) Lehrbefähigung in Informatik und
an Pratiker der Systementwicklung. Diese zweifache Ausrichtung
signalisiert der ersten Zielgruppe, dass einschlägiger Stoff praxisre
levant vorgestellt, und der zweiten, dass Abstraktion auf das We
sentliche angestrebt wird. Der Praktiker soll sich mit seiner Weise,
informatisch zu denken, wiederfinden, der Lehrer in seiner Frage
nachStrukturund Vorgehensweise.
Der Wunsch, in das Fach tiefer einzudringen, steht, zumal bei Fürdas Lehramt
weiterlaufendem Schuldienst, unter dem Handicap des äußerst en
gen Zeitrahmens. Wir konzentrieren uns daher auf das Wesentliche
und wählen zentrale Themen der Lehramtsprüfungsordnungen. Zu
dem sind wir der Meinung, dass die Lehrplanentwicklung noch bei
weitem nicht abgeschlossen ist, sondern sich in der Richtung, die
wir in diesem Buch andeuten, weiter entwickeln wird. Als Aus
gangspunkt dient uns der Schulversuch des "Europäischen Gymna
siums 3",derebenfalls die Modellbildung insZentrum rückte.
Der Wechsel der jeweils aktuellen Technologien gleicht zuneh ...und die
mend dem viel zitierten Wettlauf zwischen dem Hasen und dem System
Igel. Wir stellen ausgewählte Techniken in einen systematischen entwicklung
Zusammenhang und beleuchten den formalen Hintergrund. Um an
zudeuten, welche Probleme und Methoden wir im Auge haben,
möchten wir etwas weiter ausholen:
Vorwort -- v
-
Informatische Die Informatik befasst sich mit der Verarbeitung, Speicherung,
Systeme Übertragung und Darstellung von Information unter besonderer Be
rücksichtigung des Einsatzes digitaler informationsverarbeitender
Maschinen. Damit steht der Begriff Information zunächst im Zent
rum. In der Informatik ist der Begriff Information allerdings stets
"handfest", das heißt gegenständlich zu sehen. Information muss
dargestellt werden, um einer Bearbeitung zugänglich zu sein. Soll
beispielsweise die Information betrachtet werden, die dem Zustand
einer Ampel entspricht, dann müssen konkrete Darstellungen ge
wählt werden. So kann etwa "Rot" für Anhalten, "Gelb" für Ach
tung und "Grün" für freie Fahrt stehen. An diesem Beispiel zeigt
sich schon, dass Information, die fürreale Zwecke nützlich sein soll,
stets ein Abbild bestimmter Ausschnitte unserer Wirklichkeit dar
stellt, die Realität modelliert. In der Modellbildung werden viele
Einzelheiten weggelassen. Nurdierelevanten Details werden darge
stellt. Im Fall der Ampel wird nur noch ihrZustand angegeben, von
Größe, Anstrich etc. wird abstrahiert.
Information - oder genauer ihre Darstellung - wird in der Infor
matik durch digitale Maschinen verarbeitet, gespeichert, übertragen
und dargestellt. Somit steht neben der Information der Begriff der
informationsverarbeitenden Maschine ganz im Vordergrund. Ma
schinenbeschreibungen können selbst wiederum als Informationen
aufgefasst werden. Daraus ergibt sich ein wesentliches Prinzip der
Informatik: Neben die elementaren Informationen treten Informati
onen, die das Verhalten komplexer Maschinen darstellen. Dabei
handelt es sich nicht etwa nur um Rechenanlagen und Rechnernetze.
Wenn zum Beispiel der Knopf einer Fußgängerampel betätigt wird,
um "Grün" anzufordern, so wird ein informationsverarbeitender
Vorgang ineinem verteilten reaktiven System angestoßen. Verteilte
reaktive Systeme sind in unserem digitalisierten Alltag allgegenwär
tig. Wir sprechen von informatischen Systemen. Dies führt aufeine
erhebliche Komplexität in der Informatik, impliziert aber auch letzt
endlich die universelle Mächtigkeit der Informatik als Wissenschaft
undTechnikderModelIierung.
Modellierung Bei den Modellen der Informatik haben wir es mit Darstellungen
zu tun, die mitHilfe digitaler Technik Vorgänge aus der realen Welt
wiedergeben. Modellierung dient in aller Regel zweierlei Zwecken.
Zum einen wird ausschnittsweise ein Abbild der realen Welt und ei
ne Aufgabe der Informationsverarbeitung dargestellt. Wir sprechen
dann auch vom Domänenmodell. Zum anderen wird eine Vorlage
für die Arbeitsweise eines informatischen Systems angegeben. Dies
wird auch alsSystemmodell bezeichnet.
Informatikmodelle konkretisieren sich nicht nur in Computer
hardware und -software sondern auch in Planungs-, Organisations-
vi • Vorwort
•
•
und Steuerungsmodellen. Die Umsetzung der vorhandenen Mög
lichkeiten und die Vermeidung inhärenter Risiken werden wie bei
jeder neuen Technologie angewiesen sein auf die Vorstellungskraft,
Erfindungsgabe, Ausbildung und professionelle Disziplin der in Zu
kunft Handelnden. Nicht alle Beteiligten sind von Haus aus Infor
matiker. Experten unterschiedlicher Herkunft sind um größere Pro
jekte vereint und müssen intensiv kommunizieren und kooperieren.
Die Kooperation ruht aufvier Säulen:
Pragmatik. Im Systems & Software Engineering hat sich eine
Reihe von anschaulichen Beschreibungstechniken, insbesondere
diagrammatischer Art, herausgebildet.
Formalismen. Wie auch sonstim Ingenieursbereich sind die An
eignung und die Anwendung der einschlägigen Zweige der Ma
thematik unabdingbar. Nur dies gibt Gewähr für Präzision und
Zuverlässigkeit, für Kostenbeherrschung und Nutzen der Produk
te.
Methodik. Abstraktion ist die wesentliche Technik, um die Kom
plexität von Software unter Kontrolle zu bringen. Sie spielt eine
ähnlich vereinfachende Rolle wie Approximation in anderen In
genieursbereichen.
Werkzeuge. Methodisches Vorgehen erfordert im Allgemeinen
den Einsatz von Spezialsoftware, so genannten CASE-Werkzeu
gen (ComputerAided Software Engineering Tools).
Modelle enstehen in der Zusammenschau aus unterschiedlichen Pragmatik
Sichten. Für die .Datensicht" sind Entity-Relationship-Diagramrne
ein verbreitetes Darstellungsmittel (Kap. 0). Wir behandeln außer-
dem Systemstruktur-, Zustandsübergangs- und Sequenzdiagramme
(Kap. 2) und beleuchten ihren Zusammenhang untereinander wie
auch ihre Übertragung informale Modelle.
Die Abstraktion von speziellen Besonderheiten gehört gleichsam Formalismen
programmatisch zur Mathematik. Für die Spezifikation und Verfei-
nerung verwenden wir axiomatische Beschreibungen (Kap. 1) und
als ausführbare Form funktionale Programme (§ 2.8). Durchgängi-
ger Hintergrund sind mathematische Logik (Kap. 3) und die einfa-
che Typentheorie (§ 3.2, 3.3) sowie formale Sprachen (Kap. 4). Un-
sere Einführung in diese Bereiche, Spezifikations- und Program-
miersprachen eingeschlossen, setzt keine besonderen Vorkenntnisse
voraus. Behandelt werden auch rechnende Systeme (§ 2.6, 2.7).
Dies führt insGebietder Algorithmik.
Wir fragen, wie ein Problem informatische Konturbekommt, und Methodik
werden sehen, dass jeder Formalismus, jedes Beschreibungsmittel
der ModelIierung eine spezifische Zerlegung in Einzelaspekte an die
zu bearbeitende Aufgabe heranträgt. Das gilt auch für Anforde-
Vorwort -- vii
-
rungsanalyse und Modelldesign (Kap. 5). Wir gehen den Fragen
nach, woher eine Systementwicklung ihre Argumente nimmt, nach
welchen Methoden verifiziert wird und wie Theorembeweiser ar
beiten (Kap. 4).
Werkzeug Wir benutzen AutoFOCUS zur diagrammatischen Modellierung
undebenso zurKosistenzprüfung undSimulation.
Die Stoffauswahl begrunden wir im Vorspann jedes Kapitels geson
dert. Im jeweiligen Resümee ("Wie es weitergeht") werden Praxis
relevanz und Fachbezug herausgestellt. Diese Stellen sind am Sei
tenrand gekennzeichnet, so dass derrote Faden nicht verloren geht.
Die einzelnen Kapitel sind begrifflich weitgehend unabhängig
voneinander. Der Einstieg ist daher an vielen Stellen möglich. Die
Wege im Buch nehmen stets ihren Ausgang bei der Pragmatik, im
Gegensatz zu Lehrbüchern, die Begriffe größtmöglicher Allgemein
heit an die Spitze stellen und Anwendungen erst im Nachhinein be
handeln. Einen Teil des Stoffes, der sich eher "dialogisch", unter
Mitwirken des Lesers, vermitteln lässt, bieten wir in der Form von
Übungen.
Dieses Buch istdas Ergebnis eines langjährigen Engagements für
die Vermittlung von Informatikinhalten an Lehrer und an Informa
tiker im Systems Engineering. Wir haben dem Bayerischen Wis
sensehaftsministerium zu danken für die Förderung eines Projekts
zur Lehrerausbildung, das den Namen "Netzgestützter Lehrverbund
zur Lehrerausbildung in Informatik (NELLI)" trug, in dessen Rah
men wir uns differenziert auseinandersetzen konnten mit einem für
Schulen passenden Informatikkonzept, mit der gebotenen Abstrak
tionsebene für die Lehrerausbildung und mit den didaktischen Frau
gen der Lehrerqualifizierung. An den Diskussionen nahmen Peter
Hubwieser und Fred Kröger engagiert teil, wofür wir ihnen
aufrichtig danken. Am NELLI-Projekt haben Heiko Lötzbeyer,
Wolfgang Prenninger und Thomas Ströse mitgearbeitet. An der
Ausarbeitung der Übungsaufgaben haben Gertrud Bauer und Ferdi
nand Winhard großen Anteil. Anregungen zum Manuskript verdan
ken wir Stefan Berghofer, Herbert Ehler, Fred Kröger, Manfred
Jobmann, Wolfgang Naraschewski und Martin Rappl. Das Model
lierungswerkzeug wurde bereitgestellt von der Firma Validas,
vertreten durch Oscar Slotosch und Franz Huber, deren Engagement
unser ganz besonderer Dank gilt. Sehr verbunden sind wir dem
Springer-Verlag für die außerordentliche Sorgfalt bei der Durchsicht
desManuskript und beider Herstellung. Wir danken fürdie überaus
angenehme verlegerische Betreuung. Auf den Verlag geht die Anre
gung zurück, dem Buch eine Ausrichtung zu geben, die Lehrer und
Praktikergleichermaßen anspricht.
viii • Vorwort
•
•
Inhalt
Einleitung:Das Entity-Relationship-Modell 1
0.1 ER-Diagramme 3
0.2 Datenlexika 9
0.3 Übungen 12
0.4 Wieesweitergeht 15
1 Algebraische Modellierung 21
1.1 SignaturenundAxiome 23
1.2 Grundlegende Spezifikationen 35
1.3 Übungen 44
1.4 Wieesweitergeht 50
2 DiagrammatischeModelIierung 53
2.1 ModelIierungauskomplementärenSichten 54
2.2 Struktursicht(Systemstrukturdiagramme) 59
2.3 Verhaltenssicht (Zustandsübergangsdiagramme) 54
2.4 Zeitverlauf 65
2.5 Interaktionssicht(Sequenzdiagramme) 67
2.6 Algorithmen 72
2.7 PartielleKorrektheit,TerminierungundKomplexität 81
2.8 Datensicht(derapplikativenProgrammierung) 87
2.9 Übungen 97
2.10Wieesweitergeht 108
Inhalt -- ix
-
3 Modellierung und Verifikation 113
3.1 FormelnundRegeln 115
3.2 Variablen,SubstitutionundGleichheit 127
3.3 Einformaler Rahmendes Beweisens 129
3.4 Eineinfacher Deduktionskalkül 136
3.5 InduktiveDefinitionenundBeweise 143
3.6 Übungen 150
3.7 Wieesweitergeht 158
4 StrukturformalerSprachen 161
4.1 Interpretationund Übersetzungvon Programmen 161
4.2 EndlicheAutomaten 166
4.3 Reguläre Ausdrücke 171
4.4 Chomsky-Grammatiken 178
4.5 Backus-Naur-Form 185
4.6 Syntaxanalyse 192
4.7 Übungen 195
4.8 Wieesweitergeht 197
Abschluss: Requirements Engineering 201
5.1 Die FrühphaseeinerSystementwicklung 201
5.2 DasAufgabenspektrum 203
5.3 KlassifizierungderAnforderungen 204
5.4 AnforderungsmodelIierung undSystemdesign 205
5.5 Wieesweitergeht 208
Anhang 213
Einigemathematische Begriffe 213
Gesetzeder BooleschenAlgebra 216
GesetzederQuantoren 217
Lösungenzu ER-Diagrammen 218
Lösungen zu algebraischen Spezifikationen 224
Lösungen zur Verifikation 230
Lösungenzuformalen Sprachen 245
Index 253
x • Inhalt
•
•