Dagens tema: Ringskranker Klisjéer (mønstre) Tommelfingerregler

Like dokumenter
UNIVERSITETET I OSLO INF1300. Dagens tema: Ringskranker. Tommelfingerregler. Institutt for informatikk. INF Ellen Munthe-Kaas 1

Dagens tema: Ringskranker Informasjonsbærende representasjoner Behandling av tid Tommelfingerregler

INF1300 Introduksjon til databaser

Dagens tema: Eksempel Klisjéer (mønstre) Tommelfingerregler

Dagens tema: Ekvivalente stier og joinskranker Ringskranker Informasjonsbærende representasjoner Behandling av tid

Dagens tema: Underbegreper og underbegrepsskranker Kombinerte totale roller Behandling av tid Informasjonsbærende representasjoner Ringskranker

Flere skranker i ORM Integritetsregler med «CHECK» i SQL

UNIVERSITETET I OSLO INF1300 Introduksjon til databaser

Informasjonsbærende representasjoner

UNIVERSITETET I OSLO INF1300 Introduksjon til databaser

UNIVERSITETET I OSLO INF1300 Introduksjon til databaser

Repetisjon: (nesten) alt du trenger å kunne om ORM og realisering

INF1300 Introduksjon til databaser

Repetisjon: (nesten) alt du trenger å kunne om ORM og realisering

Dagens tema: Begrepsdannelse Eksterne entydighetsskranker Verdiskranker Mengdeskranker Underbegreper og underbegrepsskranker Kombinerte totale roller

Dagens tema: Begrepsdannelse Eksterne entydighetsskranker Representasjon n-1-regelen Verdiskranker Mengdeskranker

Dagens tema: Begrepsdannelse Eksterne entydighetsskranker Verdiskranker Mengdeskranker

Repetisjon: (nesten) alt du trenger å kunne om ORM og realisering

Dagens tema: Begrepsdannelse Eksterne entydighetsskranker

INF1300 Introduksjon til databaser

INF1300 Introduksjon til databaser

Vegard Nossum. 21. oktober 2010

Dagens tema: Begrepsdannelse Eksterne entydighetsskranker Representasjon n-1-regelen

INF1300 Introduksjon til databaser

Gruppeøvelse 20/ Dagens tema: - Gruppering/realisering

INF1300 Introduksjon til databaser

Relasjonsdatabasedesign

PENSUM H2012 INF1300. Joakim Myrvoll Johansen. Pensum fra forelesnings-foilere

INF1300 Introduksjon til databaser

Relasjonsdatabasedesign

INF1300 Introduksjon til databaser

INF1300 Introduksjon til databaser

Relasjonsdatabasedesign

INF1300 Introduksjon til databaser

Relasjonsdatabasedesign

UNIVERSITETET I OSLO

INF1300. Grunnbegrepene i ORM: fakta, begreper, roller, faktatyper, broer, entydighetsskranker, totale roller, funksjonelle avhengigheter

INF1300 Introduksjon til databaser

Relasjonsdatabasedesign

Dagens tema. Den redundansfri datamodellen. Modellenes to formål. Den grunnleggende konstruksjonen det elementære utsagnet

Dataorientert modellering

INF1300 Introduksjon til databaser

{(1,0), (2,0), (2,1), (3,0), (3,1), (3,2), (4,0), (4,1), (4,2), (4,3) } {(1,0), (1,1), (1,2), (1,3), (2,0), (2,2), (3,0), (3,3), (4,0)}

Notat 05 for MAT Relasjoner, operasjoner, ringer. 5.1 Relasjoner

INF1800 LOGIKK OG BEREGNBARHET

Repetisjon INF1800 LOGIKK OG BEREGNBARHET FORELESNING 3: MENGDELÆRE, RELASJONER, FUNKSJONER. Mengder. Multimengder og tupler.

Dagens tema: Relasjonsmodellen (funksjonelle avhengigheter og nøkler, integritetsregler) Realisering: Fra ORM til relasjoner

UNIVERSITETET. Relasjonsdatabasedesign

Modellenes to formål. Datamodellering med UML (forts.) Ugrupperte og grupperte modeller. Figur 5-2. Ogdens trekant

Modellenes to formål. Datamodellering med UML (forts.) Fra naturlig språk til datamodell. Figur 5-2. Ogdens trekant

