06_Normalizare_3

Embed Size (px)

Citation preview

  • 8/17/2019 06_Normalizare_3

    1/30

     

    METODOLOGIEGRAFICĂ

    DE NORMALIZAREPRIN SINTEZĂ

    F/BC F

  • 8/17/2019 06_Normalizare_3

    2/30

     

    Ingrediente

    • Atomizarea selectivă  a atributelor-grup(neatomice)

    • Dependenţe funcţionale

    • Eliminarea DF simetrice• Cei surogat (identificare! alte artificii)

    • Dep" de incluziune (este un/o (Is-A))• #raful DF

  • 8/17/2019 06_Normalizare_3

    3/30

     

    Atomicitate

    • Atomicitatea este relativă (la specificulaplicaţiei! interesul $i intenţia

     proiectantului %D) & ' E"* Adresă (+tr"! ,r"! %loc! +cara! Ap"! """)• entru o librarie on-line! Adresă este atribut

    atomic

    • entru ./01E2EC/0! C/,E2! D3+1.3#A4n &

  • 8/17/2019 06_Normalizare_3

    4/30

     

    Atomicitate (cont.)

    • E"5* C6.73 83+%,! 1itlu! Editura!AnApar! Autori! +ubiecte9

     ' Atori ' S!iecte

    atomice sau nu :

  • 8/17/2019 06_Normalizare_3

    5/30

     

    Atomicitate (cont.)

    • .egulă*

    Atunci c;nd o componentă a unui atribut

    non-atomic (colecţie) - e" Autori!CuvinteCeie ' apare! singură! casursă =n caz contrar! poate fi folosită formarepetitivă

  • 8/17/2019 06_Normalizare_3

    6/30

     

    Dependenţe funcţionale simetrice

    0atricol C,! dar $i C, 0atricolDe aceea!

     ' 0atricol ,ume+tudent ' 0atricol Adresa

    dar $i

     ' C, ,ume+tudent ' C, Adresa

  • 8/17/2019 06_Normalizare_3

    7/30 

    DF simetrice în graf 

    Matricol

    NumeStudent   Adresa

    CNP

    Matricol

    NumeStudent AdresaCNP

  • 8/17/2019 06_Normalizare_3

    8/30 

    Eliminare DFsimetrice/redundante (1)

    .egulă*

    entru orice entitate

  • 8/17/2019 06_Normalizare_3

    9/30 

    Eliminare DFsimetrice/redundante (2)

    C=nd atributele nu sunt cei candidat! se ia =ncalcul precedenţa celor două DF

    E" ' pentru un otelIdCa"are IdRe"er#are

    deoarece rezervarea precede cazarea

  • 8/17/2019 06_Normalizare_3

    10/30 

    Atribute cei surogat (!")

    • Atribute ?artificiale@! introduse din raţiunide identificare mai u$oară a unei entităţi!

     proces! tranzacţie etc"• E" CodClient! 3dEaminare!3dEmatriculare etc"

    • /puse ?ceilor inteligente@ (e"C,)

  • 8/17/2019 06_Normalizare_3

    11/30 

    !urog#ri (1)

     TipDocumentPlatăSerieDocumentPlată

    NrDocumentPlatăDataDocumentPlat

    ă

    SumaPlătită

    NrFactPlătită

     TipDocumentPlată

    SerieDocumentPlată

    NrDocumentPlat

    ă   DataDocumentPlat

    SumaPlătită

    NrFactPlătit

    ă

    IdPlată

    Fără cheie surogat

    Cu cheie surogat

  • 8/17/2019 06_Normalizare_3

    12/30 

    !" $ identificare asociaţii

    / entitate este asociată uneia sau mau multorentităţi specifice

    • / persoană (IDPersoana → NumePers! IDPersoana → DataNasterii)are unul sau maimulţi copii*IDPersoana —/→ NumeCopil

    • n furnizor poate livra numai anumite produse

    • / carte are unul sau mai mulţi autori• n student urmează anumite cursuri

    • etc"

  • 8/17/2019 06_Normalizare_3

    13/30 

    !" $ identificare asociaţii (cont.)

    +olutie* introducerea unui atribut +B care săeprime relaţia

  • 8/17/2019 06_Normalizare_3

    14/30 

    !" $ identificare asociaţii (cont.)

    IDPaternitate

    IDPersoana

    NumePers

    DataNasterii

    NumeCopil

    IDFurnizareProdus

    IDFurnizor

    Adresa

    NumeFurnCodIdentifFiscala

    CodProdus

    DenProdus

    UM

  • 8/17/2019 06_Normalizare_3

    15/30

     

    %roduse comandate $ f #r # !"

    IDComanda

    DataComenzii

    CodProdus

    IDFurnizorDenProdus

    NumeFurn

    ./D+E 8Codrodus! Denrodus! retnitar! +tocCurent9F.,34/.3 83DFurnizor! ,umeFurn! Adresa! 2ocalitate9C/0E,43 83DComanda! DataComenzii! 3DFurnizor9./DC/0A,DA1E 83DComanda! Codrodus! CantComandata9

    PretUnitar

    StocCurent

    Adresa   Localitate

    CantComandată

  • 8/17/2019 06_Normalizare_3

    16/30

     

    %roduse comandate $ cu !"

    ./D+E 8Codrodus! Denrodus! retnitar! +tocCurent9F.,34/.3 83DFurnizor! ,umeFurn! Adresa! 2ocalitate9C/0E,43 83DComanda! DataComenzii! 3DFurnizor9./D+EC/0A,DA1E 83DrodusComandat! 3DComanda!Codrodus! CantComandata9

    IDProdusComandat

    IDComanda

    DataComenzii IDFurnizor

    NumeFurnAdresa

    Localitate

    CodProdus

    DenProdus

    PretUnitar

    StocCurent

    CantComandată

  • 8/17/2019 06_Normalizare_3

    17/30

     

    Dependenţe de inclu&iune (DI)

    • Eprimă o relaţie de tip este un / este o =ntre două atribute"E" n 0anager (3d0anager) este un angaat (3dAngaat)

    • 3ndică o specializare

  • 8/17/2019 06_Normalizare_3

    18/30

     

    'raf cu DI

    DataAngajarii

    IdProiect

    DescriereNumeProiect

    DataStartDurata

    MarcaSecretara  MarcaAngajat

    NumeAngajatCompartiment

    MarcaSef IDCopiator

    DataAcitionariiModel

    !itezaTenored"#perientaConducere

    A,#AA13 80arcaAngaat!,umeAngaat! Compartiment!

    DataAngaarii90A,A#E.3 80arca+ef! EperientaConducere9./3EC1E 83droiect! ,umeroiect! Descriere! Data+tart! Durata!0arca+ef9C/3A1/A.E 83DCopiator! 0odel! DataAcizitionarii9

    +EC.E1A.E 80arca+ecretara! iteza1enoredactare! 3dCopiator9

  • 8/17/2019 06_Normalizare_3

    19/30

     

    $CNF %&'

    IDStudent

    NrPuncteAcumulate

    DenMaster

     Tutore

    IDStudent

    NrPuncteAcumulate

    DenMaster

     Tutore

  • 8/17/2019 06_Normalizare_3

    20/30

     

    $CNF %('

    A

    $   C

    A

    $   C

    A$

    CD

    A$

    CD

  • 8/17/2019 06_Normalizare_3

    21/30

     

    IDComanda

    DataCmd

    NrFactIDFurnizor

    !alFactDataFact

    • o comand# $ mai multe facturi (acelai furni&or)• o factur# onorea&a o singur# comand#• numerele de facturi se repet# (din cau&a m.m.furni&ori)

    DataCmd

    NrFact

    !alFactDataFact

    DataCmdNrFact   !alFact

    DataFact

    IDFacturare

    *+F

    *u ,surogare-

    IDComanda

    IDComanda

    IDFurnizor

    IDFurnizor

  • 8/17/2019 06_Normalizare_3

    22/30

     

    DF )condi*ionată +

    ID%ezer&are

    NumeClCamera%ezer&

    IDClient

    AdresaCl

    IDCazare

    DataIncep%ez

    DataSf%ez

    DataCazare

    Camera

    DataDecazare

    Data%ezer&

  • 8/17/2019 06_Normalizare_3

    23/30

     

    Re"o,#are DF )condi*ionată+

    ID%ezer&are

    Data%ezer&

    NumeCl

    Camera%ez

    IDClient

    AdresaCl

    IDCazare

    DataIncep%ez

    DataSf%ez

    DataCazare

    Camera

    DataDecazare

    ID'Caz'(azată 'pe'%ezer&

    ID'Caz'f ăr ă'%ezer&

  • 8/17/2019 06_Normalizare_3

    24/30

     

    DM - De.enden*e M,ti-a,oare %&'

    • GHH -.onald Fagin

    • (D0) =ntre I $i J dacă $i numai dacă*

     ' (a) la fiecare apariţie (valoare) a lui I poate fiasociată una sau mai multe apariţii (valori) alelui J>

     ' (b) această asociaţie nu depinde de apariţiilelui 4"

    •  I K  J L 4

  • 8/17/2019 06_Normalizare_3

    25/30

     

    DM %('

    Elmasri $i ,avate*Dacă =n . eistă două tupluri t $i t5  pentru

    care tMIN O t5MIN! atunci eistă =n . altedouă tupluri! tP $i tQ (4 toate celelalte(dec;t I $i J) atribute din .! adică (. - (I J)))*

    • tPMIN O tQMIN O tMIN O t5MIN• tPMJN O tMJN $i tQMJN O t5MJN• tPM4N O t5M4N $i tQM4N O tM4N

  • 8/17/2019 06_Normalizare_3

    26/30

     

    DM %/'

    C"" Date* Eistă o dependenţă multi-valoare =ntre I $i J =n următoarea

    situaţie*dacă (x,y,z) şi (x,y',z') sunt două tuplete

    ale relaţiei R,

    atunci (x,y',z) şi (x,y,z') aparţin, de

    asemenea, lui R0

  • 8/17/2019 06_Normalizare_3

    27/30

     

    DM %1'

    ." Dollinger*

    / valoare dată a lui I se găse$te =n . =n

    combinaţie (formează tupluri) cu fiecare perece de valori (R!z) din produsulcartezian al mulţimilor J (valorile lui Rcare apar =n combinaţie cu un dat) $i 4"Aceasta =nseamnă ca mulţimile J $i 4sunt independente =ntre ele"

  • 8/17/2019 06_Normalizare_3

    28/30

     

    DM %2'

  • 8/17/2019 06_Normalizare_3

    29/30

     

    Trans3ormarea DM 4n DF

    Su(iectIDAutor

    IS$N

    A5TORI 6IDAtor7 NmeAtor7 Adresa7 EMai,8CĂR9I 6IS$N7 Tit,7 Editra7 AnP!,ic8CĂR9I:A5T 6IS$N7 NrOrdineAtor7 IDAtor8CĂR9I:S5$IECTE 6IS$N7 S!iect7 Re,e#an*ă8

     Titlu"ditura

    AnPu(lic

    NumeAutor

    "mailAdresa

    Su(iect

    IDAutor IS$N

     Titlu"ditura

    AnPu(lic

    Nume

    "mailAdresa   Nr)rdineAutor

    %ele&an*ă

  • 8/17/2019 06_Normalizare_3

    30/30

    Atri!te i"o,ate

    NrFact

    Datafact

    Client

    DI!*+0I FA*0I *AEA DE 'AD3 (0IA4)

    !aloareFact

    !alMinimă

    !alMa#imă+Discount

    IDDoctor

    Data)ra,ncep-ar

    NumeDoctor...

    Data)raSf-ardă

    Data)raSosirii

    IDPacient

    NumePacient...

    Simptome