|
Ohjelmistotiede, 30 op |
Syventävät opinnot
Antti Valmari
- Kyky suunnitella ja toteuttaa poikkeuksellisen vaativia ohjelmia.
- Hyvä pohja ohjelmistoalan jatko-opinnoille.
- Teoreettisen tietojenkäsittelytieteen perustiedot ja kyky soveltaa niitä ohjelmistotyössä.
- Syvällinen ymmärrys ohjelmistoalan teknologisesta perustasta.
Opintokokonaisuus | Opintopisteet | P/S |
Ohjelmistotekniikka | 25 op | Pakollinen |
OHJ-2050 Ohjelmointikielten periaatteet kannattaa suorittaa jo Ohjelmistotekniikan aineopinnoissa.
Opintojakso | Opintopisteet | Vaihtoehtoisuus |
OHJ-1750 Ohjelmistotekniikan diplomityöseminaari | 1 op | 1 |
OHJ-1760 Ohjelmistotekniikan diplomityöseminaariesitys | 0 op | 1 |
OHJ-2050 Ohjelmointikielten periaatteet | 5 op | |
OHJ-2156 Analysis of Algorithms | 4 op | |
OHJ-2206 Design and Implementation of Data Structures | 5 op | |
OHJ-2306 Introduction to Theoretical Computer Science | 6 op | |
OHJ-2906 Software Science Project | 5 op | 2 |
Yhteensä | 26 op |
1. Pakollinen vain, jos diplomityö tehdään tähän syventävään opintokokonaisuuteen.
2. Opintojakson sijaan voidaan suorittaa OHJ-4500 Lausekielten toteutustekniikka. Jos opiskelija suorittaa myös jonkin muun Ohjelmistotekniikan syventävän opintokokonaisuuden ja suorittaa siihen kuuluvan projektityön, hänen ei tarvitse suorittaa Ohjelmistotieteen projektityötä. Tällöin täydentäviä opintoja on valittava vastaavasti enemmän, jotta 30 op tulee täyteen.
Vaihtoehtoisista opintojaksoista on suoritettava ainakin yksi.
Valittava vähintään 5 pisteen edestä opintojaksoja
Opintojakso | Opintopisteet |
OHJ-2506 Program Verification | 5 op |
OHJ-2556 Artificial Intelligence | 6 op |
OHJ-2606 State Machines | 5 op |
OHJ-2656 Varied Topics in Algorithmics | 5 op |
OHJ-2700 Tietokonegrafiikka | 6 op |
Yhteensä | 27 op |
Täydentäviksi opintojaksoiksi kelpaavat kaikki Ohjelmistotekniikan laitoksen tarjoamat vähintään aineopintotasoiset opintojaksot.
Listasta täydennetään opintokokonaisuuden laajuuteen (30)
Ohjelmistotiede soveltuu niille, jotka haluavat ymmärtää ohjelmistojen tekniikkaa syvällisesti, tuntea siihen liittyviä teoreettisia tuloksia ja kehittää ohjelmointitaitonsa huippuunsa. Ala vaatii valmiuksia matemaattis-loogiseen ajatteluun.