Luento 3 Tietokannan tietosisällön suunnittelu

Samankaltaiset tiedostot
HELIA 1 (20) Outi Virkki Tiedonhallinta

Tietokannan suunnittelu

Tietokannan suunnittelu

Tietokannan rakenteen suunnittelu

HELIA 1 (8) Outi Virkki Tietokantasuunnittelu

HELIA 1 (17) Outi Virkki Tiedonhallinta

TIEDONHALLINTA - SYKSY Luento 7. Pasi Ranne /10/17 Helsinki Metropolia University of Applied Sciences

TIEDONHALLINNAN PERUSTEET - SYKSY 2013

3. Käsiteanalyysi ja käsitekaavio

HELIA 1 (19) Outi Virkki Tietokantasuunnittelu

Ohjelmistojen mallintamisen ja tietokantojen perusteiden yhteys

HELIA TIKO-05 1 (28) ICT03D Tieto ja tiedon varastointi O.Virkki

Tietokantojen suunnittelu, relaatiokantojen perusteita

HARJOITUS 2. Kasvattamot ja mittaukset

Tietokantojen perusteet k2004helsingin yliopisto/tktl Tietokantojen perusteet, s 2007 ER-mallin peruskäsitteet.

HELIA 1 (14) Outi Virkki Tiedonhallinta

HELIA 1 (12) Outi Virkki Tiedonhallinta

Tietokannan hallinta. Kevät 2004 Jan Lindström R&G Chapter 1

Tietomallit. Näkökulmat tietoon. Näkökulmat tietoon. Mitä malleja olisi tarjolla? Abstraktiotasot tiedon käsittelyssä

TIETOKANNAN SUUNNITTELU

Tietokantasuunnittelun pääperiaatteena on tiedon toiston välttäminen. Tiedon toistumiseen liittyy monenlaisia ongelmia.

Tietokannan suunnittelu

1.1 Käsitteet ja termit 1.2 Historia. Luku 1. Johdanto. ITKA204 kevät

Haaga-Helia / TIKO-05 1 (12) Tietokannan suunnittelu ja Toteutus Outi Virkki

Tietomallit. Näkökulmat tietoon. Näkökulmat tietoon. Näkökulmat tietoon. Abstraktiotasot tiedon käsittelyssä

POLKU LUOKKAKAAVIOISTA TAULUJEN TOTEUTUKSEEN

On autoja, henkilöitä, Henkilöllä on nimi Autolla on omistaja, joka on henkilö. Taulu AUTO(rekno, malli) Taulu HENKILO(nimi, )

IIO30100 Tietokantojen suunnittelu (6 op)

HELIA 1 (21) Outi Virkki Tietokantasuunnittelu

IIO30100 Tietokantojen suunnittelu (6 op)

IIO30100 TIETOKANTOJEN SUUNNITTELU (6 OP)

Tietokannanhallintajärjestelmä (DBMS)

Helsingin yliopisto/tktl Tietokantojen perusteet, k 2003 Relaatiomallin peruskäsitteet Harri Laine 1. Tietomallit. Näkökulmat tietoon

millainen on se kohde, jota tiedoilla pitäisi kuvata asiat, joita pitäisi esittää Mitä tietoelementtien arvot tarkoittavat

Lähestymistavat - toiminnallinen

Helsingin yliopisto/tktl Tietokantojen perusteet, s 2006 Tiedon mallinnus ja tietokannat. Harri Laine 1. Tietokanta.

HELIA 1 (21) Outi Virkki Tietokantasuunnittelu

HAAGA-HELIA heti09 1 (27) ICT05 Tiedonhallinta ja tietokannat O.Virkki Relaatiomalli

Tietojärjestelmä tuotantoympäristössä. Sovellusohjelmat Helsingin ammattikorkeakoulu Stadia / Tekniikka ja liikenne Vesa Ollikainen

Jouni Huotari & Ari Hovi. Käsitemallinnuksesta relaatiokantaan KÄSITEMALLI. LOOGINEN MALLI: tietomalli valittu. FYYSINEN MALLI: DBMS valittu

