• Keine Ergebnisse gefunden

n n n VLDatenbankenI–2–1 VLDatenbankenI–2–2 VLDatenbankenI–2–3

N/A
N/A
Protected

Academic year: 2022

Aktie "n n n VLDatenbankenI–2–1 VLDatenbankenI–2–2 VLDatenbankenI–2–3"

Copied!
22
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

2. Datenbankmodelle für den Entwurf

Grundlagen von Datenbankmodellen

Entity-Relationship-Modelle

Objektorientierte Modelle: UML

VL Datenbanken I – 2–1

Grundlagen von Datenbankmodellen

Begriff Datenbankmodell

Ein Datenbankmodell ist ein System von Konzepten zur Beschreibung von Datenbanken. Es legt Syntax und Semantik von Datenbankbeschreibungen für ein Datenbanksystem fest.

Datenbankbeschreibungen = Datenbankschemata

VL Datenbanken I – 2–2

Ein Datenbankmodell legt fest...

1. statische Eigenschaften (a) Objekte

(b) Beziehungen

inklusive der Standard-Datentypen, die Daten über die Beziehungen und Objekte darstellen können,

2. dynamische Eigenschaften wie (a) Operationen

(b) Beziehungen zwischen Operationen, 3. Integritätsbedingungen an

(a) Objekte (b) Operationen.

(2)

Datenbankmodelle

Klassische Datenbankmodelle sind speziell geeignet für

große Informationsmengen mit relativ starrer Struktur und

die Darstellung statischer Eigenschaften und

Integritätsbedingungen (also die Bereiche 1(a), 1(b) und 3(a)).

VL Datenbanken I – 2–4

Modelle für Daten und Algorithmen

Modelle Daten Algorithmen

abstrakter Entity-Relationship-Modell Flußdiagramme konkreter Hierarchisches Modell PASCAL

Netzwerkmodell FORTRAN

Relationenmodell Ada

Neuere Modelle: deduktiv, objektorientiert, semistrukturiert

VL Datenbanken I – 2–5

Historische Einordnung und Bezüge

NWM HM ab Mitte 1960

1970

1980

1990

2000

implementierungsnah

ODMG

abstrakt

ER

SDM OEM

RM

eNF SQL

OODM

(C++)

ORM / SQL-99 NF

2 2

(3)

Semantikfestlegung

Wertebereiche:

abstrakte Datentypen

Datenbankzustände:

Modell einer prädikatenlogischen Beschreibung

Gesamtsemantik:

Zustandsfolgen

VL Datenbanken I – 2–7

Formalisierung durch Zustandsfolgen

(Heuer, OODBMS, 1−345−6.., 1992) (Saake, OOMIS, 1−432−5.., 1993)

(Heuer, OODBMS, 1−345−6.., 1992) (Saake, OOMIS, 1−432−5.., 1993)

(Heuer, OODBMS, 1−345−6.., 1992) (Saake, OOMIS, 1−432−5.., 1993) (Heuer&Saake, DBI, 1−234−5..,1995)

PSfrag replacements σ0

σ1

σ2

VL Datenbanken I – 2–8

Semantikfestlegung am Beispiel I

Trägermengen für mögliche Werte:µ

µ(integer) =ZZ(die ganzen ZahlenZZ)

µ(string) =C(Folgen von Zeichen aus C={a, b, . . . , z, A, B, . . . , Z})

µ(set(z)) = 2µ(z)

(die Potenzmenge über den Werten des

Parameterdatentypsz, oder anders ausgedrückt die Mengen aller Teilmengen von möglichen Werten inµ(z))

µ(tuple(z1, . . . , zn)) =µ(z1)× · · · ×µ(zn)

(das kartesische Produkt der Parameterwertebereiche)

(4)

Semantikfestlegung am Beispiel II

Datenbankentwicklung:

ˆ

σ=hσ0, σ1, . . . , σi, . . .i.

Bedeutung einer DB-Variablen (T: Zeitachse):

ˆ

σ(db) : T →µ(typ(db))

VL Datenbanken I – 2–10

Semantikfestlegung am Beispiel III

Beispiel der Bücher-Datenbank:

ˆ

σ(Bcher) : T →2C×C×C×ZZ Ein konkreter Zustandswert zum Zeitpunkt42:

ˆ

