Lopputyön ohjeet
Lopputyö on tämän opintojakson arvioitava työ. Lopputyö vastaa tenttiä, jonka arvosanasta määräytyy opintojakson arvosana.
Tällä sivulla kuvataan lopputyön tehtävänanto, vaatimukset, arviointikriteerit sekä mallipohjat.
Lopputyön tehtävänanto
Lopputyössä sinun tulee suunnitella, toteuttaa ja analysoida relaatiotietokanta valitsemallesi sovellukselle tai tietojärjestelmälle. Lisäksi sinun tulee suunnitella tietokantaan liittyvää tiedonhallintaa opintojaksolla opittujen tietojen pohjalta.
Lopputyö koostuu 7 pakollisesta osatehtävästä, jotka vastaavat kurssin osa-alueita. Alla on esitetty tehtävien sisällöt pääpirteittäin. Tarkemmat tehtävänannot löytyvät lopputyön sivulla.
T1: Vaatimusmäärittely
Tässä tehtävässä kirjoitetaan lyhyt kuvaus kohdealueesta ja sen tietokannan käyttötarpeesta. Kuvauksesta tulee selvitä järjestelmän kohdealueen kannalta olennaiset kohteet, niiden ominaisuudet ja kohteiden väliset suhteet. Tehtävään palautetaan valmis kohdealueen kuvaus ja tietokannan vaatimusmäärittely.
T2: Käsitteellinen mallintaminen
Tehtävä T1:ssä tehdystä vaatimusmäärittelyn perusteella piirretään ER-kaavio joko paperilla tai tietokoneella. Tehtävään palautetaan valmis kaavio.
T3: Mallin transformointi relaatioksi
Tehtävä T2:ssa tehty ER-kaavio transformoidaan relaatiokaavoiksi.
T4: Tietokannan määrittely SQL:llä ja datan lisääminen
Tehtävä T3:ssa esitetyn relaatiokaavan perusteella luodaan SQLite-tietokanta. Lisäksi tietokantaan tulee lisätä kohdealueen kannalta järkevää mallidataa.
T5: Kohdealueen kannalta olennaisten SQL-kyselyiden esittäminen
Tehtävässä tulee esitellä Tehtävä T4:ssä tehtyyn tietokantaan kohdistuvia SQL-lauseita, jotka ovat järjestelmän toiminnan kannalta olennaisia.
T6: Relaation normaalimuodon analysointi
Tehtävä T3:ssa tehtyä relaatiokaavaa tulee tarkastella normalisoinnin kannalta. Tulee osoittaa, että relaatio täyttää viiden ensimmäisen normaalimuodon (1NF, 2NF, 3NF, BCNF, 4NF) vaatimukset. Mikäli relaatio ei täytä jotain normaalimuotoa, tulee tehtävässä esitellä korjattu relaatio.
T7: Tiedonhallinnan tarkastelu
Viimeisessä tehtävässä tulee tarkastella tiedonhallintaan liittyviä vaatimuksia sovelluksessa. Esimerkiksi, onko järjestelmän tietokantaa tarve hajauttaa, onko jokin data tietovarastoinnin arvoista, tai onko relaatiotietokanta ylipäätään sopiva järjestelmän käyttöön.
Lopputyön arviointi
Lopputyön arvosana määräytyy osatehtävien perusteella. Osatehtävät puolestaan arvioidaan osatehtäväkohtaisten vaatimusten perusteella. Koko lopputyön arvosana ei ole välttämättä osatehtävien arvosanojen keskiarvo, vaan opettaja voi esimerkiksi antaa keskiarvoa korkeamman arvosanan mikäli työ on muuten esimerkillinen.
Yleisellä tasolla kaikkien osatehtävien arvioinnissa kiinnitetään huomioon seuraaviin kohteisiin:
- oikeellisuus eli kuinka hyvin opintojakson asioita on osattu soveltaa käytännössä (esimerkiksi onko transformointi tehty oikein, ovatko SQL-lauseet oikein, onko normalisointi oikein);
- laajuus eli kuinka suuri valittu työ on (esimerkiksi kuinka monta taulua on tai kuinka paljon mallidataa on laitettu tietokantaan); ja
- tarkoituksenmukaisuus eli kuinka hyvin suunniteltu tietokanta vastaa kohdealuetta (esimerkiksi onko perusavaimet valittu kohdealueen kannalta sopivaksi, onko tietokannassa juuri sitä dataa, mitä kohdealueessa tarvitaan).
Alla on esitelty opettajien käyttämä osatehtäväkohtainen arviointikehys. Saadakseen ylempi arvosana tulee myös täyttää alemman arvosanan vaatimukset. Opettaja antaa arvosanoja 2 ja 4, jos vastaus ylittää alemman tason vaatimukset, muttei kuitenkaan täysin täytä ylemmän tason vaatimuksia.
Lopputyön aikataulu ja apua
Lopputyö kannattaa aloittaa heti kurssin alettua ja edistää sitä aina, kun saat yhden kurssin osa-alueesta käytyä läpi. Lopputyö ei kannata jättää viime tippaan, sillä siinä riittää tekemistä.
Lopputyön palauttaminen tehdään lopputyön lopussa olevalla painikkeella. Huomaa, että voit palauttaa lopputyön vain kerran koko kurssin aikana! Sinulla on kuitenkin mahdollisuus korottaa lopputyön arvosana sopimalla asiasta opettajan kanssa. Lopputyö tulee palauttaa arvioitavaksi viimeistään 8.3.2024.
Apua lopputyöhön saa viikoittaisista Teams-ohjauksista sekä ottamalla yhteyttä opettajiin sähköpostitse (itka2004-k24-opet@tim.jyu.fi).
Opettaja ei tee työsi puolestasi, vaan ohjauksissa voit korkeintaan saada seuraavaa apua lopputyöhön:
- Voit pyytää opettajaa antamaan palautetta tehtävästä. Opettaja voi antaa alustavan arvion, mihin arvosanaan tietty tehtävä yltää ja mitä asioita vastauksesta puuttuu.
- Voit kysyä vinkkiä tiettyyn tehtävään liittyen. Opettaja voi auttaa osoittamalla, mistä kurssin monisteesta tai kurssin tehtävästä voi löytää apua ongelmaasi. Opettaja voi myös neuvoa muita verkosta löytyviä lähteitä ongelmaan liittyen.
- SQL-lauseiden tapauksessa ohjaaja voi avustaa kertomalla, missä kohti virhe on ja miksi se tulee.
Lopputyön tekemisessä voi myös kysyä apua kurssitovereilta, ja tätä varten Teamsiin on perustettu oma kanava ("Kysymyksiä ja apua"). Muista, että lopputyö on loppujen lopuksi yksilösuoritus, ja sinulla on vastuu ratkaista tehtävä itse!
Lopputyön aloittaminen (mallipohjat)
Lopputyö kannattaa aloittaa tutustumalla seuraavassa luvussa olevaan lopputyödokumenttiin. Sen jälkeen voit alkaa jo miettiä kohdealueen, eli millaiselle sovellukselle tai tietojärjestelmälle sekä millaiselle datan käyttötarpeelle haluaisit rakentaa tietokannan. Voit valita kohdealueen vapaasti: se voi olla jokin olemassa olevan palvelun (Facebook, Verkkokauppa, Telegram, yms.) tietokannan mallintaminen tai se voi olla jokin tekemäsi sovelluksen tietokannan suunnittelu. Sen jälkeen kirjoita kohdealuetta vastaava tietokannan tarpeen kuvaus.
Mikäli et keksi omaa aihetta tai kaipaat inspiraatiota, voit ottaa jonkin alla olevista tietokannan tarpeen kuvauksen mallipohjista. Voit muokata ne laajemmaksi tai suppeammaksi makusi mukaan.
MissäKirja.fi
"MissäKirja" on verkkopalvelu, jonka päätehtävänä on tarjota tietoa paikallisista kirjastoista ja niiden kirjakokoelmista. Palvelu mahdollistaa myös käyttäjien arvostelujen jättämisen kirjoista. Tietokantaan tulee tallentaa kolmenlaista tietoa: kirjastoja, kirjoja ja käyttäjien kirjoittamia anonyymejä arvosteluja.
Jokaisesta kirjastosta tallennetaan sen nimi ja sijainti. Nimi auttaa tunnistamaan kirjaston ja sijainti auttaa käyttäjiä löytämään kirjaston fyysisesti.
Jokaisesta kirjasta tallennetaan sen nimi. Kirjan nimi on keskeinen tieto, jotta käyttäjät voivat etsiä ja tunnistaa kirjoja kirjaston kokoelmasta. Jokainen kirja liittyy lisäksi johonkin kirjastoon. Tämä suhde on keskeinen, sillä se kertoo, missä kirjastoissa kunkin kirjan kopiot sijaitsevat. On kuitenkin mahdollista, että eri kirjastoista löytyy sama kirja.
Käyttäjien kirjoittamista arvosteluista tallennetaan arvostelun sisältö, eli teksti, joka kertoo käyttäjän mielipiteen kirjasta.
Maratoonarit
Maratoonarit on verkkosovellus, joka on suunniteltu maratonien harrastajille. Sovelluksen avulla käyttäjät voivat suunnitella maratonretkiään, löytää uusia reittejä ja jakaa kokemuksiaan muiden kanssa. Sovelluksessa on tärkeänä osana reittien, käyttäjäprofiilien, tapahtumien ja varusteiden hallinta. Sovellukselle on nyt tarkoitus suunnitella tietokanta.
Jokaiselle maratonreitille on kirjattu nimi, sijainti ja vaikeusaste. Puolestaan käyttäjäprofiiliin tallennetaan käyttäjän nimi, sähköpostiosoite ja retkeilykokemus vuosina.
Sovelluksessa voidaan luoda maratontapahtumia. Tapahtumissa on tietoa tapahtuman nimestä, ajankohdasta ja suurimmasta sallitusta osallistujamäärästä. Tapahtumassa juostaan aina vähintään yksi maratonreitti, mutta samaan aikaan voidaan juosta useampaakin reittiä.
Tapahtumissa on tietoa itse tapahtumasta, sen ajankohdasta ja paikasta.
Käyttäjät voivat osallistua yhteen tai useampaan maratontapahtumaan. Käyttäjät voivat tapahtuman jälkeen myös jättää tapahtumaan arvostelun. Arvosteluun tallenetaan arvosana sekä kirjallinen kommentti.
L-Ruokavinkki
L-Ruokavinkki on L-osuuskunnan tilaama sovellus, johon tallennetaan reseptejä. Sovellus halutaan integroita L-osuuskunnan L-supermarket-kauppaketjuun niin, että käyttäjä voi helposti tarkistaa, löytyvätkö reseptin ainesosat jostain käyttäjän valitseman L-supermarketin varastosta. Lisäksi käyttäjä voi helposti tarkistaa, mistä L-supermarketeista löytyy hänen valitsemansa reseptin tuotteita.
Tietokantaan tulee tallentaa käyttäjätietoja, resepteja, ainesosia sekä kauppoja. Käyttäjistä tallenetaan käyttäjätunnus, sähköpostiosoite ja nimi. Lisäksi käyttäjällä voi olla valittuna korkeintaan yksi lempikauppa.
Reseptistä tietokantaan tallenetaan reseptin nimi, valmistusaika minuutteina ja itse resepti tekstinä. Reseptiin kuuluu yksi tai useampi ainesosa, ja tähän suhteeseen kuuluu myös ainesosan lukumäärä ja yksikkö (esim. "kpl", "tl", "dl").
Ainesosasta tulee tallentaa sen yksilöllinen tunniste, ainesosan nimi ja valmistaja. Ainesosa voi löytyä yhdestä tai useammasta kaupasta.
Kaupasta tietokannassa on sen tunniste, nimi ja osoite. Kaupasta löytyy aina yksi tai useampi ainesosa.
These are the current permissions for this document; please modify if needed. You can always modify these permissions from the manage page.