Bachelor i programvareutvikling - BPU

Innledning

Bruk av datateknologi er blitt en naturlig og helt nødvendig del av folks tilværelse både privat og i jobb/skole-sammenheng. De aller fleste er vanlige brukere av løsningene, og nøyer seg med å anvende de nye spennende teknologiene. Har du derimot interesse av å bli en av dem som former og videreutvikler morgendagens IT-systemer er et Bachelor-studium innen Programvareutvikling et godt valg.

Etter endt studium vil du sitte med etterspurt kompetanse og oppleve faglig utfordrende oppgaver i yrkeskarrieren. Datastudentene ved HiG har lenge vært blant landets ledende på utvikling av programvare. Dette har ført til at HiG-studenter, basert på sine hovedprosjekter, har vunnet den prestisjetunge Rosing-prisen for studenter tre ganger siden 2002. Næringslivet etterspør jevnlig programvareutviklere. Med bakgrunn i dette og ut fra utviklingen innen datafagfeltet de siste ti år (dokumentert gjennom IEEE/ACMs Computing Curricula), har HiG som eneste i landet etablert en egen bachelorutdanning innen programvareutvikling.

Gå direkte til emnetabell

Studiets varighet, omfang og nivå

Studiet er en 3-årig utdanning (180 studiepoeng) på lavere grad (Syklus 1) der kandidatene tildeles graden Bachelor i programvareutvikling (engelsk: Bachelor of Science in Software Engineering). Studiet går over seks semestre, og hvert semester består av tre emner som undervises parallelt.

Etter endt studium er man kvalifisert til å jobbe med utvikling og vedlikehold av ulike typer programvare. Studiet kvalifiserer til opptak ved IT-relaterte masterstudier. Siden hele studiet er bygd opp med utgangspunkt i internasjonale standarder for tre-årige laveregrads datautdanninger, er det godt tilrettelagt for overgang til utenlandske mastergradsstudier.

Forventet læringsutbytte

Uteksaminerte kandidater skal ha kunnskap innen utvikling og vedlikehold av programvare. De skal kunne anvende kunnskapene til å utforme IT-løsninger som tilfredsstiller de krav brukerne stiller. For å bli i stand til dette opparbeides det gjennom studiet en forståelse for og ferdigheter innen hele arbeidsprosessen, fra man har en idé om en ny programvare til en fungerende løsning settes i drift.

Gjennom studiet opparbeider studenten kompetanse innen:

  • Grunnleggende informatikkemner: For å kunne lage fungerende programvare skal kandidatene ha kunnskap om datamaskinarkitektur, operativsystemer, informasjonssikkerhet og databaser
  • Systemutvikling: Kandidatene skal kjenne ulike måter å legge opp systemutviklingsprosesser på og ha god kunnskap innen utarbeidelsen av kravspesifikasjon. De skal ut fra en kravspesifikasjon være i stand til å designe en programvare på basis av ferdigheter studiet har gitt innen programvarearkitektur, www-teknologi og utforming av brukergrensesnitt.
  • Programmering: Utviklernes viktigste redskap er å kunne programmering. Kandidatene skal opparbeide god forståelse for hvordan man skriver effektiv programkode. De skal beherske både strukturerte og objektorienterte programmeringsspråk samt ha evnen til å tolke og videreutvikle eksisterende kildekode.

Studiet kvalifiserer kandidatene til yrker som systemutvikler, programvareutvikler, programmerer, IT-konsulent, web-utvikler eller systemarkitekt innen privat og offentlig sektor. Kandidatene blir kompetente til å fylle rollen som utviklingsressurs i større utviklingsprosjekter, samt å inneha rollen som prosjektansvarlig for utvikling og/eller innføring av mindre IT-systemer.

