T221-3 Ohjelmistojärjestelmät A3 (20 op)
Vastuuprofessorit: Lauri Malmi, Heikki Saikkonen, Eljas Soisalon-Soininen, Jorma Tarhio
Ohjelmistojärjestelmät A3 -moduulin tavoitteena on valmentaa ammattilaisia suurta luotettavuutta ja tehokkuutta vaativien, kuten reaaliaikaisten ja hajautettujen järjestelmien suunnitteluun ja toteutukseen. Ohjelmistojärjestelmien asiantuntijat sijoittuvat työelämässä tutkimuksen ja teollisuuden vaativiin ohjelmistotehtäviin.
Ohjelmistojärjestelmien opetuksen painopistealueita ovat tietorakenteet ja algoritmit sekä vaativat ohjelmistoteknologiat: käyttöjärjestelmät, tietokantajärjestelmät sekä ohjelmointikielet ja kääntäjät. Tehokkaiden ohjelmistojen suunnittelumenetelmät sekä ohjelmistojen suorituskyvyn arviointi kokeellisesti ja analyyttisesti ovat alan koulutuksen keskeisintä sisältöä.
Professori Saikkosen kiinnostuksen kohteet ovat ohjelmointijärjestelmät, rinnakkaisohjelmointi, käyttöjärjestelmät, hajautetut järjestelmät, sulautetut järjestelmät ja ohjelmistoarkkitehtuurit.
Professori Soisalon-Soinisen erityisiä kiinnostuksen kohteita ovat tietokantajärjestelmät sekä algoritmiset menetelmät ohjelmistojen laatimisen taustalla.
Professori Tarhio on erityisesti kiinnostunut ohjelmointikieliin ja kääntäjiin, ohjelmien visualisointiin, biolaskentaan ja merkkijonoalgoritmeihin liittyvästä tutkimuksesta.
Professori Malmin kiinnostuksen kohteina ovat tietotekniikan opetustutkimus, verkko-opetus, ohjelmien visualisointi, ohjelmien automaattinen arviointi, tietorakenteet ja algoritmit sekä kokeellinen algoritmitutkimus.
Ohjelmistojärjestelmien syventävässä moduulissa täydennetään opintoja eri ohjelmistotekniikan erikoisalueilta. Moduulin suorittamisessa keskeisenä osana on laaja projektikurssi, jossa opiskelijat joutuvat soveltamaan tietojaan ja taitojaan toteuttamalla ratkaisuja vaativiin ohjelmistoteknisiin ongelmiin.
Koodi | Kurssin nimi | op |
---|---|---|
Pakollinen projekti (jokin seuraavista): | ||
T-106.5700 | Ohjelmistotekniikan projekti | 5-10 |
T-106.5150 | Käyttöjärjestelmäprojekti | 5 |
T-76.4115 | Ohjelmistokehitysprojekti I* | 5-6 |
Valitse seuraavia kursseja siten, että 20 op täyttyy (vähintään kuitenkin kaksi luentokurssia ja korkeintaan yksi seminaarikurssi): | ||
T-93.4400 | Tekoälyn perusteet | 5 |
T-93.5500 | Logiikka- ja rajoiteohjelmointi | 5 |
T-106.4000 | Ohjelmistotekniikan laboratoriotyöt | 3-8 |
T-106.5221 | Transaktionhallinta tietokantajärjestelmissä | 5 |
T-106.5241 | Hajautetut tietokannat | 5 |
T-106.5250 | Hajautetut järjestelmät | 5 |
T-106.5300 | Embedded Systems | 5 |
T-106.5400 | Merkkijonoalgoritmit | 5 |
T-106.5450 | Kääntäjätekniikan jatkokurssi | 5 |
T-106.5600 | Concurrent Programming | 5 |
T-106.5800 | Ohjelmistotekniikan seminaari | 3-10 |
T-106.5900 | Ohjelmistotekniikan vaihtuva kurssi | 1-8 |
T-106.6200 | Ohjelmistotekniikan erikoiskurssi | 3-10 |
Yhteensä | 20 | |
* Kurssin T-76.4115 Ohjelmistokehitysprojekti aiheesta tulee sopia T-106.5700-kurssin opettajan kanssa. | ||
Huom. Projektia ei vaadita tässä moduulissa, jos opiskelija on suorittanut Hajautettujen järjestelmien ohjelmointitekniikka -moduulissa tai Sulautetut järjestelmät -moduulissa olevan projektin. |