Arkkitehtuuripankki. Mallintamisen metamalli ja notaatiot

Ohjelmistotekniikan menetelmät, UML

Copyright by Haikala. Ohjelmistotuotannon osa-alueet

A TIETOKANNAT, 3 op Syksy TI07. Teemu Saarelainen, lehtori Tietotekniikka teemu.saarelainen@kyamk.fi

HELIA 1 (13) Outi Virkki Tietokantasuunnittelu

Tieto/datamallit. Marttila-Kontio/Unicta Oy

Kari Aalto Saariston IT

HELIA TIKO-05 1 (20) ICT03D Tieto ja tiedon varastointi O.Virkki

HAAGA-HELIA TIKO-05 1 (19) ICT23a Tietokannan suunnittelu ja toteutus O.Virkki

Analyysi, staattinen mallintaminen, kohdealueen malli ja luokkakaavio

Luokka- ja oliokaaviot

Ohjelmistojen mallintaminen Unified Modeling Language (UML)

Ohjelmistojen mallintaminen luokkamallin lisäpiirteitä

Ohjelmistotekniikan menetelmät Luokkamallit ohjelmiston mallintamisessa Harri Laine 1

UML - unified modeling language

Johdanto. Kiinteistöhuoltoyhtiö tarvitsee järjestelmän huoltopyyntöjen hallinnointiin

Miten voin selvittää säästömahdollisuuteni ja pääsen hyötymään niistä?

HELIA 1 (14) Outi Virkki Käyttöliittymät ja ohjlmiston suunnittelu

Ohjelmistotekniikan menetelmät, kesä 2008

Helsingin yliopisto/tktl DO Tietokantojen perusteet, s 2000 Johdanto & yleistä Harri Laine 1. Tietokanta. Tiedosto

Luokkakaavion laatiminen

Olioperustaisuus (object oriented)

Johdatus sovellussuunnitteluun, s99, osa2 Helsingin yliopisto;/tktl Harri Laine 1. Olioperustaisuus (object oriented)

TIEDONHALLINTA - SYKSY Luento 2. Pasi Ranne /8/17 Helsinki Metropolia University of Applied Sciences

Ohjelmistotekniikan menetelmät, luokkamallin laatiminen

Helsingin yliopisto/tktl DO Tietokantojen perusteet, s 2000 Relaatiomallin peruskäsitteet Harri Laine 1. Relaatiotietokannat DONOTP

Ohjelmistojen mallintaminen kertausta Harri Laine 1

Yhteydelle voi antaa nimen kumpaankin suuntaan Sille ei tarvise antaa lainkaan nimeä Yhteysnimen asemasta tai lisäksi voidaan käyttää roolinimiä

Ohjelmistojen mallintaminen, mallintaminen ja UML

Tietokannat II -kurssin harjoitustyö

Tiedonhallinnan perusteet. Viikko 1 Jukka Lähetkangas

Johdatus sovellussuunnitteluun, s99, osa3 Helsingin yliopisto;/tktl Harri Laine 1. Olioiden väliset yhteydet. Olioiden väliset yhteydet

Käsitteellinen mallintaminen

Johdatus sovellussuunnitteluun, s99, osa3 Helsingin yliopisto;/tktl Harri Laine 1. Olioiden väliset yhteydet. Olioiden väliset yhteydet

HELIA 1 (16) Outi Virkki Tietokantasuunnittelu

Ohjelmistojen mallintaminen, kesä 2009

JHS 179 ICT-palvelujen kehittäminen: Kokonaisarkkitehtuurin kehittäminen Liite 2 Arkkitehtuurikehyksen kuvaus

Tenttikysymykset. + UML- kaavioiden mallintamistehtävät

Tenttikysymykset. + UML-kaavioiden mallintamistehtävät

Tietokannan hallintajärjestelmän (DBMS) palvelut ja rakenne

Analyysi on tulkkaamista

Ohjelmistojen mallintaminen, kesä 2010

Analyysi, dynaaminen mallintaminen, yhteistoimintakaavio ja sekvenssikaavio

Analyysi, dynaaminen mallintaminen, yhteistoimintakaavio ja sekvenssikaavio

