Kevätlukukausi 2009

Kieliopinnot

 
582505 Äidinkielinen viestintä (3 op)
N.N.
Suoritetaan tieteellisen kirjoittamisen kurssilla. <br> <strong>Toinen kotimainen kieli ja vieras kieli suoritetaan Kielikeskuksessa.</strong> 
 

Tieto- ja viestintätekniikan opinnot

 
581324 Tietokone työvälineenä (1 op)
N.N.
Suoritetaan Johdatus tietojenkäsittelytieteeseen -kurssin yhteydessä. 
 
582506 Tutkimustiedonhaku (1 op)
N.N.
Suoritetaan tieteellisen kirjoittamisen kurssilla. 
 
582514 TVT-ajokortti (3 op)
N.N.
Suoritetaan Johdatus tietojenkäsittelytieteeseen -kurssin yhteydessä. 
 

Muut opinnot

 
584402 Harjoittelu tai työelämään orientoituminen (1 - 3 op)
N.N.
Suoritetaan ohjelmistotuotantoprojektin yhteydessä (1 op:n suuruisena). Tietotekniikka-alan ammattitehtävissä työskentelyn perusteella voi hakemuksesta saada lisäksi 2 op:n suorituksen. 
 
582507 Henkilökohtainen opintosuunnitelma ja osallistuminen opettajatuutorointiin (2 op)
Sini Ruohomaa
Syksyllä 2008 (keväällä 2009) aloittaville pääaineopiskelijoille. Opintojakso jatkuu koko kandidaatintutkinnon ajan. 
 
582513 Opiskelutekniikka (2 op)
N.N.
Suoritetaan Johdatus tietojenkäsittelytieteeseen -kurssin yhteydessä. 
 
582510 Henkilökohtainen opintosuunnitelma (FM-HOPS) (1 op)
N.N.
Syksyllä 2008 (keväällä 2009) maisteriopinnot aloittaville pääaineopiskelijoille. Opintojakso jatkuu koko maisterintutkinnon ajan.  
 
584403 Syventävä harjoittelu tai työelämään orientoivat opinnot (2 - 6 op)
N.N.
Tietotekniikka-alan vaativissa ammattitehtävissä työskentelyn perusteella hakemuksesta, 581387 Tietotekniikka: Nyt! (3 op) tai muu soveltuva opintojakso. 
 

Perusopinnot

 
582102 Johdatus tietojenkäsittelytieteeseen (4 op)
Jussi Kangasharju
 
 
581325 Ohjelmoinnin perusteet (5 op)
Otto Nurmi 13.01.-19.02. ti 13-16, to 14-16 B123
Kurssilla perehdytään algoritmien laatimiseen ja nykyaikaisen ohjelmoinnin perusideoihin. Opiskelijalta ei edellytetä ennakkotietoja ohjelmoinnista. Kurssi perustuu verkkomateriaaliin. Huom.: Kurssin harjoitukset alkavat jo ensimmäisellä luentoviikolla ja toteutetaan opintopiireinä. Kurssikoe ?? ??.??. klo ??-??. 
 
582103 Ohjelmoinnin jatkokurssi (4 op)
Otto Nurmi 10.03.-23.04. ti, to 14-16 B123
Kurssilla perehdytään olio-ohjelmoinnin perustekniikoihin. Painopiste on kielen perusvälineiden käytössä; esimerkkinä käytetään Java-kieltä. Esitiedot: Ohjelmoinnin perusteet. Kurssi perustuu verkkomateriaaliin. Huom.: Kurssin harjoitukset alkavat jo ensimmäisellä luentoviikolla ja toteutetaan opintopiireinä. Kurssikoe ?? ??.??. klo ??-??. 
 
581328 Tietokantojen perusteet (4 op)
Pirjo Moen 11.03.-24.04. ke 10-12 A111, pe 10-12 B123
Kurssilla tutustutaan tiedon esitysmuotoihin ja tiedon hakuun suurista tietomääristä. Erityisenä painopisteenä ovat relaatiotietokannat, joiden kohdalla perehdytään toisaalta teoreettiseen perustaan ja toisaalta tietokannan käytännön käsittelyyn SQL-kielen avulla. Kurssilla opitaan myös perustiedot relaatiotietokantojen suunnittelusta. Kurssin pääoppimateriaali: Laine H.: Tietokantojen perusteet, HY/TKTL, 2006. Laine H.: Tietokantojen perusteet verkkokurssimateriaali, HY/TKTL, 2005. Kurssikoe ?? ??.??. klo ??-??. 
 