UNIVERSITETET I OSLO

INF1300 Introduksjon til databaser

Relasjonsdatabasedesign

INF1050 Klasseromsoppgave Uke 6

Relasjonsdatabasedesign

Gerhard Skagestein: Systemutvikling fra kjernen og ut, fra skallet og inn.

Relasjonsdatabasedesign

Dagens tema: Realiseringsalgoritmen (også kalt "grupperingsalgoritmen") fra ORM-diagram til relasjonsskjema

Sensorveiledning for IN2090 og INF desember :30 18:30 (4 timer)

VÆRSTASJONER Obligatorisk oppgave nr. 2 i INF1300 høsten 2011

Datamodellering med UML (forts.)

INF1300 Introduksjon til databaser

UNIVERSITETET I OSLO

Modellenes to formål. Datamodellering med UML (forts.) Ugrupperte og grupperte modeller. Figur 5-2. Ogdens trekant

Realiseringsalgoritmen fra ORM til relasjoner Intro til mengdeskranker i ORM

Repetisjonsforelesning - INF1080

UNIVERSITETET I OSLO

MAT1030 Diskret Matematikk

Kapittel 5: Relasjoner

Relasjoner - forelesningsnotat i Diskret matematikk 2015

UNIVERSITETET I OSLO

Egenskaper til relasjoner på en mengde A.

MA0002 Brukerkurs i matematikk B Vår 2017

MA0002 Brukerkurs i matematikk B Vår 2014

INF1300 Introduksjon til databaser

MA0002 Brukerkurs i matematikk B Vår 2016

Repetisjon digital-teknikk. teknikk,, INF2270

Relasjonsdatabasedesign

Relasjonsdatabasedesign

IN2090 Introduksjon til databaser

IN2090 Databaser og datamodellering ORM 1

Dagens tema: Oppdateringsanomalier Normalformer

Kapittel 5: Relasjoner

Før vi begynner. Kapittel 5: Relasjoner og funksjoner. MAT1030 Diskret Matematikk. Litt om obligen og studentengasjementet

Først litt repetisjon

Datamodellering med ORM

Kapittel 5: Relasjoner

Relasjonsdatabasedesign

Dagens tema. Den redundansfri datamodellen. Modellenes to formål. Individer i interesseområdet

INF1300 Introduksjon til databaser

Den redundansfri datamodellen

INF1300 Introduksjon til databaser

UNIVERSITETET I OSLO

Kap.4 Funksjoner. Tre viktig ting ifm. funksjoner: parameter (input) oppskrift (body) for å beregne resultat (output)

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO. Det matematisk-naturvitenskapelige fakultet. INF1080 Logiske metoder for informatikk

Uke 4: z-transformasjonen

Oppsummering. MAT1030 Diskret matematikk. Relasjoner. Relasjoner. Forelesning 11: Relasjoner

MAT1030 Diskret Matematikk

LØSNINGSFORSLAG UNIVERSITETET I OSLO. Det matematisk-naturvitenskapelige fakultet. Oppgave 1 Mengdelære (10 poeng)

Transkript:

UNIVERSITETET I OSLO INF1300 Introduksjon til databaser Dagens tema: Ringskranker Klisjéer (mønstre) Tommelfingerregler Institutt for informatikk INF1300 26.11.2011 michael@ifi.uio.no 1

Ringskranker INF1300 26.11.2011 michael@ifi.uio.no 2

Refleksiv skranke x pop(r1) pop(r2) (x,x) pop(r1,r2) INF1300 26.11.2011 michael@ifi.uio.no 3

Irrefleksiv skranke (x,x) pop(r1,r2) INF1300 26.11.2011 michael@ifi.uio.no 4

Symmetriskranke (x,y) pop(r1,r2) (y,x) pop(r1,r2) INF1300 26.11.2011 michael@ifi.uio.no 5

Antisymmetriskranke (x,y) pop(r1,r2) x y (y,x) pop(r1,r2) INF1300 26.11.2011 michael@ifi.uio.no 6

Asymmetriskranke = antisymmetri + irrefleksivitet INF1300 26.11.2011 michael@ifi.uio.no 7

Transitiv skranke (x,y) pop(r1,r2) (y,z) pop(r1,r2) (x,z) pop(r1,r2) INF1300 26.11.2011 michael@ifi.uio.no 8