σ(Bcher)(42) ={(Heuer,OODB,1-453-,1992), (Saake,OOSIS,1-321-,1993)}

VL Datenbanken I – 2–11

Entity-Relationship-Modelle

P. P. Chen im Jahre 1976

Entity: Objekt der realen oder der Vorstellungswelt, über das Informationen zu speichern sind

z.B. Vorlesungsveranstaltung, Buch, Lehrperson, . . . Auch Informationen über Ereignisse: Prüfungen, . . .

Relationship: Beziehung zwischen Entities, z.B. eine Lehrperson hält eine Vorlesung

Attribut: Eigenschaft von Entities oder Beziehungen, z.B. die ISBN eines Buchs, der Titel einer Vorlesung, oder das Semester, in dem eine Vorlesung gehalten wird

(5)

Ein einfaches Beispiel

Buch Vorlesung

Zeitplan Titel

empfiehlt Semester

liest

Autor

ISBN Titel Telefon#

Fach Name Professor

VL Datenbanken I – 2–13

ER-Modellierungskonzepte I

Werte

µ(int) : der WertebereichZZ(die ganzen Zahlen) mit +,−,×,÷,=, <, ...

µ(string) : der WertebereichC(Folgen von Zeichen aus der MengeC) mit+,=, <, ...

...

µ(D): Interpretation vonD, mögliche Werte einer Entity- Eigenschaft

VL Datenbanken I – 2–14

ER-Modellierungskonzepte II

Entities:Entity-Typen, etwaE1, E2, . . . E

µ(E) Menge der möglichen Entities vom TypE

wird hier nicht festgelegt (etwa Menge isomorph zu natürlichen Zahlen)

σ(E) Menge deraktuellenEntities vom TypEin einem Zustandσ

, Sigma, für state (Zustand))

Aktuelle Entities müssen mögliche Elemente sein:

σ(E)⊆µ(E)

Ferner gefordert:σ(E)endlich

(6)

ER-Modellierungskonzepte III

Beziehungen: Beziehungstypen Notationn-stelliger Beziehungstypen:

E E

R

n

1

... E

i

...

VL Datenbanken I – 2–16

ER-Modellierungskonzepte IV

mögliche Ausprägungen:

µ(R) =µ(E1)× · · · ×µ(En)

aktuelle Beziehungen nur zwischen aktuellen Entities:

σ(R)⊆σ(E1)× · · · ×σ(En) Rollennamen:

verheiratet(Frau:Person,Mann:Person)

VL Datenbanken I – 2–17

ER-Modellierungskonzepte V

Attribute:

A : D E

Semantik einer Attributdeklaration : Ein AttributAeines Entity-TypenEist im Zustandσeine Abbildung

σ(A) :σ(E)→µ(D)

(7)

ER-Modellierungskonzepte VI

Beziehungsattribute:

A : D R

Semantik:

σ(A) :σ(R)→µ(D) Textuelle Notation:

E(A1:D1, . . . , Am:Dm) bzw.

R(E1, . . . , En;A1, . . . , Ap)

VL Datenbanken I – 2–19

Semantik eines ER-Schemas

Jeder Zustandσeines ER-Schemas ist eine Zuordnung E 7→ σ(E)⊆µ(E)

R(E1, . . . , En;. . .) 7→ σ(R)⊆σ(E1)×. . .×σ(En) E(. . . , Ai:D, . . .) 7→ σ(Ai) :σ(E)→µ(D), . . . R(. . .;. . . , Ai:D, . . .) 7→ σ(Ai) :σ(R)→µ(D), . . . bei gegebener fester Interpretationµder Datentypen durch Wertebereiche und der Entity-Typen durch vorgegebene Mengen möglicher Entities.

VL Datenbanken I – 2–20

Zwei- vs. mehrstellige Beziehungen I

Dreistellige Beziehung

ISBN Buch empfiehlt

Vorlesung Professor

Titel

Name Fach

(8)

Zwei- vs. mehrstellige Beziehungen II

Mögliche Umwandlung in zweistellige Beziehungen

Buch V-B Vorlesung Titel

P-B P-V

ISBN Fach

Name Professor

VL Datenbanken I – 2–22

Ausprägungen im Beispiel

Korrekte Ausprägung der dreistelligen Beziehung empfiehlt Professor Vorlesung Buch (ISBN)