58160 Ohjelmoinnin harjoitustyö (periodi III) (4 op)
Tomi Pasanen 12.01. ma 10-12 D122, 02.02. ma 10-12 D122
Esitiedot: Ohjelmoinnin jatkokurssi (Java-ohjelmointi) ja Ohjelmistojen mallintaminen (Ohjelmistotekniikan menetelmät). 
 
58160 Ohjelmoinnin harjoitustyö (periodi IV) (4 op)
Tomi Pasanen 09.03. ma 10-12 D122, 30.03. ma 10-12 D122
Esitiedot: Ohjelmoinnin jatkokurssi (Java-ohjelmointi) ja Ohjelmistojen mallintaminen (Ohjelmistotekniikan menetelmät). 
 

Aineopinnot (pakolliset opintojaksot)

 
58131 Tietorakenteet (8 op)
Patrik Floréen 13.01.-19.02. ti, to 10-12 A111, 10.03.-23.04. ti, to 10-12 A111
Perustietorakenteet kuten pinot, jonot, puut ja verkot sekä niiden käsittelyalgoritmit. Esitiedot: Kurssien Ohjelmoinnin jatkokurssi (Java-ohjelmointi) ja Johdatus diskreettiin matematiikkaan suoritukset (tai esitietokoe). Huom: Kurssin harjoitukset alkavat jo ensimmäisellä luentoviikolla. Kurssikokeet ?? ??.??. klo ??-?? ja ?? ??.??. klo ??-??. 
 
581305 Tietokoneen toiminta (4 op)
Teemu Kerola 09.03. ma 12-14 B119, ma 14-16 B123, 16.04. to 12-14 B119, 17.04. pe 12-14 B123
Kurssilla perehdytään tietokoneohjelman suoritukseen, tietokonelaitteiston komponentteihin sekä laitteiston ja käyttöjärjestelmän luomaan ohjelman suoritusympäristöön. Esitiedot: Ohjelmoinnin perusteet. Monimuotokurssi sisältäen verkkoluentoja sekä opintopiirissä tehtäviä verkkotehtäviä, harjoitustehtäviä ja projekteja. Huom: Kurssin harjoitukset alkavat jo ensimmäisellä luentoviikolla. Kurssikirja: Stallings W.: Computer Organization and Architecture (7th ed.), Prentice Hall, 2006. Kurssikoe ?? ??.??. klo ??-??. 
 
582202 Tietoliikenteen perusteet (4 op)
Liisa Marttinen 12.01.-18.02. ma, ke 12-14 A111
Kurssi tutustuttaa tietoliikenneverkkojen rakenteeseen, palveluihin ja erityisesti Internet-verkon perusprotokolliin. Huom: Kurssin harjoitukset alkavat jo ensimmäisellä luentoviikolla. Kurssikirja: Kurose J. F., Ross K. W.: Computer Networking, A Top-Down Approach (4th ed.), Addison-Wesley, 2008. Kurssikoe ?? ??.??. klo ??-??.  
 
582201 Käyttöliittymät (4 op)
Antti Leino 14.01.-20.02. ke, pe 14-16 A111
Konkreettinen peruskurssi graafisten käyttöliittymien suunnittelusta käyttötilanteiden pohjalta. Hyvät ja huonot käyttöliittymäratkaisut opetellaan erottamaan simuloimalla tosielämän käyttötilanteita. Toisena arviointimenetelmänä tutustutaan käytettävyystestaukseen. Kurssikoe ?? ??.??. klo ??-??. 
 