Intransitiv skranke (x,y) pop(r1,r2) (y,z) pop(r1,r2) (x,z) pop(r1,r2) INF1300 26.11.2011 michael@ifi.uio.no 9

Asyklisk skranke (x 1,x 2 ) pop(r1,r2)... (x n-1, x n ) pop(r1,r2) (x n, x 1 ) pop(r1,r2) INF1300 26.11.2011 michael@ifi.uio.no 10

Kombinerte ringskranker asyklisk og intransitiv asymmetrisk og intransitiv symmetrisk og intransitiv symmetrisk og irrefleksiv INF1300 26.11.2011 michael@ifi.uio.no 11

Informasjonsmodellklisjéer Standardkonstruksjon som går igjen i modeller uavhengig av interesseområde Hode/linje-klisjéen Gruppeklisjéen Standard-med-unntak-klisjéen Beholdningsklisjéen Plasseringsklisjéen Hierarkiklisjéen Hierarkisk referansemåte Erstatningsklisjéen Bill-of-material -klisjéen Individualiseringsklisjéen Tidsakseklisjéen Frys-klisjéen INF1300 26.11.2011 michael@ifi.uio.no 12

Hode-linje-klisjéen Ekstern entydighet på bestilt/ordrehode dersom en vare ikke får gjentas på flere ordrelinjer innen en ordre INF1300 26.11.2011 michael@ifi.uio.no 13

Gruppeklisjéen (gruppenr + varenr?) INF1300 26.11.2011 michael@ifi.uio.no 14

Standard-med-unntak-klisjéen For å finne hvilken avdeling som har ansvar for en vare, sjekker man først om varen har en unntaksrelasjon INF1300 26.11.2011 michael@ifi.uio.no 15

Beholdningsklisjéen INF1300 26.11.2011 michael@ifi.uio.no 16

Plasseringsklisjéen ekvivalente stier/ joinskranke? INF1300 26.11.2011 michael@ifi.uio.no 17

Hierarkiklisjéen enkel variant INF1300 26.11.2011 michael@ifi.uio.no 18

Hierarkiklisjéen spesielle varianter INF1300 26.11.2011 michael@ifi.uio.no 19

Hierarkisk referansemåte INF1300 26.11.2011 michael@ifi.uio.no 20

Erstatningsklisjéen familieløsningen INF1300 26.11.2011 michael@ifi.uio.no 21

Bill-of-material -klisjéen realiseres ikke INF1300 26.11.2011 michael@ifi.uio.no 22

Individualiseringsklisjéen INF1300 26.11.2011 michael@ifi.uio.no 23

Tidsakseklisjéen INF1300 26.11.2011 michael@ifi.uio.no 24

Frys-klisjéen INF1300 26.11.2011 michael@ifi.uio.no 25

Tommelfingerregler Vær skeptisk overfor «mange-til-mange» (lange piler) og «en-til-en» (to korte piler) Total rolle står vanligvis på samme side som entydighetsskranken Entydighetsskranken omfatter sjelden mål, vekt, antall o.l. Entydighetsskranken omfatter (nesten) aldri to tidspunkter Manglende total rolle kan skjule et underbegrep Dersom flere stier fører fra et begrep til et annet, sjekk om det finnes overflødige faktatyper eller om vi har ekvivalente stier/ joinskranker Ikke formaliser fritekst det ikke skal søkes i Vær skeptisk overfor begrepsdannelser og underbegreper uten grupperende roller INF1300 26.11.2011 michael@ifi.uio.no 26

Tommelfingerregler (forts.) Roller som spilles av begrepsdannelser har som oftest en entydighetsskranke (intern eller ekstern) Bruk standardiserte referansemåter hvis de finnes Dersom to begreper har samme referansemåte, bør de sannsynligvis tilhøre samme underbegrepsfamilie Ikke baser informasjonsbærende referansemåter på ustabile fakta Gjør informasjonsmodellen robust mot forretningsmessige og politiske endringer (av forretningsreglene i interesseområdet) Et begrep som blir til et referanseskjema man ønsker å (men ikke må) beholde, mangler trolig en faktatype (f.eks. til en kodeforklaring) INF1300 26.11.2011 michael@ifi.uio.no 27