Vorlesung Informationssysteme Sommersemester 2017 · § Vorgehensweise bei DB-Entwurf und...

Preview:

Citation preview

2.Datenbankentwurf

Vorlesung"Informationssysteme"Sommersemester2017

Überblick§ VorgehensweisebeiDB-Entwurfund-Modellierung

• Lebenszyklus• Informationserhebung

§ Entity-Relationship-Modell(ERM)• Definitionen,Konzepte• Beziehungstypen• Diagrammdarstellung• Beispiele

§ ErweiterungendesERM• Kardinalitätsrestriktionen• Abstraktionskonzepte

§ Abstraktionskonzepte• Generalisierung• Aggregation

2Informationssysteme2017 Kapitel2:Datenbankentwurf

VorgehensweisebeiDB-Entwurfund-Modellierung§ Ziel:ModellierungeinerMiniwelt (Entwurfvon

Datenbankschemata)§ SchrittweiseAbleitung:("top-down"-Entwurf)

1. InformationinunsererVorstellung2. Informationsstruktur:OrganisationsformderInformation3. LogischeDatenstruktur(zugriffspfadunabhängig,Was-Aspekt)4. PhysischeDatenstruktur(zugriffspfadabhängig,Was- undWie-

Aspekt)§ Nebenbedingungen• genaueAbbildung• hoherGradanAktualität• Verständlichkeit,Natürlichkeit,Einfachheit,...

ÄnderungenhabenAuswirkungenaufvorangegangeneSchritte!

3Informationssysteme2017 Kapitel2:Datenbankentwurf

DiePhasen desDatenbankentwurfs

Informationssysteme2017 Kapitel2:Datenbankentwurf 4

Anforderungsanalyse

Konzeptioneller Entwurf

Implementationsentwurf(logischer Entwurf)

Physischer Entwurf(internes Schema)

Informations-anforderungen

Datenverarbeitungsanforderungen

DBMS-Charakteristika

Hardware/BS-Charakteristika

Anforderungsspezifikation

InformationsstrukturER-Schema

Logische Datenbankstruktur

Physische Datenbankstruktur

DB-Schema

internes Schema

Schritt 1:Anforderungsanalyse§ RealeWelt:Universität

à Anforderungsanalyse

Informationsanforderungen:• IdentifikationvonOrganisationseinheiten• IdentifikationvonBeziehungenDatenverarbeitungsanforderungen:• IdentifikationvonProzessen

Formalisierung• Ziel:Anforderungskatalog/Pflichtenheft

Informationssysteme2017 Kapitel2:Datenbankentwurf 5

Anforderungen§ "StudentenhörenVorlesungen"§ "ProfessorenhaltenVorlesungen"§ "StudentenkönntenanhandihrerMatrikelnummereindeutig

identifiziertwerden"§ ...

Informationssysteme2017 Kapitel2:Datenbankentwurf 6

ObjektbeschreibungUni-Angestellte

Anzahl:1000Attribute:

Informationssysteme2017 Kapitel2:Datenbankentwurf 7

PersonalNummer• Typ: char• Länge: 10• Wertebereich: 0...999.999.99• Anzahl Wiederholung: 0• Definiertheit: 100%• Identifizierend: ja

Gehalt• Typ: dezimal• Länge: (8,2)• Anzahl Wiederholung: 0• Definiertheit: 10%• Identifizierend: nein

Rang• Typ: String• Länge: 4• Anzahl Wiederholung: 0• Definiertheit: 100%• Identifizierend: nein

Beziehungsbeschreibung:prüfen§ BeteiligteObjekte:• ProfessoralsPrüfer• StudentalsPrüfling• VorlesungalsPrüfungsstoff

§ Attributederprüfen-Beziehung:• Datum• Uhrzeit• Note

§ Anzahl:100000proJahr

Informationssysteme2017 Kapitel2:Datenbankentwurf 8

Prozessbeschreibung*Zeugnisausstellung§ Häufigkeit:halbjährlich§ benötigteDaten• Prüfungen• Studienordnungen• Studenteninformationen• ...

§ Priorität:hoch§ ZuverarbeitendeDatenmenge• 500Studenten• 3000Prüfungen• 10Studienordnungen

*)Prozessewerdennichtweiterbetrachtet.