Nærlingslivsforankring:
I sitt avsluttende arbeid med Bacheloroppgaven utfører studentene et større programvareutviklingsprosjekt for aktører i næringslivet eller i tilknytning til Høgskolens forskningsmiljø. Prosjektarbeider for eksterne bedrifter gjennomføres også i enkelte emner gjennom studiet, i tillegg til at det gjennomføres ekskursjoner.

Internasjonalisering

Studentene kan velge å ta 3. eller 4. semester ved en av HiGs samarbeidsinstitusjoner i utlandet. Forutsetningen er at man finner et studiested som dekker de emnene som inngår i studieplanen det aktuelle semesteret.

Målgruppe

Studiet passer for alle som har interesse for lære seg å utvikle programvare. Det stilles ikke krav om spesielle ferdigheter innen data på forhånd, siden dette opparbeides gradvis gjennom studiet. Det er viktigere at man har motivasjon for å fordype seg i et fagfelt der rollen som brobygger mellom datateknologi og brukerne av programvaren er sentral.

Studiet passer både elever som kommer rett fra videregående skole og søkere som etter noen år i yrkeslivet har fattet interesse for utvikling av datasystemer.

Opptakskrav og rangering

Opptakskrav til studiet er generell studiekompetanse med fordypning i Matematikk R1 (2MX, 2MY eller 3MZ) (se Forskrift om opptak til høyere utdanning § 4-3).

Søkere som mangler fordypningen i matematikk kan søke opptak under forutsetning av at man gjennomfører høgskolens R1-kurs i matematikk som starter noen uker før ordinær studiestart.

Studiets innhold, oppbygging og sammensetning

Enkelte emner er felles grunnlagsemner innen informatikk mens øvrige emner er studiespesifikke og gir studentene som uteksamineres en klar faglig profil. Programvareutvikling dreier seg om å lage dataprogrammer som er stabile, effektive og brukervennlige levert til rett tid og kostnad. En programvareutvikler må kunne analysere en bedrifts IT-behov og designe en arkitektur for løsningen som skal leveres. Utviklingen av et ferdig produkt består som oftest av programmering, bruk av programvarebiblioteker og integrering mot eksisterende løsninger.

Studiet har derfor hovedfokus på programmering og systemutvikling, men dekker hele spekteret fra tekniske til anvendelsesorienterte datafag. Datatekniskeemner som Datamaskinarkitektur og Operativsystemer skal gi forståelse for den underliggende teknologiske plattformen de ulike systemene kjøres på. Programmeringsferdighetene bygges gradvis opp gjennom hele studiet i emnene Grunnleggende programmering, Objektorientert programmering, Algoritmiske metoder og WWW-teknologi. Her skal studentene ha gode anvendelsesferdigheter, samtidig med at de utfordres til å sette seg inn i ulike programmeringsspråk og utviklingsplattformer.

Parallelt med denne teknologiske tilnærmingen utvikles kandidatenes ferdigheter til også å se IT fra et anvendelsesorientert ståsted. Emnene Systemutvikling, Grafiske brukergrensesnitt, Informasjonsstrukturer og databaser, Innføring i informasjonssikkerhet og IT-ledelse gir de fremtidige utviklerne forståelse for IT fra brukernes og oppdragsgivernes ståsted.

Mot slutten av studiet brukes dette fundamentet til å fordype seg innen utvikling av helhetlig og profesjonelt anvendbar programvare. Emner som Objektorientert Systemutvikling og Programutvikling gir sammen med et stort avsluttende utviklingsprosjekt analytiske evner innen utvikling av løsninger. Dette omfatter så vel kravspesifisering og løsningsdesign, som utvikling av reelle applikasjoner med bruk av moderne utviklingsrammeverk.

20 studiepoeng er valgbare emner. Som fremtidige prosjektledere innen IT-prosjekter vil det være gunstig å ta valgemner innen organisasjon og ledelse. Emner innen databaser og informasjonssikkerhet vil også være meget relevante valgemner for fremtidige systemutviklere.