58110 Tieteellisen kirjoittamisen kurssi (10 op)
Antti Leino 12.01.-16.02. ma 12-14 CK112
Kurssilla opitaan tieteellisen esityksen (tutkielman, raportin, julkaisun) laatimiseen tarvittavia taitoja: lähdemateriaalin hakua ja käyttöä, esityksen jäsentämistä sekä kirjallista ja suullista esitystaitoa. Opiskelijat suorittavat kurssilla kandidaatintutkielman (6 op), äidinkielisen viestinnän (3 op), tutkimustiedonhaun (1 op) sekä kypsyysnäytteen. Kypsyysnäyte ?? ??.??. klo ??-??.  
 
581259 Ohjelmistotuotanto (4 op)
Pietu Pohjalainen 13.01.-20.02. ti 16-18, pe 10-12 CK112
Ohjelmistotuotanto-kurssilla opetetaan ohjelmistotuotantoprojektien hallinnan ja työvaiheiden perusteet. Tarkoitettu suoritettavaksi 2. opiskeluvuoden lopulla, kun vähintään 40 opintopistettä pakollisia opintoja on suoritettuna. Kurssikirja: Ian Sommerville, Software Engineering (8th ed.), Addison-Wesley, 2007. Kurssikoe ?? ??.??. klo ??-??. 
 
581260 Ohjelmistotuotantoprojekti (9 op)
Pietu Pohjalainen
Opiskelijat jaetaan ryhmiin, joiden tehtävänä on vetää läpi 14 viikon mittainen ohjelmistoprojekti. Työssä käydään läpi ohjelmistoprosessin osavaiheet vaatimusmäärittelystä testaukseen. Projektin tuloksena saadaan asiakkaan vaatimukset täyttävä ohjelmisto ja dokumentaatio. Esitiedot: Ohjelmistotuotanto ja Tietorakenteiden harjoitustyö. Opiskelijat suorittavat samalla työelämään orientoinnin (1 op). 
 
58161 Tietorakenteiden harjoitustyö (periodi III) (4 op)
Otto Nurmi
Esitiedot: Tietorakenteet. 
 
58161 Tietorakenteiden harjoitustyö (periodi IV) (4 op)
Otto Nurmi
Esitiedot: Tietorakenteet. 
 
582203 Tietokantasovellus (periodi III) (4 op)
Pirjo Moen 12.01. ma 16-18 B222
Kurssilla perehdytään tietokantaohjelmointiin ja yksinkertaisten web-sovellusten rakenteisiin sekä web-sovelluksen toteutukseen. Kurssilla harjoitellaan tietokantasuunnittelua sekä tietokannan pystytystä ja hyväksikäyttöä. Kurssin jälkeen opiskelija tuntee joitakin tietokanta- ja web-ohjelmoinnin tekniikkoja ja osaa laatia yksinkertaisia web-sovelluksia. Kurssin pääosan muodostaa harjoitustyö. Esitiedot: Tietokantojen perusteet ja Ohjelmistojen mallintaminen (Ohjelmistotekniikan menetelmät). 
 
582203 Tietokantasovellus (periodi IV) (4 op)
Pirjo Moen 09.03. ma 16-18 B222
Kurssilla perehdytään tietokantaohjelmointiin ja yksinkertaisten web-sovellusten rakenteisiin sekä web-sovelluksen toteutukseen. Kurssilla harjoitellaan tietokantasuunnittelua sekä tietokannan pystytystä ja hyväksikäyttöä. Kurssin jälkeen opiskelija tuntee joitakin tietokanta- ja web-ohjelmoinnin tekniikkoja ja osaa laatia yksinkertaisia web-sovelluksia. Kurssin pääosan muodostaa harjoitustyö. Esitiedot: Tietokantojen perusteet ja Ohjelmistojen mallintaminen (Ohjelmistotekniikan menetelmät). 
 