Informationssysteme2017 Kapitel2:Datenbankentwurf 9

Schritt2:AbbildungaufkonzeptuellesModell§ "StudentenhörenVorlesungen"§ "ProfessorenhaltenVorlesungen"§ "StudentenkönntenanhandihrerMatrikelnummereindeutig

identifiziertwerden"§ ...

Informationssysteme2017 Kapitel1:EinführungundGrundbegriffe 10

PersNrMatrNr

NameName

Studenten Professoren

hörenlesen

Vorlesungen Titel

VorlNr

KonzeptuelleModellierung

WichtigeModellierungssprachen§ ERM(EntityRelationshipModel):

• generelleinsetzbaresModellierungswerkzeug,hauptsächlichfürdenrelationalenDB-Entwurfgeeignet

§ UML(UnifiedModelingLanguage):• NotationundSprachezurUnterstützungderobjekt-orientiertenModellierungimSoftwareEngineering:EsgibtsehrvieleUntermodellefürdenEntwurfvonSoftwaresystemenaufdenverschiedenstenAbstraktionsebenen

11Informationssysteme2017 Kapitel2:Datenbankentwurf

Entity-Relationship-Modell(ERM)– Überblick§ Konzepte

• EntitiesundAttribute• Entity-Mengen/Typen• Primärschlüssel• Relationship-Mengen/Typen

§ KlassifikationderBeziehungstypen• benutzerdefinierteBeziehungen• Abbildungstyp:1:1;n:1;n:m

§ Ziel:ModellbildungaufderTypebene (Schema)!• FestlegungvonsemantischenAspekten• expliziteDefinitionvonstrukturellenIntegritätsbedingungen• diesegeltenfüralle(möglichen)InstanzendesSchemas

§ ER-Diagramm:graphischeDarstellungeinesER-Schemasà Chen-Notation

Informationssysteme2017 Kapitel2:Datenbankentwurf 12

Chen, P. P.-S.: The Entity-Relationship Model –Toward a Unified view of Data, in: ACM TODS 1:1, March 1976, pp. 9-36.

EntitiesundAttribute§ Entities• wohlunterscheidbareDingederMiniwelt(Diskurswelt)• „Athingthathasrealorindividualexistenceinrealityorinmind“(Webster)

§ Attribute• EigenschaftenvonEntities,derenkonkreteAusprägungenalsWertebezeichnetwerden

§ Beispiel:

13Informationssysteme2017 Kapitel2:Datenbankentwurf

b1

InvNr = 4711

Erstautor = Kemper

Titel = Datenbanksysteme

Verlag = Oldenbourg

Entity-MengenundEntity-Typen§ Entity-Mengen(Entity-Sets)• Gruppierungvon„ähnlichen“oder„vergleichbaren“Entities mitgemeinsamenEigenschaften

§ Entity-TypdefiniertdasSchema einerEntity-Menge• Name• Attribute

§ Entity-MengeundihreEntitiessindzeitveränderlich(Ausprägung)e1 = (4711,Kemper,DBS,Oldenbourg,...)e2 = (0815,Date,Intro.to DBS,Addison,...)

e3 = (1234,Härder,DBS,Springer,...)

§ ER-Schema/DiagrammenthältEntity-Typen,keineAusprägungen!

Informationssysteme2017 Kapitel2:Datenbankentwurf 14

InvNr EAutor Titel Verlag EJahr VPreis

Bücher

Diagrammdarstellung

t1

t2

KomplexeAttribute§ Wiewirdmodelliert,wenn

• einBuchmehrereAutorenhat• dieVerlagsinformationzusammengesetztist(Name,Ort)• Eigenschaftenhierarchischgegliedertsind

§ ErhöhungderModellierungsgenauigkeit• bisher:einwertigeAttribute• mehrwertigeAttribute (Doppelovale)• zusammengesetzte Attribute(hierarchischangeordneteOvale)➮Verschachtelungensindmöglich

e3=(1234,{Härder,Rahm},DBS,(Springer,{Hd,Be}),2001)

15

InvNr Autor Titel Verlag EJahr

Name Ort

Bücher

Informationssysteme2017 Kapitel2:Datenbankentwurf

Wertebereich/DomaineinesAttributs§ WertebereichW(A)(oderdom(A))• Diemöglichenoder„zulässigen“WertefüreinAttribut

