Forskjellige nivåer Beskrivende Object Role Model ORM Konseptuelt

Slides:



Advertisements
Liknende presentasjoner
Repetisjon innkapsling static tabell av primitiv datatype LC191D Videregående programmering Høgskolen i Sør-Trøndelag, Avdeling for informatikk og e-læring.
Advertisements

Tabeller av objekter Klassen ArrayList
GoOnline publisering Hvordan komme i gang med GoOnline. Denne presentasjonen tar deg steg for steg gjennom oppsett av nettsted med bruk av GoOnline Proffesional.
Høgskolen i Sør-Trøndelag, Avdeling for informatikk og e-læring
LC238D Datamodellering og databaser Else Lervik, september 2012 Forelesning 6, Uke 39 Objektorientering i ER-modeller.
1 Sannsynlighetsregning Gjenfinningssystemer og verktøy II Jon Anjer.
Opplevd kvalitet og målt kvalitet: Brukerundersøkelser: Målgruppe: - brukere av hjemmetjenesten (18 indikatorer) - beboere på inst. (24.
Velkommen som spiller i aksjespillet.
Programmering i ActionScript - hva er det, og hvordan undervise?
Høgskolen i Oslo Webprogrammering SQL og databaser del 3.
Dagens tema : Teori - Databaser
Java database persistence framework.  SELECT by FROM postnr AS p WHERE ( SELECT DISTINCT postnr FROM addr AS a WHERE user.adrId = a.Id ) = p.postnr;
LC238D Datamodellering og databaser Introduksjon til fagfeltet Else Lervik, august 2012Forelesning 1, uke 34 Datafilerside.
Webprogrammering Arrays.
Normalisering Formell teori for å forbedre relasjonsskjema design, unngå redundans. 2 hovedretninger : Syntese og Dekomposisjon Basert på funksjonelle.
Målinger generelt •I et moderne samfunn brukes målinger i mange ulike sammenhenger •Eksempler: –Sammenligne priser, lønninger –Høyde: størrelse på klær.
Behaviour Driven Development, Steg 1: - Ikke tenk som en utvikler Jan Fredrik Stoveland , Smidig 2009.
Essbase for nybegynnere
Forskningsrapporten: Sjekkliste før innlevering (empirisk rapport)
UML & object models av gruppe 8
Databaseteori.
1 Kap 04 Datamodellering. 2 Datamodellering -Et språk for å analysere og beskrive virkeligheten. -En metode for å beskrive naturlige sammenhenger i data.
Normalformer – avleggs?
SQLHiA Data-integritet. SQLHiA Data integritet Påkrevde data:Noen kolonner i en database-tabell må ha en eller annen verdi. Dette gjøres ved å sette NOT.
Prosjekt nr 38E Database for registrering av radioaktive stoffer brukt ved Nukleærmedisinsk Seksjon, St. Olavs Hospital.
Gjenfinningssystemer og verktøy II
Databasehåndtering med MySQL
Aksess kontroll None shall pass.
1 Øvingsforelesning Andreas Knudsen Nils Grimsmo
Grunnleggende testteori
Hopp til første side KSDP steg 4 Legg til entydighetsbeskrankninger, og kontroller aritet til faktatypene.
Siste forelesning ER/EER-modellering
Mer om programmering av aggregeringer Repetisjon: Komposisjon og aggregering En register-klasse: modellering En register-klasse: implementering Sortering.
In 135 Datamodellering og databaser Introduksjon, Enkeltentiteten, Informasjon Ola Bø.
INF150 Programmering mandag 11.9
Om øvelse 9 Vedlikehold av data Databaser. Øvelse 9 I øvelse 8 så vi på: –Registrering av informasjon om hjelpere To små utvidelser av øvelse 8: –Endring.
LC238D Datamodellering og databaser Else Lervik, september 2011 Forelesning 6, Uke 38 Objektorientering i ER-modeller.
1 Kap 02 Relasjonsdatabaser. Data-organisering - Manuelt Ansatte Pasienter Utstyr Økonomi Avdelinger RøntgenOnkologisk.
Kap 04 Datamodellering. Datamodellering -Et språk for å analysere og beskrive virkeligheten. -En metode for å beskrive naturlige sammenhenger i data som.
Elektroniske verktøy Diakonhjemmet nov 2008 (Klikk for å komme til neste side)
Entity Framework Andreas Knudsen, Bekk Consulting AS 31/
Hvordan uttrykke krav Kapittel 4.4. Innledning Målet er å samles rundt ett entydig språk som ikke kan misforståes eller feiltolkes. Gjør sporbarheten.
Structured Query Language Kræsj-kurs
Webprogrammering Skjema i HTML og PHP.
Kartlegging og dokumentasjon
ER-modellen, notasjon ENTITETS- Attributter TYPE Relasjon
Eksempel på SQL ”SQL-setninger” har en struktur som likner på ”naturlig språk”, med ”verb, subjekter og adjektiver”. SQL-setningene begynner alltid med.
DATABASE: Oppgave 2 et medlemsregister for en idrettsklubb med flere idrettsgrener (fotball, håndball, osv). klubben ønsker å lagre informasjon om medlemmenes.
storoppgave OPPGAVE3: bibliotekdatabase
Forskningsrapporten: Sjekkliste (empirisk rapport)
Introduksjon I126 Databaser og datamodellering Høsten 2000 Institutt for informatikk Universitet i Bergen.
Hopp til første side Konseptuell Skjema Design Prosedyre (KSDP) 1. Omform kjente dataeksempler til grunnleggende fakta, og anvend kvalitetskontroller.
Fødselsdato (dmå) er født har lønn Ansatt (ansnr) Beløp (NKr)+ Telefon
Hopp til første side KSDP steg 5 Legg til totale rollebeskrankninger, og se etter logiske utledninger.
Andre funksjoner.
Konfigurasjonsstyring Configuration Management
Linq To SQL Fagdag 20. November DataContext  DataContexten er mappingen mot databasen –Generer objekter for alle entiteter (tabeller), med properties.
Skjemaendringer i systemer bestående av XML-data i relasjonsdatabaser Høgskolen i Gjøvik Master i Medieteknikk, Marianne Brattrud.
Objektorientert utforming
Nye forretningsprosesser Pensum: Olsen, kap
Metode for systembeskrivelse og
Se ellers læreboka, kap , side
NOEA/IT FEN - Databaser/modellering 1 Datamodellering Hvorfor? E/R-modellen Begreber Fremgangsmåde Diagrammering.
Generelle definisjoner Oppslagsverk nå og senere! Finnes også i dokumentet Retningslinjer for datamodellering i UML UML-seminar 12. og 13. mars 2003 SOSI-sekretariatet.
Design, studentundersøkelse Frode Svartdal, Knut Gundersen.
Introduksjon Pensum: Olsen, K.A. The Internet, the Web and eBusiness, Formalizing applications for the real world, Scarecrow Press, 2005.
Kap. 9 – Computer Intelligence How Information Technology Is Conquering the World: Workplace, Private Life, and Society Professor Kai A. Olsen,
Tilhørende målinger i tiltakspakken Riktig legemiddelbruk i sykehjem
Identifisere behov – og etablere krav
INF1300 Introduksjon til databaser
Utskrift av presentasjonen:

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

Konseptuelt skjema deles inn i 3 seksjoner: Base fact types - Grunnleggende faktatyper Contraints - Beskrankninger Derivation rules - Utledningsregler Skal på neste forelesning begynne å lære en prosedyre for hvordan finne fram til disse. I dagser vi litt på hva de er for noe og litt notasjon.

Relasjonskjema Ansatt: ansNavn Hansen Olsen Nilsen avdeling Salg Service kjønn Snakker: ansNavn fremSpråk K Hansen Spansk M Nilsen Fransk K Nilsen Japansk Nilsen Spansk Ansatt ( ansNavn, avdeling, kjønn ) Constraints : Nøkler SQL støtter CHECK clausuler, triggere etc. NB : Forskjell på tabeller vi har sett som input eksempler og relasjonstabeller. Primær nøkkel Fremmed nøkkel Snakker ( ansNavn, fremSpråk )

Modellering Livssyklus Top-down Faktaorientert - verbalisering av UoD Perspektiver Data orientert Prosess orientert Oppførsel/hendelses orientert ER vs ORM Hensikt : Oversikt over KSDP og gå igjennom første steg. Livssyklus Facta orientert modellering - verbalisering av UoD Perspektiver : Data orientert Prosess orientert Oppførsel/hendelses orientert ER vs ORM kort!

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.

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.

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.

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å ...

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

Eksempler Foreleser Telle Mughal Petersen Emne I120 I125 I126 Person med etternavn ’Telle’ foreleser Emne med kode ’I120’ Designer Wirth Kay Språk Pascal Smalltalk Modula2 År 1971 1972 1979 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

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

Kvalitetskontroll 2 nøkkelspørsmål : Er entitetene veldefinert ? Kan faktaene deles opp i mindre enheter uten å miste informasjon ?

Øvelse/eksempel Gruppe Tid Rom Student# Navn 1 2 3 Man 12.15 Tir 14.15 Tor 10.15 Rb 2 Rb 5 302156 180064 278155 334467 200140 266010 Andersen B Jakobsen I Fyllingen L Nilsen H Hop 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’

KSDP steg 2 Tegn faktatypene, og anvend en befolkningssjekk. Hvordan tegne ? ...kjører... Person Bil Entitets- type Fakta Referanse Verdi- type PersonNavn Reg#

Befolkningssjekk kjører/blir kjørt av Kan forkorte ved 1:1 Referanse Bil (Reg#) Kan forkorte ved 1:1 Referanse Adams B 235PZN Person (PersonNavn) Jones E 235PZN Jones E 108AAQ innehar/er registrert på Sertifikat (Sertifikat#) Adams B A3050 Jones E A2245

Homogen fakta type røyker Røyker Tjalve Kenneth Ikke-røyker Kari Nina Georg Tjalve Kenneth Person (fornavn) er en ikke-røyker Kari Nina Georg Person (fornavn) RøykerStatus (kode) har Kenneth Kari Georg Nina Tjalve R I Heterogen fakta type

Ring fakta type mann til kone til Adam Michal Eva Sharon Person (fornavn) mann til kone til Adam Michal Eva Sharon

Nøsting Objektifisert relasjon Ikke en splitting <Adams B, høyde> <Jones E, lengde> S G Medalje (kode) vant ”Deltagelse” Person (PersonNavn) KonkGren (kode) deltok i Adams B Høyde Jones E Lengde Jones E Høyde

KSDP steg 3 Primitive entitetstyper overlapper ikke Hint: Se 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.

har har har Innkjøpspris (NKr)+ Artikkel (kode) Utsalgspris (NKr)+ Fortjeneste (NKr)+ har Artikkel (kode) Beløp (NKr)+ kjøpes inn for selges for {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