Aineopinnot (valinnaiset opintojaksot)

 
582303 Verkkosovellusten toteuttaminen (7 op)
Markku Kojo 13.01.-18.02. ti 12-14, ke 14-16 C221, 10.03.-11.03. ti 12-14, ke 14-16 C221
Kurssilla opitaan käytännöllisiä valmiuksia TCP/IP-pohjaisia tietoliikenneyhteyksiä käyttävien sovellusten suunnitteluun ja toteuttamiseen sekä sovelluskehitystyöhön Unix-ympäristössä. Esitiedot: C-ohjelmointi, Tietoliikenteen perusteet, Rinnakkaisohjelmointi, Tietorakenteiden harjoitustyö tai vastaavat tiedot. Kurssiin kuuluu harjoitustyö. Luennot pääosin periodilla III; harjoitukset ja harjoitustyö jatkuvat periodille IV. Suositeltava kurssikirja: Stevens W. R., Fenner B., Rudolf A.M.: UNIX Network Programming, Volume 1 (3rd ed.), Addison-Wesley, 2004. Erilliskokeeseen voivat osallistua vain ne, jotka ovat suorittaneet kurssiin kuuluvan harjoitustyön ennen koetta. Kurssikoe ?? ??.??. klo ??-??. 
 

Syventävät opinnot

 
582421 Satunnaisalgoritmit (8 op)
Jyrki Kivinen 12.01.-18.02. ma, ke 10-12 B222, 09.03.-22.04. ma, ke 10-12 B222
Satunnaisalgoritmeissa tarvittavia todennäköisyyslaskennan tekniikoita. Satunnaisalgoritmien suunnitteluperiaatteita. Esimerkkejä mm. verkkoteoriasta, tietorakenteista ja laskemisesta. Esitiedot: Algoritmien suunnittelu ja analyysi sekä Johdatus todennäköisyyslaskentaan tai vastaavat tiedot. Kurssikirja: M. Mitzenmacher, E. Upfal. Probability and Computing: Randomized Algorithms and Probabilistic Analysis. Cambridge University Press 2005. Kurssikokeet ?? ??.??. klo ??-?? ja ?? ??.??. klo ??-??. 
 
582634 Tiedon louhinta (4 op)
Marko Salmenkivi 11.03.-24.04. ke 12-14, pe 10-12 B222
Tiedon louhinnassa tutkitaan usein suuria aineistoja, joista pyritään löytämään uutta, mielenkiintoista ja hyödyllistä tietoa. Kurssi antaa yleiskuvan tiedonlouhintaprosessin eri vaiheista, tyypillisistä tiedonlouhintatehtävistä ja niissä käytetyistä menetelmistä. Kurssin painopiste on toistuvien hahmojen etsinnässä ja satunnaistamismenetelmissä. Esitiedot: Tietorakenteet (tai vastaavat tiedot) sekä ohjelmointitaito. Erilliskokeessa kurssin voi suorittaa myös kirjatenttinä tenttimällä teoksen Tan P., Steinbach M. & Kumar V.: Introduction to Data Mining. Pearson, 2006. Kurssikoe ?? ??.??. klo ??-??. 
 
582636 Todennäköisyysmallit (4 op)
Petri Myllymäki 13.01.-19.02. ti, to 16-18 B222
Johdatus bayesiläiseen mallintamiseen ja data-analyysiin. Kurssilla keskitytään erityisesti monimuuttujamenetelmiin ja Bayes-verkkoihin. Esitietovaatimus: Johdatus koneoppimiseen tai vastaavat tiedot. Kurssikoe ?? ??.??. klo ??-??.  
 
582638 Unsupervised Machine Learning (4 - 6 op)
Aapo Hyvärinen 11.03.-24.04. ke, pe 14-16 C222
Unsupervised learning is one of the main streams of machine learning, and closely related to exploratory data analysis and data mining. This course describes some of the main methods in unsupervised learning. In recent years, machine learning has become heavily dependent on statistical theory which is why this course is somewhere on the borderline between statistics and computer science. Emphasis is put both on the statistical (rather Bayesian) formulation of the methods as well as on their computational implementation. Prerequisites: Bachelor's degree recommended. Mathematics: basic courses in analysis (including Vector Analysis), Linear Algebra I&II, Introduction to Probability and Introduction to Statistical Inference. Computer Science: Introduction to Machine Learning and Probabilistic Modelling or their previously lectured counterpart Computational Data Analysis I. Course exam ??? ??th April from ??.00 to ??.00. 
 