• EinAttributordnetjedemEntityeinerEntity-MengeeinenWertauseinembestimmtenWertebereich(demdesAttributs)zu

§ Domaindom(A)füratomareundkomplexeAttributeW(A) fallsAeinwertig

dom(A):= 2W(A) fallsAmehrwertigdom(B1)x...xdom(Bk) fallsAaus B1,...,Bk

zusammengesetzt§ WertebereichesindnichtTeildesER-Diagramms,könnengetrennt

spezifiziertwerden

Informationssysteme2017 Kapitel2:Datenbankentwurf 16

Attribut Wertebereich

InvNr i ∊ N,i≤105

EAutor char(40)

EJahr {1571,...2012}

VPreis DECIMAL(9,2)

(Primär-)SchlüsselundSchlüsselkandidat§ WiewirdeinEntityidentifiziert?• Entities müssenanhandvonAttributwerten„wohlunterscheidbar“sein

§ IdentifikationeinesEntities durchAttribut(oderKombinationvonAttributen)• Attributwerteeindeutig füralleEntities derselbenEntitymenge• ggf.künstlicherzwungen(z.B.laufendeNr.)

§ {A1,A2,...,Am}=AseiMengeder(einwertigen)AttributezurEntity-MengeEK⊆ AheißtSchlüsselkandidat vonE⇔

Keindeutig:ei,ej∈ E;ei ≠ej →K(ei)≠K(ej)undKminimal (irreduzibel):∀K‘⊂ K:K‘istnichteindeutig

§ FallsmehrereSchlüsselkandidaten(SK):Primärschlüssel auswählen• imER-DiagrammdurchUnterstreichen gekennzeichnet

Informationssysteme2017 Kapitel2:Datenbankentwurf 17

Beispiel§ PrimärschlüsselfürEntity-Typ"Buch"

§ Entity-TypStudent

Schlüsselkandidaten?Primärschlüssel?

Informationssysteme2017 Kapitel2:Datenbankentwurf 18

InvNr Autor Titel Verlag EJahr

Name Ort

Bücher

SemMatrNr Name Gebdat FBNr

Studenten

RelationshipsundRelationship-Mengen§ Relationship (Beziehung)• AssoziationzwischenEntities

§ Relationship-MengenZusammenfassungvongleichartigenBeziehungen(Relationships)zwischenEntities,diejeweilsgleichenEntity-Mengenangehören

z.B.„hatausgeliehen“zwischen„Leser“und„Bücher“

Instanzbeispiel:r1 =(s1,b5)

19

Studenten Bücherhat-ausgeliehen

Informationssysteme2017 Kapitel2:Datenbankentwurf

Relationship-Typ§ Relationship-Typ(Beziehungstyp)definiert• NamederRelationship• beteiligteEntity-TypenundRollennamen(unddamitGradderBeziehung)- Relationship istTeilmengedeskartesichen ProduktsderbeteiligtenEntity-Mengen:R⊆ E1xE2x...xEn

• Attribute(optional)- unabhängigvonEntity-Typen

• Funktionalitäten:1:1,1:N/N:1,N:M§ ER-Diagramm

• Gradà 2(binär)• Funktionalitätà 1:Nx

Informationssysteme2017 Kapitel2:Datenbankentwurf 20

Studenten Bücherhat-ausgeliehen

RDatum

1 N

Rollennamen§ MotivationfürRollennamen

§ Entity-Typ(hier"Vorlesung")nimmtmehralseinmalanRelationship teil• rekursiveBeziehung• dergleicheEntity-TypspieltverschiedeneRollen

- ExpliziteSpezifikationvonRollenerforderlich- RollennamenwerdenimDiagrammandieBeziehungskantengeschrieben

• GradderBeziehung(hier:2)durchRollenbestimmt

Informationssysteme2017 Kapitel2:Datenbankentwurf 21

Vorlesung Voraus-setzung

N

M

Vorgänger

Nachfolger

Instanzbeispiel:r2 = (Vorgänger: v1, Nachfolger: v3)

FunktionalitätbinärerBeziehungen– 1:1

§ JedemEntitye1 ausE1 istmaximal1Entitye2 ausE2 zugeordnet,undumgekehrt• d.h.,eskannauchEntities inE1 undE2 geben,denenkeinanderesEntityzugeordnetist

