20
Forskjellige nivåer Konseptuelt skjema Logisk skjema Internt skjema Beskrivende Object Role Model ORM Formell teorimodell Relasjons databaser Fysisk implementasjon DataBase Management System = DBMS Eksternt skjema SQL Rmap SQL

Forskjellige nivåer

Embed Size (px)

DESCRIPTION

SQL. Forskjellige nivåer. Beskrivende Object Role Model ORM. Konseptuelt skjema. Eksternt skjema. Rmap. Logisk skjema. Formell teorimodell Relasjons databaser. SQL. Fysisk implementasjon DataBase Management System = DBMS. Internt skjema. Konseptuelt skjema deles inn i 3 seksjoner:. - PowerPoint PPT Presentation

Citation preview

Page 1: Forskjellige nivåer

Forskjellige nivåer

Konseptueltskjema

Logiskskjema

Interntskjema

Beskrivende Object Role Model ORM

Formell teorimodell Relasjons databaser

Fysisk implementasjon DataBase Management System = DBMS

Eksterntskjema

SQL

Rmap

SQL

Page 2: Forskjellige nivåer

Konseptuelt skjema deles inn i 3 seksjoner:

Base fact types - Grunnleggende faktatyper Contraints - Beskrankninger Derivation rules - Utledningsregler

Page 3: Forskjellige nivåer

Hopp til første side

Relasjonskjema

ansNavn

HansenOlsenNilsen

avdeling

SalgSalgService

kjønn

KMK

ansNavn

HansenNilsenNilsen

fremSpråk

SpanskFranskJapansk

Nilsen Spansk

Snakker:Ansatt:

Ansatt ( ansNavn, avdeling, kjønn )

Snakker ( ansNavn, fremSpråk )

Primær nøkkel Fremmed nøkkel

Page 4: Forskjellige nivåer

Hopp til første side

Modellering

Livssyklus Top-down Faktaorientert - verbalisering av UoD Perspektiver

Data orientert Prosess orientert Oppførsel/hendelses orientert

ER vs ORM

Page 5: Forskjellige nivåer

Hopp til første side

Konseptuell Skjema Design Prosedyre (KSDP)

1. Omform kjente dataeksempler til grunnleggende fakta, og anvend kvalitetskontroller.2. Tegn faktatypene, og anvend en befolkningssjekk.3. Se etter entitetstyper som bør kombineres, og noter eventuelle aritmetiske utledninger.4. Legg til entydighetsbeskrankninger, og kontroller aritet til faktatypene.5. Legg til totale rollebeskrankninger, og se etter logiske utledninger.6. Legg til verdi-, sett- og subtype-beskrankninger.7. Legg til andre beskrankninger og utfør sluttsjekker.

Page 6: Forskjellige nivåer

Hopp til første side

KSDP steg 1

Omform kjente dataeksempler til grunnleggende fakta,og anvend kvalitetskontroller.

Hva er et grunnleggende fakta ?

Fakta : - en antagelse om interesseområdet som skal tas for sann.- en antagelse om at gitte objekter spiller gitte roller.

Grunnleggende : - kan ikke deles i mindre biter med informasjon, uten å miste informasjonsinnhold.

Page 7: Forskjellige nivåer

Hopp til første side

Eksempler

Anne røyker Anne ansetter Rune Anne ansetter Anne

Anne røyker og Rune røyker

Anne røyker eller Rune røyker

Anne røyker ikke Hvis Rune røyker da er

Rune kreftutsatt. Alle personer som røyker

er kreftutsatt

Et objekt har en egenskap.

Et eller flere objekter inngår en relasjon.

Page 8: Forskjellige nivåer

Hopp til første side

Hvordan spesifisere objekter og roller ?

Entitetstype:

Referansemåte:

Verdi:

Pasient

etternavn

’Johansen’

Temperatur

º Celsius

37

Pasienten med etternavn ’Johansen’ har en Temperatur på 37º Celsius

Pasienten med etternavn ’Johansen’ er lokalisert på Post ’Hjerte 1 Syd’

Rolle spesifiseres med predikat : ... er lokalisert på ...

Page 9: Forskjellige nivåer

Hopp til første side

Informasjonskilder

Tabeller (evt fra tidligere system) Skjema Grafer Eksempler fra UoD ekspert(er)

Page 10: Forskjellige nivåer

Hopp til første side

EksemplerForeleser

TelleMughalPetersen

