Documente Academic
Documente Profesional
Documente Cultură
15:34
Proiectarea unei BD
Metodologie
1. Analiza cerinelor
Fia cerinelor
2. Modelarea conceptual
Diagrame E/A (UML)
3. Modelarea logic
Normalizare
Schema relaional
4. Modelarea fizic
Faza de tuning
Mulime-entitate - corespunde unui grup de obiecte de acelai tip, deci unei mulimi
omogene de entiti
O instan - entitate
Asociere (Relationship)
Conexiune/asociere ntre dou sau mai multe entiti (sau chiar a unei entiti cu ea nsi)
Gradul asocierii = nr. de entiti participante
Atribut
15:34
Diagrame E/A
Reprezentare grafic a conceptelor E/A
Mulime
Asociere
Mulime Entitate
Atribut
Un graf
noduri-entitate i noduri-asociere
noduri-entitate i noduri-atribute
noduri-asociere i noduri-atribute
15:34
Exemplu
O baz de date ce conine informaii despre:
Studeni
Profesori
Cursuri
Note
Mentori
Asociere binar
STUDENI
MENTORI
NOTE
PROFESORI
Asociere ternar
Asociere unar
PRE
CURSURI
Cerine:
Cheie primar
Exemplu
CNP
nume
prenume
localitate
STUDENI
MENTORI
ndrumat
evaluat
ndrumtor
sem
NOTE
an
evaluator
PROFESORI
nota
CNP
nume
prenume
birou
subiect
este necesar
CURSURI
PRE
necesit
cod
denumire
credite
15:34
Constrngeri de conectivitate/participare
15:34
Exemplu
(Studeni,1,1Mentori)
(Profesori,0,7,Mentori)
Fiecare student are un singur profesor drept mentor iar un
profesor poate fi mentor pentru cel mult 7studenti
CNP
nume
prenume
STUDENI
localitate
MENTORI
ndrumat
1:1
ndrumtor
0:7
PROFESORI
CNP
10
nume
prenume
birou
15:34
0:1
0:1
0:n
R
15:34
0:1
0:1
0:n
0:m R
15:34
0:n
Entitate slab
Nu are cheie
Satisface constrngerea de conectivitate
(Entitate_slaba,1,1,R), deci particip ntr-o asociere de tip
unu la muli relativ la entitatea tare
13
15:34
Exemplu
STUDENTI
0:10
IMPRUMUT
1:1
MPRUMUTURI
14
15:34
Capcane de conectare
(Fan traps)
PROFESOR
PROFESOR
angajat
angajat
SALARIAT
SALARIAT
angajator
angajator
FACULTATE
UNIVERSITATE
component
compus
STRUCTURA
STRUCTURA
component
FACULTATE
compus
compoziie
(tip special de asociere)
Problema:
La ce departament aparine profesorul X?
15
UNIVERSITATE
Soluia:
Model restructurat
15:34
Capcane de conectare
(Chasm traps)
FACULTATE
proprietar
FACULTATE
ofer
ofer
CURICULA
CURICULA
oferit de
CURS
oferit de
CURS
RESURS
activitate
activitate
ORAR
ORAR
locaie
SAL
Problema:
Care sunt toate slile ce aparin unei faculti?
16
locaie
proprietate
SAL
Soluia:
Noi asocieri
15:34
17
15:34
IS A
{disjunct/suprapus}
18
Complet
Incomplet (parial)
{complet/parial}
IS A
15:34
Modelare UML
19
15:34
UML
Mulime-entitate cu atribute
Clas
Mulime-asociere fr atribute
proprii
Asociere
Mulime-asociere cu atribute
proprii
Clas de asociere
Specializare
Subclas
Compoziie i agregare
20
15:34
Clase
CNP
nume
prenume
localitate
STUDENI
21
15:34
Asocieri
nume
prenume
STUDENI
localitate
ndrumat
1:1
CNP
MENTORI
ndrumtor
0:7
nume
prenume
birou
PROFESORI
15:34
Asocieri
Constrngeri de conectivitate/multiplicitate
Restricii
(C1,u,v,A)
(C2,x,y,A)
C1
u:v
x:y
C2
Fiecare obiect din (instan a entitii) C1 este asociat cu cel puin u i cel mult v
obiecte din (instane ale entitii) C2
Fiecare obiect din (instan a entitii) C2 este asociat cu cel puin x i cel mult y
obiecte din (instane ale entitii) C2
23
x..y
u..v
Tip asociere
0..1
0..1
1..1 (1)
1..1 (1)
0..1
0..* (*)
15:34
???
Fie asocierea
2..4
12..14
24
15:34
Asocieri recursive
necesit
PRE
CURSURI
este necesar
cod
25
denumire
credite
15:34
Asocieri n-are
26
15:34
Clase de asociere
STUDENTI
LICENTA
titlu
27
PROFESORI
sesiune
15:34
Clase de asociere
CNP
nume
localitate
prenume
STUDENI
cod denumire credite
CURSURI
evaluat
NOTE
subiect
evaluator
sem
28
CNP
an
nume
prenume
PROFESORI
nota
15:34
birou
29
15:34
Subclas
(1)
ID
nume
prenume
superclas
STUDENTI
IS A
IS A
STUDENI ROMNI
STUDENI STRINI
CNP
tara
30
15:34
Subclas
(2)
0..*
31
15:34
1..*
(pk)
Compoziie i agregare
Obiecte dintr-o clas aparin obiectelor din alt clas
Tipuri speciale de asociere
32
15:34
UML
Schema relaional
Mulime-entitate cu atribute
Clas
Mulime-asociere fr atribute
proprii
Asociere
Specializare
Subclas
Compoziie i
agregare
33
15:34
Mulimi-entitate/clase i asocieri
34
x..y
u..v
Cheia primar pt A
Observaii
0..1
1..1
K2
Nu e necesar relaia A
{C1(K1, X1), C2(K2, X2,K1)}
0..1
1..1
K1
Nu e necesar relaia A
{C1(K1, X1,K2), C2(K2, X2)}
(K1,K2)
15:34
???
Fie diagrama
35
15:34
Asocieri recursive
36
15:34
Clase de asociere
37
15:34
Specializare/Subclase
Posibiliti
38
15:34
???
o
o
39
n1<n2<n3
n1n2n3
n3<n2<n1
n3 n2 n1
15:34
Compoziie i agregare
NU accept NULL
accept NULL
40
15:34
Modelare EA/UML
Sumar
PROS
CONS
41
15:34
Bibliografie
Unelte:
42