• RkannalsPaarvonpartielleFunktioneninterpretiertwerden:- R:E1 à E2 undR-1:E2 à E1

Informationssysteme2017 Kapitel2:Datenbankentwurf 22

Vorlesungen Übungen

1:1: gehören-zu ⊆ Übungen x Vorlesungen

E1 E2R1 1

hat-Übung: Vorlesungen à Übungen

gehört-zu-Vorlesung: Übungen à Vorlesungen

FunktionalitätbinärerBeziehungen– 1:N/N:1

23Informationssysteme2017 Kapitel2:Datenbankentwurf

Professoren Vorlesungen1:n: lesen ⊆ Professoren x Vorlesungen

E1 E2R1 N

§ 1:N• JedemEntitye1 ausE1 sindbeliebigvieleEntities ausE2zugeordnet(evtl.auchgarkeins)

• JedemEntitye2 ausE2 isthöchstens1Entitye1 ausE1zugeordnetà partielleFunktionR-1:E2 à E1imBeispiel:gelesen-von:Vorlesungenà Professoren

§ N:1analogà partielleFunktionR:E1 à E2

FunktionalitätbinärerBeziehungen– N:M

§ EsgeltenkeineRestriktionen§ JedesEntityausE1 kannmitbeliebigvielenEntitiesausE2 in

Beziehungstehen,undumgekehrt

Informationssysteme2017 Kapitel2:Datenbankentwurf 24

Studenten Vorlesungenn:m: hören ⊆ Studenten x Vorlesungen

E1 E2RN M

Funktionalitätenbein-stelligenBeziehungen§ SeiReineBeziehungzwischenEntity-MengenE1,...En und

Funktionalitätist"1"fürEntity-TypEkè partielleFunktionE1,...Ek-1,Ek+1,... Enà EkD.h.,jedebeliebigeKombinationvonEntitiesausE1,...Ek-1,Ek+1,... EnkannaufgrundvonRhöchstenseinemek ausEk zugeordnetsein

§ Beispiel

• betreuen:ProfessorenXStudentenà Seminarthemen• betreuen:SeminarthemenXStudentenà Professoren

Informationssysteme2017 Kapitel2:Datenbankentwurf 25

StudentenProfessoren

N1

Seminarthemen

betreuen1

s1

s2

s3

s4

Studenten

p1

p2

p3

p4

Professoren

t1

t2

t3

t4

Seminar-themen

Funktionalitätenbein-stelligenBeziehungen(2)

Informationssysteme2017 Kapitel2:Datenbankentwurf 26

StudentenProfessoren

N1

Seminarthemen

betreuen1

b1

b2

b3

b4

b5

b6

OK

illegal

Profs dürfen dasselbe Themawiederverwenden (bei anderenStudis)

Dasselbe Thema darf von mehrerenProfs vergeben werden (anverschiedene Studis)

Studis dürfen beim selben Profnur ein Seminar ableisten

Studis dürfen dasselbe Thema nur einmal bearbeiten

ER-Diagramm- Vorlesungsbetrieb

27Informationssysteme2017 Kapitel2:Datenbankentwurf

voraus-setzen

Vorlesungen

VorlNr

SWS

Titel

NamePersNr

Rang

Raum

lesen

hören

arbeiten-für

halten

ÜNr

SWS

Titel

ProfessorenAssistenten

Übungen

Studenten

besuchen

gehören-zu

Name SemMatNr

Fachge-bietNamePersNr

Note prüfen

Vorgänger Nachfolger

11

M

1N

N

1

1

NN

NN

1

M

M

1

M

Existenzabhängigkeit§ Schwache(existenzabhängige)Entity-Typen

• Existenzder(schwachen)EntitiesistabhängigvonübergeordnetenEntities(identifizierenderEntity-Typ)- FunktionalitätderBeziehung:N:1(oder1:1)- Diagramm:doppeltumrandeteEntity-/Relationship-Typen,doppelteKante

• EntitiessindoftnurinKombinationmitdemSchlüsseldesübergeordnetenEntitytypseindeutigidentifizierbar- Diagramm:lokalerSchlüsselanteilistgestricheltunterstrichen

§ Beispiel