Heuer DB 1 1-234-..

Heuer DB 2 9-876-..

Saake DB 1 9-876-..

Saake DB 2 9-876-..

VL Datenbanken I – 2–23

Ausprägungen im Beispiel II

Ausprägungen der drei 2-stelligen Beziehungstypen

P-V Prof. Vorl.

Heuer DB 1 Heuer DB 2 Saake DB 1 Saake DB 2

P-B Prof. Buch Heuer 1-234-..

Heuer 9-876-..

Saake 9-876-..

V-B Vorl. Buch DB 1 1-234-..

DB 2 9-876-..

DB 1 9-876-..

... entsprechen aber auch:

empfiehlt Professor Vorlesung Buch (ISBN)

Heuer DB 1 1-234-..

Heuer DB 1 9-876-..

Heuer DB 2 9-876-..

Saake DB 1 9-876-..

Saake DB 2 9-876-..

(9)

Ausprägungen im Beispiel III

Jetzt außerdem möglich:

P-V Prof. Vorl.

Heuer DB 1 Heuer DB 2 Saake DB 1 Saake DB 2

P-B Prof. Buch Heuer 1-234-..

Heuer 9-876-..

Saake 9-876-..

V-B Vorl. Buch DB 1 1-234-..

DB 2 9-876-..

DB 1 9-876-..

DB 3 4-242-..

VL Datenbanken I – 2–25

Funktionale Beziehungen

Textuell:

R:E1→E2 Graphisch:

sitzt-in Zimmer

Zimmer#

Gebäude Fach

Name Professor

Telefon#

Bedeutung:

σ(R) :σ(E1)→σ(E2)

VL Datenbanken I – 2–26

Identifizierung durch Schlüssel

Für Entity-TypE(A1, . . . , Am)sei Teilmenge{S1, . . . , Sk}der gesamten Attribute gegeben, die Schlüsselattribute.

Es gilt:{S1, . . . , Sk} ⊆ {A1, . . . , Am}.

In jedem Datenbankzustand identifizieren die aktuellen Werte der Schlüsselattribute eindeutig Instanzen des Entity-TypsE:

∀e1, e2∈σ(E) :

(σ(S1)(e1) =σ(S1)(e2)∧. . .∧σ(Sk)(e1) =σ(Sk)(e2))

=⇒ (e1=e2)

Notation: markieren durch Unterstreichung:

E(. . . , S1, . . . , Si, . . .)

(10)

Abhängige Entity-Typen I

abhängiger Entity-Typ:

Identifikation über funktionale Beziehung

Ausleiher Rückgabe

Nummer

BuchExemplar gehört-zu Buch

ISBN Titel

Abhängige Entities im ER-Modell:

Funktionale Beziehung als Schlüssel

VL Datenbanken I – 2–28

Abhängige Entity-Typen II

Mögliche Ausprägung für abhängige Entities

Nummer: 1

Rückgabe: 1.1.97 Nummer: 1 Ausleiher: Saake Rückgabe: 1.1.97

ISBN: 1-234-

Ausleiher: Heuer Nummer: 2

Ausleiher: Heuer Rückgabe: 1.1.92

ISBN: 1-333-

ISBN: 1-345- Titel: OODB

Titel: Betriebssysteme Titel: Zen for Computer Science gehört-zu

gehört-zu gehört-zu

Buchexemplare Bücher

VL Datenbanken I – 2–29

Abhängige Entity-Typen III

Alternative Notation

N 1

Buch

ISBN Titel Nummer

BuchExemplar gehört-zu

Ausleiher Rückgabe

(11)

Die

IST

-Beziehung I

Prüfer Fach

IST Mitarbeiter Personal#

Institut

Jeder Prüfer-Instanz ist genau einer Mitarbeiter-Instanz zugeordnet: Spezialfall eines abhängigen Entity-Typs!

Nicht jeder Mitarbeiter ist zugleich Prüfer.

VL Datenbanken I – 2–31

Die

IST

-Beziehung II

Attribute des Entity-TypsMitarbeitertreffen auch auf Prüfer zu: “vererbte” Attribute.

Pr¨ufer(Name,Personal#

| {z }

von Mitarbeiter

,Fach)

Nicht nur Deklarationen vererben sich, sondern auch aktuelle Werte.

