University of Helsinki Department of Computer Science
 
Tietokantojen perusteet (581328), KEVÄT 2005
Sivut:
Harjoitukset

Harjoittelu on oleellista kurssin asioiden oppimiseksi. Kurssimateriaaliin on opiskelun tueksi upotettu pieniä kertaustehtäviä. Nämä on tarkoitettu itseopiskelun tueksi eikä niiden tekemisestä saa suorituspisteitä. Suorituspisteitä sen sijaan saa SQL-harjoittelusta Trainer-ohjelmiston avulla ja opintopiirityöskentelystä.

Harjoitukset eivät ole teoriassa pakollisia, mutta niistä saatavia pisteitä (yht. 15/60 pistettä) EI voi korvata mitenkään (ei edes aikaisemmilla kursseilla suoritettuina)! Jos ilmoittaudut kurssille etkä halua missään tapauksessa osallistua opintopiiritoimintaan, niin ilmoittaudu jono-ryhmään 99!

1. SQL harjoittelu

SQL-tietokantakyselyjä ja ylläpito-operaatioita harjoitellaan SQL-Trainer harjoitteluohjelmiston avulla. Kurssiin liittyy 40 SQL-tehtävää, jotka on jaettu NELJÄÄN ERÄÄN. Kullakin erällä on määräaika, johon mennessä hyväksytysti suoritetut tehtävät tuottavat suorituspisteitä. Tehtävä on hyväksytysti suoritettu, jos harjoitteluohjelmisto hyväksyy ratkaisun. Harjoitusten tekemiseeen voi kysyä neuvoa kurssin assistenteilta, joko opintopiiritilaisuuksien yhteydessä, kurssin keskusteluryhmässä WebCT:ssä tai sähköpostitse. Keskusteluryhmän käyttöä suositellaan. Tällöin opiskelijat voivat myös auttaa toisiaan. Tehtävien esimerkkiratkaisut liitetään kurssimateriaaliin määräajan päätyttyä. Joitakin hankalampia ratkaisuja yritetään käydä läpi luennolla, jos siihen jää aikaa.

Tehtävien määräajat:
ERÄ 1 (kyselyt K1-K4): 14.2.klo 12 (huom. pidennetty aika!)
ERÄ 2 (kyselyt K5-K16): 14.2. klo 12

ERÄ 3 (yhteenvetokyselyt Y1-Y16): 21.2. klo 12

ERÄ 4 (ylläpito-operaatiot U1-U8) : 3.3. klo 15

Linkki SQL-Traineriin ja tehtäviin!

Ennen ensimmäistä sisäänkirjautumista Traineriin LUE TARKASTI KAIKKI ALOITUSSIVULLA OLEVAT OHJEET!
Huom! Jos olet jo aikaisemminkin osallistunut kurssille ja tehnyt tehtäviä, niin ne eivät ole enää voimassa vaan sinun pitää tehdä tehtävät uudelleen saadaksesi niistä pisteitä. Tehtävissä on joitakin muutoksia ja huomioi myös, että linkin osoite on muuttunut. Voit kuitenkin käyttää vanhaa käyttäjätunnustasi ja salasanaasi.

Tarkkaile tätä sivua vihjeiden varalta.

2. Opintopiirityöskentely

Opintopiirien tarkoituksena on esimerkkitapauksia hyväksikäyttäen opetella relaatiomallin perusrakenteisiin ja tietokantasuunnitteluun liittyviä asioita. Opintopiireille on varattu 4-6 virallista kokoontumisaikaa = harjoitusryhmien ajat alla. Opintopiiriläiset voivat epävirallisesti olla yhteydessä toisiinsa myös virallisten kokoontumisaikojen ulkopuolella. Opintopiiri tutkii relaatiotietokannan suunnittelua ongelmalähtöisesti. Yhden isomman kaikki kokoontumiset kattavan suunnittelutehtävän lisäksi kullekin kokoontumiskerralle määritellään teema ja pohdittavia pikkuongelmia. Opintopiiri on ensisijaisesti opiskeluväline vaikka tuotoksesta saakin suorituspisteitä.

Kokoontumisajat (opintopiirit harjoitusryhmän sisäisiä)