Emnebeskrivelse
For hvert av emnene i tabellen under er det utarbeidet en detaljert emnebeskrivelse. Denne gir en beskriver av læringsutbytte og innhold i emnet. Av denne fremgår også om emnet bygger på bestemte forkunnskaper som for eksempel emner tidligere i studiet. Man finner emnebeskrivelsene på høgskolens hjemmesider.

Arbeids- og undervisningsformer:
I studiet er det lagt vekt på at studentene skal erfare et mangfold av arbeids- og undervisningsformer. Gjennom studiet vil de derfor oppleve såvel tradisjonelle undervisningsmetoder som studentaktive læringsformer basert på kvalitetsreformen for høyere utdanning.

Undervisningsformer som anvendes er:

  • Forelesninger
  • Mindre prosjektarbeid og øvingsoppgaver integrert i ordinære emner
  • Store utviklingsorienterte prosjektarbeider
  • Mappearbeid

I tilknytning til dette vil studentene også erfare ulike vurderingsformer som dagseksamener, prosjektkarakterer og mappevurdering. Detaljert informasjon om arbeids-, undervisnings- og vurderingsformer finnes i emnebeskrivelsen for det enkelte emne.

Emnetabeller

1. studieår Bachelor i programvareutvikling 2010/2011

Emnekode Emnets navn O/V *) Studiepoeng pr. semester
  S1(H) S2(V) S3(H) S4(V) S5(H) S6(V)
IMT1031 Grunnleggende programmering O 10          
REA1101 Matematikk for informatikkfag O 10          
IMT1121 Innføring i informasjonsikkerhet O 10          
IMT1082 Objekt-orientert programmering O   10        
IMT2243 Systemutvikling O   10        
IMT1321 IT-ledelse O   10        
Sum: 30 30 0 0 0 0
*) O - Obligatorisk emne, V - Valgbare emne

2. studieår Bachelor i programvareutvikling 2011/2012

Emnekode Emnets navn O/V *) Studiepoeng pr. semester
  S1(H) S2(V) S3(H) S4(V) S5(H) S6(V)
IMT2021 Algoritmiske metoder O     10      
IMT2072 Ergonomi i digitale medier O     10      
IMT2261 Informasjonsstrukturer og databaser O     10      
IMT2282 Operativsystemer O       10    
IMT2291 WWW-Teknologi O       10    
Valgemne, 10 st.p. V       10    
Sum: 0 0 30 30 0 0
*) O - Obligatorisk emne, V - Valgbare emne

3. studieår Bachelor i programvareutvikling 2012/2013

Emnekode Emnets navn O/V *) Studiepoeng pr. semester
  S1(H) S2(V) S3(H) S4(V) S5(H) S6(V)
IMT3102 Objektorientert systemutvikling O         10  
IMT3281 Programvareutvikling O         10  
IMT3671 Mobile System Project O         5  
IMT3661 Programmering av mobile systemer O         5  
Valgemne, 10 st.p. V           10
IMT3912 Bacheloroppgave IMT O           20
Sum: 0 0 0 0 30 30
*) O - Obligatorisk emne, V - Valgbare emne

Valgemner

Emnekode Emnets navn O/V *) Studiepoeng pr. semester
  S1(H) S2(V) S3(H) S4(V) S5(H) S6(V)
IMT1291 Webdesign V       10    
SMF1071 Organisasjon og ledelse V       5    
IMT1381 IT Service Management V       5   5
SMF2121 Kvalitetsledelse med statistikk V       10   10
IMT2431 Datakommunikasjon og nettverkssikkerhet V       10   10
IMT1132 Risikostyring: metodikk og standarder V       10   10
IMT3591 Kunstig intelligens V       10   10
IMT3441 Database- og applikasjonsdrift V           10
IMT3541 Veiledet praksis i medie- og informatikkfag V           10
IMT3521 Introduksjon til sikkerhetsplanlegging og hendelseshåndtering V           10
Sum: 0 0 0 0 0 0
*) O - Obligatorisk emne, V - Valgbare emne