28Informationssysteme2017 Kapitel2:Datenbankentwurf

Gebäude liegt_in

GNr . . . . . .RNr

Räume

r1

r3r2

g1

g3g2

Existenzabhängigkeit: „Relationship begründet Existenz von“

1 N

Existenzabhängigkeit(2)§ ExistenzabhängigkeitalsIntegritätsbedingung• istbewussteEntscheidungdesModellierers• OftistdieWahl/ZusammensetzungdesSchlüssels einHinweis

- Beispiel:PrimärschlüsseleinesRaumes=Gebäudeschlüssel+lokalgültigeRaumnummer(z.B.46,220)

• Alternative:fallsGebäudeohneweitereAttributemodelliertsindundquasizurBeschreibungvonRäumendienen,könnendieEntity-Typenauchzusammengefasstwerden.

29Informationssysteme2017 Kapitel2:Datenbankentwurf

Gebäude liegtin

GNr . . .RNr

Räume Räume

GNr RNr . . .

DreistelligeRelationship-Mengen

30

Lieferanten n Lieferung m Projekte

Teile

p

Lieferanten beliefertm

Projekte

Teile

liefert bezieht

m

n n

m

n

ACHTUNG:Nicht gleichwertig mit drei zweistelligen (binären) Relationship-Mengen!

L P

T

L P

T

verboten!

erlaubt!

zu welchemProjekt?

Informationssysteme2017 Kapitel2:Datenbankentwurf

L P

LF

T

DreistelligeRelationship-Mengen(2)

31

Lieferanten

N

Projekte

Teile

1

Lieferungen

beliefertliefert

bezieht

1

1

N N verboten!

Informationssysteme2017 Kapitel2:Datenbankentwurf

ABER:Manche Werkzeuge erlauben nur die Modellierung binärer Relationship-MengenAlternative:Schwacher Entity-Typ mit drei identifizierenden Entities/Relationships

Kardinalitätsrestriktionen– (min,max)-Notation§ Bisher:

grobestrukturelleFestlegungderBeziehungenz. B.:1:1bedeutet„höchstenseinszuhöchstenseins“

§ VerfeinerungderSemantikeinesBeziehungstypsSeiR⊆ E1 xE2 x...xEn:Kardinalitätsrestriktionkard(R,Ei)=(min,max)bedeutet,dassjedesElementausEi inwenigstensmin undhöchstensmaxAusprägungenvonRenthaltenseinmuss(mit0≤min≤max,max≥1).

§ GraphischeDarstellung

32

RE1 E2(min1, max1) (min2, max2)Kardinalitäts-

restriktionen

e1 nimmt an (min1, max1) Beziehungen von Typ R teile2 nimmt an (min2, max2) Beziehungen von Typ R teil

Informationssysteme2017 Kapitel2:Datenbankentwurf

Beispiel:BegrenzungsflächendarstellungvonKörpern

Informationssysteme2017 Kapitel2:Datenbankentwurf 33

Beispiel-KörperER-Diagramm

Polyeder

Flächen

Begrenzung

Hülle

Kanten

StartEnde

Punkte

1

N

N

M

M

N

PolyID

FlächenID

KantenID

X

Y

Z

(4, *)

(1, 1)

(3, *)

(2, 2)

(2, 2)

(3, *)

(min,max)undschwacheEntity-Typen§ WiemodelliertmanExistenzabhängigkeiteinesEntity-Typs?• schwacherEntity-Typ

- existenzabhängigvonidentifizierendemEntity-/Relationship-Typ

• Kardinalitätsrestriktion(min,max)- min≥1:jedesEntitymussanmindestenseinerBeziehungteilnehmen,istalsoexistenzabhängig

• "Überlappung"derModellierungskonzepte§ NurlokalerSchlüsselanteilvorhandenà schwacherEntity-Typ

• aufkonsistente(min,max)-Angabeachten!(1,1)§ InanderenFällenistKardinalitätsrestriktionausreichend

Informationssysteme2017 Kapitel2:Datenbankentwurf 34

Angestellte Kinder(0, *) (1, 1)Eltern

von

Vorname

Abteilungen Personal(0, *) (1, 1)Mit-

arbeit

PNr

(min,max)undFunktionalitäten§ ModellierungskonzeptemitunterschiedlicherSemantik