582633 Diskreetin optimoinnin harjoitustyö (periodi III) (2 op)
Juha Kärkkäinen
Optimointialgoritmin toteuttaminen ja optimointiohjelmiston käyttäminen. Esitiedot: Diskreetti optimointi. 
 
582635 Tiedon louhinnan harjoitustyö (periodi IV intensiivijakso) (2 op)
Marko Salmenkivi
Kurssilla sovelletaan tiedon louhinnan menetelmiä käytäntöön. Opiskelija voi suorittaa opintojakson kahdella tavalla: joko 1) toteuttamalla tehtävänä annetun louhinta-algoritmin ja analysoimalla sillä annettua aineistoa; tai 2) louhimalla tietoa annetusta aineistosta laajemmalla menetelmien kirjolla käyttäen esim. jotakin soveltuvaa valmisohjelmistoa. Kummassakin vaihtoehdossa opiskelija kirjoittaa työskentelynsä tuloksista tutkimusraportin. Esitiedot: Tiedon louhinta. 
 
582637 Todennäköisyysmallien harjoitustyö (2 op)
Petri Myllymäki 12.03.-23.04. to 16-18 B222
Harjoitustöissä toteutetaan ja testataan todennäköisyysmallinnuksen menetelmiä, ja tulokset raportoidaan kirjoittamalla tutkielma ja pitämällä posteriesitelmä. Esitiedot: Todennäköisyysmallit.  
 
582641 Autonomisten järjestelmien yhteistoiminta (4 op)
Lea Kutvonen 10.03.-24.04. ti, pe 12-14 D122
Globaali verkottuminen ja käytettävissä olevien palveluiden korostuminen muodostavat monitahoisen haastejoukon ohjelmistoille ja sovellusalustoille. Kurssilla keskitytään itsenäisten palvelua tuottavien ohjelmistojen yhteistoiminnan uusiin haasteisiin ja mahdollisuuksiin. Erityisesti tutustutaan sovellusalustoihin liittyviin mekanismeihin, joilla eri yhteentoimivuuden osatekijöitä voidaan hallita palveluverkostoissa. Esitiedot: Hajautetut järjestelmät tai Ohjelmistoarkkitehtuurit. Kurssikoe ?? ??.??. klo ??-??. 
 
581366 Spesifioinnin ja verifioinnin perusteet (4 op)
Timo Karvi 14.01.-20.02. ke, pe 12-14 D122
Tavoitteena on oppia mallintamaan prosesseja siirtymäsysteemeihin perustuvilla formalismeilla ja ymmärtää sekä ekvivalensseihin että temporaalilogiikkaan perustuvan verifioinnin periaatteet. Luentomateriaalina käytetään Timo Karvin monistetta, joka on saatavissa kurssin kotisivulta pdf-muodossa. Kurssikoe ?? ??.??. klo ??-??.  
 
581365 Tietokoneen rakenne (4 op)
Tiina Niklander 10.03.-23.04. ti, to 14-16 B222
Kurssilla perehdytään tietokonelaitteiston alemman tason peruspiirteisiin, kuten esim. konekielen rakenteeseen, liukuhihnan toimintaan sekä prosessorin ja muistihierarkian toteutukseen. Esitiedot: Tietokoneen toiminta. Huom: Kurssin harjoitukset alkavat jo ensimmäisellä luentoviikolla. Kurssikirja: Stallings W.: Computer Organization and Architecture (7th ed.), Prentice Hall, 2005. Kurssikoe ?? ??.??. klo ??-??. 
 
581359 Ohjelmistoprosessit ja ohjelmistojen laatu (4 op)
Juha Taina 10.03.-23.04. ti, to 10-12 CK112
Kurssilla käsitellään ohjelmiston laadun komponentteja ja niiden mittaamista sekä eräitä keskeisiä ohjelmistoprosessimalleja. Kurssikirja: Fenton N.E., Pfleeger S. L.: Software Metrics: A Rigorous and Practical Approach (2nd ed.), International Thomson Computer Press 1996. Kurssikoe ?? ??.??. klo ??-??. 
 