HarjoitusryhmäOhjaajaAika ja paikka
1.Timo Tuominenke 16-18, B222
2.Mikko Heimolato 8-10, CK111
3.Mikko Heimolato 10-12, CK111
4.Timo Tuominento 12-14, CK107
5.Olli Almpe 10-12, DK117
6.Olli Almpe 14-16, DK117

Ensimmäinen kokoontuminen on 24.1. alkavalla viikolla. Silloin muodostetaan opintopiirit ja osallistuminen on välttämätön. Ohjaajat ilmoittavat tarkemman ryhmäkohtaisen aikataulun. Opintopiiri kokoontuu vähintään 4 kertaa (viimeinen kokoontuminen 4.3 päättyvällä viikolla) Yksi harjoituskerta on varattu SQL-harjoitusten neuvontaan.

 

  • Ensimmäisellä kokoontumiskerralla jaetaan harjoitusryhmään ilmoittautuneet noin 3-5 hengen opintopiireihin ja valitaan opintopiireille vetäjät (bonuksena vetäjä voi saada yhden lisäpisteen) ja keksitään opintopiirille nimi. Lisäksi valitaan ongelmat, joita lähdetään työstämään sekä tehdään tietotarvekartoitusta.
  • Toisella kokoontumiskerralla teemana ovat relaatiomallin perusrakenteet: avaimet, viiteavaimet, arvojoukot ja tietojen väliset riippuvuudet.
  • Kolmannella kokoontumiskerralla teemana ovat riippuvuudet ja normalisointi. Tällöin varmistutaan myös tietokantasuunnitelman toimivuudesta

    .
  • Viimeisellä kokoontumiskerralla esitellään suunnitelma muille opintopiireille ja arvoidaan muiden suunnitelmia.
  • Lopuksi jätetään Opintopiirin raportti assistentille viimeistään maanantaina 7.3 klo 16.

Opintopiireille järjestetään työtila WebCT-ympäristöön ja ryhmä julkaisee ainakin loppuraporttinsa siellä.

Opintopiirien kokoontumisten yhteydessä opintopiiri voi käyttää aikaa myös SQL-tehtävien ihmettelyyn.

Suunnittelutehtävästä

Kussakin opintopiirissä laaditaan pienehkö tietokantasuunnitelma ja laaditaan tästä kirjallinen raportti. Raportin tulee sisältää:

  • Otsikkosivu (Aiheen nimi, ryhmän kokoonpano)
  • Tietosisältökartoitus
    • UML-kaavio tai muu esitys, josta selviävät tietokohteet ja niihin liittyvät järjestelmän kannalta oleelliset tietoelementit ja hahmottelua siitä millaisilla arvoilla elementit esitetään
  • Tietokannan taulujen kuvaukset
    • Tietokantakaavio kuvana joko kurssilla esitetyssä muodossa tai jonkin tietokantasuunnittelutyökalun tarjoamassa muodossa. Kuva pitää upottaa dokumenttiin siten, että se on katsottavissa ilman mitään erityisohjelmistoja.
    • SQL:n create table lauseet kommentein varustettuina. Kommenteista tulee käydä ilmi millaisia arvoja sarakkeissa on. Katso mallia Pizza tietokannan kuvauksesta.
  • Suunnitelman laadun varmistus
    • riippuvuusanalyysi kunkin taulun osalta
    • Muutamia keskeisiä käyttötapauksia (esimerkiksi järjestelmän raportteja) ja selvitys siitä miten ne pystytään toteuttamaan tietokannan avulla = mitä tauluja ja millaisia kyselyjä tarvitaan.
    • Esimerkkitaulut (pienet muutaman rivin esimerkit taulujen sisällöstä
    • Ratkaisussa havaitut ongelmat, mikäli sellaisia löydettiin.

Teknisesti tietokantasuunnitelma toteutetaan joko MSWord yhteensopivana dokumenttina, tai PDF-, tai HTML-muotoisena dokumenttina.

Opintopiirin viimeisellä virallisella kokoontumiskerralla piiriläiset esittelevät suunnitelmansa muille ryhmän piireille. Esittelyä varten piiri laatii ainakin seuraavat kalvot

  • Ongelmaesittely
  • Tietokannan rakenne kuvana
  • Esimerkkejä taulujen sisällöstä

 

20.12.2004 Teija Kujala