Ohjelmistotekniikan ala muodostuu ohjelmistoihin liittyvistä neljästä osa-alueesta: Ohjelmistojen suunnittelu, toteutus, testaus ja ylläpito. Olennainen osa alan osaamista ovat myös ongelmanratkaisu sekä viestintä- ja työskentelytaidot.
Ohjelmistotekniikka on monipuolinen insinöörikoulutus, jossa yhdistyvät tekninen osaaminen sekä geneeriset taidot, kuten projektiosaaminen, kriittinen ajattelu ja vuorovaikutustaidot. Mitä opinnot sitten käytännössä pitävät sisällään? Seuraavassa avaamme opintojen sisältöä tarkemmin.
Mitä ohjelmistotekniikan perusopintoihin sisältyy?
Artikkelin pääkuvassa on esitetty käsitekartta ohjelmistotekniikan perusopinnoista. Opintojen sisällöt on jaettu laitteisto-, ohjelmointi-, ongelmanratkaisu- sekä menetelmä- ja viestintäopintoihin. Lisäksi opintoihin kuuluu harjoittelua, projektityöskentelyä, sekä tutkimus- ja kehittämisosaamista.
Ohjelmistotekniikan koulutus muodostuu suurelta osin ongelmanratkaisutaidon kehittämisestä ja tämän taidon soveltamisesta erilaisiin, lähinnä ohjelmallisiin projekteihin. Tukea ongelmaratkaisutaitojen kehittämiselle antavat esimerkiksi matemaattiset taidot sekä kieliopinnot.
Matematiikan opinnot aloitetaan muun muassa lukujärjestelmämuunnoksiin perehtyen. Tästä edetään diskreetin matematiikan sovelluskohteisiin sekä todennäköisyyslaskentaan. Kielistä pakollisia ovat englanti ja ruotsi. Viestintää opiskellaan toki myös suomen kielellä.
Perusosaamiseen kuuluu myös tuntemus itse tietokonelaitteistosta, palvelimista ja erilaisista käyttöliittymistä. Opintojen edetessä ongelmanratkaisutaitojen työkalujen määrää pyritään lisäämään muun muassa tutustumalla kokonaisen ohjelmistoprojektin läpiviemiseen.
Tässä vaiheessa mukaan tulevat myös yleiset projektityöskentelyn taidot sekä työelämän yhdistäminen opiskeluun. Yhteistyössä toteutettavissa projekteissa kommunikaatiotaidot, asiantuntemus ja argumentointitaidot ovat tärkeitä ja siksi nekin kuuluvat opintosuunnitelmaan.
Ohjelmistoalan ydinosaamista on ohjelmointi sekä ohjelmistosuunnittelu
Ohjelmistoinsinöörin tärkein työkalu on ohjelmointi. Käytännössä opintojen alusta loppuun opiskellaan jatkuvasti jollain ohjelmointiaiheisella opintojaksolla.
Ohjelmointiosaaminen karttuu vaiheittain. Aluksi opetellaan ratkaisemaan tehtäviä koneellisesti eli opiskellaan algoritmista ongelmanratkaisua. Ohjelmat voivat ratkaista yksinkertaisia ongelmia, esimerkiksi henkilökohtaisen talouden budjetointia, auton polttoaineen kulutuksen optimointia tai säästösijoittamisen tavoitteita.
Myöhemmin siirrytään opettelemaan työkalujen tekoa isommassa mittakaavassa, vaikkapa verkkopalveluina. Vähitellen ratkaistavien ongelmien kompleksisuus nousee ja tiedon määrä kasvaa. Samalla opetellaan kompleksisuuden hallintaa, ammattimaisen ohjelmistokehityksen käytäntöjä sekä isojen tietomäärien analysointia.
Käytännössä karttunutta ohjelmoinnin ja suunnittelun osaamista pääsee testaamaan vuosittain yritysyhteistyönä toteutettavilla projektiopintojaksoilla, joilla ratkaistaan yritysmaailmasta tulevia tehtävänantoja.