Beipiel:gegebenR(E1,...,Ek,...En):• "(0,1)"beiEk:jedesek kommthöchstens1malinRvor• "1"beiEk:jedeKombination(e1,...,ek-1,ek+1,...en)

kommthöchstens1malinRvor§ Spezialfall"BinäreRelationship"

• Semantikistvergleichbar,(min,max)istmächtiger

§ RelationshipmitGrad>2• Semantik/Ausdruckskraftistnichtmehrvergleichbar• EsgibtStrukturbedingungen,diemitFunktionalitätenausgedrücktwerdenkönnen,abernichtmit(min,max)– undumgekehrt!

§ BeideKonzeptekönnenkombiniertwerden!

Informationssysteme2017 Kapitel2:Datenbankentwurf 35

Abteilungen Personal(0, *) (0, 1)Mit-

arbeitAbteilungen Personal1 NMit-

arbeit

s1

s2

s3

s4

Studenten

p1

p2

p3

p4

Professoren

t1

t2

t3

t4

Seminar-Themen

(min,max)undFunktionalitäten- Beipiel

Informationssysteme2017 Kapitel2:Datenbankentwurf 36

StudentenProfessoren

N1

Seminarthemen

betreuen1

b1

b2

b3

b4

b5

b6

OK

illegal

Profs dürfen dasselbe Themawiederverwenden (bei anderenStudis)Dasselbe Thema darf von mehrerenProfs vergeben werden (anverschiedene Studis)Studis dürfen beim selben Profnur ein Seminar ableistenStudis dürfen dasselbe Thema nur einmal bearbeiten

Funktionalitäten:

(0, 1)(0, *)

(0, *)

gefordert:Studis dürfen maximal ein Seminar ableisten(egal bei welchem Prof)

è (0, 1) bei "Studenten"

X

Abstraktionskonzepte– semantischeModellierung§ Ziel:• ErfassungvonnochmehrSemantik ausderMiniwelt• Entwicklungvon(Beschreibungs-)ModellenzuradäquaterenWiedergabederausgewähltenMiniwelt(Diskursbereich)

• DefinitionvonsystemkontrolliertenBeziehungen§ Aufgabe:• IdentifikationvonwesentlichenKonstrukten,dievomMenschenangewendetwerden,wennerseinenDiskursbereichbeschreibt.

• AnwendungvonAbstraktion,umdieInformationzuorganisieren

§ UnterstützungimER-Modellà enhancedER-Modell(EER-Modell)• AufStrukturaspektebeschränkt(keinVerhalten/Methoden)

Informationssysteme2017 Kapitel2:Datenbankentwurf 37

Abstraktionskonzepteinsem.Datenmodellenü Klassifikation/Instantiierung• entsprichtderDefinitionvonEntity-Typen/MengenimERM(Klasse≈Typ+Menge)

• möglicheErweiterung:expliziteModellierungvonInstanzen(hiernichtweiterbehandelt)

ü Identifikation• ObjektehabenimmereineneindeutigenIdentifikator• imERMdurcheindeutigeNamenvonEntity-TypenundDefinitionvonPrimärschlüsseln

Ø Generalisierung/Spezialisierung("is-a"-Beziehung)Ø Aggregation("part-of"-Beziehung)

38Informationssysteme2017 Kapitel2:Datenbankentwurf

siehe auch Elmasri, Navathe: Grundlagen von DBS

Is-a – Beziehung(Subklasse/Superklasse)§ Notation: vereinfacht:

• E2 "istein"E1;E2 istSubklassevonE1;E1 istSuperklassevonE2§ Bedeutung(seiS"is-a"G)• Mengeninklusion:SistTeilmengevonG(S⊆ G)• Typenvererbung

- Attribute:alleAttribute(inkl.Schlüssel!)vonGbeschreibenauchS(sindimplizitfürSdefiniert– werdenvonS"geerbt")

• Relationships:EntitiesinSkönnenanallenRelationshipsvonGteilnehmen

• fürSkönnenzusätzlicheAttribute/RelationshipsdefiniertseinInformationssysteme2017 Kapitel2:Datenbankentwurf 39

E1 E1

E2 En... E2 En...

is-a is-a is-a

Klassen-Hierarchie(Beispiel)

Informationssysteme2017 Kapitel2:Datenbankentwurf 40