Toiminnot eli käyttäytyminen. Tieto eli rakenteelliset ominaisuudet

HELIA 1 (11) Outi Virkki Tiedonhallinta

Ohjelmistojen mallintaminen Luokkakaaviot Harri Laine 1

Johdatus sovellussuunnitteluun, s99, osa2 Helsingin yliopisto;/tktl Harri Laine 1. Olioperustainen ohjelmistokehitys

Tietokantojen perusteet k2004helsingin yliopisto/tktl Tietokantojen perusteet, s 2005 relaatiomalli Harri Laine 1.

HELIA 1 (15) Outi Virkki Tiedonhallinta

Ohjelmistotekniikan menetelmät, kevät 2008

Tietojärjestelmän osat

Ohjelmistojen mallintaminen

HELIA 1 (1) Outi Virkki Tiedonhallinta :43

HAAGA-HELIA Heti-09 1 (12) ICT05 Tiedonhallinta ja Tietokannat O.Virkki Näkymät

A TIETOKANNAT, 4 op Kevät TI09

Tietokantasuunnittelun pääperiaatteena on tiedon toiston välttäminen. Tiedon toistumiseen liittyy monenlaisia ongelmia.

Analyysi, staattinen mallintaminen, kohdealueen malli ja luokkakaavio

Paikkatiedon mallinnus Dokumentoinnin ymmärtäminen. Lassi Lehto

Tietokantakurssit / TKTL

Transkriptio:

HAAGA-HELIA / Heti-09 1 (17) Luento 3 Tietokannan tietosisällön suunnittelu Tietojärjestelmän suunnitteluprosessi... 2 Tietokannan suunnittelun tavoitteet... 3 Tietokannan suunnitteluprosessi... 4 Käsitteellinen mallintaminen... 6 Käsitekaavio... 8 Luokka... 9 Attribuutti... 10 Yhteys... 11 Tietohakemistokuvaus... 13 CASE-tuotteet... 15 Yhteenveto... 16 Käsitteitä... 17

HAAGA-HELIA / Heti-09 2 (17) Tietojärjestelmän suunnitteluprosessi Tietokannan suunnittelu on osa tietojärjestelmän suunnittelua 1. Vaatimusmäärittely 2. Systeemin suunnittelu 3. Toteutus 4. Testaus 5. Käyttöönotto 6. Ylläpito

HAAGA-HELIA / Heti-09 3 (17) Tietokannan suunnittelun tavoitteet 1. Tyydyttää käyttäjien tietotarpeet 2. Tiedon luotettavuus 3. Hyvä suorituskyky 4. Yhteensopivuus 5. Jatkokehitettävyys Luotettavuus? Vastaa todellisuutta Ristiriidaton Suunnittelumenetelmä on työkalu tavoitteiden saavuttamiseksi suunnittelun vaiheistus suunnittelun työtehtävät ja tuotokset kuvaustavat

HAAGA-HELIA / Heti-09 4 (17) Tietokannan suunnitteluprosessi Vaihe Tavoite Päätehtävät Tuotokset Käsitteellinen mallintaminen (Conceptual Modeling) Ymmärtää kohdealueen toiminta ja terminologia Keskeiset käsitteet, niiden merkitys, niiden väliset suhteet sekä attribuutit Luokkakaavion suunnittelu Tietohakemiston määrittely Luokkakaavio (class diagram) Tietohakemistokuvaukset Looginen mallintaminen (Logical Modeling) Esittää luokkakaavion tietosisältö relaatiotietomallin (relational model) mukaisesti Relaatiokaavion johtaminen Normalisointi Relaatiokaavio (Logical Schema) Eheysmäärittelyt (Integrity Constraints) Fyysinen mallintaminen (Physical Modeling) Fyysisen talletusratkaisun ja suojausten suunnittelu Suojausten suunnittelu Suorituskyvyn optimointi SQL-lauseet, joilla tietokannan objektit luodaan