581362 Ohjelmointikielten periaatteet (4 op)
Arto Wikla 10.03.-23.04. ti 12-14, to 14-16 C222
Ohjelmointikielten käsitteet ja rakenteet, kielten kehitys ja toteutus, ohjelmointiparadigmat. Kurssikirja: Scott M.: Programming Language Pragmatics (2nd ed.), Morgan Kaufmann, 2006. Kurssikoe ?? ??.??. klo ??-??. 
 
582217 Semanttinen web (4 op)
Juha Puustjärvi 12.01.-20.02. ma, pe 8-10 D122
Kurssi antaa kokonaiskuvan semanttisen webin käsitemallista (ontologia) ja teknologioista sekä niiden soveltamisesta organisaatioiden tietojärjestelmissä. Esitiedot: Tietokannan suunnittelu ja XML-metakieli. Kurssikoe ?? ??.??. klo ??-??. 
 
582403 Tietovarastot (4 op)
Seppo Sippu 14.01.-19.02. ke, to 14-16 C222
Tietovaraston (data warehouse) mallinnus. Tietovaraston hakemistorakenteet. Tosiaikainen tiedonjalostus (OLAP). Materiaalistettujen näkymien valinta ja ylläpito. Materiaalistettuja näkymiä hyödyntävä kyselynkäsittely. Tietovaraston lataus. Esitiedot: Tietokannan suunnittelu. Kurssikoe ?? ??.??. klo ??-??. 
 
582483 Biological Sequence Analysis (6 op)
Esko Ukkonen 12.01.-17.02. ma, ti 14-16 D122
The course covers the basic probabilistic methods for modelling and analysis of biological sequences. Prerequisities: Introduction to Bioinformatics and basics of probability calculus. Course book: Durbin R., Eddy S., Krogh A. and Mitchinson G.: Biological sequence analysis, Cambridge University Press, 1998. Course exam ??? ??th February from ??.00 to ??.00. 
 
582605 Metabolic Modeling (4 op)
Juho Rousu 10.03.-24.04. ti, pe 14-16 B119
Computational methods in the analysis of metabolic networks, including graph theoretic and stoichiometric approaches, and the analysis of metabolic fluxes. Prerequisites: 582313 Introduction to Bioinformatics, Basics of Linear Algebra. Course exam ??? ??th ??? from ??.00 to ??.00. 
 

Seminaarit

 
58304101 Seminaari: Muistihierarkia-algoritmit (3 op)
Juha Kärkkäinen 12.01.-16.02. ma 12-14 C220, 09.03.-20.04. ma 12-14 C220
 
 
58309101 Seminaari: Tiedon louhinta verkoista (3 op)
Hannu Toivonen 13.01.-17.02. ti 10-12 C220, 10.03.-21.04. ti 10-12 C220
 
 
58309104 Seminar: Intelligence in the Real World (3 op)
Tei Laine 15.01.-19.02. to 10-12 C220, 12.03.-23.04. to 10-12 C220
 
 
58309102 Seminaari: Palvelusuuntautuneet järjestelmät (3 op)
Lea Kutvonen, Toni Ruokolainen 13.01.-17.02. ti 14-16 C220, 10.03.-21.04. ti 14-16 C220
 
 
58309105 Seminar: Peer-to-Peer Systems (3 op)
Jussi Kangasharju 12.01.-16.02. ma 14-16 C220, 09.03.-20.04. ma 14-16 C220
 
 
58305104 Ohjelmistotekniikan pro gradu -seminaari (3 op)
Jukka Paakki 13.01.-17.02. ti 14-16 C221, 10.03.-21.04. ti 14-16 C221
 
 
58305103 Seminaari: Ohjelmistotuotanto ja tietokonepelit (3 op)
Juha Vihavainen 15.01.-19.02. to 12-14 C220, 12.03.-23.04. to 12-14 C220
 
 
58309103 Seminaari: Tietokannat nyt (3 op)
Jan Lindström 15.01.-19.02. to 16-18 C220, 12.03.-23.04. to 16-18 C220
 
 

Jatko-opinnot

 
582710 Jatko-opintoseminaari (6 op)
Jussi Kangasharju, Hannu Toivonen, Juho Rousu 23.01. pe 12-16 B222, 20.03. pe 12-16 B222