Bedeutung:

σ(E1)⊆σ(E2)

VL Datenbanken I – 2–32

Die

IST

-Beziehung: Alternative Notation

Fach Personal#

Institut Mitarbeiter Prüfer

(12)

Kardinalitäten I

E E

R

... n

1

[min_1, max_1] [min_n, max_n]

Notation für Kardinalitätsangaben an einem Beziehungstyp

R(E1, . . . , Ei[mini, maxi], . . . , En)

Kardinalitätsbedingung:

mini≤ |{r|r∈R∧r.Ei=ei}| ≤maxi

Spezielle Wertangabe fürmaxiist∗

VL Datenbanken I – 2–34

Kardinalitäten II

[0,∗]ist Standardannahme.

Die AngabeR(E1[0,1], E2)entspricht einer (partiellen) funktionalen BeziehungR:E1→E2, da jede Instanz ausE1maximal einer Instanz ausE2zugeordnet ist.

Eine totale funktionale Beziehung wird durch R(E1[1,1], E2)modelliert.

VL Datenbanken I – 2–35

Kardinalitäten: Beispiele

arbeitet in(Mitarbeiter[0,1],Raum[0,3])

Jedem Mitarbeiter ist in der Regel ein Raum zugeordnet, aber einige (externe) Mitarbeiter haben kein

Arbeitszimmer.

Pro Zimmer arbeiten maximal drei Mitarbeiter.

verantwortlich(Mitarbeiter[0,*],Rechner[1,1])

Jedem Rechner ist genau ein Mitarbeiter zugeordnet, der für die Betreuung verantwortlich ist.

Für die BeziehungE1ISTE2gilt:IST(E1[1,1], E2[0,1])

(13)

Vereinfachte Kardinalitätsangaben

für binären Beziehungstyp

E_1 1 R N E_2

R E_2

E_1 [0,1] [0,*]

ist äquivalent zu

Die AngabeN entspricht∗

VL Datenbanken I – 2–37

Optionalität von Attributen

Zeitplan Titel Semester

liest Vorlesung

Professor

Telefon#

Fach Name

VL Datenbanken I – 2–38

Weitere Konzepte

Strukturierte Attributwerte im ER-Modell

Person

Name Vorname Telefon#

Straße Nummer Ort

Adresse

(14)

Weitere Konzepte

Abgeleitete Attributwerte im ER-Modell

Jahresgehalt := Monatsgehalt * Gehaltsmonate Jahresgehalt

Gehaltsmonate Monatsgehalt Angestellter

Name Vorname

VL Datenbanken I – 2–40

Erweiterungen des ER-Modells I

Spezialisierung und Generalisierung

Spezialisierung enstprichtIST-Beziehung:

ProfessorSpezialisierung vonMitarbeiter

Generalisierung: Entities in einen allgemeineren Kontext.

PersonoderInstitutalsAusleiher

Partitionierung: Spezialfall der Spezialisierung, mehrere disjunkte Entity-Typen.

Partitionierung von Büchern in Monographien und Sammelbändern.

VL Datenbanken I – 2–41

Erweiterungen des ER-Modells II

Komplexe Objekte

Aggregierung: Entity aus einzelnen Instanzen anderer Entity-Typen zusammengesetzt.

Fahrzeug zusammengesetzt aus Motor, Karosserie...

Sammlung oder Assoziation: Mengenbildung.

Team als Gruppe von Personen.

Beziehungen höheren Typs

Spezialisierung und Generalisierung auch für Beziehungstypen.

Beispiel: BeziehungAusleihezuKurzausleihe spezialisiert.

Beziehungen zwischen Beziehungsinstanzen:

Beziehungen zweiter und höherer Ordnung

(15)

Ein Erweitertes ER-Modell

Ein Erweitertes ER-Modell

Übernommene Grundkonzepte des ER-Modells

Werte: Standard-Datentypen des ER-Modells.

Entities bzw. Entity-Typen.

Beziehungen bzw. Beziehungstypen.

Attribute: unverändert.

Funktionale Beziehungen: unverändert.

Schlüssel: erweitertes Konzept, neue Notation.

Nicht übernommen:

IST-Beziehung ersetzt durch Typkonstruktor.

Abhängige Entity-Typen durch erweiterte

Schlüsselkonzept objektwertige Attribute ersetzt.