HAAGA-HELIA / Heti-09 5 (17) Suunnittelun edetessä suunnitelma konkretisoituu: Käsitteellinen mallintaminen Looginen mallintaminen Fyysinen mallintaminen Tietosisältö Riippumaton toteutusratkaisuista Rakenne Sidottu käytettävään tietomalliin Toteutusratkaisut Sidottu käytettävään toteutusympäristöön Eri tasojen kuvaukset yhdessä kuvaavat tiedot kokonaisuudessaan Samaa asiaa ei kuvata monella tasolla.

HAAGA-HELIA / Heti-09 6 (17) Käsitteellinen mallintaminen (Conceptual modeling) 1. Kohdealueen käsitteet (terminologia) 2. Käsitteiden merkitys 3. Käsitteiden väliset suhteet 4. Käsitteiden ominaisuudet eli attribuutit 5. Yksilöiden identifiointi Perustuu käyttäjien vaatimuksiin (requirements) Riippumaton toteutusratkaisusta! Tietokannanhallintajärjestelmä / DBMS Ohjelmointikieli Laitealusta...

HAAGA-HELIA / Heti-09 7 (17) Esim. Kurssihallinto... Kohdealue Kansanopiston kurssihallinto Kohteen keskeiset käsitteet Kurssi Opettaja Oppilas Osallistuminen Yksilötyyppien määrittely Rajaus: Mikä kuuluu ko. käsitteen piiriin Opettaja kansanopistossa opetustyöhön palkattu henkilö Kurssi Opiskeltava kokonaisuus, jolle on määritelty tavoitteet ja sisältö Oppilas kansanopistossa opiskeleva henkilö Osallistuminen oppilaan toiminta, joka tähtää kurssin suorittamiseen

HAAGA-HELIA / Heti-09 8 (17) Käsitekaavio (Conceptual schema) Yleisin tapa kuvata tietokantaa käsitetasolla 1 perustekniikka monta murretta (=piirrostapaa) Nykyään käytetyin kuvaustapa on Luokkakaavio (Class Diagram) Vanhemmissa tietojärjestelmissä puhutaan ER-kaavioista (Entity Relationship Model / ER-model) Keskeiset käsitteet luokkakaaviossa 1. Luokka Class 2. Yhteys (Association) Relationship 3. Attribuutti Attribute

HAAGA-HELIA / Heti-09 9 (17) Luokka Olio on mikä tahansa todellisuuden osa, joka on itsenäisesti olemassa ja joka voidaan identifioida Luokka on keino ryhmitellä samankaltaisia olioita ts. luokan jäsenillä on samankaltaisia ominaisuuksia (eli attribuutteja) ja yhteyksiä Ts. olio on aina jonkin luokan esiintymä Luokka Olio OPISKELIJA Oliot voivat olla konkreettisia, kuten asiakas, opiskelija, kirja erilaisia liiketoiminnan tapahtumia, kuten varaus, tilaus, toimitus, maksu abstrakteja asioita, kuten yritys, työsuhde, pankkitili, sopimus, kurssi

HAAGA-HELIA / Heti-09 10 (17) Attribuutti Luokan jäsenten tietyt ominaisuudet ovat kiinnostavia kohdealueen kannalta niistä halutaan tallentaa tietoa Luokka Olio OPISKELIJA +opi_id +opi_sukunimi +opi_etunimi +opi_osoite +opi_puh 0900123 Valonen Veikko Kotitie 1 00100 HKI 040 123456 Luokalla on oltava jokin idenfioiva attributti usein se on keinotekoinen numero tai tunnus esim. opiskelijanumero, kurssitunnus, rekisteritunnus, sotu

HAAGA-HELIA / Heti-09 11 (17) Yhteys Luokkien välinen kiinnostava yhteys OPISKELIJA KURSSI Määrärajoite alaraja: 0, 1 yläraja: 1, * ( * = monta) esim: tietyllä kurssilla on 0:sta moneen kirjaa ja tietty kirja 0-1 kurssilla: KIRJA 0..1 KURSSI esim: tietyllä kurssilla on 0:sta moneen opiskelijaa ja tietty opiskelija 0:sta moneen kurssilla: KURSSI OPISKELIJA erilaisia kombinaatiomahdollisuuksia

