180 likes | 360 Views
Tietokanta-analyysi, suunnittelu ja toteutus. Tietokantajärjestelmä on osa yrityksen informaatiojärjestelmää (IS, Information System). Tietokantajärjestelmän elinkaari voidaan jakaa kuvan 1 mukaisiin vaiheisiin. Kuvataan seuraavaksi lyhykäisesti kuvassa esiintyvien laatikoiden merkitys.
E N D
Tietokanta-analyysi, suunnittelu ja toteutus • Tietokantajärjestelmä on osa yrityksen informaatiojärjestelmää (IS, Information System). • Tietokantajärjestelmän elinkaari voidaan jakaa kuvan 1 mukaisiin vaiheisiin. • Kuvataan seuraavaksi lyhykäisesti kuvassa esiintyvien laatikoiden merkitys. tMyn
Tietokantasovelluksen suunnittelu DBMS:n valinta Prototyypin teko Tietokannan määrittely Järjestelmämäärittely Vaatimusten keruu ja analysointi Käsitemallin suunnittelu Toteutus Looginen suunnittelu Tietokannan suunnittelu Datan konversio ja siirto Fyysinen suunnittelu Käyttöönottotestaus Kuva 1. Tietokantajärjestelmän elinkaari. Ylläpito tMyn
Tietokannan määrittely • Miten elinkaaren vaiheet voidaan toteuttaa mahdollisimman tehokkaasti ja optimaalisen vaikutuksen tuottavaksi? • Mitkä ovat yrityksen tavoitteet – miten tässä voi auttaa informaatiojärjestelmä parhain päin? • Miten asiat on nyt hoidettu IS-puolella – vahvuudet, heikkoudet. • Mitä pitäisi tehdä paremmin? tMyn
Järjestelmämäärittely • Mitkä ovat järjestelmän rajat ja miten tämä tietokantajärjestelmä liittyy yrityksen yleiseen IS:ään? • Ketkä ovat nykyiset ja tulevat käyttäjät? • Mitkä ovat nykyiset ja tulevat sovellukset? • Mitkä ovat esim. johdon, myynnin, etc. erityistarpeet? tMyn
Vaatimusten keruu ja analysointi • Otetaan selville mitkä ryhmät käyttävät/tulevat käyttämään sovellusta. • Kunkin ryhmän vaatimusmäärittely kerätään kattavasti (fact finding techniques). • Näin saadaan selville ainakin • kuvaus käytettävästä datasta tai siitä datasta jota generoidaan • miten dataa käytetään tai generoidaan • uudet vaatimukset tietokantajärjestelmälle • Tästä kaikesta saadaan analyysivaiheen jälkeen vaatimusmäärittely. tMyn
Tietokannan suunnittelu • Suunnittelussa on kaksi perusmenetelmää: joko ”bottom up” tai ”top-down”. • ”Bottom-up”-menetelmässä aloitetaan perusattribuuttien etsimisestä ja löytämisestä. • Tähän prosessiin liittyy normalisointi. • ”Bottom-up”-menetelmä soveltuu erityisesti yksinkertaisiin tietokantatoteutuksiin. • Monimutkaisiin tietokantatoteutuksiin soveltuu paremmin ”top-down” –menetelmä. tMyn
”Top-down” –menetelmässä aloitetaan hierarkkisesti ylimmän tason kokonaisuuksista ja suhteista. • Sitten mennään iteratiivisesti alaspäin hierarkiatasoilla kohti pienempiä yksityiskohtia. • ”Top-down” –menetelmään liittyy ER (Entity-Relationship) –mallinnus. • On olemassa vielä muitakin menetelmiä, näistä mainittakoon niminä ”inside-out” – ja ”mixed strategy” –menetelmät. • Tietokannan suunnitteluun liittyy käsitemallin suunnittelu, looginen suunnittelu ja fyysinen suunnittelu. tMyn
Tietokannan käsitemallin suunnittelu • Tämä on ensimmäinen vaihe tietokannan suunnittelussa. • Käsitemalli rakennetaan kaikilta käyttäjiltä kerätyn (ja sen perusteella rakennetun) vaatimusmäärittelyn perusteella. • Se on täysin riippumaton valittavasta DBMS-ohjelmistosta, sovellusohjelmista, ohjelmointikielistä, hardware platformista, etc. • Käsitemallin hyvyyttä testataan vaatimusmäärittelyä vasten. tMyn
Tietokannan looginen suunnittelu • Tässä lähdetään liikkeelle käsitemallista. • Laaditaan sisällöstä ja rakenteesta loogisen tason kuvaus, esim. relaatiokuvaus, jos tavoitteena on relaatiotietokanta. • Tässä vaiheessa ei pitäisi olla mitään riippuvuutta mihinkään tiettyyn DBMS:ään vaikkakin tiedossa siis on, että tietokantajärjestelmään tullaan valitsemaan relaatiotietokanta, hierarkkinen tietokanta, oliotietokanta tms. • Normalisointitekniikkaa käytetään testaamaan loogisen tietokantamallin oikeellisuutta. tMyn
Tietokannan fyysinen suunnittelu • Tässä lähdetään liikkeelle tietokannan loogisesta mallista. • Nyt pitää olla tiedossa valittava DBMS-tuote. • Päätetään tietokannan tallennusrakenteista ja saantimenetelmistä. • Miten saavutetaan tietokannan optimisuorituskyky? • Miten huomioidaan turvallisuusnäkökannat? tMyn
DBMS:n valinta • Joskus voi olla mahdollista käyttää olemassa olevaa tuotetta – tehdään vain uusi tietokantasovellus. • Jos joudutaan ostamaan uusi DBMS, niin silloin joudutaan tekemään päätös perustuen • nykyiset ja tulevat tarpeet • mitä muuta ohjelmistoa/kovoa tarvitaan • mitkä ovat muutoskustannukset (konversio vanhasta DBMS:stä…) • henkilöstön koulutustarve • … tMyn
Tietokantasovelluksen suunnittelu • Tietokantasovelluksen suunnittelu on rinnakkainen aktiviteetti tietokannan suunnittelun kanssa. • Toki uusia sovelluksia voidaan suunnitella valmiiseen tietokantaympäristöön. • Sovellussuunnitteluun liittyy keskeisesti tietokantatapahtumien suunnittelu. Tietokantatapahtuma, transaction: Yhdestä tai useammasta tietokantaoperaatiosta koostuva kokonaisuus, jolle voidaan taata jakamattomuus, pysyvyys, eristyvyys ja oikeellisuus. tMyn
Tietokantatapahtumia on kolmen tyyppisiä: • Tiedon haku, retrieval transaction. Esim. haetaan tietokannasta joidenkin hakukriteerien perusteella ja kaiutetaan näytölle. • Tiedon päivittäminen, update transaction. Esim. lisätään monikko johonkin tauluun. • Edellisten yhdistelmä, mixed transaction. • Toinen keskeinen elementti sovelluksen suunnittelussa on käyttöliittymän suunnittelu. tMyn
Prototyypin teko • Prototyypillä ei tyypillisesti ole kaikkia lopullisen tuotteen ominaisuuksia toteutettuna. • Auttaa arvioimaan, mitkä ominaisuudet ovat toimivia, ja toisaalta mitkä osat vaatimusmäärittelyssä ovat olleet epäonnistuneita. • Prototyypit voidaan jakaa kahteen kategoriaan: • Requirements prototyping: kun protoilun avulla on saatu halutut asiat selville, niin prototyyppi heitetään roskiin. • Evolutionary prototyping: ei lähdetä liikkeelle risukasan kyhäämisestä, vaan prototyyppi on osa lopullista tuotetta. tMyn
Toteutus • Tässä vaiheessa toteutetaan tietokanta ja sen taulut datan määrittelykielellä (DDL, Data Definition Language). • Tuo työ voidaan tehdä puhtaasti SQL-käskyillä tai sitten DBMS:n työkalulla, joka peittää graafisen käyttöliittymän alle tekniset yksityiskohdat. • Sovellusohjelma toteutetaan vaikkapa PHP:llä tai C#:lla. • Sovellusohjelmaan on sulautettu datan käsittelykielellä (DML, Data Manipulation Language) tehdyt tietokantatapahtumat. tMyn
Datan konversio ja siirto • Tämä vaihe on tarpeen silloin kun siirrytään uuteen tietokantaympäristöön. • Työ voi olla valtava, eikä se missään tapauksessa onnistu käsipelillä. • Uuden tietokantaympäristön tulee tarjota apuohjelma (utility program) työn tekemiseen. tMyn
Käyttöönottotestaus • Parasta olisi, että testaajat joukossa olisi lopullisen tuotteen käyttäjiä. • Testaus on työvaihe, joka seuraa rinnalla koko tuotteen elinkaaren ajan. tMyn
Ylläpito • Tässä vaiheessa seurataan järjestelmän suorituskykyä. • Jos muutoksia tapahtuu (heikennyksiä), joudutaan toiminnan virittämiseen ja mahdollisesti joudutaan tekemään muutoksia tietokannan rakenteeseen. • Sovellusohjelmaa joudutaan ylläpitämään, ja mahdollisesti joudutaan toteuttamaan uusia piirteitä. tMyn