Uni-Mitglieder

StudentenBeschäftigte

ProfessorenAssistenten

is-ais-a

is-a is-a

• Name• Geburtstag

• PNr• Fachbereich• Name• Geburtstag

• Matnr• Fachbereich• Name• Geburtstag

• Rang• Raum• Pnr• Fachbereich• Name• Geburtstag

• Fachgebiet• PNr• Fachbereich• Name• Geburtstag

kursiv ≣ geerbtTypenvererbung

s1s3

s2

s4p1

p2

p3a1

a3

a2a4

b1

b2

Mengeninklusion

VererbungvonBeziehungen

41

Uni-Mitglieder

Kinder

Projekte

Fachbereiche

Kinder

Projekte

Fachbereiche

Kinder

Projekte

Fachbereiche

Kinder

Projekte

Fachbereiche

Informationssysteme2017 Kapitel2:Datenbankentwurf

Kinder

Projekte

Fachbereiche

Professoren

Assistenten

Studenten

is-a

Beschäftigte

is-a

VollständigeunddisjunkteSpezialisierungen§ Si "is-a"G(1≤i≤n);immer:Si istTeilmengevonG(Si⊆ G)§ ZusätzlicheEinschränkungsmöglichkeitenderSubklassenbeziehung

• disjunkte Spezialisierung- Si sindpaarweisedisjunkt:Si ⋂ Sj =∅ füri≠j- einEntityausGkannzus.inmax.einerderSubklassenenthaltensein

• vollständige Spezialisierung- DieVereinigungallerSi ergibtG:G=∪Si (1≤i≤n)- einEntityausGistimmerauchineinerderSubklassenenthalten

§ ImDiagramm:wieKardinalitätsrestriktionenderSuperklasse• vollständig:min=1;disjunkt:max=1

§ ViermöglicheKombinationen• partiell+überlappend:(0,*)- default• vollständig+disjunkt:(1,1)• partiell+disjunkt:(0,1)• vollständig+überlappend:(1,*)

Informationssysteme2017 Kapitel2:Datenbankentwurf 42

E1

E2 En...

is-a(min, max)

VollständigeunddisjunkteSpezialisierungen(Beispiel)

Informationssysteme2017 Kapitel2:Datenbankentwurf 43

Uni-Mitglieder

Beschäftigte Studenten

is-a(1, 1)

Assistenten Professoren

is-a(0, 1)

vollständig, disjunkt

partiell, disjunkt

Uni-Mitglieder sind immer auch Angestellte oder Studenten, aberniemals beides!

Angestellte können auch Assistenten oder Professoren sein, aber niemals beides!

Explizite Kardinalitätsrestriktionen für Subklassen sind nicht sinnvoll! Warum?

Wo müssen Primärschlüssel definiert werden?

MehrereSpezialisierungenfüreinenEntity-Typ§ MehrereSpezialisierungennachverschiedenenKriterien• werdendurcheigene"is-a"-Boxendargestellt• eigeneAngabenzuVollständigkeit,Disjunktheitmöglich

Informationssysteme2017 Kapitel2:Datenbankentwurf 44

Uni-Mitglieder

Beschäftigte Studenten

is-a(1, 1)

Assistenten Professoren

is-a

(0, 1)

Beamte Angestellte

is-a

(1, 1)

Aggregation§ BeziehungmitspeziellerzusätzlicherBedeutung:

EinObjektistausBestandteilen zusammengesetzt(Teil-Ganze-Beziehung),z. B.Auto – MotorTisch – TischplatteKante – EndpunktBild – Farbtabelle

§ Entwederexklusiv*:keinanderesObjektdarfdenselbenBestandteilhaben

odergemeinsam:derselbeBestandteilwirdinzweiodermehrObjektenverwendet

§ Entwederabhängig:Bestandteilkannnichtalleinexistieren;wirdmitdemObjektgelöscht

oderunabhängig:BestandteilkannauchfürsichalsObjektexistieren

§ Objektemitexklusivenund/oderabhängigenObjektenheißenzusammengesetzteObjekte (compositeobjects,komplexeObjekte)oderAggregate

45

(*) Die exklusive Aggregation wird in UML als Komposition bezeichnet, die gemeinsame als „Aggregation“.

Auto – Motor