HAAGA-HELIA / Heti-09 12 (17) Esim. Luokkakaavio.. ilman attribuutteja KURSSI OPISKELIJA 1 OPETTAJA tai attribuuttien kanssa KURSSI +krs_id +krs_nimi +krs_laajuus OPISKELIJA +opi_id +opi_sukunimi +opi_etunimi +opi_osoite 1 OPETTAJA +ope_id +ope_sukunimi +ope_etunimi +ope_huoneno

HAAGA-HELIA / Heti-09 13 (17) Tietohakemistokuvaus Tietohakemistoon kootaan luokkiin liittyvä kiinnostava tieto, jota ei mahdu luokkakaavioon Käsitteellisen tason tietohakemistoa nimitetään nykyään myös kuvauskannaksi (repository) Huom: Tiedonhallintajärjestelmä ylläpitää omaa tietohakemistoa toteutetuista tietokantaobjekteista (data dictionary)

HAAGA-HELIA / Heti-09 14 (17) Esim. Tietohakemistokuvaus Käsitteen nimi: Nimilyhenne: Määritelmä: Attribuutit: Pääavain: Esimerkki: Opettaja OPE Oppilaitoksessa ammatikseen opetustyötä tekevä henkilö, jonka työsuhde on voimassa tai päättynyt Opettajanumero, Sukunimi, Etunimi, Tutkinto, Puhelinnumero, Huone, Lyhenne, Päättymis_pvm Opettajanumero Esiintymän / yksilön kuvaus Opettajanumero 1234 Sukunimi Valo Etunimi Into Tutkinto FM Puhelinnumero (09) 1498 01 Huone 3012 Lyhenne ValIn Päättymis_pvm

HAAGA-HELIA / Heti-09 15 (17) CASE-tuotteet (Computer Aided System Engineering) Tietokoneavusteinen systeemityö tukevat määrittelytiedon tallentamista tukevat suunnitelman visualisointia tuottavat alustavan tietokanta- (ja ohjelmisto-) ratkaisun määrittelyjen pohjalta. Tällä kurssilla CASE-tuotteen sijasta käytössä on MS Visio kaaviopiirrosohjelma

HAAGA-HELIA / Heti-09 16 (17) Yhteenveto Tietokannan suunnitteluprosessi alkaa käsitteellisestä mallintamisesta 1. Kohdealueen Luokat 2. Luokkien määrittely 3. Luokan yksilöiden identifiointi 4. Luokkien väliset yhteydet 5. Luokkien attribuutit Lopputuloksina 1. Luokkakaavio 2. Tietohakemistokuvaukset Tarkista lopputulos asiakkaan edustajan kanssa! Käsitteellinen mallintaminen on kriittisin vaihe tietokannan suunnitteluprosessissa!

HAAGA-HELIA / Heti-09 17 (17) Käsitteitä Käsitekaavio (Conceptual Schema) Tietokannan tietosisällön kuvaus, jossa kohdetta kuvataan käsitteinä ja niiden välisinä suhteina. Kuvaus on riippumaton toteutusratkaisuista. Luokkakaavio (Class Diagram) Kohdealueen kuvaus, jossa kohdetta kuvataan olioluokkina ja niiden välisinä suhteina. Luokkakaavio on keskeinen osa oliosuuntautunutta ohjelmiston suunnittelukuvastoa. Suunnitteluprosessi Suunnittelun eteneminen vaiheesta toiseen Tietohakemisto 1) tietokannan tietosisällön määrittelyt (repository) sisältäen myös merkitysten määrittelyt 2) tietokannan hallintajärjestelmän (DBMS) ylläpitämät tiedot (data dictionary) tietokantaan luoduista objekteista Tietokannan hallintajärjestelmä (Database Management System, DBMS) Yleisohjelmisto, joka avulla tietokannan tietoja käytetään ja ylläpidetään Tietomalli (Data Model) Malli jonka mukaan tietokannan tiedot organisoidaan. Koostuu joukosta käsitteitä, sääntöjä ja operaatioita. (esim. relaatiomalli, hierarkkinen malli, verkkomalli, oliomalli)