Käsitemallit tietovarastojen moniulotteisessa suunnittelussa
|
|
- Paavo Hiltunen
- 9 vuotta sitten
- Katselukertoja:
Transkriptio
1 Jan Landén Käsitemallit tietovarastojen moniulotteisessa suunnittelussa Tietojärjestelmätieteen kandidaattitutkielma Jyväskylän yliopisto Tietojenkäsittelytieteiden laitos Jyväskylä
2 SISÄLLYSLUETTELO 1 JOHDANTO TIETOVARASTO Tietovarastointiprosessi TIETOMALLIT Mallit, kielet ja abstraktiotasot Tietomallien luokittelua Käsitemallien yleisiä vaatimuksia TIETOVARASTOJEN MONIULOTTEINEN MALLINNUS JA KÄSITEMALLIT Tietovarastojen moniulotteinen mallinnus Tietovarastojen käsitemallit Moniulotteisen mallinnuksen tietomallien vaatimuksia MONIULOTTEISEN MALLINNUKSEN KÄSITEMALLIT A UML profile for multidimensional modeling in data warehouses (Luján-Mora ym., 2006) Tietomallin tavoitteita Tietomallin elementit Tietomallin ominaisuuksia Tietomallin arviointia YHTEENVETO LÄHDELUETTELO... 34
3 3 1 JOHDANTO Tietovarasto on kokoelma teknologioita, jonka tarkoituksena on mahdollistaa tietotyöläisten parempi ja nopeampi päätöksenteko (Chaudhuri & Dayal, 1997). Tietovaraston tehtävänä on tukea monimutkaista tiedon analysointia ja siihen perustuvaa päätöksentekoa (online analytical processing, OLAP). Operatiivisten tietokantojen, jotka usein myös toimivat tietovaraston pääasiallisina tietolähteinä, tehtävänä sitä vastoin on transaktioiden tallentaminen (online transaction processing, OLTP). Sekä operatiivisten tietokantojen että tietovarastojen suunnittelussa käsitteellinen mallintaminen on tärkeää laadukkaan lopputuloksen takaamiseksi. Käsitteellisessä mallintamisessa keskitytään mallintamaan tallennettavan tiedon ominaisuuksia ottamatta kantaa varsinaiseen toteutustapaan. Tietovarastot suunnitellaan usein moniulotteisiksi kokoelmiksi mittari- ja dimensiotietoja. Moniulotteinen mallintaminen ja transaktiotietokantojen suunnittelu edellyttävät erilaisia suunnittelutekniikoita. Tämän tutkielman tutkimusongelmana on selvittää, minkälaisia käsitteitä moniulotteisten käsitemallien tulisi kattaa ja minkälaisia yleisiä vaatimuksia käsitemalleille on asetettu. Tutkimusongelmana on myös arvioida tarkasteltavana olevan moniulotteisen käsitemallin soveltuvuutta tietovarastojen moniulotteiseen käsitemallintamiseen. Tutkimusmenetelmä on käsitteellis-teoreettinen.
4 4 2 TIETOVARASTO Yleisesti ajatellaan, että tietovarasto on keskeinen komponentti organisaation liiketoimintaprosessien tiedon varastoinnissa. Tietovarasto organisoi ja varastoi tietoa, jota tarvitaan informatiiviseen ja analyyttiseen tietojenkäsittelyyn (Inmon & Hackathorn, 1994). Laajalti viitatun Inmonin määritelmän mukaan tietovarasto on aihekeskeinen (Subject-Oriented), yhtenäinen (Integrated), aikasidonnainen (Time-variant) ja pysyvä (Non-volatile) kokoelma tietoa, joka mahdollistaa johdon päätöksenteon ja lähitulevaisuuden ennustamisen perustuen olemassa olevaan tietoon. Aihekeskeisyydellä tarkoitetaan, että toisiinsa liittyviä reaalimaailman kohteita kuvaavat tietoelementit ovat loogisesti yhdistetty myös tietovarastossa. Yhtenäisyydellä tarkoitetaan, että tietovarasto kattaa tietoja organisaation kaikista, tai ainakin tärkeimmistä liiketoimintaprosesseista ja tietojen esitystapa on yhtenäinen. Aikasidonnaisuus ilmenee tietovarastossa siten, että tietovarasto sisältää dataa pitkältä aikaväliltä ja aika sisältyy aina jollain tavalla avainrakenteeseen. Pysyvyydellä viitataan siihen, että tietovarastoon kerran ladattuja tietoja ei myöhemmin päivitetä vaan tietojen käyttö on tietojen lukemista. (Inmon, 1996) 2.1 Tietovarastointiprosessi Kuvassa 1. on esitetty yksinkertaistettu kuvaus tietovarastointiprosessista. Tietoa ladataan operatiivisista järjestelmistä ja muista tietolähteistä tietovarastoon. Samalla se puhdistetaan ja muokataan yhtenäiseen, analyyttista käyttöä tukevaan muotoon. Tämän jälkeen tieto on erilaisten analyyttisten järjestelmien saatavilla. Kuvaan on piirretty myös takaisinkytkentä OLAP, EIS/DSS ja Data Mining järjestelmistä tietovarastoon ja tietolähteisiin. Tämä kuvaa tiedon analysoinnin tuottaman relevantin tiedon, kuten liiketoimintasääntöjen vaikutusta tietovarastointiprosessiin. (Elmasri & Navathe, 2000)
5 Kuva1. Tietovarastointiprosessi (Elmasri & Navathe, 2001) 5
6 6 3 TIETOMALLIT Tietokannan perustavanlaatuinen ominaisuus on tarjota tietynlainen abstraktiotaso piilottaen tallennusmedian yksityiskohdat, joita suurin osa käyttäjistä ei tarvitse. Tietomalli (data model), kokoelma tietokannan rakennetta kuvaavia käsitteitä, tarjoaa tarvittavat keinot tämän abstraktiotason saavuttamiseksi. (Elmasri & Navathe, 2000) Skeema (schema) kuvaa tiettyä reaalimaailman osaa käyttäen tiettyä tietomallia. Skeema on staattinen, aikariippumaton kokoelma kielellisiä tai graafisia esityksiä, jotka kuvaavat tiedon rakennetta. Skeeman ilmentymä (instance of schema) on dynaaminen, aikasidonnainen kokoelma dataa, joka on rakenteeltaan analoginen skeeman kanssa. (Batini ym., 1992) Kuva 2. Mallin skeeman ja ilmentymän väliset suhteet (Batini ym, 1992) Kuvassa 2 on esitetty tietomallin, skeeman ja ilmentymän väliset käsitteelliset suhteet. Tietomalli määrittää säännöt tiedon strukturoinnille. Skeema ilmentää pysyvää reaalimaailman rakennetta ja sen ilmentymä kuvaa reaalimaailman tilaa tiettynä ajankohtana.
7 7 3.1 Mallit, kielet ja abstraktiotasot Roland Holten (Holten, 2001) esittelee alkujaan tieteen filosofiasta peräisin olevan ja tietojärjestelmätieteen kirjallisuudessakin laajalti käsitellyn abstraktiotasohierarkian tietovarastokontekstissa siten, että eri abstraktiotasot kuvaavat seuraavien elementtien loogisia suhteita: 1. Liiketoiminnan johtamisen kannalta merkitykselliset liiketoimintaprosessien osat, jotka ovat kuvattu malleissa 2. Kielet, joilla malleja luodaan määriteltäessä näkymiä liiketoimintaprosesseihin 3. Kielien varsinaiset esitykset eli mallit Kieltä, joka on tieteellisen tarkastelun kohteena, sanotaan kohdekieleksi (object language). Kieltä, jota tässä tarkastelussa käytetään, sanotaan metakieleksi (meta language). Erityisesti formaaleja kieliä käytetään mallien luomiseen. Kieli L1, jota käytetään mallin M1 luomiseen, voidaan kuvata mallilla M2. Näin ollen voidaan sanoa, että malli M2 on mallin M1 kuvaaman kohteen metamalli (meta model). Kuvassa 3 on esitetty seuraavat abstraktiotasot: ilmentymätaso (instance level), tyyppitaso (type level) ja metataso (meta level). Ilmentymätasolla sijaitsevat varsinaiset liiketoimintaprosessit ja niiden osat. Tyyppitasolla on mallinnettu (M1) ilmentymätason kohteet käyttäen jotain tähän soveltuvaa kieltä (L1). Metatasolla määritellään tämän kielen käsitteet ja termit. (Holten, 2001)
8 8 Kuva 3. Mallit ja abstraktiotasot. (Holten 2001) OMG:n (Object Management Group) MOF (Meta Object Facility) spesifikaatiossa esitetään edellisen kanssa analoginen abstraktiotasohierarkia, mutta lisätään vielä yksi, ylin taso: Meta-metataso (meta meta level). Kuvassa 4. on esimerkki nelitasoisesta metadata arkkitehtuurista. (OMG, 2002)
9 9 Kuva 4. Nelitasoinen metadata arkkitehtuuri (OMG, 2002) Nelitasoinen metadata arkkitehtuuri koostuu seuraavista tasoista: 1. Informaatio - tasolla sijaitsee data, jota halutaan kuvata. 2. Malli - tasolla on metadataa, joka kuvaa informaatio - tason datan rakennetta. Tämä metadata on koostettu malliksi. 3. Metamalli - tasolla määritellään metadatan rakenne ja semantiikka. Tämä meta-metadata on koostettu meta-malliksi. 4. Meta-metamalli - tasolla kuvataan metamalli - tason rakenne ja semantiikka. Nelitasoisen metadata arkkitehtuurin tarkoituksena on, että yhdellä metametamallilla voidaan kuvata useita meta-malleja. Kuten kuvan 4. esimerkin StockQuote - tietuetyypillä (määritelty malli-tasolla) voidaan kuvata useita informaatiotason ilmentymiä, RecordTypes - meta-mallilla (määritelty metamalli - tasolla) voidaan kuvata useita tietuetyyppejä. Samalla tavoin metametamalli - tasolla voidaan kuvata useita metamalleja, jotka puolestaan kuvaavat erityyppistä informaation metadataa (OMG, 2002).
10 Tietomallien luokittelua Elmasri ja Navathe jakavat tietomallit niiden sisältämien tietokannan rakennetta kuvaavien käsitteiden tyypin mukaan kolmeen luokkaan: Käsittellinen tietomalli (conceptual data model / high-level) sisältää käsitteitä, jotka ovat lähellä useimpien käyttäjien tapaa hahmottaa tallennettavaa tietoa. Fyysinen tietomalli (physical data model / low-level) sisältää käsitteitä, jotka kuvaavat tiedon fyysisestä tallennustapaa tietokoneelle. Näiden kahden ääripään väliin jää kuvaava tietomalli (representative data model / intermediate-level), jonka käsitteet ovat loppukäyttäjän ymmärrettävissä, mutta eivät ole liian kaukana tavasta, jonka mukaan tiedot ovat organisoitu tietokoneelle. (Elmasri & Navathe, 2000) Batini, Ceri ja Navathe jakavat tietomallit niin ikään kolmeen tasoon niiden sisältämien rakenteiden ja käsitteiden mukaan, sekä sen mukaan, mihin tietokannan suunnitteluvaiheeseen ne parhaiten sopivat: Käsitteellisellä tasolla (Conceptual level) tietomallit ovat lähellä loppukäyttäjää ja toteutustapariippumattomia. Loogisen tason (Logical level) tietomallit ovat riippuvaisia valitun tietokannanhallintajärjestelmän tyypistä, mutta silti loppukäyttäjän ymmärrettävissä. Fyysisen tason (Physical level) tietomallit ovat tietokannanhallintajärjestelmäkohtaisia ja kuvaavat kuinka data on varsinaisesti tallennettu tietokoneelle. (Batini ym, 1992)
11 11 Taulukossa 1. on kuvattu yhteenvetona tietomallien jako käsitteellisiin, loogisiin ja fyysisiin malleihin sekä näiden eri abstraktiotasot. Tämän tutkielman aiheena olevat käsitemallit sijoittuvat taulukossa merkittyyn kohtaan. meta-metamalli metamalli malli ilmentymä käsitteellinen X looginen fyysinen Taulukko 1. Tietomallien luokittelu ja abstraktiotasot.
12 Käsitemallien yleisiä vaatimuksia Batini, Ceri ja Navathe (1992) esittävät neljä laatuvaatimusta käsitteellisille tietomalleille: 1. Ilmaisuvoimaisuus (expressiveness). Tietomallin sisältämä erilaisten käsitteiden laaja kirjo mahdollistaa reaalimaailman kokonaisvaltaisen mallintamisen. Näin ollen tietomallit, joilla on rikas käsitteistö, ovat myös hyvin ilmaisuvoimaisia. 2. Yksinkertaisuus (simplicity). Käsitteellisen tietomallin tulee olla yksinkertainen, jotta tietomallin mukaan mallinnettu skeema olisi helposti kehittäjien ja loppukäyttäjien ymmärrettävissä. Ilmaisuvoimaisuus ja yksinkertaisuus ovat keskenään ristiriitaisia vaatimuksia. 3. Minimaalisuus (minimality). Tämä vaatimus saavutetaan kun jokaisella tietomallin käsitteellä on erillinen tarkoitus suhteessa muihin tietomallin käsitteisiin. Toisin sanoen mitään tietomallin käsitettä ei voida esittää muiden käsitteiden koosteella. 4. Formaalius (formality). Formaalius edellyttää, että jokaisella mallin käsitteellä on erillinen, tarkka ja hyvin määritelty selitys. Formaaleja käsitteitä voidaan käsitellä matemaattisesti. Tietomallin graafiselle notaatiolle esitetään seuraavat kaksi vaatimusta: 1. Graafinen täydellisyys (graphic completenenss). Tietomalli on graafisesti täydellinen, jos sen jokaisella käsitteellä on oma graafinen esitystapa. Muutoin graafista esitystä tulee täydentää kirjallisesti. 2. Helppolukuisuus (ease of reading). Malli on helppolukuinen, jos sen jokainen käsite on esitetty selvästi toisistaan eroavilla symboleilla.
13 13 4 TIETOVARASTOJEN MONIULOTTEINEN MALLINNUS JA KÄSITEMALLIT Tietovarastot suunnitellaan usein moniulotteisiksi kokoelmiksi mittari- ja dimensiotietoja. Moniulotteinen mallintaminen ja transaktiotietokantojen suunnittelu edellyttävät erilaisia suunnittelutekniikoita. Paljon on kirjoitettu siitä, kuinka tietovarasto tulisi mallintaa, mutta suunnittelumenetelmästä ei olla yhtä mieltä. Suurin osa menetelmistä kuitenkin hyväksyy käsitteellisen- ja loogisen suunnitteluvaiheen erottamisesta syntyvän hyödyn mahdollisuuden. Käsitteellinen mallintaminen pyrkii rakentamaan toteutustapariippumattoman käsitteellisen skeeman tietovarastolle, menetelmästä riippuen, perustuen joko käyttäjävaatimuksiin tai lähdejärjestelmien rakenteeseen. Loogisessa suunnittelussa rakennetaan vastaava looginen skeema valittuun ympäristöön ottaen huomioon tiettyjä rajoitteita kuten tallennusmedian rajallisuus ja kyselyjen vasteaika. Jotkin menetelmät sisältävät oman vaiheensa tietovaraston fyysiseen suunnitteluun ja vaatimusmäärittelyyn. Kuvassa 5 on esitetty tietovarastojen suunnitteluvaiheet ja niiden väliset suhteet toiminnallisen näkökulman mukaan. Tosielämässä prosessi sisältäisi takaisinkytkentöjä antaen mahdollisuuden palata edeltäviin vaiheisiin. (Rizzi ym., 2006) Kuva 5. Tietovaraston suunnittelun päävaiheet (Rizzi ym., 2006)
14 Tietovarastojen moniulotteinen mallinnus Moniulotteisesti mallinnetun tietovaraston pääasiallisina etuina ovat sen mahdollistamien tehokkaiden tietokantakyselyiden lisäksi sen analoginen rakenne analyytikoiden ajattelutavan kanssa. Moniulotteinen mallinnus perustuu moniulotteisen kuution käsitteeseen. Moniulotteinen kuutio koostuu faktasta ja joukosta siihen liitettyjä dimensioita. Fakta kuvaa analyysin kohteena olevaa dataa ja dimensiot kuvaavat sen eri analysointinäkökulmia. Fakta koostuu edelleen tietosoluista (fact cells), jotka voidaan identifioida kuution dimensioiden tasojen (dimension levels) suhteen. Kuvassa 6 on esitetty esimerkki neliulotteisesta jätteenkuljetusliiketoiminnan analysointikuutiosta. Kuutio koostuu kuljetus - faktasta ja neljästä siihen liitetystä dimensiosta: kuljetettava jäte, jätteen tuottaja, jätteen vastaanottaja ja tapahtuma-aika. (Abelló ym., 2001) (Abelló ym., 2002) Kuva 6. Esimerkki moniulotteisesta skeemasta (Abelló ym., 2001)
15 15 Abelló ym. (2001) jakavat moniulotteisen mallin kolmeen tarkkuustasoon: 1. Ylätasolla (Upper Level, UL) on olemassa dimensioita (dimension, D) ja faktoja (fact, F). Dimensiot määrittävät faktojen analysointinäkökulmat. Liittämällä faktaan joukko dimensioita luodaan tähtimallin mukainen rakenne. Navigointi tähtimallista toiseen on mahdollista näiden jakamien dimensioiden kautta. 2. Välitasolla (Intermediate Level, IL) dimensiot ja faktat ovat jaettu dimension tasoiksi (dimension level, DL) ja tietosoluiksi (fact cell, FC). Dimensioiden tasot muodostavat hierarkioita. Jokainen faktan tietosolu sisältää dataa, joukon samalla tarkkuustasolla (granularity) olevia mittareita, jokaista tähän liitettyä dimension tasoa kohti. 3. Alatasolla (Lower Level, LL) kuvataan dimension tasojen ja tietosolujen attribuutit eli luokitteluattribuutit (Classification Attributes, CA) ja mittarit (Measures, M). Kuva 7 esittää saman moniulotteisen mallin tarkemmalla tarkkuustasolla, kuin kuva 6. Jokainen dimensio on jaettu hierarkioihin ja fakta on jaettu tietosoluihin. Kuvaan on piirretty myös luokitteluattribuutit ja mittarit. Kuva 7. Esimerkki tarkennetusta moniulotteisesta skeemasta (Abello ym., 2001)
16 Tietovarastojen käsitemallit Käsitemalleilla pyritään mallintamaan tietovarasto tai sen osa ottamatta kantaa varsinaiseen toteutustapaan. Käsitemallit ovat laajasti hyväksytty tärkeäksi perustaksi suunnitellessa hyvin dokumentoituja ja asiakkaiden tarpeet toteuttavia tietokantoja. Yleensä käsitemallit perustuvat graafiseen notaatioon, joka tukee käsitteellisten määritysten kirjoittamista, lukemista ja niiden hallintaa sekä kehittäjien että käyttäjien näkökulmista. Kirjallisuudessa käsitemallinnus on tähän mennessä keskittynyt lähinnä tietokannan moniulotteiseen mallintamiseen ja ETL - prosessin (extract, transform, load) mallintamiseen. ETL - prosessin mallintamista on tutkittu vielä selvästi vähemmän kuin moniulotteista mallinnusta, mutta tutkimus voi tulla vahvasti vaikuttamaan tietovarastojen suunnitteluprosessin luotettavuuteen ja kestoon. (Rizzi ym., 2006) ER - mallia (entity/relationship) on laajasti käytetty relaatiokantojen käsitteellisenä formalismina. Moniulotteisen mallintamisen näkökulmasta ongelmana kuitenkin on, että malli soveltuu paremmin kuvaamaan tietojen välisiä suhteita, kuin näiden synteesiä (Kimbal, 1996). Vaikka ER - malli onkin ilmaisuvoimaltaan riittävä kuvaamaan keskeisimmät tietovaraston käsitteet, ei se perusmuodossaan, kykene riittävästi korostamaan moniulotteisen mallinnuksen avainkäsitteitä. (Rizzi ym., 2007) Monet suunnittelijat painottavat tähtimallin (star schemata), joka on pääasiallinen moniulotteisen mallin toteutustapa relaatiokannoissa, käyttöä käsitteellisessä suunnittelussa. Tähtimalli on kuitenkin vain denormalisoitu relaationaalinen malli, joka määrittelee joukon relaatioita ja eheysvaatimuksia. Käsitteellinen mallintaminen ilman staattisen, funktionaalisen ja dynaamisen mallin tukea johtaa usein huonoon lopputulokseen. (Rizzi, 2007)
17 17 Taulukkoon 2 on koottu erityisesti tietovarastojen moniulotteiseen mallintamiseen esitetyt käsitemallit. Tietomallit voidaan jakaa karkeasti kolmeen osaan: ER - mallien laajennukset, UML - mallien laajennukset ja tapauskohtaiset mallit. Taulukosta ilmenee myös, mikäli tietomallin yhteydessä on esitetty jokin käsitteellisen mallintamisen metodologia. E/R extension object-oriented ad hoc no method Franconi and Kamble (2004); Sapia et al. (1998); Tryfona et al. (1999) Abelló et al. (2002); Nguyen, Tjoa and Wagner (2000) Tsois et al. (2001) method Luján-Mora et al. (2002) Golfarelli et al. (1998); Hüsemann et al. (2000) Taulukko 2. Käsitteelliset tietomallit (Rizzi, 2007).
18 Moniulotteisen mallinnuksen tietomallien vaatimuksia Tietovarastojen moniulotteisille käsitemalleille on esitetty suuri joukko vaatimuksia. Useimmat vaatimukset liittyvät tietomallien käsitteistöön ja näiden ilmaisuvoimaan. Pedersen (2000) esittää yksitoista vaatimusta kompleksisen tietovaraston moniulotteiselle tietomallille. Kirjoittaja esittää väitöskirjassansa myös tietomallin, joka täyttää moniulotteisille tietomalleille asettamansa vaatimukset: 1. Eksplisiittiset dimensioiden hierarkiat. Dimensioiden tasohierarkiat tulisi voida kuvata eksplisiittisesti skeemassa. Dimensiohierarkian voidaan ajatella olevan suunnattu asyklinen verkko (directed acyclic graph), jossa solmut kuvaavat dimension tasoja ja välit kuvaavat kohdetason ilmentymien koostumista lähdetason ilmentymistä. Kuvan 8a aikadimensiossa on viisi tasoa (dimension level). 2. Symmetrinen dimensioiden ja mittareiden käsittely. Tietomallin tulisi mahdollistaa mittareiden käsittelyn kuin ne olisivat dimensioita ja päinvastoin. Esimerkiksi jos skeemassa on määritelty asiakkaan ikä mittaritiedoksi, tulisi olla mahdollista myös määritellä dimensio, joka luokittelee asiakkaat eri ikäryhmiin. 3. Dimensioiden vaihtoehtoiset hierarkiat. Yksittäisen dimension tulee voida sisältää useita, vaihtoehtoisia tasohierarkioita. Esimerkiksi kuvan 8a aikadimensiossa on kaksi vaihtoehtoista tasohierarkiaa: Day < Month < Quarter < Year ja Day < Week < Year. 4. Tuki koostefunktioiden semantiikalle. Mittareiden merkitykselliset koostefunktiot tulisi voida määritellä eksplisiittisesti skeemassa ja estää näin niiden virheellinen tulkinta. Esimerkiksi yksikköhinta - mittaria ei voida mielekkäästi summata minkään dimension suhteen, mutta sen keskiarvo-, minimi- ja maksimi-koostefunktiot voivat olla merkityksellisiä. 5. Ei-tiukat (non-strict) hierarkiat. Dimensioiden hierarkiat eivät aina ole tiukat. Toisin sanoen dimension tasojen välillä voi olla monesta moneen suhteita. Esimerkiksi tuotedimension alimmalla tasolla oleva yksittäinen tuote voi kuulua useampaan tuoteryhmään. Kuvassa 8b solmu 5 on liitetty ylemmän tason solmuihin 2 ja 3. Tietomallin tulee voida käsitellä ei-tiukkoja hierarkioita siinä missä tiukkojakin. 6. Tasapainottamattomat (non-onto) hierarkiat. Usein dimensioiden hierarkiat eivät ole tasapainotettuja. Tasapainottamattomassa hierarkiassa etäisyys dimensiohierarkian juurisolmusta lehtisolmuun vaihtelee. Tietomallin tulee
19 19 voida käsitellä myös tasapainottamattomia hierarkioita. Kuvassa 8c juurisolmun 1 ja lehtisolmujen 2, 5, 6 ja 7 etäisyys vaihtelee. 7. Ei-kattavat (non-covering) hierarkiat. Usein myös solmujen väliset linkit hyppäävät yhden tai useamman tason yli dimensiohierarkiassa. Kuvassa 8d solmu 4 on liitetty suoraan juurisolmuun Dimensioiden ja faktojen monesta-moneen (many-to-many) suhteet. Faktan ja dimension suhde ei ole aina perinteinen monesta-yhteen. Tietomallin tulee sallia myös monesta-moneen suhteet faktan ja dimension välillä. 9. Muutoksen ja ajan hallinta. Vaikka dimensiotieto muuttuu ajan myötä, tulisi olla mahdollista suorittaa mielekkäitä analyysejä aikaa vasten. Tämä vaatimus liittyy hitaasti muuttuvien dimensioiden käsitteeseen (slowly changing dimensions). 10. Eri tarkkuustasojen hallinta. Tietomallin tulisi mahdollistaa mittaritiedon tallentaminen eri tarkkuustasolla. Vaatimus on osittain yhteydessä kohdan 6. vaatimuksen kanssa (tasapainottamattomat hierarkiat). 11. Epätarkkuuden hallinta. Kun mittaritietoa on tallennettu eri tarkkuustasolla, on tietomallin tuettava epätarkkuutta sisältäviä kyselyjä. Kuva 8. Dimensiohierarkiat.
20 20 Abelló ym. (2001) tarkastelevat moniulotteisen mallinnuksen tietomalleja luokittelemalle ne neljään kategoriaan pääasiallisen käyttökohteensa mukaan (käsitteelliset -, loogiset -, fyysiset - ja formaalit tietomallit) ja tutkimalla näiden ilmaisuvoimaa eri tarkkuustasoilla vastaamalla seuraaviin kysymyksiin: Alataso (LL) Mittari (M) Luokitteluattribuutti (CA) Voidaanko skeemassa esittää ylipäätään mittareita? Voiko dimensiolla olla attribuutteja vai sisältyykö kaikki informaatio korkeintaan dimension hierarkiaan? Suhteet alatasolla Onko skeemassa mahdollisuutta esittää mittareiden ja / tai luokitteluattribuuttien välisiä suhteita? Välitaso (IL) Taso (DL) Tietosolu (FC) Suhteet välitasolla Onko dimensioihin mahdollista mallintaa eksplisiittisiä dimension tasoja? Voidaanko mittarit ryhmitellä tietosoluihin ja nämä liittää niitä vastaaviin dimension tasoihin (eikä esimerkiksi vain dimensioiden alimmalle tasolle)? Onko skeemassa mitään mahdollisuutta kuvata tietosolujen ja / tai dimension tasojen välisiä suhteita? (esim. eksplisiittisiä dimensiohierarkioita) Ylätaso (UL) Fakta (F) Dimensio (D) Suhteet ylätasolla Voidaanko tietosoluja yhdistää, vaikka ne olisivatkin eri tarkkuustasolla, mikäli niitä käytetään samassa päätöksentekoprosessissa? Voidaanko mallintaa useampia dimension tasoja ja liittää niitä skeeman muihin elementteihin. Onko skeemassa mitään mahdollisuutta kuvata faktojen ja / tai dimensioiden välisiä suhteita? Taulukko 1. Moniulotteisten tietomallien ilmaisuvoima eri tarkkuustasolla (Abelló ym., 2001)
21 21 5 MONIULOTTEISEN MALLINNUKSEN KÄSITEMALLIT Tässä kappaleessa esitetään UML:ään perustuva tietokantojen moniulotteiseen mallinnukseen esitetty tietomalli, sen keskeisimmät käsitteet ja näiden graafiset esitykset. Tämän jälkeen tietomallia verrataan käsitemallien yleisiin vaatimuksiin sekä tarkastellaan tietomallin ilmaisuvoimaa moniulotteisille tietomalleille esitettyjen vaatimusten valossa. 5.1 A UML profile for multidimensional modeling in data warehouses (Luján-Mora ym., 2006) Luján-Mora, Trujillo ja Song (2006) esittelevät käsitteellisen, oliosuuntautuneen tietomallin tietovarastojen moniulotteiseen mallintamiseen. Tietomalli perustuu heidän aiemmin esittämiinsä tietomalleihinsa (Trujillo ym., 2001) ja (Luján- Mora ym., 2002). Tietomalli laajentaa UML - kieltä (Unified Modeling Language) tarkoituksenaan paremmin tukea moniulotteisen mallinnuksen keskeisiä rakenteellisia ja dynaamisia käsitteitä. Laajennukset ovat toteutettu määrittäen joukko stereotyyppejä (stereotype), rajoitteita (constraints) ja arvoja (tagged values), UML:n omia tietomallin laajentamiseen tarkoitettuja elementtejä. Tietomallin perustaksi on valittu UML - kieli kahdesta syystä: 1) Tietomallin perustuessa laajalti käytettyyn standardiin mallinnuskieleen, käyttäjän ei tarvitse opetella erityistä notaatiota tietovarastojen moniulotteiseen mallinnukseen. 2) UML on helposti laajennettava mallinnuskieli ja tämä on mahdollista räätälöidä kattamaan tietyn aihealueen erityispiirteet, kuten esimerkiksi tietovarastojen moniulotteisen mallinnuksen Tietomallin tavoitteita Luján-Mora ym. (2006) pyrkivät esittämään tietomallin, joka olisi tarkka (accurate), toistamaton (non-redundant), yhtenäinen (consistent), yksinkertainen
22 22 (simple) ja ymmärrettävä (understandable). Tarkkuudella tarkoitetaan, että tietomalli mahdollistaa tärkeimpien moniulotteisten ominaisuuksien kuvaamisen käsitteellisellä tasolla. Toistamattomuudella estetään skeemassa esitetyn käsitteen rinnakkaiset määrittelyt. Yhtenäisyydellä kirjoittajat viittaavat tietomallin määrittelemien elementtien olevan erillisiä ja kohdealueen kattavia. Yksinkertaisuuteen ja ymmärrettävyyteen pyritään jakamalla skeema eri tarkkuustasoihin hyödyntäen UML:n ryhmittelymekanismia sekä rajoittamalla tietomallin graafiset elementit UML:n osajoukkoon Tietomallin elementit Tietomalli laajentaa UML - kieltä määrittäen kielen profiilin (profile). Laajennus on toteutettu käyttäen UML:n omia laajennusmekanismeja (UML Extensibility Mechanism - package). Profiili on yhtenäinen kokoelma stereotyyppejä, näiden rajoitteita ja arvoja sekä joukko tietomallin tarkoituksenmukaisen käytön takaavia sääntöjä (well-formedness rules) ja muita kuvauksia. Stereotyyppi on UML:n elementti, joka määrittelee arvoja, rajoitteita ja mahdollisesti graafisen esitysmuodon erikoistettavalle elementille. Stereotyyppi mahdollistaa siis uuden semanttisen merkityksen liittämisen elementille. Tietomalli määrittelee yhteensä 14 UML - elementtien stereotyyppiä. Kuvassa 9. esitetään osa UML:n metamallista. Profiilin määrittelemät stereotyypit ovat merkitty harmaalla taustavärillä.
23 23 Kuva 9. UML laajennus stereotyypein (Luján-Mora ym., 2006) Profiilissa on määritelty kolme Package-elementin stereotyyppiä: StarPackage, DimensionPackage ja FactPackage. Näiden elementtien tarkoituksena on jakaa mallin skeema pienempiin osakokonaisuuksiin ja mahdollistaa laajojen ja kompleksisten järjestelmien mallintaminen. Skeema voidaan jakaa kolmeen tarkkuustasoon (Kuva 10): 1. Mallin määrittely (model definition). Tasolla esitetään joukko StarPackageelementtejä ja näiden välisiä riippuvuuksia (dependency). StarPackageelementti kuvaa käsitteellisen moniulotteisen mallin tähtimallia. 1 Riippuvuus kahden StarPackage-elementin välillä indikoi, että tähtimallit jakavat ainakin yhden dimension. Taso mahdollistaa näin vahvistettujen dimensioiden (conformed dimensions) tarkastelun. 2. Tähtimallin määrittely (star schema definition). Tasolla esitetään tähtimallin fakta (FactPackage) ja tähän liitetyt dimensiot (DimensionPackage). 1 Tähtimalli-käsitteellä ei tässä yhteydessä tarkoiteta relaationaalista toteutusta, vaan viitataan faktan ja tähän liitettyjen dimensioiden muodostamaan käsitteelliseen tähtimalliin.
24 24 Riippuvuus kahden dimension välillä indikoi, että dimensiot jakavat ainakin yhden dimension tasohierarkian tason. 3. Dimension / faktan määrittely (dimension/fact definiton). Tasolla esitetään joko dimension tasohierarkia tai FactPackagen ollessa kyseessä, koko tähtimallin kuvaus. Kuva 10. Kolme moniulotteisen mallin tarkkuustasoa käyttäen Packageelementtejä. (Luján-Mora ym., 2006)
25 25 Tasolla 1 kuvataan mallin sisältämät tähtimallit ja näiden väliset riippuvuudet. Tähtimallit kuvataan StarPackage-elementein. Kuvassa 11 on esimerkki skeemasta, joka sisältää kolme tähtimallia: Auto-sales schema, Parts schema ja Services schema. Riippuvuus-assosiaatiot tähtimallien välillä kuvaavat, että Services schema ja Parts schema jakavat ainakin yhden Auto-sales schemassa määritellyn dimension. Kuva 11. Taso 1: mallin määrittely. (Luján-Mora ym., 2006)
26 26 Tasolla 2 esitetään tähtimallin fakta ja tähän liitetyt dimensiot. Fakta kuvataan skeemassa FactPackage-elementillä ja dimensiot DimensionPackageelementein. Kuvassa 12 on esimerkki tason 2 kaaviosta, joka on tarkennettu kuvaus kuvan 11 Services schemasta. Riippuvuus-assosiaatiot dimensioiden välillä indikoivat, että nämä jakavat ainakin yhden dimension tason. Kuva 12. Taso 2: tähtimallin määrittely. (Luján-Mora ym., 2006)
27 27 Tasolla 3 esitetään tarkennettu kuvaus dimensiosta tai faktan ollessa kyseessä, koko tähtimallista. Dimensio kuvataan tietomallissa Dimensio-luokkana (Dimension class) ja dimension tasot Taso-luokkina (Base class). Fakta kuvataan tietomallissa Fakta-luokkana (Fact class). Kuvassa 13 esitetään Mechanic - dimension tasohierarkia ja kuvassa 14 Auto-sales - faktan tähtimalli. Kuva 13. Taso 3: dimension määrittely. (Luján-Mora ym., 2006)
28 28 Kuva 14. Taso 3: faktan määrittely. (Luján-Mora ym., 2006) Luokkien attribuutit ovat Fakta-attribuutteja (FactAttribute) ja dimensioattribuutteja (DimensionAttribute). Fakta-attribuutit kuvaavat faktan mittareita ja dimensio-attribuutit dimension tason attribuutteja. Tietomalli määrittelee vielä kolme attribuutin stereotyyppiä: OID-attribuutti, Descriptor-attribuutti ja DegenerateDimension-attribuutti. OID-attribuutti kuvaa luokkien ilmentymät yksiselitteisesti identifioivat attribuutit. Descriptor-attribuutilla määritellään taso-luokan ilmentymien selitteenä käytettävä attribuutti. DegenerateDimension-attribuutti ilmentää faktan attribuuttia, joka toimii luokitteluattribuuttina ilman siihen liitettyä dimensiota.
29 29 Dimension luokitteluhierarkia kuvataan skeemassa joukolla Taso-luokkia, jotka ovat liitetty toisiinsa käyttäen joko Rolls-upTo- tai Completeness-assosiaatiota. Rolls-upTo-assosiaatio kuvaa kahden tason välistä suhdetta jossa korkeamman luokan (merkitty roolilla R, rolls-up) jäsenet koostuvat alemman luokan (merkitty roolilla D, drills-down) jäsenistä. Completeness-assosiaatiolla tarkennetaan, että suhteen kaikki jäsenet ovat liitetty korkeamman luokan objektiin ja tämä objekti koostuu vain näistä jäsenistä. Skeemassa Fakta-luokka esitetään koosteluokkana (composite class), joka on liitetty yhteen tai useampaan Dimensio-luokkaan jaetulla koostesuhteella (shared aggregation relationship). Koostesuhteessa faktan ilmentymään liittyy aina vähintään yksi dimensio-luokan ilmentymä, joten dimensio-luokan kardinaliteetti on vähintään yksi. Fakta-luokan kardinaliteetti on merkitty tähdellä (*), sillä dimensio-luokan ilmentymä voi liittyä nollaan, yhteen tai useampaan fakta-luokan ilmentymään. DegenerateFact elementillä kuvataan faktan ja dimension monesta-moneen suhteen ominaisuuksia. Kuvassa 14. Auto-sales faktaan liittyy yksi tai useampi Salesperson - dimension ilmentymä. Commission DegenerateFact - elementti liittää tähän suhteeseen Fakta-attribuutin, joka kuvaa kunkin kauppaan osallistuneen myyjän palkkiota. Joskus voi olla tarkoituksenmukaista kategorisoida dimension attribuutteja. Tietomalli mahdollistaa kategorisointihierarkioiden luomisen yleistyserikoistamis suhteen avulla. Kuvassa 15. on esitetty Auto - dimension kategorisointi kaikille autotyypeille yleisiin attribuutteihin, sekä henkilö- ja pakettiautoille relevantteihin attribuutteihin. Vain kategorisointihierarkian ylin taso voi osallistua myös luokitteluhierarkiaan.
30 Kuva 15. Auto-dimension kategorisointihierarkia. (Luján-Mora ym., 2006) 30
31 Tietomallin ominaisuuksia Seuraavassa on luetteloitu eräitä tietomallin keskeisimpiä piirteitä: 1. Mallin jakaminen eri tarkkuustasoihin käyttäen UML:n ryhmittelymekanismia tukee laajojen ja kompleksisten tietovarastojen mallintamista. 2. Monesta-moneen suhteet faktan ja dimension välillä kuvataan jaetun koostesuhteen kardinaliteetein. 3. Johdetut mittarit (derived measures) esitetään tietomallissa UML metamallin määrittelemien johdettujen attribuuttien avulla (derived attributes). Johdetun mittarin säännöt (derivation rules) kuvataan käyttäen OCL kieltä. 4. Oletuksena mittarit ovat summattavia. Ei-summattavien mittareiden summattavuussäännöt esitetään rajoitteena fakta-luokan lähellä. 5. Luokitteluhierarkiat kuvataan assosiaatiolla taso-luokkien välillä. Hierarkioiden oletuspolut on esitetty suunnatuilla assosiaatioilla. 6. Luokitteluhierarkian tiukkuus ja ei-tiukkuus kuvataan assosiaation kardinaliteetein. 7. Completeness-stereotyyppi viittaa luokitteluhierarkian täydellisyyteen. 8. Dimensioita kategorisoidaan yleistys-erikoistamis-suhteella Tietomallin arviointia Tietomalli täyttää kohdassa 3.3 käsitemalleille esitetyt yleiset vaatimukset varsin hyvin. Tietomalli on ilmaisuvoimainen kyetessään esittämään tietovarastojen moniulotteisen mallintamisen keskeiset käsitteet käsitteellisellä tasolla. Esitetty tietomalli on kohdealueen monimutkaisuuden huomioonottaen suhteellisen yksinkertainen. Tietomallin määrittelemät käsitteet ovat minimaalisia, sillä näistä mitään ei voida esittää muiden käsitteiden koosteella. Formaalius on saavutettu käsitteiden eksaktilla määrittelyllä hyödyntäen mm. OCL - rajoitteita. OCL mahdollistaa myös formaalien kyselyiden tekemisen
32 32 UML - malliin. Tietomallin esitystapa on graafisesti täydellinen ja helppolukuinen. Erityisesti tietovarastojen moniulotteiseen mallintamiseen tarkoitettujen käsitemallien vaatimusten osalta arviointi on vaikeampaa. Tietomallin ilmaisuvoimaa tarkasteltaessa on ensin arvioitava mitkä vaatimukset todella ovat relevantteja käsitteelliselle tietomallille. Pedersenin (2000) moniulotteisille käsitemalleille esittämät yksitoista vaatimusta tarkasteltavana oleva tietomalli täyttää osittain. Tietomalli ei kuitenkaan kykene kuvaamaan epätyypillisempiä dimensiohierarkioita kuten tasapainottamattomia ja ei-kattavia hierarkioita. Tietomalli määrittelee dimension ja faktan eksplisiittisesti eikä näiden symmetrinen käsittely ole mahdollista. Tietomalli ei myöskään tue eri tarkkuustasojen-, epätarkkuuden-, eikä muutoksen ja ajan hallintaa. Tietomalli määrittelee toisaalta muita keskeisiä käsitteitä tietovarastojen moniulotteiseen mallintamiseen, kuten Completeness - assosiaation, DegenerateFact assosiaatioluokan, DegenerateDimension-, OID- ja Descriptior- attribuutin. Tietomalli mahdollistaa myös dimensioiden kategorisoinnin ja laajojen skeemojen kuvaamisen eri tarkkuustasoilla. Tarkasteltavana oleva tietomalli täyttää kohdassa 4.3 Abelló ym. (2001) esittämät moniulotteisten käsitemallien luokittelukriteerit välitason tietosolua lukuun ottamatta. Tietomallissa ei siten ole mahdollista ryhmitellä faktan mittareita tietosoluihin ja liittää näitä dimensioiden tasoihin. Faktan mittarit ovat siis aina keskenään samalla tarkkuustasolla.
33 33 6 YHTEENVETO Tietovarastojen moniulotteinen mallintaminen edellyttää eri suunnittelutekniikoita kuin operatiivisten transaktiokantojen suunnittelu. Yleisesti ollaan kuitenkin yhtä mieltä siitä, että sekä transaktiokantojen että tietovarastojen suunnittelussa käsitteellinen mallintaminen on laadukkaan lopputuloksen kannalta tärkeää. Moniulotteinen käsitemalli on työkalu, jolla moniulotteisen tietovaraston keskeiset käsitteet voidaan mallintaa ottamatta kantaa varsinaiseen toteutustapaan. Tietovarastojen moniulotteiset käsitemallit voidaan luokitella kolmeen kategoriaan: ER - mallien laajennukset, UML - mallien laajennukset ja tapauskohtaiset mallit. Yksikään esitetyistä tietomalleista ei ole saanut de facto - standardin asemaa. Tässä tutkielmassa on keskitytty esitettyyn UML - mallin laajennukseen. Mallin perustuessa laajalti tunnettuun ja standardiin mallinnuskieleen, käyttäjien ei tarvitse opetella täysin uutta notaatiota tietokantojen moniulotteiseen mallintamiseen. UML:n sisäänrakennettu laajennusmekanismi tukee tietomallin käyttöä myös tietokantojen moniulotteisessa mallintamisessa. Tietovarastojen moniulotteisille käsitemalleille on esitetty suuri joukko erilaisia vaatimuksia. Tarkasteltavana ollut tietomalli täyttää hyvin käsitemalleille asetetut yleiset vaatimukset. Tietomalli kattaa tietovarastojen moniulotteisen mallinnuksen keskeiset käsitteet. Tarkasteltavana ollut tietomalli ei kuitenkaan kykene kuvaamaan epätyypillisimpiä dimensiohierarkioita eikä tue eri tarkkuustasojen-, epätarkkuuden-, eikä muutoksen ja ajan hallintaa. Kaiken kaikkiaan tietomalli sopii tietovarastojen moniulotteiseen käsitemallintamiseen sen ollessa riittävän ilmaisuvoimainen ja formaali, sen perustuessa tunnettuun, standardiin mallinnuskieleen ja ollessaan kohdealueen monimutkaisuus huomioon ottaen varsin yksinkertainen. Tietomallin perustuessa UML:ään, voidaan myös tietovarastojen moniulotteinen käsitemallinnus käytännössä suorittaa käyttäen tavanomaisia mallinnusvälineitä.
34 34 LÄHDELUETTELO Abelló, A., Samos, J. & Saltor, F A framework for the classication and description of multidimensional data models. Teoksessa 12th International Conference on Database and Expert Systems Applications (DEXA), volume 2113 of LNCS, Springer, pages Abelló, A., Samos, J. & Saltor, F YAM² (Yet Another Multidimensional Model): An extension of UML. Teoksessa Proceedings of the International Database Engineering & Applications Symposium, Edmonton, Canada, Batini, C., Ceri, S. & Navathe S Conceptual Database Design - An Entity- Relationship Approach. The Benjamin/Cummings Publishing Company Inc.. Chaudhuri, S. & Dayal, U An Overview of Data Warehousing and OLAP Technology- SIGMOND Record, Vol. 26, No 1, March Elmasri R. & Navathe S Fundamentals of database systems. Addison- Wesley. Franconi, E. & Kamble, A A data warehouse conceptual data model. Teoksessa Proceedings of the International Conference on Statistical and Scientific Database Management, Golfarelli, M., Maio, D., & Rizzi, S The dimensional fact model: A conceptual model for data warehouses.teoksessa International of Cooperative Information Systems Vol 7, No 2-3, Holten R Conceptual Models as Basis for Integrated Information Warehouse Development. Arbeitsberichte des Instituts für Wirtschaftsinformatik Nr. 81. Münster.
35 35 Hüsemann, B., Lechtenbörger, J. & Vossen, G Conceptual data warehouse design. Teoksessa Proceedings of the International Workshop on Design and Management of Data Warehouses. Stockholm, Sweden. Inmon, W.H. & Hackathorn, R.D.: Using the Data Warehouse. John Wiley & Sons, USA Inmon W. H Building the Data Warehouse. New York: Wiley Publishing Inc. Luján-Mora, S., Trujillo, J. & Song, I. Y Extending the UML for multidimensional modeling. Teoksessa Proceedings of the International Conference on the Unified Modeling Language. Dresden, Germany Luján-Mora, S., Trujillo, J. & Song, I. Y A UML profile for multidimensional modeling in data warehouses. Data & Knowledge Engineering Vol 59, Issue 3, Pages , Elsevier Science Publishers B. V. Nguyen, T. B., Tjoa, A. M., & Wagner, R An object-oriented multidimensional data model for OLAP. Teoksessa Proceedings of the International Conference on Web-Age Information Management, Shanghai, China, OMG, Meta Object Facility (MOF) Specification viitattu Pedersen, T. B Aspects of Data Modeling and Query Processing for Complex Multidimensional Data. Väitöskirja: Faculty of Engineering and Science, Aalborg University (Denmark) Rizzi, S., Abelló A., Lechtenbörger J. & Trujillo J Research in Data Warehouse Modeling and Design: Dead or Alive? Teoksessa Proceedings
36 36 of the ACM 9th International Workshop on Data Warehousing and OLAP (DOLAP), Arlington, Virginia, USA: ACM Press, 3-10 Rizzi, S Conceptual Modeling Solutions for the Data Warehouse. Teoksessa Data Warehouse and OLAP: Concepts, Architectures and Solutions. IRM Press. Sapia, C., Blaschka, M., Hofling, G. & Dinter, B Extending the E/R model for the multidimensional paradigm. Teoksessa Proceedings of the International Conference on Conceptual Modeling, Singapore. Trujillo J., Palomar M., Gomez J. & Song I Designing Data Warehouses with OO Conceptual Models. IEEE Computer 34(12), Tryfona, N., Busborg, F., Borgh Cristiansen, J. G starer: A conceptual model for data warehouse design. Teoksessa Proceedings of the ACM International Workshop on Data Warehousing and OLAP. Kansas City, Kansas, 3-8. Tsois, A., Karayannidis, N., & Sellis, T MAC: Conceptual data modeling for OLAP. Teoksessa Proceedings of the International Workshop on Design and Management of Data Warehouses. Interlagen, Switzerland,
TIETOVARASTOJEN SUUNNITTELU
IIO30120 DATABASE DESIGN / TIETOKANTOJEN SUUNNITTELU TIETOVARASTOJEN SUUNNITTELU KIRJAN HOVI, HUOTARI, LAHDENMÄKI: TIETOKANTOJEN SUUNNITTELU & INDEKSOINTI, DOCENDO (2003, 2005) LUKU 8 JOUNI HUOTARI & ARI
TIE-20200 Samuel Lahtinen. Lyhyt UML-opas. UML -pikaesittely
Lyhyt UML-opas UML -pikaesittely UML, Unified Modeling Language Standardoitu, yleiskäyttöinen mallinnuskieli, jota ylläpitää/hallitsee (Object Management Group) OMG Historiaa: 90-luvulla oli paljon kilpailevia
Ohjelmistojen mallintaminen, mallintaminen ja UML
582104 Ohjelmistojen mallintaminen, mallintaminen ja UML 1 Mallintaminen ja UML Ohjelmistojen mallintamisesta ja kuvaamisesta Oliomallinnus ja UML Käyttötapauskaaviot Luokkakaaviot Sekvenssikaaviot 2 Yleisesti
Tietovarastojen suunnittelu
Informaatioteknologian instituutti IIO30100 Tietokantojen suunnittelu Tietovarastojen suunnittelu kirjan Hovi, Huotari, Lahdenmäki: Tietokantojen suunnittelu & indeksointi, Docendo (2003, 2005) luku 8
Malliperustainen ohjelmistokehitys - MDE Pasi Lehtimäki
Malliperustainen ohjelmistokehitys - MDE 25.9.2007 Pasi Lehtimäki MDE Miksi MDE? Mitä on MDE? MDA, mallit, mallimuunnokset Ohjelmistoja Eclipse, MetaCase Mitä jatkossa? Akronyymiviidakko MDE, MDA, MDD,
Ohjelmistojen mallintaminen
Ohjelmistojen mallintaminen - Mallit - Ohjelmiston kuvaaminen malleilla 31.10.2008 Harri Laine 1 Malli: abstraktio jostain kohteesta Abstrahointi: asian ilmaiseminen tavalla, joka tuo esiin tietystä näkökulmasta
UML-kielen formalisointi Object-Z:lla
UML-kielen formalisointi Object-Z:lla Kalvot ja seminaarityö WWW:ssä: http://users.jyu.fi/~minurmin/opiskelu/form/ UML UML == Unified Modelling Language. OMG:n standardoima kieli ohjelmistojärjestelmien,
Arkkitehtuuripankki. Mallintamisen metamalli ja notaatiot
Arkkitehtuuripankki Mallintamisen metamalli ja notaatiot 21.2.2018 Sisältö Kuvaustapa (notaatio) ja standardit Mallityypit Metamalli Muuta Kuvaustavat ja hyödynnetyt standardit JHS179 template ArchiMate
Hieman lisää malleista ja niiden hyödyntämisestä
Hieman lisää malleista ja niiden hyödyntämisestä Ohjelmistojen mallintaminen Kesä 2012 (Avoin yliopisto) Toni Ruokolainen, 23.8.2012 Mallit Mallit ovat todellisuuden abstraktioita, jotka on muodostettu
Tietokantojen suunnittelu, relaatiokantojen perusteita
Tietokantojen suunnittelu, relaatiokantojen perusteita A277, Tietokannat Teemu Saarelainen teemu.saarelainen@kyamk.fi Lähteet: Leon Atkinson: core MySQL Ari Hovi: SQL-opas TTY:n tietokantojen perusteet-kurssin
Ohjelmistojen mallintamisen ja tietokantojen perusteiden yhteys
Ohjelmistojen mallintamisen ja tietokantojen perusteiden yhteys Tällä kurssilla on tutustuttu ohjelmistojen mallintamiseen oliomenetelmiä ja UML:ää käyttäen Samaan aikaan järjestetyllä kurssilla on käsitelty
Tietokannan suunnittelu
HELIA TIKO-05 1 (12) ICT03D Tieto ja tiedon varastointi Tietokannan suunnittelu Tietokannan suunnitteluprosessi... 2 Tavoitteet...2 Tietojärjestelmän suunnitteluprosessi...3 Abstraktiotasot tietokannan
Tietokannan eheysrajoitteet ja niiden määrittäminen SQL-kielellä
hyväksymispäivä arvosana arvostelija Tietokannan eheysrajoitteet ja niiden määrittäminen SQL-kielellä Tuomas Husu Helsinki 20.2.2010 HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Sisältö i 1 Johdanto
HELIA 1 (20) Outi Virkki Tiedonhallinta 4.11.2000
HELIA 1 (20) Luento 3.1 7LHWRNDQWDSRKMDLVHQVRYHOOXNVHQVXXQQLWWHOXSURVHVVL Tietokannan suunnittelun tavoitteet... 3 Abstraktiotasot tietokannan suunnittelussa... 4 3-taso -malli... 4 TIHA-standardi... 5
UML - unified modeling language
UML - unified modeling language Lähtökohtana: Booch, Rumbaugh, Jacobsson Tavoitteena Unified Method - syntyykö? Kehittäjänä: Rational Inc. Standardointi: Object Management Group (OMG) - vaiheessa Lähteet:
Paikkatiedon mallinnus Dokumentoinnin ymmärtäminen. Lassi Lehto
Paikkatiedon mallinnus Dokumentoinnin ymmärtäminen Lassi Lehto INSPIRE-seminaari 23.08.2012 Sisältö Tietotuoteselosteen rakenne (ISO 19131) Unified Modeling Language (UML) Luokkakaaviotekniikan perusteet
Helsingin yliopisto/tktl DO Tietokantojen perusteet, s 2000 Johdanto & yleistä Harri Laine 1. Tietokanta. Tiedosto
Tietokanta Tiedosto Tietokanta (database) jotakin käyttötarkoitusta varten laadittu kokoelma toisiinsa liittyviä säilytettäviä tietoja Ohjelmointikielissä apumuistiin tallennettuja tietoja käsitellään
3. Käsiteanalyysi ja käsitekaavio
3. Käsiteanalyysi ja käsitekaavio lehtori Pasi Ranne Metropolia ammattikorkeakoulu E-mail: pasi.ranne@metropolia.fi sivu 1 Käsiteanalyysi Selvitetään mitä tietokantaan pitää tallentaa Lähtökohtana käyttäjien
UML:n yleiskatsaus. UML:n osat:
UML:n yleiskatsaus - voidaan hyödyntää hyvin laajasti. - sopii liiketoimintamallinnukseen, ohjelmistomallinnukseen sen jokaiseen vaiheeseen tai minkä tahansa pysyviä ja muuttuvia ominaisuuksia sisältävän
Luento 3 Tietokannan tietosisällön suunnittelu
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
Käytettävyyslaatumallin rakentaminen web-sivustolle. Oulun yliopisto tietojenkäsittelytieteiden laitos pro gradu -suunnitelma Timo Laapotti 28.9.
Käytettävyyslaatumallin rakentaminen web-sivustolle Tapaus kirjoittajan ABC-kortti Oulun yliopisto tietojenkäsittelytieteiden laitos pro gradu -suunnitelma Timo Laapotti 28.9.2005 Kirjoittajan ABC-kortti
Oppijan palvelukokonaisuus. Tietomallinnuksen laaja katselmointi 7.12.2011
Oppijan palvelukokonaisuus Tietomallinnuksen laaja katselmointi 7.12.2011 Sisältö Tietoarkkitehtuuri Tietomallit ja sanastot Tietomallinnus Tietomallinnus hankkeessa (Hankkeessa käytetyt keskeisimmät mallinnuselementit)
TIETOJEN TUONTI TIETOKANNASTA + PIVOT-TAULUKON JA OLAP-KUUTION TEKO
TIETOJEN TUONTI TIETOKANNASTA + PIVOT-TAULUKON JA OLAP-KUUTION TEKO JOUNI HUOTARI 2005-2010 OLAP-OHJETEKSTIT KOPIOITU MICROSOFTIN OHJATUN OLAP-KUUTION TEKO-OHJEESTA ESIMERKIN KUVAUS JA OLAP-MÄÄRITELMÄ
Jouni Huotari OLAP-ohjetekstit kopioitu Microsoftin ohjatun OLAP-kuution teko-ohjeesta. Esimerkin kuvaus ja OLAP-määritelmä
OLAP-kuution teko Jouni Huotari OLAP-ohjetekstit kopioitu Microsoftin ohjatun OLAP-kuution teko-ohjeesta Esimerkin kuvaus ja OLAP-määritelmä Tavoitteena on luoda OLAP-kuutio Northwind-tietokannan tilaustiedoista
Korkeakoulujen yhteentoimivuusmalli
Korkeakoulujen yhteentoimivuusmalli Tavoitteena korkeakoulujen opetus-, tutkimus- ja julkaisutietojärjestelmien yhteentoimivuus Miika Alonen Suvi Remes Nykytila Esim. Kirjastotoimi Opintopolku? Korkeakoulujen
JHS 179 ICT-palvelujen kehittäminen: Kokonaisarkkitehtuurin kehittäminen Liite 2 Arkkitehtuurikehyksen kuvaus
JHS 179 ICT-palvelujen kehittäminen: Kokonaisarkkitehtuurin kehittäminen Liite 2 Arkkitehtuurikehyksen kuvaus Versio: 1.0 Julkaistu: 8.2.2011 Voimassaoloaika: toistaiseksi Sisällys 1 Arkkitehtuurikehyksen
Ohjelmistojen mallintaminen luokkamallin lisäpiirteitä
582104 Ohjelmistojen mallintaminen luokkamallin lisäpiirteitä 1 Luokkamallin lisäpiirteitä Erilaiset yhteystyypit kooste kompositio Muita luokkien välisiä suhteita riippuvuudet periytyminen eli luokkahierarkia
Kielitieteellisten aineistojen käsittely
Kielitieteellisten aineistojen käsittely 1 Johdanto...1 2 Aineistojen kommentointi, metadatan tyypit...1 3 Aineistojen käsittely...2 3.1 Rakenteisten kieliaineistojen kyselykielet...2 3.2 Tiedonlouhinta
The OWL-S are not what they seem
The OWL-S are not what they seem...vai ovatko? Verkkopalveluiden koostamisen ontologia OWL-S Seminaariesitelmä 15.4.2013 Emilia Hjelm Internet on hankala Nykyinternet on dokumenttien verkko Asiat, joita
Ohjelmistojen suunnittelu
Ohjelmistojen suunnittelu 581259 Ohjelmistotuotanto 154 Ohjelmistojen suunnittelu Software design is a creative activity in which you identify software components and their relationships, based on a customer
Yhteydelle voi antaa nimen kumpaankin suuntaan Sille ei tarvise antaa lainkaan nimeä Yhteysnimen asemasta tai lisäksi voidaan käyttää roolinimiä
DO NOT PRINT THIS DOCUMENT DO NOT PRINT THIS DOCUMENT Olioiden väliset yhteydet Yhteyden nimi Nimen lukusuunta pankkitili 0..10 Omistaja-> 1..3 asiakas
Eero Hyvönen. Semanttinen web. Linkitetyn avoimen datan käsikirja
Eero Hyvönen Semanttinen web Linkitetyn avoimen datan käsikirja WSOY:n kirjallisuussäätiö on tukenut teoksen kirjoittamista Copyright 2018 Eero Hyvönen & Gaudeamus Gaudeamus Oy www.gaudeamus.fi Kansi:
Tenttikysymykset. + UML- kaavioiden mallintamistehtävät
Tenttikysymykset 1. Selitä mitä asioita kuuluu tietojärjestelmän käsitteeseen. 2. Selitä kapseloinnin ja tiedon suojauksen periaatteet oliolähestymistavassa ja mitä hyötyä näistä periaatteista on. 3. Selitä
Hyvin määritelty on puoliksi tehty kuinka vältetään turha tekeminen jo alussa
1 Hyvin määritelty on puoliksi tehty kuinka vältetään turha tekeminen jo alussa Passion leads to design, design leads to performance, performance leads to SUCCESS! OLLI NIEMI Yoso Oy Mitä määrittelyltä
Ohjelmistotekniikan menetelmät Luokkamallit ohjelmiston mallintamisessa Harri Laine 1
Ohjelmistotekniikan menetelmät Luokkamallit ohjelmiston mallintamisessa 14.11.2008 Harri Laine 1 Oliot ohjelmiston mallinnuksessa käyttötapaus käyttää Käyttämämme oliokeskeinen perusmalli ohjelmistojen
Tenttikysymykset. + UML- kaavioiden mallintamistehtävät
Tenttikysymykset 1. Selitä mitä asioita kuuluu tietojärjestelmän käsitteeseen. 2. Selitä kapseloinnin ja tiedon suojauksen periaatteet oliolähestymistavassa ja mitä hyötyä näistä periaatteista on. 3. Selitä
Tyyppiluokat II konstruktoriluokat, funktionaaliset riippuvuudet. TIES341 Funktio-ohjelmointi 2 Kevät 2006
Tyyppiluokat II konstruktoriluokat, funktionaaliset riippuvuudet TIES341 Funktio-ohjelmointi 2 Kevät 2006 Alkuperäislähteitä Philip Wadler & Stephen Blott: How to make ad-hoc polymorphism less ad-hoc,
Data Warehouse kuulumisia
1 Data Warehouse kuulumisia Ari Hovi www.arihovi.com Ari Hovi Oy www.arihovi.com 2 Ari Hovi Oy:n missiona on edistää tiedonhallintaa tarjoamalla huippukoulutusta ja konsultointia kokeneet käytännön konsultit
Johdatus rakenteisiin dokumentteihin
-RKGDWXVUDNHQWHLVLLQGRNXPHQWWHLKLQ 5DNHQWHLQHQGRNXPHQWWL= rakenteellinen dokumentti dokumentti, jossa erotetaan toisistaan dokumentin 1)VLVlOW, 2) UDNHQQHja 3) XONRDVX(tai esitystapa) jotakin systemaattista
Tietomallit. Näkökulmat tietoon. Näkökulmat tietoon. Mitä malleja olisi tarjolla? Abstraktiotasot tiedon käsittelyssä
Tietomallit Tietomallilla (data model) tarkoitetaan tiedon rakenteen ja tiedolle suoritettavan käsittelyn määrittelevää kehikkoa - käsitteistöä Tietoa voidaan tarkastella eri näkökulmista - eri abstraktiotasoilla
Tietokannan hallinta. Kevät 2004 Jan Lindström R&G Chapter 1
Tietokannan hallinta Kevät 2004 Jan Lindström R&G Chapter 1 Tietokannan hallinta 1. Johdanto (käsitteitä) 2. Tietokannan talletusrakenteet 3. Tietokannan hakemistorakenteet 4. Kyselyiden käsittely ja optimointi
4.2 Yhteensopivuus roolimalleihin perustuvassa palvelussa
4. Roolimallipalvelu 4.1 Tiedot palvelusta Palvelun nimi: Palvelun versio 01.01.00 Toteuttaa palvelun yksilöllistä palvelua (kts. M14.4.42) Roolimallipalvelu (Model role service) MYJ:lle, jotka toteuttavat
Tällä viikolla. Kotitehtävien läpikäynti Aloitetaan Pelifirman tietovaraston suunnittelu Jatketaan SQL-harjoituksia
Tällä viikolla Kotitehtävien läpikäynti Aloitetaan Pelifirman tietovaraston suunnittelu Jatketaan SQL-harjoituksia 1.) Mainitse tietokonepelistä (kuvitteellisesta tai todellisesta) esimerkkitilanteita,
Johdatus sovellussuunnitteluun, s99, osa3 Helsingin yliopisto;/tktl Harri Laine 1. Olioiden väliset yhteydet. Olioiden väliset yhteydet
..999 DO NOT PRINT THIS DOCUMENT DO NOT PRINT THIS DOCUMENT Yhteyden nimi Nimen lukusuunta pankkitili asiakas 0..0 Omistaja->..3
Helsingin yliopisto/tktl Tietokantojen perusteet, s 2006 Tiedon mallinnus ja tietokannat. Harri Laine 1. Tietokanta.
Tieto - data Digitaalisesti tallennettua informaatiota jostakin kohteesta Vapaamuotoinen tieto (unformatted) Esim. teksti, puhe, kuvat, Sisältö jäsentämätöntä Koneellinen käsittely vaikeaa paitsi kokonaisuutena
Tietovarastointi, OLAP ja tiedon louhinta
Vesa Pekkarinen Tietovarastointi, OLAP ja tiedon louhinta Tietojärjestelmätieteen kandidaatintutkielma 10.9.2007 Jyväskylän yliopisto Tietojenkäsittelytieteiden laitos Jyväskylä TIIVISTELMÄ Pekkarinen,
Johdatus sovellussuunnitteluun, s99, osa3 Helsingin yliopisto;/tktl Harri Laine 1. Olioiden väliset yhteydet. Olioiden väliset yhteydet
DO NOT PRINT THIS DOCUMENT DO NOT PRINT THIS DOCUMENT Yhteyden nimi Nimen lukusuunta pankkitili 0..0 Omistaja->..3 asiakas
JHS 162 Paikkatietojen mallintaminen tiedonsiirtoa varten Liite 2 Paikkatietojen yleinen kohdemalli (GFM)
JHS 162 Paikkatietojen mallintaminen tiedonsiirtoa varten Liite 2 Paikkatietojen yleinen kohdemalli (GFM) Versio: 2.0 Julkaistu: 31.10.2011 Voimassaoloaika: toistaiseksi Sisällys 1 Yleistä... 1 2 Lyhenteet...
JHS 162 Paikkatietojen mallintaminen tiedonsiirtoa varten Liite 1 UML-mallinnus
JHS 162 Paikkatietojen mallintaminen tiedonsiirtoa varten Liite 1 UML-mallinnus Versio: 12.01.2011 Julkaistu: Voimassaoloaika: toistaiseksi Sisällys 1 Johdanto... 1 2 Yleistä... 1 3 Lyhenteet... 1 4 UML-luokkakaaviotekniikan
Tiedonlouhinta rakenteisista dokumenteista (seminaarityö)
Tiedonlouhinta rakenteisista dokumenteista (seminaarityö) Miika Nurminen (minurmin@jyu.fi) Jyväskylän yliopisto Tietotekniikan laitos Kalvot ja seminaarityö verkossa: http://users.jyu.fi/~minurmin/gradusem/
Terveydenhuollon tehokas johtaminen edellyttää parhaat raportointi- ja analysointityövälineet
Terveydenhuollon tehokas johtaminen edellyttää parhaat raportointi- ja analysointityövälineet Tarvitsetko vastauksia seuraaviin kysymyksiin: - miten hoitokustannukset jakautuvat jäsenkuntien kesken? -
TIEDONHALLINTA - SYKSY Luento 7. Pasi Ranne /10/17 Helsinki Metropolia University of Applied Sciences
TIEDONHALLINTA - SYKSY 2017 Kurssikoodi: Saapumisryhmä: Luento 7 TX00CN57-3001 TXQ16ICT, TXQ16S1 ja TXQ16PROS Pasi Ranne 02.10.2017 1/10/17 Helsinki Metropolia University of Applied Sciences 1 Tietokannan
Analyysi, staattinen mallintaminen, kohdealueen malli ja luokkakaavio
Analyysi, staattinen mallintaminen, kohdealueen malli ja luokkakaavio Analyysi Tarkentaa ja jäsentää vaatimusmäärittelyä, vastaa kysymykseen MITÄ järjestelmän tulisi tehdä. Suoritetaan seuraavia tehtäviä:
Tenttikysymykset. + UML-kaavioiden mallintamistehtävät
Tenttikysymykset 1. Selitä mitä asioita kuuluu tietojärjestelmän käsitteeseen. 2. Selitä kapseloinnin ja tiedon suojauksen periaatteet oliolähestymistavassa ja mitä hyötyä näistä periaatteista on. 3. Selitä
Simulation and modeling for quality and reliability (valmiin työn esittely) Aleksi Seppänen
Simulation and modeling for quality and reliability (valmiin työn esittely) Aleksi Seppänen 16.06.2014 Ohjaaja: Urho Honkanen Valvoja: Prof. Harri Ehtamo Työn saa tallentaa ja julkistaa Aalto-yliopiston
SOSIAALITYÖN TUKEMASSA SOSIAALITYÖTÄ. Rovaniemi 13.04.2010 4.5.2010 AN 1
SOSIAALITYÖN PROSESSIKUVAUKSET TUKEMASSA SOSIAALITYÖTÄ Rovaniemi 13.04.2010 Asta Niskala 4.5.2010 AN 1 Sosiaalityön määritelmä Sosiaalityö kohdistuu ihmisten ja heidän sosiaalisessa ympäristössään olevien
SÄHKE-hanke. Abstrakti mallintaminen Tietomallin (graafi) lukuohje
04.02.2005 1 (6) SÄHKE-hanke Versio ja pvm Laatinut Tarkpvm Tarkastanut Hyvpvm Hyväksynyt 2.0 / 04.02.2005 Anneli Rantanen 15.02.2005 Markus Merenmies 18.02.2005 Ohjausryhmä 04.02.2005 2 (6) Muutoshistoria
Hyödyt irti XDW:stä. Kim Johnsson Projektipäällikkö/Cerion Solutions Oy 1.11.2011
Hyödyt irti XDW:stä Kim Johnsson Projektipäällikkö/Cerion Solutions Oy 1.11.2011 Sisältö XDW Yleistä tietovarastoinnista Cerionin XDW-pohjainen tietovarastoratkaisu XDW-malli lyhyesti Projektin tavoite:
Valtionhallinnon käyttäjäpäivä - IBM Cognosin tulevaisuuskatsaus ja nykypäivä
Valtionhallinnon käyttäjäpäivä - IBM Cognosin tulevaisuuskatsaus ja nykypäivä Tomas Rytkölä Sr. Solution Specialist, Business Intelligence and Performance Management IBM IBM:n yhteistoiminta IBM Power
HELIA 1 (17) Outi Virkki Tiedonhallinta
HELIA 1 (17) Luento 4.1 Looginen suunnittelu... 2 Relaatiomalli... 3 Peruskäsitteet... 4 Relaatio... 6 Relaatiokaava (Relation schema)... 6 Attribuutti ja arvojoukko... 7 Monikko... 8 Avaimet... 10 Avain
Johtamisen haaste kokonaisarkkitehtuuri menestyksen mahdollistajako?
Johtamisen haaste kokonaisarkkitehtuuri menestyksen mahdollistajako? JÄRJESTÄJÄ SAVO Q AIKA 14.11.2018 Kokonaisarkkitehtuurin määrittelyä Tekijä(t) Armour, F. & Kaisler, S. 2017. Introduction to Enterprise
arvostelija OSDA ja UDDI palveluhakemistoina.
Hyväksymispäivä Arvosana arvostelija OSDA ja UDDI palveluhakemistoina. HELSINGIN YLIOPISTO HELSINGFORS UNIVERSITET UNIVERSITY OF HELSINKI Tiedekunta/Osasto Fakultet/Sektion Faculty/Section Laitos Institution
Metatiedot organisaatioiden sisällönhallinnassa
Metatiedot organisaatioiden sisällönhallinnassa Airi Salminen Jyväskylän yliopisto http://www.cs.jyu.fi/~airi/ Lainsäädäntöprosessin tiedonhallinnan kehittäminen Metatiedot suomalaisen lainsäädäntöprosessin
Tietovarastointiratkaisut massaräätälöinnin konfiguraattoreiden tukena. DI Mika Aho BI/DW Specialist 18.9.2008
Tietovarastointiratkaisut massaräätälöinnin konfiguraattoreiden tukena DI Mika Aho BI/DW Specialist 18.9.2008 Esityksen sisältö 2 Mitä ovat (myynnin) konfiguraattorit? Tiedonhallinta massaräätälöinnissä
UML metamallina. Seminaariesitelmä Minna Majuri HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos
Seminaariesitelmä 26.9.2000 HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Sisällys 1 Johdanto 1 2 UML:n perusteet 2 2.1 Kaaviot 2 2.1.1 Yleiskäsitteet ja käyttötapauskaavio 2 2.1.2 Luokkakaavio 3
1.1 Käsitteet ja termit 1.2 Historia. Luku 1. Johdanto. ITKA204 kevät
1.1 Käsitteet ja termit 1.2 Historia Luku 1 Johdanto ITKA204 kevät 2016 1 Kurssin sisältö - tarvittavat käsitteet - historiaa 1. johdanto 2. analyysi ja arkkitehtuuri - DBMS:n sovellusarkkitehtuuri - käsitteellinen
Tietomallit. Näkökulmat tietoon. Näkökulmat tietoon. Näkökulmat tietoon. Abstraktiotasot tiedon käsittelyssä
Tietomallit Tietomallilla (data model) tarkoitetaan tiedon rakenteen ja tiedolle suoritettavan käsittelyn määrittelevää käsitteistöä Tietoa voidaan tarkastella eri näkökulmista - eri abstraktiotasoilla
Moniulotteisen datan liitos tähtimallissa
hyväksymispäivä arvosana arvostelija Moniulotteisen datan liitos tähtimallissa Jani H Rautiainen Helsinki 25.10.2005 Tietokannat nyt -seminaari HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Tiivistelmä
Ohjelmistotekniikan menetelmät, UML
582101 - Ohjelmistotekniikan menetelmät, UML 1 Sisältö DFD- ja sidosryhmäkaavioiden kertaus Oliomallinnus UML:än kaaviotyypit 2 Tietovuokaaviot Data flow diagrams, DFD Historiallisesti käytetyin kuvaustekniikka
Ohjelmistojen mallintaminen kertausta Harri Laine 1
kertausta 5.12.2008 Harri Laine 1 Ohjelmiston elinkaari, elinkaarimallit Yleinen puitemalli (reference model) - abstrakti kokonaiskuva ei etenemiskontrollia, ei yksityiskohtia Ohjelmistoprosessimallit
Yhteentoimivuusalusta: Miten saadaan ihmiset ja koneet ymmärtämään toisiaan paremmin?
Yhteentoimivuusalusta: Miten saadaan ihmiset ja koneet ymmärtämään toisiaan paremmin? Avoin verkkoalusta ihmisen ja koneen ymmärtämien tietomääritysten tekemiseen Riitta Alkula 20.3.2019 Esityksen sisältö
Tietokannan suunnittelu
Informaatioteknologian instituutti IIO30100 Tietokantojen suunnittelu Tietokannan suunnittelu kirjan Hovi, Huotari, Lahdenmäki: Tietokantojen suunnittelu & indeksointi, Docendo (2003, 2005) luku 2 Jouni
Ohjelmistojen mallintaminen, kesä 2009
582104 Ohjelmistojen mallintaminen, kesä 2009 1 Ohjelmistojen mallintaminen Software Modeling Perusopintojen pakollinen opintojakso, 4 op Esitietoina edellytetään oliokäsitteistön tuntemus Ohjelmoinnin
TIEDONHALLINNAN PERUSTEET - SYKSY 2013
TIEDONHALLINNAN PERUSTEET - SYKSY 2013 Kurssikoodi: Saapumisryhmä: Luento 4 XX00AA79-3013 TU12S2 Pasi Ranne 11.9.2013 11/9/13 Helsinki Metropolia University of Applied Sciences 1 Relaatiotietokannan suunnitteluprosessin
Common Lisp Object System
Common Lisp Object System Seminaarityö Tomi Vihtari Ohjelmointikielten periaatteet kevät 2004 Helsingin Yliopisto Tietojenkäsittelytieteen laitos Järvenpää 5. huhtikuuta 2004 Sisältö 1 Johdanto... 1 2
Mallinnus. 5. Järjestelmämallit. Abstraktiot. Mallinnuksen etuja. Arkkitehtuurimalli. Yhteysmallit. Ohjelmistotuotanto, järjestelmämallit Kevät 2005
5. Järjestelmämallit Käyttäjävaatimukset pitää kirjoittaa luonnollisella kielellä. Niitä lukevat myös asiakkaat ja loppukäyttäjät. Järjestelmävaatimukset kannattaa kirjoittaa jollain rakenteisella kuvaustavalla.
Käyttäjäkeskeisen suunnittelun periaatteet ja prosessit
Käyttäjäkeskeisen suunnittelun periaatteet ja prosessit Kurssilla: Johdatus käyttäjäkeskeiseen tuotekehitykseen 23.1.2008 Johanna Viitanen johanna.viitanen@soberit.hut.fi Luennon aiheet Tuotekehityksen
Ontologiakirjasto ONKI-Paikka
Ontologiakirjasto ONKI-Paikka Tomi Kauppinen, Robin Lindroos, Riikka Henriksson, Eero Hyvönen Semantic Computing Research Group (SeCo) and University of Helsinki and Helsinki University of Technology (TKK)
Uusi käsitemalli IFLA LRM
Uusi käsitemalli IFLA LRM Tapani Moisio Kuvailun tiedotuspäivä 27.9.2017 IFLA Library Reference Model IFLAn standardi ja käsitemalli, vahvistettu elokuussa 2017 Kolmen erillisinä kehitetyn IFLAn käsitemallin
Lähestymistavat - toiminnallinen
Lähestymistavat - toiminnallinen Systeemiteoreettinen lähestymistapa INPUT PROCESS OUTPUT systeemi on prosessi, joka saa syötteitä ja tuottaa tuloksia systeemi voidaa jakaa osasysteemeihin tietojärjestelmissä
2 Ohjelmistoarkkitehtuurien kuvaus
2 Ohjelmistoarkkitehtuurien kuvaus 2.1 Arkkitehtuurikuvauksen merkityksestä 2.2 Arkkitehtuurin kuvaukseen liittyvät käsitteet 2.3 Arkkitehtuurikuvaukset eri tasoilla 2.4 Arkkitehtuurinäkymät ja kuvaustyypit
Semanttinen Web. Ossi Nykänen Tampereen teknillinen yliopisto (TTY), DMI / Hypermedialaboratorio W3C Suomen toimisto
Semanttinen Web Ossi Nykänen ossi.nykanen@tut.fi Tampereen teknillinen yliopisto (TTY), DMI / Hypermedialaboratorio W3C Suomen toimisto Esitelmä "Semanttinen Web" Sisältö Konteksti: W3C, Web-teknologiat
Yhteentoimivuutta edistävien työkalujen kehittäminen
Yhteentoimivuutta edistävien työkalujen kehittäminen Semantiikkaa organisaatioiden välisen tiedonvaihdon helpottamiseksi Mikael af Hällström, Verohallinto Esityksen sisältö Taustatekijöitä (OKM:n hallinnonala,
Luento 12: XML ja metatieto
Luento 12: XML ja metatieto AS-0.110 XML-kuvauskielten perusteet Janne Kalliola XML ja metatieto Metatieto rakenne sanasto Resource Description Framework graafikuvaus XML Semanttinen Web agentit 2 1 Metatieto
Department of Mathematics, Hypermedia Laboratory Tampere University of Technology. Roolit Verkostoissa: HITS. Idea.
Roolit Tommi Perälä Department of Mathematics, Hypermedia Laboratory Tampere University of Technology 25.3.2011 J. Kleinberg kehitti -algoritmin (Hypertext Induced Topic Search) hakukoneen osaksi. n taustalla
Strathclyde-prosessi
Strathclyde-prosessi (Materiaali pohjautuu Terry Williamsin luentokalvoihin The Catastrophic Project - an examination of some real-life project failures and an exposure of root causes. Project Management
Tietokantojen perusteet k2004helsingin yliopisto/tktl Tietokantojen perusteet, s 2007 ER-mallin peruskäsitteet.
Tietosisällön kuvaaminen Toteutusvälineistä riippumaton tietosisällön kuvaus Entity-Relationship malliperhe Lähtökohta: Chenin malli vuodelta 1976 Useita muunnelmia, pieniä eroja peruskäsitteissä ja erityisesti
Tietokannanhoitaja DBA (Database Administrator) ja tietokannan hallinta
Tietokannanhoitaja DBA (Database Administrator) ja tietokannan hallinta Jouni Huotari Martti Laiho (materiaali on osa virtuaaliammattikorkeakoulun Tietokantaosaaja-opintokokonaisuutta) opintokokonaisuutta)
5. Järjestelmämallit. Mallinnus
5. Järjestelmämallit Käyttäjävaatimukset pitää kirjoittaa luonnollisella kielellä. Niitä lukevat myös asiakkaat ja loppukäyttäjät. Järjestelmävaatimukset kannattaa kirjoittaa jollain rakenteisella kuvaustavalla.
Ohjelmistojen mallintaminen Luokkakaaviot Harri Laine 1
Ohjelmistojen mallintaminen Luokkakaaviot 5.12.2008 Harri Laine 1 Olioiden palvelut Palvelun kuvauksessa annettavat tiedot näkyvyys (kuten attribuuttien kohdalla) nimi (ainoa välttämätön osa) parametrit
2. Olio-ohjelmoinnin perusteita 2.1
2. Olio-ohjelmoinnin perusteita 2.1 Sisällys Esitellään peruskäsitteitä yleisellä tasolla: Luokat ja oliot. Käsitteet, luokat ja oliot. Attribuutit, olion tila ja identiteetti. Metodit ja viestit. Olioperustainen
OPERAATIOTUTKIMUKSEN AJATTELUTAPA TUTKIMUSMAAILMASTA TEOLLISUUTEEN
OPERAATIOTUTKIMUKSEN AJATTELUTAPA TUTKIMUSMAAILMASTA TEOLLISUUTEEN MIKKO SYRJÄNEN FORS-ILTAPÄIVÄ 2012 1 / 1 Wärtsilä 3 July 2009 Alku operaatiotutkijana Systeemianalyysin laboratorio, DI 1999 Johdatus
UML Luokkakaavio 14:41
UML Luokkakaavio UML Olio-ohjelman luokkien pääpiirteet voidaan kätevähkösti esittää ns. UML-luokkakaaviona. Näin usein tehdäänkin esim. suunniteltaessa, millaisia luokkia ohjelmaan on tarkoitus laatia,
Sosiaalihuollon asiakasasiakirjojen tietomallinnus Tietomallit teknisen asiakirjamäärittelyn näkökulmasta
Sosiaalihuollon asiakasasiakirjojen tietomallinnus Tietomallit teknisen asiakirjamäärittelyn näkökulmasta Riikka Huttunen Suunnittelija Tietojenkäsittelytieteen laitos Kuopion Yliopisto 1 11.5.2009 Sisältö
Paikkatietotuotteen määrittely
Paikkatietotuotteen määrittely Työpaja tietotuotteista 24.11.2010 Panu Muhli Maanmittauslaitos Inspire-sihteeristö etunimi.sukunimi@maanmittauslaitos.fi Sisällys Mikä on paikkatietotuote? Mitä paikkatietotuotteen
Ohjelmistojen mallintaminen luokkamallin lisäpiirteitä
582104 Ohjelmistojen mallintaminen luokkamallin lisäpiirteitä 1 Luokkamallin lisäpiirteitä Erilaiset yhteystyypit kooste kompositio Muita luokkien välisiä suhteita riippuvuudet periytyminen eli luokkahierarkia
Helsingin yliopisto/tktl Tietokantojen perusteet, k 2003 Relaatiomallin peruskäsitteet Harri Laine 1. Tietomallit. Näkökulmat tietoon
Tietomallit Tietomallilla (data model) tarkoitetaan tiedon rakenteen ja tiedolle suoritettavan käsittelyn määrittelevää käsitteistöä Tietoa voidaan tarkastella eri näkökulmista - eri abstraktiotasoilla
Sisällys. Ratkaisumallien historia. Ratkaisumalli. Ratkaisumalli [2] Esimerkki: Composite [2] Esimerkki: Composite. Jaakko Vuolasto 25.1.
Sisällys Ratkaisumallien historia Jaakko Vuolasto 25.1.2001! Ratkaisumalli! Christopher Alexander! Ohjelmistotuotannosta arkkitehtuuriin! Henkilöhistoriaa! Ensimmäisiä käyttökokemuksia! Yhteenveto 25.1.2001
CS-A1150 Tietokannat CS-A1150 Tietokannat / 35
CS-A1150 Tietokannat 5.3.2019 CS-A1150 Tietokannat 5.3.2019 1 / 35 Oppimistavoitteet: tämän luennon jälkeen Osaat tehdä tietokantaa kuvaavan mallin UML-kaavion avulla. Tunnet esimerkiksi seuraavat UML-mallinnuksen
Sisällys. JAVA-OHJELMOINTI Osa 7: Abstrakti luokka ja rajapinta. Abstraktin luokan idea. Abstrakti luokka ja metodi. Esimerkki
Sisällys JAVA-OHJELMOINTI Osa 7: Abstrakti luokka ja rajapinta Abstrakti luokka ja metodi Rajapintamäärittely (interface) Eero Hyvönen Tietojenkäsittelytieteen laitos Helsingin yliopisto 13.10.2000 E.