Emne

I120I125I126

Person med etternavn ’Telle’foreleser Emne med kode ’I120’

Designer

WirthKayWirth

Språk

PascalSmalltalkModula2

År

197119721979

Person med etternavn ’Wirth’designet Språk med navn ’Pascal’ i År 1971

Person med etternavn ’Wirth’ designet Språk med navn ’Pascal’

Språk med navn ’Pascal’ ble designet i År 1971

Page 11: Forskjellige nivåer

Hopp til første side

Mer om referanser

Kan forkorte litt når det ikke er rom for misforståelser: Person(etternavn) ’Wirth’ designet Språk(navn) Pascal’ Språk(navn) ’Pascal’ ble designet i År(AD) 1971

Eller som i tidligere eksempler; først liste referanse- skjema for entitetstypene: Person (etternavn); Språk(navn); År(AD)+ Person ’Wirth’ designet Språk ’Pascal’ Språk ’Pascal’ ble designet i År 1971

Numerisk

Page 12: Forskjellige nivåer

Hopp til første side

Kvalitetskontroll

Er entitetene veldefinert ?

Kan faktaene deles opp i mindre enheter uten å miste informasjon ?

2 nøkkelspørsmål :

Page 13: Forskjellige nivåer

Hopp til første side

Øvelse/eksempelGruppe

1

2

3

Tid

Man 12.15

Tir 14.15

Tor 10.15

Rom

Rb 2

Rb 5

Rb 5

Student# Navn

302156180064278155334467200140266010

Andersen BJakobsen IFyllingen LNilsen HAndersen BHop C

Gruppe med gruppenr 1 møtes ved Tid med dag-tid-kode ’Man 12.15’

Gruppe med gruppenr 1 møtes i Rom med romnr ’Rb 2’

Student med student# 302156 tilhører Gruppe med gruppenr 1

Student med student# 302156 har StudentNavn ’Andersen B’

Page 14: Forskjellige nivåer

Hopp til første side

KSDP steg 2

Tegn faktatypene, og anvend en befolkningssjekk.

Hvordan tegne ?

Person Bil

PersonNavn Reg#

...kjører...

Entitets-type

Verdi-type

Referanse

Fakta

Page 15: Forskjellige nivåer

Hopp til første side

Befolkningssjekk

Person(PersonNavn)

Bil(Reg#)

kjører/blir kjørt av

Adams B 235PZNJones E 235PZN

Jones E 108AAQ

Sertifikat(Sertifikat#)

innehar/er registrert på

Adams B A3050Jones E A2245

Kan forkorteved 1:1 Referanse

Page 16: Forskjellige nivåer

Hopp til første side

Røyker

TjalveKenneth

Ikke-røyker

KariNinaGeorg

Person(fornavn)

røyker

TjalveKenneth

KariNinaGeorg

er en ikke-røyker

Person(fornavn)

RøykerStatus(kode)har

KennethKariGeorgNinaTjalve

RIIIR

Heterogen fakta type

Homogen fakta type

Page 17: Forskjellige nivåer

Hopp til første side

Ring fakta type

Person(fornavn)

mann til kone til

AdamMichal

EvaSharon

Page 18: Forskjellige nivåer

Hopp til første side

Nøsting

Person(PersonNavn)

Medalje(kode)

Adams B HøydeJones E Lengde

Jones E Høyde

KonkGren(kode)

<Adams B, høyde><Jones E, lengde>

deltok i

vant

”Deltagelse”

SG

Objektifisert relasjon Ikke en splitting

Page 19: Forskjellige nivåer

Hopp til første side

KSDP steg 3Se etter entitetstyper som bør kombineres, og noter eventuelle aritmetiske utledninger.

Primitive entitetstyper overlapper ikke Hint:

Samme entitet kan være medlem av 2 entitetstyper. Det er meningsfullt å sammenligne 2 entitetstyper.

(Samme enhet, dimensjon). Samme informasjon blir lagret for flere entitetstyper.

Page 20: Forskjellige nivåer

Hopp til første side

Artikkel(kode)

Utsalgspris(NKr)+har

Fortjeneste(NKr)+har

Innkjøpspris(NKr)+har

{fortjeneste = utsalg - innkjøp }Artikkel a har fortjeneste på Beløp f iff a selges for s and a kjøpes inn for k and f = s-k

Artikkel(kode)

Beløp(NKr)+

kjøpes inn for

selges for