Lataa esitys
Esittely latautuu. Ole hyvä ja odota
JulkaistuNiina Myllymäki Muutettu yli 9 vuotta sitten
1
Entity-Relationship Diagrams ER-mallit Käsitemallit Kohde-suhde-kaavio
Kohdemallit Entity-Relationship Diagrams ER-mallit Käsitemallit Kohde-suhde-kaavio
2
ER-mallit käytetään tietokantojen, varsinkin relaatiotietokantojen suunnittelussa malli auttaa luomaan yhteisen näkemyksen rakennettavasta systeemistä; yhteinen kieli yhteinen työskentelytapa mallin avulla rajataan suunniteltava systeemi
3
mallissa kuvataan tietokannan tieto-objektit ja niiden väliset yhteydet
mallin perusteella määritellään tietokannan taulut ja taulujen perus- ja viiteavaimet ym. ER-mallinnuksessa on käytössä erilaisia notaatioita eli merkintätapoja
4
ER-mallin peruselementit
kohteet eli entiteetit kohteen ominaisuudet eli attribuutit kohteiden väliset yhteydet (relationships) attribuutit yhteyksissä
5
Kohteet eli entiteetit
esitetään suorakaiteena edustaa kohteiden kokoelmaa tai joukkoa, jonka yksittäisiä esiintymiä tieto-järjestelmässä käsitellään jokainen kohde voidaan yksilöidä jollakin tavalla, eli jokainen esiintymä on yksilö, joka voidaan erottaa muista kohteen esiintymistä jonkin ominaisuuden mukaan esim. kohteen ”asiakas” esiintymät on kyettävä erottamaan toisistaan
6
jokainen kohde / entiteetti on rakennettavan systeemin kannalta tarkoituksellinen
jokainen kohde voidaan kuvata yhden tai useamman tietoalkion avulla esim. ”asiakas” voidaan kuvata tietoalkioilla: nimi, laskutusosoite, puhelinnumero usein näitä tietoalkioita kutsutaan kohteen attribuuteiksi eli ominaisuuksiksi
7
Relaatiot eli yhteydet
kohteet kytketään toisiinsa relaatioiden avulla Yourdonin notaation mukaan kohteiden välinen suhde ilmaistaan ’salmiakin’ avulla relaatio voi olla ’yhden suhde yhteen’ tai ’yhden suhde moneen’ (tai ’monen suhde moneen’) kahden kohteen välillä voi olla myös useita eri suhteita
8
OSTAMINEN ASIAKAS TUOTE HOIDOT LÄÄKÄRI POTILAS LASKUTUS
9
Yhteystyyppien pakollisuus
pakollinen yhteystyyppi tarkoittaa, että jokainen kohteen yksilö on yhteydessä vähintäänkin yhteen toisen kohteen yksilöön puolittainen ehdollinen yhteystyyppi tarkoittaa, että toisessa kohteessa voi olla yksilöitä, joilla ei ole yhteyttä toiseen kohteeseen täysin ehdollinen yhteystyyppi tarkoittaa, että molemmissa kohteissa voi olla yksilöitä, joilla ei ole yhteyttä toisen kohteen yksilöihin
10
Vaihtoehtoisia merkintätapoja
edellisten esimerkkien graafit olivat suuntaamattomia relaatioissa ei ilmaistu kardinaliteettia, eli keskinäisessä suhteessa olevien kohteiden esiintymien määrää kardinaliteetin ilmaisemiseksi on useampia eri merkintätapoja
11
ASIAKAS 1 N TUOTE OSTAMINEN ASIAKAS 1:N 0:N TUOTE SISÄLTYY VIIKKO VIIKONPÄIVÄ 1 7 ASIAKAS TUOTE
12
osallistuu opiskelija kurssi kuuluu luennoi suorittaa tentti opettaja suoritus Tehtävä:Lisää kardinaliteetit
13
1:N osallistuu 0:N opiskelija kurssi 1:1 0:N 0:N kuuluu luennoi 0:N suorittaa 0:N tentti 0:N 0:N opettaja suoritus
14
Tehtäviä: Piirrä kohdemalli, joka kuvaa videovuokraamon vuokraustoimintaa (pelkistetysti). käytä haluamaasi notaatiota ilmoita kardinaliteetit
15
hankkii 0:N työntekijä 1:1 filmi 1:N 0:N vuokraa 0:N asiakas 0:N palauttaa
16
Kohteen attribuutit jokaista kohdetta voi kuvata yhdellä tai useammalla attribuutilla asiakasnro tuotenro nimi TILAA ASIAKAS N M TUOTE nimike hinta puhelinnro
17
Attribuutit yhteyksissä
monen suhde moneen –yhteydellä voi olla itsessään attribuutteja esim. tietyn asiakkaan tietyn tuotteen tilaukseen liittyy tilauspvm-attribuutti tilauspvm tilauspvm TILAA ASIAKAS N M TUOTE
18
Assosiatiivisten kohdetyyppien merkintä
kohdemallissa voidaan käyttää myös ns. assosiatiivista (yhdistävää) kohdetyyppiä se edustaa suhdetta, josta tallennetaan tietoja systeemiin ASIAKAS TUOTE TILAUS- TAPAHTUMA
19
asiakas tilaa tuotteen ja syntyy uusi omistussuhde tuotteen ja tilauksen välille
se voidaan merkitä assosiatiivisena kohteena tähän uuteen kohteeseen voidaan lisätä esim. tilaustapahtuman tietoja, kuten tilausajankohta, tilaushinta jne. tässä esimerkissä asiakas ja tuote ovat itsenäisiä kohteita, mutta tilaustapahtuma-kohde voi olla tietojärjestelmässä vain tilaustapahtuman seurauksena, eli se edellyttää muiden kohteiden esiintymien yksilöintiä
20
ER-kaavion laatiminen:
Tunnista kohteet; niistä halutaan tallentaa pysyvästi tietoa. Nimeä kohde ymmärrettävästi. Tunnista kohteiden väliset suhteet; niistä halutaan tallentaa pysyvästi tietoa. Nimeä suhdetyypit ja määritä kardinaliteetit. Tunnista attribuutit; mitkä kohteisiin ja suhteisiin liittyvät tiedot ovat tarpeellisia. Nimeä attribuutit.
21
Tehtäviä: Mieti mahdollisia attribuutteja kurssisuorituskaavion entiteeteille. (s. 13) Olet suunnittelemassa mökkivarausjärjestelmää. Mieti millaisia kohdetyyppejä mökkivaraukset pitävät sisällään? millaisia attribuutteja kohdetyypeillä on ja mitkä niistä on otettava järjestelmään mukaan? mitkä ovat ko. kohteiden väliset yhteydet? mitkä ovat kardinaliteetit? Piirrä kohdemalli mökkivarausjärjestelmästä
22
Alityyppi / supertyyppi-merkintä
Jos kaksi tai useampia kohteita poikkeaa toisistaan vain muutamien attribuuttien osalta, voidaan niistä muodostaa alityyppi / supertyyppi–merkintä. Kohteet yhdistetään silloin tavalla, joka ilmaisee niiden keskinäistä käsitteellistä suhdetta. Kohteen ominaisuudet voidaan kuvata luokkahierarkiana, jossa superluokan ominaisuudet ’periytyvät’ alemmille, astetta tarkemmalla tasolla määritellyille objekteille. Alityypit yhdistetään supertyyppiin nimeämättömän suhteen avulla ja supertyyppi merkitään rakenteessa poikkiviivalla.
23
TYÖNTEKIJÄ MÄÄRÄAIKAINEN TYÖNTEKIJÄ VAKINAINEN TYÖTEKIJÄ Alityyppi/supertyyppimerkintä. Poikkiviiva työntekijä-objektin alla merkitsee supertyyppiä tai supertyyppiluokkaa.
24
Esimerkki ’pankkitilit’
Pankkisovelluksessa käyttötili ja luotollinen tili ovat kohteina lähes samanlaisia. Luotolliseen tiliin liittyy kuitenkin attribuutti ’luottoraja’, jota käyttötilillä ei ole. Samoin käyttötiliin voi liittyä attribuutteja, joita luotollisella tilillä ei ole. Asia voitaisiin mallintaa kolmella eri kohteena: tili, luotollinen tili, käyttötili. Tili sisältäisi kaikille tileille yhteiset attribuutit ja luotollinen tili sille ominaiset muut attribuutit, samoin käyttötili.
25
kolme eri kohdetta mallinnettuna:
ON ON TILI 1:1 1:1 0:1 0:1 LUOTOLLINEN TILI KÄYTTÖTILI tässä ratkaisussa tili voisi olla samanaikaisesti käyttötili ja luotollinen tili
26
seuraavassa esimerkissä tilejä on mallinnettu yhteisen supertyypin avulla
TILI LUOTOLLINEN TILI KÄYTTÖTILI Alityyppi / supertyyppi-merkinnän käyttö on yleisintä oliopohjaisten suunnittelumenetelmien yhteydessä.
27
Kohdemallin muodostamisohjeita
Kohdemallia laadittaessa ei ole syytä olettaa, että ensimmäinen kohdemallin versio olisi lopullinen. Yleensä joudutaan tekemään useita työversioita ennen kuin lopullinen hyväksyttävä versio valmistuu. Ensimmäinen versio piirretään usein sen käsitteistön perusteella, joka kuvaa tietojärjestelmää ja sen käyttöä käyttäjän näkökulmasta. Kohdemallin toistuva piirtäminen ja uudelleenkäsittely tuo esiin uusia kohdetyyppejä ja / tai karsii niitä.
28
Kohdemallista poistetaan kaikki monesta-moneen –relaatiot, synnyttämällä assosiatiivisia kohteita ja muodostamalla yhdestä moneen –relaatiot uuden ja aikaisempien kohteiden välille. Kohdemallista poistetaan myös sellaiset kohteet, joissa on vain tunnistin, ei muita attribuutteja sekä sellaiset kohteet, joista on vain yksi esiintymä. Esim. henkilöstö-tietokannassa on olemassa erillinen kohde ’avio- tai avopuoliso’, josta on relaatio ’työntekijä’-kohteeseen. Jos jokaisella työntekijällä on vain 1 avio- tai avopuoliso, voidaan ko. kohde poistaa ja tieto tallentaa ’työntekijä’-kohteen attribuutiksi.
29
ER-mallista relaatiotietokannan tauluiksi
Kun ER-malli on viimeistelty ja hyväksytty, sen pohjalta voidaan rakentaa tietokannan tauluja Jokaisesta kohteesta tulee yleensä oma taulunsa ja kohteiden attribuuteista taulun sarakkeet Kullekin taululle pitää myös miettiä perusavaimet, sekä mahdolliset muut rajoitukset, kuten not-null –rajoitus yms.
30
Jos kyseessä on ’yhden suhde moneen’ relaatio, ota sarakkeeksi N-puolelle relaation 1-puolen kohteen avainattribuutti (viittaamaan 1-puoleen) Jos kyseessä on ’monen suhde moneen’ relaatio, tulisi se purkaa tekemällä siitä oma taulunsa (esim. ’tuote ja asiakas’ –relaatiosta ’tilaus’-taulu). Tällaisen taulun sarakkeiksi tulee yleensä molempien relaatioon liittyvien kohteiden avainattribuutit (esim. tuotenro ja asiakasnro) sekä mahdolliset yhteyden omat attribuutit (esim. tilauspvm)
31
Jos kyseessä on ’yhden suhde yhteen’ relaatio, tulee toiseen tauluun viiteavaimeksi toisen taulun perusavainsarake. Se, kumpaan tauluun viiteavain määritellään, riippuu tapauksesta.
32
ER-malliharjoitus nro 1
Tee ER-malli sekä sen perusteella taulumääritykset seuraavanlaisen casen pohjalta: Kyseessä on pienehkö 24 henkilöä työllistävä postimyyntifirma, joka myy polkupyöriä. Yritykseen kuuluu 3 osastoa: myynti, markkinointi ja kirjanpito. Jokaisella osastolla on yksi johtaja ja työntekijä voi työskennellä vain yhdellä osastolla. Asiakkaiden tekemät tilaukset toimitetaan kokonaisina (ei osatoimituksia) ja jokaisesta tilauksesta vastaa aina yksi työntekijä.
33
tuotenro TUOTE ASIAKAS nimike asnimi hinta 1:N tilausnro postinro asnro lähios TILAUS ptoimip tilauspvm kpl TOIMITTAA 0:N osastonro TYÖSKEN- TELEE 1:1 2:N 1:1 OSASTO TYÖNTEKIJÄ JOHTAA 1:1 0:1 osnimi ttnro ttnimi
34
Taulut em. ER-kaavion perusteella
Asiakas (asnro, asnimi, lähios, postinro, ptoimip) Tuote (tuotenro, nimike, hinta) Tilaus (tilausnro, tilauspvm, kpl, ttnro, asnro, tuotenro) Työntekijä (ttnro, ttnimi, osastonro) Osasto (osastonro, osnimi, ttnro) (ttnro on johtajan ttnro)
35
ER-malliharjoitus nro 2
Piirrä ER-malli eli kohdemalli seuraavasta: Kyseessä on tietosysteemi, joka ottaa vastaan ilmoittautumisia urheiluopiston järjestämille lasten kesäleireille. Leirejä järjestetään useita kappaleita ja ne ovat teemoiltaan erilaisia. Järjestelmään on tarkoitus kirjata ilmoittautumisen lisäksi lapsen yhteystietoja ja leirien tarkemmat tiedot. Mallissa tulisi olla näkyvillä ainakin entiteettien/kohteiden ja yhteyksien lisäksi tärkeimmät attribuutit.
36
hetu nimi puhelin Leirin nimi paikka LAPSI 0:N 1:N LEIRI huoltaja lähiosoite ajat hinta postinro hpuh vetäjä sisältö ptoimip ILMOITTAUTU-MINEN ilmnro ilmoaika
37
Tietohakemisto (data dictionary)
Sisältää kuvauksen kaikista järjestelmään sisältyvistä tiedoista. Siinä kuvataan järjestelmän syötteet, tulosteet, tietovarastojen rakenteet ja tietojen tarkat määritykset. Tietohakemistoa laadittaessa: kuvaa kaikki tietovirtakaavion tietovirrat ja tietovarastot kuvaa tietovirtojen ja tietovarastojen sisältämät tietoalkiot kuvaa kunkin tietoalkion mahdolliset arvot kuvaa miten tietoalkiot liittyvät toisiinsa käytä oikeaa notaatiota älä kuvaa mitään tietoalkiota useammin kuin kerran
38
Tietohakemisto Tietojen kuvaamisessa käytettävät merkinnät:
= muodostuu seuraavista + ja ( ) vaihtoehto (saattaa esiintyä tai puuttua) { } iteraatio eli toisto [ ] valitse yksi vaihtoehdoista | vaihtoehtojen erotin * * kommentti @ avainkenttä tai tietovaraston tunnistinkenttä
39
Tietohakemisto Esimerkki: Asiakasrekisteri = { Asiakas }
Asiakas + Asiakkaan nimi Yhteystiedot Henkilötunnus = { Numero }6 + ’-’ + { Laillinen_merkki }4 Asiakkaan nimi = Etunimi + Sukunimi Sukupuoli = [ mies | nainen ] Yhteystieto = 1{ Laillinen merkki }n Etunimi = 1{ Kirjain }n Sukunimi = 1{ Kirjain }n Laillinen_merkki = [ Numero | Kirjain | ’ | - | ] Numero = { 0-9 } Kirjain = [ A-Ö | a-ö ]
Samankaltaiset esitykset
© 2024 SlidePlayer.fi Inc.
All rights reserved.