VL Datenbanken I – 2–43

Schlüsselnotation im EER-Modell

BuchExemplar gehört-zu Buch

ISBN Titel Rückgabe

Ausleiher Nummer

VL Datenbanken I – 2–44

Typkonstruktor

Ein Modellierungskonzept für

Spezialisierung /IST-Beziehung

Generalisierung

Partitionierung

(16)

Spezialisierung mit Typkonstruktor

Prüfer Mitarbeiter

Fach Personal#

Institut

Spezialisierung (IST-Beziehung) notiert mit dem Typkonstruktor des EER-Modells

VL Datenbanken I – 2–46

Generalisierung

Notation: Typkonstruktor für Generalisierung

...

OutTyp

InTyp n InTyp 1

Bedeutung:

[

i

σ(InTypi)⊇σ(OutTyp)

VL Datenbanken I – 2–47

Beispiel für Generalisierung

berechtigt-bis Ausleiher Mitarbeiter

Personal#

Institut

Institut

Institutsname

(17)

Partitionierung

...

OutTyp n OutTyp 1 InTyp

Semantik:

Teilmengenbeziehung:σ(InTyp)⊇S

i(σ(OutTypi))

Disjunktheit der Partitionen:

∀i, j: i6=j =⇒ σ(OutTypi)∩σ(OutTypj) =∅

VL Datenbanken I – 2–49

Partitionierung vs. mehrf. Spezialisierung

Partitionierung

Buch

ISBN Titel Verlag

Monographie

Autor

Sammelband

Herausgeber

Person

Name Vorname

Adresse Student

MatrikelNr.

Zimmer Mitarbeiter

Mehrfache Spezialisierung

VL Datenbanken I – 2–50

Partitionierung vs. Generalisierung

Partitionierung

Zeitschrift

ISSN Jahrgang

Autor ISBN

Dokument Buch

Titel DokID

Standort

Dokument

DokID Titel

Standort Zeitschrift

Jahrgang ISSN ISBN Autor

Buch

Generalisierung

(18)

Vergleich

Partitionierung:

σ(Dokument)⊇σ(Buch)∪σ(Zeitschrift) Generalisierung:

σ(Dokument)⊆σ(Buch)∪σ(Zeitschrift)

VL Datenbanken I – 2–52

Mehrfachspezialisierung

Student

MatrikelNr.

Mitarbeiter

Zimmer Studentische

Hilfskraft Stundenzahl Person

Name Vorname Adresse

Mehrfachspezialisierung zuStudentischeHilfskraft σ(StudHilfskraft)⊆σ(Student)∩σ(Mitarbeiter) Mehrfachspezialisierungen sind nur erlaubt, wenn die Eingabe-Typen direkt oder indirekt aus einer gemeinsamen Ausgangsklasse konstruiert wurden.

VL Datenbanken I – 2–53

Objektorientierte Entwurfsmodelle

Seit Beginn der 90er Jahre: Ansätze zur objektorientierten Analyse und zum objektorientierten Entwurf

Ansätze der ersten Generation

Object Modelling Technique (OMT) von Rumbaugh

Methoden von Jacobson, Booch, . . .

Ab Mitte der 90er Jahre: Vereinheitlichung zur Unified Modeling Language (UML) (Booch, Jacobson, Rumbaugh)

(19)

Entwurf mit UML

Objektmodell: Anreicherung von EER-Modellen um objektorientierte Konzepte (Klassen, Beziehungen, Operationen, . . . )

Dynamikmodell: Beschreibung des dynamischen Verhaltens eines Objektes in Form von

Übergangsautomaten (Übergänge entsprechen Systemereignissen)

Funktionenmodell: Datenflußdiagramme zur Darstellung globaler Berechnungsabläufe

Anwendungsfälle

Implementierungsdiagramme

...

VL Datenbanken I – 2–55

Objektmodell von UML

Erweiterung des EER-Modells

Unterscheidung in

Klassendiagramm: entspricht

Datenbankschema-Notation;beschreibt Typen von Kollektionen von Instanzen

Objektdiagramm: beschreibt Einzelobjekte

Beschreibung von strukturellen Aspekten (Attribute, Beziehungen) und Operationen

Formulierung von Integritätsbedingungen und

Ableitungsregeln (textuell, Object Constraint Language)

VL Datenbanken I – 2–56

Darstellung von Klassen

Klassen

Klassenname

Attribute Operationen

Attribute

name: typ = initWert { Zusicherung }

Operationen

name { Parameterliste }

(20)

Darstellung von Klassen II

Weitere Angaben

verschiedene Arten von Klassen, speziell abstrakte Klassen (Notation:{ abstract }, Metaklassen und parametrisierte Klassen

Sichtbarkeit von Attributen (private, protected, public) sowie readonly-Attribute

Abgeleitete (berechnete) Attribute durch vorangestelltes /-Symbol

Klassenattribute durch Unterstreichung

VL Datenbanken I – 2–58

Beziehungen

Standardfall: binäre Beziehungen (Assoziationen)

Professor name: string fach: string telefonnr: number = 4242

Institut name: string fachbereich: string Lehrkraft

* 1

Lehreinheit ist zugeordnet

beschäftigt

Bezeichner der Beziehung mit Leserichtung (keine funktionale Beziehung)

Rollennamen für Implementierung von Referenzattributen

Kardinalitäten analog zum ER-Modell

optional: Zusicherung

VL Datenbanken I – 2–59

Beziehungen mit Attributen

Beziehungen mit Attributen als „degenerierte“ Klassen

Professor name: string fach: string telefonnr: number = 4242

0..* 0..*

Student name: string matrnr: string prüft

am: date note:integer fach: string

(21)

Qualifizierende Beziehungen

Zugriffsschlüssel für spätere Implementierung

Institut name: string fachbereich: string

*

Mitarbeiter name: string login: string telefonnr: number = 4242

beschäftigt

login 1

VL Datenbanken I – 2–61

Weitere Beziehungen

Abgeleitete Beziehungen

Beispiel: berechnete Referenz zur Abkürzung von mehrstufigen Referenzpfaden

Notation: Bezeichner mit vorangestelltem /-Symbol

n-stellige Beziehungen

Notation wie im ER-Modell durch Raute

VL Datenbanken I – 2–62

Aggregation in UML

Aggregation über binäre Assoziation mit besonderer Notation

Ganzes 0..1 besteht aus * Teil

Komposition: Abhängige Objekte als Spezialfall

Ganzes 0..1 besteht aus *

existenzabhängiges Teil

(22)

Aggregation in UML II

Baumdarstellung für mehrere aggregierte Teile Ganzes

Teil A Teil B Teil C

1.. 0..4 0..

1

* *

VL Datenbanken I – 2–64

Spezialisierung

Spezialisierung mit Vererbung Oberklasse

Unterklasse B Unterklasse A

Angabe von Zusicherungen (overlapping, disjoint, complete, incomplete) möglich

VL Datenbanken I – 2–65

Spezialisierung mit Diskriminator

Spezielle Form der Spezialisierung

Aufzählungsattribut (Diskriminator ) teilt Instanzen in Unterklassen auf

Wertebereich des Diskriminators: beteiligte Klassennamen

Unterklasse B Unterklasse A

Diskriminator

Oberklasse

Referenzen

ÄHNLICHE DOKUMENTE

Insbesondere kommen die Fibonacci-Folge und die Lucas-Folge

Es werden allerdings nicht alle pythagoreischen Tripel generiert... Jedes pythagoreische Dreieck ist zwei

Die zu den Tripeln gehörenden Dreiecke nähern sich eben- falls einem rechtwinklig gleichschenkligen Dreieck an.. Die beiden Kathetenlängen un- terscheiden sich immer nur

In this case the proportion of the golden section can be constructed in a square lattice, using circles going through lattice points.?. This gives

Das ist statisch sehr ungünstig und dürfte in der Praxis kaum

Im Folgenden wird eine Visualisierung mit regelmäßigen n-Ecken versucht die jeweils in n Sektoren unterteilt sind.. Die Elemente werden durch

Es ist der Leserin oder dem Leser überlassen, wie ob sie oder er die Figur der Abbil- dung 5 als Folge von Rhomben mit dem Spitzenwinkel 72° oder als eine Ecke eines 5d-

In der ersten Spirale (Abb. 2) haben wir zuinnerst ein rotes Feld, anschließend drei grü- ne Felder, dann fünf rote Felder, dann sieben grüne Felder, dann neun rote Felder und