Kante – Endpunkt

Tisch – Tischplatte

Bild – Farbtabelle

Informationssysteme2017 Kapitel2:Datenbankentwurf

AggregationimER-Modell§ AttributesindBestandteileihrerEntities• immerexklusiv,abhängig

§ BeliebigeRelationshipzurModellierungvonAggregation• KardinalitätsrestriktionenzurModellierungvon

- Exklusivität:Bestandteilhatmax=1- Abhängigkeit:Bestandteilhatmin=1

§ "Teil-von"-Relationship(oder"part-of")• erfordertingleicherWeiseAngabevonKardinalitäten

Informationssysteme2017 Kapitel2:Datenbankentwurf 46

Fahrräder Teil-von

Räder

Rahmen

Speichen

Felgen

Rohre

Lenker

Teil-von

Teil-von

MöglicheErweiterungen§ VerschiedeneVorschlägezurErweiterungder"is-a"-Beziehung

• Mehrfachvererbung(mehralseineSuperklasseerlaubt)• Definition/Vererbung/Verfeinerungvon

- Funktionen/Methoden- WertebereichenundConstraints

• BedingungenzurautomatischenAbleitungvonSubklassen- prädikatdefinierteSubklassen- attributdefinierteSubklassen

§ ErweiterungderAggregation(impliziertePrädikate)§ Assoziationskonzept

• Element-/TeilmengenbeziehungüberbeliebigeKlassen• MitgliedschaftsbedingungenundAbleitungsregeln

§ AlternativeNotationenfürdieindiesemKapiteleingeführtenKonzepteèWerdenandieserStellenichtweitervertieft

Informationssysteme2017 Kapitel2:Datenbankentwurf 47

Entwurfsprinzipien§ Korrektheit• EntwurfsolldieMiniweltkorrektdarstellen• ErfordertinstensivenAustauschmitAnwendungsexperten

§ VermeidungvonRedundanz• DasgleicheKonzeptsolltenureinmalmodelliertwerden

- Bsp."Studenten":entweder"studiert-in"-Beziehungoder"FBR"-Attribut,abernichtbeides

• ableitbareBeziehungsolltennichtexplizitgemachtwerden• sonstGefahrvonInkonsistenzen,Speicherplatzverschwendung

§ Einfachheitistwichtig• VermeidungvonunnötigerDetaillierung• keineVerfeinerunginEntities/Relationships,wennnichtvonderAnwendungbenötigt

Informationssysteme2017 Kapitel2:Datenbankentwurf 48

Zusammenfassung§ DB-Entwurfumfasst

• Informationsbedarfsanalyse• konzeptionellesDB-Schema(à Informationsmodell)• logischesDB-Schema• physischesDB-Schema(nichtdiskutiert)

§ ERM-Charakteristika• ModellierungbeziehtsichaufdieTypebene• RelevanteZusammenhängederMiniweltwerdendurchEntity- undRelationship-Mengenmodelliert.SiewerdengenauerdurchAttribute,Wertebereiche,Primärschlüssel/Schlüsselkandidatenbeschrieben

• KlassifikationvonBeziehungstypendientderSpezifikationvonstrukturellenIntegritätsbedingungen

• AnschaulicheEntwurfsdarstellungdurchER-Diagramme➭relativkargesInformationsmodell

49Informationssysteme2017 Kapitel2:Datenbankentwurf

Zusammenfassung(2)§ EinführungweitererModellierungskonzepte

• VerfeinerungvonBeziehungendurchKardinalitätsrestriktionenundvorallemAbstraktionskonzepte

• DaserweiterteERMistsehrmächtigundumfasstvielebekannteModellierungskonzepte

§ AbstraktionskonzepteerlaubendiegenauereModellierungundOrganisationvonInformationen• Generalisierung/SpezialisierungmitVererbung,Mengeninklusion(Disjunktheit,Vollständigkeit)

• Aggregation(Teile-Ganzes-Beziehung)§ Integritätsbedingungen

• (E)ER-ModellermöglichtDefinitionvonstrukturellenBedingungen• beliebigelogischeBedingungennichtTeildes(formalen)ER-Modells

- höchstensüberKommentare/Annotationenspezifizierbar

50Informationssysteme2017 Kapitel2:Datenbankentwurf

Recommended