Kursusbeskrivelser Spiludvikling og læringsteknologi Bachelor 2024

1. Semester:

Objektorienteret programmering (10 ECTS):

Kurset i objektorienteret programmering (OOP) giver de studerende en dybdegående forståelse og færdigheder i at anvende centrale principper og teknikker inden for objektorienteret design og udvikling. Ved afslutningen af kurset vil studerende kunne forstå og forklare grundlæggende programmeringskoncepter såsom variabler, metoder, løkker, branching og arrays. De vil have en solid forståelse af simple datastrukturer, herunder arrays, lister og maps, samt en dyb forståelse af klasser og objekter, herunder klassers opbygning og brugen af attributter, constructors, og metoder. De studerende vil blive dygtige til at arbejde med primitive og komplekse datatyper og forstå betydningen af visibility/access modifiers (private, protected, public) i softwareudvikling. Kurset dækker avancerede koncepter som arv, polymorfi, metode overriding, samt anvendelsen af interfaces og abstrakte klasser. Derudover vil de lære om metode overloading, indkapsling, og hvordan disse koncepter spiller en central rolle i objektorienteret programmering. Færdighedsmæssigt vil de studerende være i stand til at analysere specifikationer for at identificere og abstrahere fænomener ind i begreber, anvende disse begreber til at udarbejde klassediagrammer, og anvende et Integreret Udviklingsmiljø (IDE) til at skrive og kompilere kode. De vil også lære at implementere klasser, abstrakte klasser, og interfaces baseret på et klassediagram, og anvende klasser til at instantiere objekter samt integrere eksisterende kodebiblioteker i deres applikationer. Kompetencemæssigt vil de studerende kunne reflektere over designbeslutninger og forstå konsekvenserne af disse, anvende en programspecifikation til at gennemføre en analyse- og designfase, og anvende deres praktiske kendskab til objekt-orienteret programmering til at implementere applikationer. Kurset lægger også vægt på anvendelsen af Git til versionsstyring samt udviklingen af evnen til at formidle og præsentere de erhvervede færdigheder og kompetencer mundtligt. Indholdsmæssigt fokuserer kurset på objekt-orienteret programmering herunder koncepter som abstraktion, indkapsling, arv, og polymorfi, og forbereder de studerende til at anvende disse koncepter praktisk i design og udvikling af softwareapplikationer.

Spilprogrammering 1 (5ECTS):

Kurset i spilprogrammering 1 er designet til at introducere de studerende til de grundlæggende principper inden for spilprogrammering og -udvikling. Ved kursets afslutning vil de studerende have en solid forståelse af både generelle programmeringskoncepter som variabler, arrays, beslutningsstrukturer og objekter samt specifikke spilprogrammeringsbegreber som sprites, rooms, levels, bevægelse og pointgivning. I løbet af kurset vil de studerende udvikle færdigheder i at anvende kontrol- og beslutningsstrukturer, arbejde med simple datastrukturer, og implementere spilprogrammeringsteknikker såsom styring af point og liv, leveldesign og collision detection. Der vil blive lagt vægt på anvendelsen af en professionel spiludviklingseditor, specifikt Unity 3D, for at give de studerende praktisk erfaring med at designe og udvikle spil. Kompetencemæssigt vil kurset udstyre de studerende med evnen til at håndtere iterativ udvikling af computerspil, omsætte simple problemstillinger til algoritmer, og anvende funktionerne i en game-engine til effektivt at løse forskellige spilrelaterede udfordringer. Kursets indhold dækker en bred vifte af temaer, fra elementære programmeringsteknikker til specifikke spiludviklingskoncepter. De studerende vil opnå indsigt i typiske computerspilgenrer, herunder point ‘n’ shoot og andre arkadespil, labyrinter og strategispil, samt forskelle mellem enkeltbruger- og flerbrugerspil. Hovedmålet med kurset er at klæde de studerende på med den nødvendige viden og færdigheder til at påbegynde deres rejse inden for spiludvikling ved at lære dem elementær spilprogrammering.

Spildesign 1 (15 ECTS):

Kurset i spildesign 1 er skræddersyet til at klæde de studerende på med nødvendig teori og praktiske færdigheder til at designe og udvikle computerspil. Kurset dækker en bred vifte af centrale begreber indenfor spildesign, herunder game mechanics, game balance, spilfølelse (game feel), feedback, polish (juice), og den vigtige rolle lyd spiller i spildesign. Desuden vil studerende lære om spillertyper, belønningssystemer, navigation i spil, og kameraets relation til leveldesign, som alle er essentielle for at skabe engagerende og underholdende spiloplevelser. Vidensmål for kurset inkluderer en dyb forståelse af computerspil og deres genrer, designprocessen, og de teoretiske fundamenter for spiludvikling som digitale prototyper og brugerinddragelse, specielt i form af spillertests og deres betydning for udviklingsprocessen. Studerende vil også blive introduceret til agile udviklingsmetoder, inklusiv scrum, og vigtigheden af at forstå deltagerfunktioner og -roller i gruppearbejde. Færdighedsmæssigt vil studerende lære at analysere spil, designe computerspil fra idé til prototype, og skabe både papir- og digitale prototyper frem mod et ‘vertical slice’ af et spil. De vil udvikle evnen til at foretage systematiske brugertests og anvende agile og iterative udviklingsmetoder i deres projektarbejde. Derudover vil de lære at planlægge, segmentere, og strukturere arbejdsopgaver både individuelt og i gruppesamarbejde. På kompetenceplanen vil studerende være i stand til at planlægge og implementere udviklingen af et ‘vertical slice’ af et computerspil, fra den indledende idéfase til digital implementering. De vil også kunne udarbejde skriftlige rapporter, der redegør for designvalg og udviklingsarbejde, samt præsentere og formidle projektets resultater og underbyggende teori på en klar og forståelig måde. Kursets teoridel fokuserer på at give de studerende en dybdegående forståelse af spildesigns centrale koncepter og teorier, som danner grundlaget for at skabe innovative og engagerende spiloplevelser. Projektforløbet, der varer 10-12 uger, styrker de studerendes personlige og faglige kompetencer indenfor spiludvikling og formidling. Gennem semesterprojektet, der udarbejdes i grupper, anvender de studerende teknikker fra programmets programmeringsmoduler og viden om spildesign fra spilteorimodulet, hvilket sikrer en praktisk tilgang til læring og forståelse af spiludviklingsprocessen.

2. Semester:

Prototyper og animationer til computerspil (5 ECTS):

Kurset i prototyper og animationer til computerspil tilbyder en dybdegående indføring i teori, udviklings- og designprocesser specifikt rettet mod skabelsen af prototyper og animationer inden for computerspilsområdet. De studerende vil blive udstyret med viden om og forståelse for formens og farvens betydning i skabelsen af scener, levels, og karakterer i computerspil, samt modtagelsesteori relateret til karakteridentifikation. Kurset omfatter også en indføring i skitseteorier, papir-prototyper, herunder fail-fast og rapid-prototyping teknikker, og understreger vigtigheden af brugerinddragelse gennem spil- og spillertests i udviklingsprocessen. Vidensmålene for kurset indebærer, at de studerende vil opnå en grundig forståelse for, hvordan forskellige aspekter såsom form, farve, karakterteori, og animationsdesign spiller sammen i skabelsen af engagerende og visuelt tiltalende computerspil. De studerende vil desuden blive bekendt med, hvordan spiludvikling relaterer sig til de globale verdensmål for bæredygtig udvikling, og opnå viden om de udfordringer og dilemmaer, der kan opstå i forsøget på at opfylde disse mål. Færdighedsmål inkluderer evnen til at arbejde struktureret og iterativt med idegenerering gennem skitser, udvikle forløbsmodeller for computerspil og animationer, og udarbejde samt brugerteste papir-prototyper. Studerende vil lære at anvende form- og farvelære i designprocessen for karakterer og at integrere teorier om identifikation i karakterudvikling. Derudover vil de udvikle kompetencer til at arbejde effektivt både individuelt og i gruppesammenhænge, planlægge og strukturere arbejdsopgaver, og anvende deres fagligheder i projektrelaterede kontekster. På kompetenceplanen vil de studerende blive i stand til at planlægge og implementere anvendelsen af skitser og prototyper i hele udviklingsprocessen af computerspil, fra idégenerering til den endelige implementering. De vil kunne anvende receptionsteori i skabelsen af karakterer og designe karakteranimationer, der bygger på dybdegående forståelse for form- og farvelære. De studerende vil også opnå evnen til at reflektere kritisk over deres egen læring og udviklingsforløb, samt over anvendelsen og betydningen af skitser, prototyper, og animationer i udviklingsforløbet af computerspil. Kurset kombinerer teoretisk undervisning med praktiske opgaver og projekter, der giver de studerende mulighed for at anvende teorier, teknikker, og metoder i praksis. Dette inkluderer en videnskabelig og forskningsbaseret tilgang til spiludvikling, med særlig fokus på skitse- og prototype-teori, form- og farvelære, samt inddragelse af receptionsteoretiske positioner i udviklingen af karakterer til computerspil. Kurset understøtter de studerendes forståelse for, hvordan de kan arbejde tværfagligt med verdensmålene i deres akademiske og fremtidige professionelle praksis, og fremmer en kritisk og reflekteret tilgang til spiludvikling.

Data management (5 ECTS):

Kurset i Data Management er designet til at give de studerende en dybdegående forståelse af og praktisk erfaring med databaser og datahåndtering. De studerende vil lære at beskrive de fundamentale egenskaber ved forskellige typer af databaser, herunder både relationelle databaser og NoSQL databaser. De vil også få kendskab til regulære udtryk og grammatikker samt forskellige former for datarepræsentation, som f.eks. JSON. Vidensmålene for kurset inkluderer evnen til at designe en konceptuel model for en database baseret på en given problembeskrivelse og transformere denne konceptuelle model til en passende relationel model. Studerende vil også lære at formulere SQL-udtryk for forespørgsler på en relationel database, opbygge og anvende forespørgsler på en NoSQL database, tilgå databaser fra applikationsprogrammer, og håndtere data i forskellige datarepræsentationer. Færdighedsmålene omfatter design af databaser, både relationelle og NoSQL, og implementering af disse i praktiske anvendelser. Studerende vil udvikle evner til at anvende SQL og NoSQL forespørgsler effektivt, integrere databaser i applikationer for at understøtte datadrevne beslutninger, og arbejde med data i diverse formater. Indholdet af kurset dækker teoretiske koncepter og praktiske færdigheder i databasedesign og -implementering. De studerende vil blive introduceret til relationelle databaser og NoSQL databaser, konceptuel datamodellering, SQL og NoSQL forespørgsler, databasernes integration i applikationer, samt anvendelsen af grammatikker og regulære udtryk i datahåndtering. Gennem kurset får studerende mulighed for at anvende teori i praksis gennem øvelser og projekter, der simulerer virkelige scenarier og udfordringer inden for data management. Dette forbereder dem til at tackle komplekse databehandlingsopgaver og designe effektive databaseløsninger i deres fremtidige professionelle liv.

Spilprogrammering 2 (5 ECTS):

Kurset i spilprogrammering 2 er udviklet til at dykke dybere ind i de avancerede aspekter af spiludvikling, med særlig fokus på programmering, algoritmer, og anvendelse af designmønstre i spil. Det bygger på de grundlæggende færdigheder erhvervet i tidligere programmeringskurser og sigter mod at forbedre de studerendes evne til at læse og forstå eksisterende programmer, samt forstå og anvende en række grundlæggende algoritmer og algoritmedesignparadigmer. De studerende vil opnå dybdegående forståelse af, hvordan man analyserer, designer, og anvender avancerede algoritmer i spiludvikling. De vil blive introduceret til designmønstre og lære, hvordan disse kan anvendes til specifikke problemstillinger inden for spiludvikling. Kurset vil også dække grundlæggende principper for, hvordan databaser fungerer, som er væsentlige for udvikling af mere komplekse spil. På det praktiske plan vil de studerende udvikle evner til at programmere klasser og metoder samt arbejde med komplekse datastrukturer som lister, stakke, og træer. De vil lære at identificere problemer, der kan løses med designmønstre, og anvende disse mønstre selvstændigt. Kurset inkluderer også implementering af simple kunstig intelligens (AI) metoder for at skabe dynamisk adfærd i spil. Specifikt for Unity, vil de studerende lære at implementere avancerede spilkontrolstrukturer, debugge programmer, og anvende AI. Kompetencemæssigt vil kurset udstyre de studerende med evner til at styre iterativ udvikling af 3D-applikationer, implementere Unity-programmer på nødvendige operativsystemer, og anvende trinvis udviklingsmetoder til konstruktion af spil eller interaktive 3D-systemer. Studerende vil også lære at oversætte komplekse problemer til strukturerede, dynamiske 3D computerspil og simuleringer. Kurset fokuserer på at styrke de studerendes generelle programmeringsevner, specielt vedrørende objektorienteret programmering (OOP) og avancerede datastrukturer, parallelt med at disse evner diskuteres og implementeres inden for spiludvikling. En væsentlig del af kurset vil være en systematisk tilgang til fejlkorrektion i 3D-programmer, hvilket er essentielt for at udvikle fejlfri spil og applikationer. Gennem dette kursus vil de studerende forbedre deres tekniske færdigheder og teoretiske forståelse, hvilket gør dem i stand til at tage på mere komplekse udfordringer inden for spiludvikling og softwareudvikling generelt. Kurset lægger op til, at de studerende udvikler både selvstændige og samarbejdsorienterede projekter, hvilket forbereder dem til karrierer inden for spilindustrien og relaterede teknologiske felter.

Spildesign 2 (15 ECTS):

Kurset i spildesign 2 fokuserer på avancerede aspekter af spiludvikling, med særlig vægt på udviklingen af narrative, historiebaserede computerspil. Gennem en kombination af teoretisk undervisning og praktisk projektarbejde vil de studerende blive dygtiggjort i at skabe engagerende spilverdner, udvikle komplekse narrative strukturer, og designe overbevisende karakterer. Kurset bygger videre på grundlæggende spildesignprincipper og uddyber forståelsen af, hvordan fortælling og gameplay kan integreres for at skabe dybdegående spiloplevelser. De studerende vil opnå viden om skabelsen af spilverdner, narrative strukturer, og den kritiske rolle, som questformater spiller i forholdet mellem fortælling og spilverden. De vil forstå vigtige begreber som virtualitet, immersion, repræsentation, selvreferentialitet, samt hvordan man skaber organisering af historier gennem branching og braiding. Der vil også være fokus på spiltest og brugerinddragelse som essentielle elementer i udviklingsprocessen, samt på formelle beskrivelser af narrativitet i computerspil. Kurset vil udstyre de studerende med de færdigheder, der er nødvendige for at udfærdige et ‘vertical slice’ af et narrative historiebaseret computerspil. De vil lære at anvende iterative og agile udviklingsmetoder som Scrum, fra idégenerering og papir-prototyping til digital prototyping og spiller-tests. Studerende vil blive dygtige til at omsætte teorier og metoder om spilskrivning til egne manuskripter, storyboards og arbejdsdokumenter, og anvende disse i udviklingen af et narrativt spil. De studerende vil udvikle kompetencer, der gør dem i stand til at indgå i udviklingen af manuskripter og prototyper fra idé til ‘vertical slice’. De vil kunne planlægge og implementere spiludviklingsprojekter, foretage kritisk og kriteriebaseret feedback på spilmanuskripter og -prototyper, og løse udfordringer i projektarbejdet. Dette inkluderer evnen til at forholde sig refleksivt til egen læring og samarbejdsprocesser inden for spiludvikling. Kurset indeholder et semesterprojekt, der udføres i grupper, med vejledning fra en hovedvejleder og mulighed for at søge faglig vejledning hos semesterets undervisere. Undervisningen vil give de studerende en forskningsbaseret indføring i udvikling af computerspil, med fokus på spilverdner, narrative former, og karakterudvikling. Projektarbejdet understøttes af vejledning, der sikrer, at de studerende kan anvende teori i praksis og udvikle et ‘vertical slice’ af et spil, der demonstrerer deres dybdegående forståelse for og evne til at anvende avancerede spildesignprincipper.

3. Semester:

Statistik (5 ECTS):

Kurset i statistik er designet til at udstyre studerende med en omfattende forståelse af statistiske metoder og datanalyseteknikker, med vægt på praktiske færdigheder i dataforberedelse, visualisering og statistisk inferens. Efter at have afsluttet dette kursus vil studerende besidde viden om forberedelse af data til visualisering og analyse for at sikre, at det er pænt og klar til udforskning. De vil forstå og være i stand til at skabe histogrammer, spredningsdiagrammer og empiriske kumulative densitetsfunktioner, som er afgørende for at visualisere datafordelinger og relationer. De studerende vil opnå viden i parameterestimering, forstå hvordan man estimerer værdierne af nøglestatistiske parametre fra prøvedata. De vil lære om konfidensintervaller, der giver et interval af værdier, indenfor hvilket en parameter forventes at ligge med en vis konfidensgrad. Kurset dækker også korrelationskoefficienten, hvilket hjælper studerende med at vurdere styrken og retningen af forholdet mellem to variable. Desuden vil studerende dykke ned i regressionsanalyse og hypotesetestning, væsentlige værktøjer til modellering af relationer mellem variable og testning af teoretiske antagelser. På det praktiske plan vil de studerende udvikle færdigheder i at udføre reproducerbar forskning ved brug af RStudio og RMarkdown, hvilket sikrer, at deres arbejde let kan deles og replikeres af andre. De vil blive dygtige i at indlæse og rense datasæt med R-pakker såsom dplyr og tidyr, hvilket gør datamanagement mere effektivt. Visualisering af data ved hjælp af R-pakken ggplot2 vil også være en nøglefærdighed, der gør det muligt for studerende effektivt at kommunikere deres resultater gennem visuelle repræsentationer. Derudover vil studerende lære at gennemføre og fortolke lineær regressionsanalyse, estimere parametre og konfidensintervaller og udføre hypotesetestning. Kompetencemæssigt vil de studerende være i stand til at planlægge eksperimenter, indsamle og analysere datasæt og visualisere deres fund. De vil kunne identificere potentielle korrelationer mellem stokastiske variable og kommunikere statistiske resultater til et bredere publikum, hvilket gør deres indsigt tilgængelig for ikke-specialister. Dette færdighedssæt er afgørende for at træffe informerede beslutninger baseret på data og præsentere datadrevne argumenter i forskellige professionelle sammenhænge. Kursusindholdet inkluderer et stærkt fokus på reproducerbar forskning ved brug af RStudio og RMarkdown, der fremmer praksisser, som forbedrer troværdigheden og pålideligheden af statistiske analyser. Det dækker indlæsning og rensning af datasæt for at lette deres analyse og visualisering, hvilket adresserer de praktiske udfordringer forskere står over for i håndtering af data. Studerende vil lære at planlægge eksperimenter, indsamle og analysere datasæt, og drage konklusioner baseret på deres analyser. Gennem praktiske øvelser og projekter vil de anvende disse koncepter på virkelige data, hvilket giver værdifuld erfaring i statistisk ræsonnement og dataanalyse.

Interaktions design (5 ECTS):

Kurset i interaktionsdesign er rettet mod studerende, der ønsker at dykke ned i design og udvikling af brugerorienterede systemløsninger med fokus på optimal brugerinteraktion. Kurset tilbyder en omfattende introduktion til feltet interaktionsdesign, hvor de studerende vil lære at forstå og anvende grundlæggende principper for interaktionsdesign, herunder designprincipper og -retningslinjer, og hvordan man gennemfører en designproces fra idé til prototype. Ved kursets afslutning vil de studerende have opnået en dyb forståelse for processen bag interaktionsdesign, fra de indledende faser af idégenerering til udviklingen af prototyper. De vil også blive bekendt med metoder til brugercentreret design, hvilket omfatter teknikker til at sikre, at designprocessen forbliver fokuseret på brugernes behov og præferencer. De studerende vil opnå færdigheder i at planlægge og udføre en interaktionsdesignproces, anvende forskningsmetoder såsom desk- og user research, og integrere teori om emotion, kognition og fysiologi i deres design. Kurset vil også dække teknikker til sketching, storyboarding og prototyping, samt anvendelse af grundlæggende designregler for at skabe brugervenlige løsninger. Desuden vil de studerende lære at evaluere deres design med brugere for at sikre effektivitet og brugervenlighed. De studerende vil udvikle kompetencer til at udføre en designproces, hvor valgte interaktionsteknikker nøje tilpasses brugernes behov og praksis. De vil lære at planlægge og gennemføre evalueringer af interaktionsdesign og præsentere resultaterne på en overbevisende måde. Kurset understreger vigtigheden af at inddrage brugere i både design- og evalueringsfasen, sikrende at de endelige løsninger er både brugervenlige og effektive. Kurset tilbyder en dybdegående introduktion til interaktionsdesign, dækkende emner som brugervenlighed, brugercentreret designprocessmodeller, grundlæggende designprincipper og -retningslinjer, samt interaktionsteknikker. De studerende vil blive introduceret til user research metoder, der understøtter udviklingen af brugervenlige designs, og fremgangsmåder til evaluering af brugervenlighed. Denne viden og disse færdigheder er afgørende for udviklingen af effektive, brugerorienterede systemløsninger i en bred vifte af anvendelsesområder.

Webprogrammering 1 (5 ECTS):

Kurset i webprogrammering 1 er designet til at udstyre studerende med de nødvendige færdigheder og viden til at udvikle moderne, responsive og dynamiske webapplikationer. Kurset dækker en bred vifte af teknologier og koncepter, der spænder over hele spektret af webudvikling, inklusivt databaser, servere og klienter, for at sikre en helhedsorienteret tilgang til udvikling af webapplikationer. De studerende vil opnå forståelse for grundlæggende internetteknologier, herunder klient/server arkitektur, frontend/backend sammenhæng, og kommunikation over internettet via HTTP-protokollen og asynkron kommunikation via AJAX. De vil lære at arbejde med grundlæggende frontend teknologier som HTML, CSS, og JavaScript, inklusiv manipulation af Document Object Model (DOM) og brugen af browser-værktøjer som Chrome Inspector. Derudover vil studerende blive bekendt med backend programmeringssprog som C#, anvendelse af frameworks som .NET, samt integration med relationelle databaser ved hjælp af teknologier som LINQ og migrationsstrategier for database versionsstyring. På færdighedsniveau vil kurset udstyre de studerende til at konstruere komplette webapplikationer, der integrerer frontend, backend, og databasekomponenter. De vil lære at udvikle både statiske og dynamiske HTML-dokumenter, anvende avanceret CSS-styling, manipulere web sider asynkront med JavaScript, og designe responsive applikationer, der tilpasser sig forskellige enheders skærmstørrelser. Studerende vil også opnå færdigheder i versionering og samarbejde via Git, samt deployment af webapplikationer til online adgang. Kurset sigter efter at udvikle kompetencer i at omsætte problemstillinger til algoritmer, udarbejde brugergrænseflader og funktionalitet ud fra prototyper eller wireframes, og håndtere iterativ udvikling af webapplikationer. De studerende vil blive dygtige til at anvende og arbejde indenfor eksisterende webudviklingsframeworks og at anvende object relational mappers (ORM) for at facilitere databasetilgange. Kurset indeholder en grundig indføring i klient-server arkitektur, online kommunikationsprotokoller som HTTP, og grundlæggende webprogrammeringsteknologier, herunder HTML, CSS, og JavaScript. Det dækker desuden backend programmering med frameworks som .NET, MVC-arkitektur i webapplikationer, anvendelse af view engines som Razor Pages, arbejde med relationelle databaser og SQL, samt samarbejde og versionsstyring via Git og database migrationer. Gennem dette kursus vil studerende opnå en solid forståelse og praktiske færdigheder inden for webudvikling, der forbereder dem til at tackle udfordringerne i moderne webapplikationsudvikling.

Læringsteknologi 1 (15 ECTS):

Kurset i læringsteknologi 1 tilbyder en dybdegående forståelse af, hvordan teknologi kan integreres i undervisnings- og læreprocesser. Det kombinerer teoretisk viden om læringsteorier med praktiske færdigheder i design og udvikling af teknologibaserede læringsløsninger. Kurset fokuserer på de centrale læringsteoretiske paradigmer, understøttet af relevante aspekter af psykologi, og tilbyder indsigt i, hvordan disse kan anvendes til at skabe effektive og engagerende læringsmiljøer ved hjælp af teknologi. De vil forstå vigtigheden af brugercentreret design i udviklingen af læringsteknologi og kunne reflektere over didaktiske og læringsteoretiske problemstillinger, der opstår i forbindelse med teknologi i undervisningskontekster. Kurset udruster de studerende til at anvende læringsteori i design og analyse af læringsplatforme, planlægge og gennemføre undervisningsforløb med teknologi og udvikle prototyper af læringsapplikationer. Studerende vil lære at anvende designmetoder, herunder for-analyse og brugerinddragelse, og at implementere disse i udviklingen af læringsværktøjer. De studerende vil opnå kompetencer til at planlægge og implementere prototyper, både fysiske og digitale, for en læringsapplikation fra idéfase til digital implementering. De vil kunne udarbejde skriftlige rapporter, der dokumenterer produktets og processens centrale træk, og præsentere deres resultater mundtligt. Kurset dækker en række teoretiske og praktiske områder inden for læringsteknologi, inklusive forståelse for forskellige læringstyper som behaviorisme, kognitivisme, og konstruktivisme, samt motivation og sociale læringsprocesser. Studerende vil også blive introduceret til koncepter som eksplicit og tavs viden, læring i det 21. århundrede, og forskellen mellem læring og undervisning. I projektdelen af kurset, som varer ca. 12 uger, vil de studerende arbejde i grupper for at udvikle en interaktiv prototype til læring, anvendende deres viden fra kurser i webprogrammering, 3D-programmering, og/eller hardware og robotteknologi. Dette arbejde vil styrke de studerendes kompetencer inden for formidling og praktisk anvendelse af deres teoretiske viden i design af systemer til læring. Gennem kurset vil de studerende opnå en integreret forståelse for, hvordan læringsteknologi kan designes og anvendes til at fremme læringsprocesser, og de vil udvikle de nødvendige færdigheder til at bidrage effektivt til feltet læringsteknologi.

4. Semester:

Virtual og augmented reality 1 (5 ECTS):

Kurset i virtual og augmented reality 1 er designet til at introducere studerende til de grundlæggende koncepter og teknologier inden for feltet Mixed Reality (MR), Augmented Reality (AR), og Virtual Reality (VR). Kurset lægger vægt på at give de studerende en solid teoretisk forståelse samt praktiske færdigheder i design og udvikling af immersive og interaktive systemer, der kombinerer den fysiske verden med virtuelle elementer.De studerende vil efter kurset kunne redegøre for centrale begreber inden for MR, AR, og VR, og reflektere over anvendelsen af disse teknologier i praksis. Dette inkluderer en forståelse for, hvordan disse teknologier kan anvendes til at skabe nye oplevelser og løsninger inden for læring, simulation, og spil. På færdighedsniveau vil de studerende lære at anvende teori om Mixed Reality til analyse af 3D platforme, anvende 3D-modelleringsværktøjer, og designe interaktive systemer til AR og VR. Kurset vil også udstyre de studerende med evner til at implementere en kørende prototype af en AR eller VR-applikation, hvilket giver dem hands-on erfaring med udviklingsprocessen. De studerende vil opnå kompetencer i at udvikle AR eller VR-prototyper fra idéfasen til digital implementering. De vil lære at udarbejde en skriftlig rapport, der redegør for produktets centrale træk og udviklingsforløbet, samt at præsentere og diskutere deres arbejde og resultater. Kurset dækker en bred vifte af emner relateret til MR, AR, og VR, herunder teori om immersion, presence, cybersickness, embodiement, locomotion, og interaktion. Studerende vil blive introduceret til teknologiske platforme for AR og VR, samt grundlæggende 3D-modellering. Gennem kursusforløbet vil de studerende få mulighed for at afprøve og analysere eksisterende applikationer i feltet MR, og udvikle egne prototyper ved anvendelse af udviklingsværktøjer som Unity3D til platforme som HTC Vive, Oculus Rift eller Google Cardboard. Kurset har til formål at klæde de studerende på til at vurdere potentialer, udfordringer, og modenhed for MR, AR, og VR-teknologier, og anvende disse i udviklingen af nyskabende applikationer. Med en kombination af teoretisk viden og praktisk erfaring vil studerende være godt forberedt til at bidrage til fremtidens teknologiske landskab inden for virtual og augmented reality.

Hardware og robotteknologi 1 (5 ECTS):

Kurset i hardware og robotteknologi 1 giver de studerende en solid introduktion til de grundlæggende principper inden for elektronik og kredsløbsteori, med særligt fokus på anvendelsen inden for hardware og robotteknologi. Det sigter mod at klæde de studerende på med både teoretisk forståelse og praktiske færdigheder, nødvendige for at designe, dimensionere og implementere elektroniske kredsløb og systemer. De studerende vil opnå viden om grundlæggende strøm- og spændingssammenhænge for modstande, spoler, og kondensatorer samt evnen til at opstille simple ækvivalenter for elektriske kredsløb, såsom Thevenin og Norton modeller. De vil lære at redegøre for og forklare simple elektriske kredsløbsdiagrammer, grafisk repræsentere strøm/spændingssammenhænge, og forstå transistorens (både BJT og FET) funktion som digital switch. Kurset dækker også opbygning af forstærkerkredsløb med operationsforstærker, forskellige motordriverteknologier, samt anvendelsen af aktuatorer og sensorer. På færdighedsniveau vil de studerende lære at designe og dimensionere elektriske kredsløb, anvende CAD og simuleringssoftware til kredsløbsdesign, og anvende laboratorieudstyr som strømforsyninger, oscilloskoper og multimetre. De vil opnå erfaring med at opbygge kredsløb på breadboards og printede kredsløbskort (PCB), samt at redegøre for og dokumentere opbyggede kredsløb og deres design. Kurset styrker de studerendes kompetencer i anvendelsen af analog elektronik fra både en teoretisk og en praktisk synsvinkel, forbereder dem til at anvende opnået viden til at lave elektroniske prototyper i fremtidige projekter, og dokumentere elektriske kredsløb på en professionel måde. Kurset indeholder en række emner, der vil blive udforsket både teoretisk og praktisk, inklusive introduktion til laboratorieudstyr, grundlæggende forståelse af kredsløb, analoge komponenter, beregning/dimensionering af analoge kredsløb, sensor- og hardwareteknologi. De studerende vil blive introduceret til CAD og simuleringssoftware til design af elektriske kredsløb, og de vil få hands-on erfaring med opbygning af elektriske kredsløb på PCB. Dette kursus giver de studerende de nødvendige redskaber til at forstå og arbejde med elektroniske kredsløb og systemer, som er afgørende for udviklingen af hardware og robotteknologiske løsninger.

Videregående objektorienteret programmering (5 ECTS):

Kurset i videregående objektorienteret programmering (VOP) er designet til at fordybe de studerendes forståelse og færdigheder inden for objektorienteret udvikling med fokus på avancerede koncepter og teknikker. Dette kursus vil styrke de studerendes evne til at designe og implementere komplekse softwareløsninger ved hjælp af objektorienteret programmering (OOP), især i programmeringssproget Java. De studerende vil opnå dybdegående kendskab til håndtering af exceptions, forskellen mellem byte-streams og character-streams, og anvendelsen af Java Collection Frameworket. De vil forstå designmønstre som Singleton og Facade, samt vigtigheden af software testing, herunder oprettelse af unit-tests. Kurset dækker også multitrådet programmering, GUI-udvikling i en flertrådet kontekst, synkronisering af tråde, og faldgruber indenfor lock-baseret synkronisering. Desuden vil de studerende lære om simple rekursive algoritmer, køretid, tidkompleksitet, og store-O notation. På færdighedsniveau vil de studerende være i stand til at forklare og anvende polymorfi, implementere objektorienterede programmer baseret på designspecifikationer, og håndtere exceptions. De vil kunne træffe informerede valg omkring fil- og objektstrømme, tilgå filer via random access, og anvende passende datastrukturer. Studerende vil blive dygtige til at anvende designmønstre, oprette unit-tests, implementere en ikke-blokerende GUI, anvende trådsynkroniseringsmekanismer, kommunikere mellem synkroniserede tråde, designe og implementere metoder, der anvender rekursion, samt anvende og sammenligne søgnings- og sorteringsalgoritmer. De studerende vil udvikle kompetencer til at planlægge og implementere avancerede objektorienterede prototyper fra idéfasen til den digitale implementering. De vil kunne udarbejde skriftlige rapporter, der detaljeret beskriver produktet og udviklingsforløbet, og effektivt kommunikere deres arbejde og resultater gennem mundtlige præsentationer. Kurset omfatter en omfattende gennemgang af avancerede sprogbegreber og teknikker indenfor OOP, herunder arv, interfaces, polymorfi, aggregering og relationer mellem objekter. Studerende vil lære om character og binary streams, serialisering af data, random filadgang, flertrådet programmering, anvendelse af forskellige datastrukturer, rekursion, samt design og implementering af GUI’er med komponenter, layout og eventhåndtering. Derudover vil kursusindholdet dække unit-testing teknikker for at sikre kvaliteten af programmer. Gennem dette kursus vil de studerende blive udstyret med de nødvendige redskaber og viden til at tackle avancerede softwareudviklingsprojekter og løse komplekse problemstillinger med en dybdegående forståelse for objektorienteret programmering.

Læringsteknologi 2 (15 ECTS):

Kurset i læringsteknologi 2 bygger videre på de grundlæggende principper introduceret i Læringsteknologi 1, med en dybere eksploration af avancerede læringsteoretiske paradigmer og deres anvendelse i design og udvikling af teknologi til støtte for læring. Dette kursus har til formål at udstyre de studerende med en omfattende forståelse for, og praktiske færdigheder i, anvendelsen af Human-Computer Interaction (HCI), gamification, og kvalitative brugertests i udviklingen af effektive læringsteknologier. De studerende vil opnå en dyb forståelse for læringsteoretiske paradigmer og hvordan disse kan anvendes som grundlag for udvikling og analyse af læringsteknologi. De vil blive introduceret til principper for HCI og anvendelsen heraf i udviklingen af læringsteknologi, samt blive bekendt med koncepter inden for gamification og hvordan man kan integrere spilelementer i læringsteknologisk design. Desuden vil de lære principper for kvalitative brugertests i forbindelse med udvikling af læringsteknologi. På færdighedsniveau vil de studerende være i stand til at anvende og analysere læringsteori i forbindelse med design og analyse af læringsteknologi. De vil kunne implementere og brugerteste prototyper af læringsapplikationer, anvende spilelementer i udviklingen af læringsteknologi, og planlægge, gennemføre samt analysere brugertests. Desuden vil de lære at planlægge og gennemføre undervisning, hvor læringsteknologi indgår. De studerende vil udvikle kompetencer til at vurdere og analysere læringsteknologi med udgangspunkt i læringsteori, omsætte lærings- og spilparadigmer til udvikling af læringsteknologi, samt analysere og vurdere brugertests. Kurset omfatter en teoridel, der dykker ned i avancerede læringsteoretiske paradigmer, HCI i relation til læringsteknologi, og metoder til design og test af læringssystemer. Projektdelen giver de studerende mulighed for at anvende den opnåede viden i udviklingen af interaktive prototyper til læring, hvor de også vil integrere programmeringsfærdigheder opnået i kurser som Webprogrammering, Virtual and Augmented Reality, og/eller Hardware og Robotteknologi. Gennem arbejdet med teori og projekt får de studerende hands-on erfaring med at anvende teknikker fra programmering, design af læringssystemer, og brugertest, hvilket styrker deres evne til at formidle og implementere effektive læringsteknologiløsninger. Kurset er designet til at styrke de studerendes personlige kompetencer inden for formidling og til at introducere dem til den faglige verden af læringsteknologi.

5. Semester:

Algoritmer og datastrukturer (5 ECTS):

Kurset i algoritmer og datastrukturer er designet til at give studerende en dybdegående forståelse af fundamentale datastrukturer og algoritmer, som er kritiske for effektiv problem-løsning og softwareudvikling. Ved at kombinere teoretisk viden med praktiske programmeringsfærdigheder sigter kurset mod at udstyre de studerende med de nødvendige redskaber til at analysere og implementere løsninger, der er både tid- og pladseffektive. De studerende vil opnå viden om en bred vifte af datastrukturer, herunder lister, stakke, køer, træer (såsom binære søgetræer og AVL-træer), hobe og grafer. De vil også lære om centrale algoritmeprincipper som greedy metoder, divide and conquer strategier og dynamisk programmering. Desuden vil kurset dække kompleksitetsanalyse af datastrukturer og algoritmer, herunder forståelsen af rekurrence relationer, for at give de studerende værktøjer til at vurdere algoritmers effektivitet. På færdighedsniveau vil de studerende styrke deres programmeringserfaring i et objektorienteret sprog, hvilket inkluderer evnen til at anvende sproglige konstruktioner effektivt i udviklingen af software. De vil blive dygtige til at implementere de gennemgåede datastrukturer og algoritmer, hvilket forbereder dem til at løse komplekse programmeringsproblemer i deres fremtidige arbejde. Efter kurset vil de studerende være i stand til at implementere de gennemgåede algoritmer og datastrukturer på en måde, der optimerer tids- og pladsforbrug. De vil have kompetencerne til ikke blot at anvende standardløsninger, men også til at tilpasse og forbedre disse løsninger baseret på specifikke problemstillinger. Kurset vil inddrage en række problemstillinger og eksempler, der illustrerer anvendelsen af datastrukturer og algoritmer inden for forskellige domæner. Implementering og praktiske øvelser i et objektorienteret programmeringssprog vil være en væsentlig del af kurset, hvilket sikrer, at de studerende får hands-on erfaring med at omsætte teoretisk viden til praktisk anvendelse. Dette omfatter arbejde med softwareudviklingsværktøjer og teknikker til effektiv kodeudvikling og fejlsøgning. Gennem dette kursus vil de studerende udvikle en solid forståelse for, hvordan datastrukturer og algoritmer spiller en afgørende rolle i udviklingen af effektiv software, og de vil være godt forberedte til at anvende disse principper i deres fremtidige teknologiske karriere.

Hardware og robotteknologi 2 (5 ECTS):

Kurset i hardware og robotteknologi 2 bygger videre på det fundament, som studerende har opnået i kurset Hardware og Robotteknologi 1, og fokuserer på avancerede aspekter af digital elektronik og brugen af microcontrollere. Dette kursus sigter mod at give en dybdegående forståelse af design, analyse og implementering af digitale kredsløb og systemer, samt udvikling af embedded software. De studerende vil efter kurset kunne identificere og forklare basale digitale komponenter og logiske kredsløb, anvende Karnaugh-diagrammer til at simplificere digitale kredsløb, forstå og forklare simple digitale kredsløbsdiagrammer, samt forklare og anvende digitale timingsdiagrammer og sandhedstabeller. De vil også få indsigt i opbygningen af en microcontroller, inklusiv CPU, I/O porte, clock, RAM, EEPROM, samt forståelse for digitale databusser og principperne bag softwareudvikling på microcontrollere. På færdighedsniveau vil de studerende lære at designe og dimensionere digitale kredsløb, anvende CAD og simuleringssoftware til konstruktion af digitale kredsløb, og bruge laboratorieudstyr til at teste og måle digitale kredsløb. De vil udvikle færdigheder i at opbygge og dokumentere embedded software samt designe, konstruere og dokumentere digitale kredsløb. Kurset vil styrke de studerendes kompetencer i anvendelsen af digital elektronik og microcontrollere, både teoretisk og praktisk. De vil være i stand til at anvende deres viden til at udvikle digitale elektroniske og microcontroller-baserede prototyper i fremtidige projekter, evaluere og dokumentere digitale kredsløb samt udvikle og dokumentere embedded software. Kurset dækker emner som introduktion til digital elektronik, grundlæggende forståelse for digitale kredsløb, digitale komponenter, opbygning og anvendelse af microcontrollere, dimensionering af digitale kredsløb, digitale kommunikationsbusser og embedded programmering. Gennem teori og praktisk arbejde vil de studerende dykke ned i de tekniske og teoretiske aspekter af digital elektronik og microcontroller-teknologi, hvilket forbereder dem til at tackle komplekse udfordringer inden for hardwareudvikling og embedded systemer. Dette kursus er essentielt for studerende, der ønsker at forfølge en karriere inden for hardwareudvikling, robotteknologi eller andre relaterede felter, hvor dybdegående kendskab til digital elektronik og microcontrollere er afgørende.

Webprogrammering 2 (5 ECTS):

Kurset i webprogrammering 2 er designet til at videreudvikle de studerendes færdigheder og viden inden for avanceret webudvikling, med fokus på dynamiske webapplikationer, interaktivt brugerinterface og effektiv datahåndtering. Gennem en kombination af teoretisk forståelse og praktisk anvendelse vil kurset udstyre studerende med de nødvendige kompetencer til at udvikle responsive og interaktive webbaserede løsninger. De studerende vil lære at forstå Document Object Model (DOM) for HTML-dokumenter, principperne bag event-styret programmering, og hvordan man anvender API’er for standard web services effektivt. De vil få indblik i brugen af local storage og redegøre for principperne for dynamisk konstruktion og opdatering af HTML-dokumenter samt forstå JavaScript datastrukturer og lagringsformater, såsom JSON. På færdighedsniveau vil de studerende blive i stand til at opbygge HTML-strukturer dynamisk ved hjælp af DOM og JavaScript-biblioteker såsom jQuery. Dette inkluderer selektion af elementer, event-styring, konstruktion, sletning, modifikation af elementer og dynamisk styling. De vil lære at overføre og integrere data fra web services ved hjælp af Ajax og konstruere brugerinterfaces ved hjælp af standardbiblioteker, der understøtter tabs, accordions, og autocompletion. Derudover vil de anvende arrays, inklusive multidimensionelle arrays, og objekter i client-server programmering. Kurset sigter mod at udvikle de studerendes evne til at håndtere iterativ udvikling af dynamiske HTML-dokumenter og oversætte komplekse problemstillinger til strukturerede, dynamiske webapplikationer. Kurset dækker en række emner, der er centrale for avanceret webudvikling, herunder client-server konceptet, dynamiske webpages, JavaScript-biblioteker, konstruktion af brugerinterfaces, local storage, og JavaScript-objekter og datastrukturer. Der vil blive lagt vægt på videregående JavaScript, inklusive objekter og datastrukturer, dynamisk opbygning af HTML-dokumenter ved hjælp af standardbiblioteker som jQuery, opkobling til web service API’er med overførsel af data i JSON-format fra server til client, og konstruktion af brugerinterfaces med biblioteker som jQuery UI. Gennem dette kursus vil de studerende opnå en solid forståelse for og praktiske færdigheder i udviklingen af interaktive og responsive webapplikationer, hvilket forbereder dem til at møde de nutidige udfordringer inden for webudvikling.

Virtual og augmented reality 2 (5 ECTS):

Kurset i Virtual og Augmented Reality 2 bygger videre på de grundlæggende principper indlært i Virtual og Augmented Reality 1, og fokuserer på avanceret integration af sensorteknologier med Virtual Reality (VR) og Augmented Reality (AR). Dette kursus er designet til at dykke dybere ned i, hvordan disse teknologier kan anvendes til at skabe innovative og meningsfulde sammenhænge mellem den fysiske og virtuelle verden. For at deltage i kurset forventes det, at de studerende har gennemført Virtual og Augmented Reality 1 eller har tilsvarende forudsætninger. De studerende vil efter kurset kunne redegøre for de centrale begreber inden for VR og AR og forstå, hvordan forskellige sensorteknologier kan integreres i VR og AR miljøer for at forbedre brugeroplevelsen. På færdighedsniveau vil de studerende lære at anvende teori om sensorteknologier og VR/AR til at analysere potentielle anvendelser. De vil være i stand til at designe koblinger mellem den fysiske og virtuelle verden, der udnytter sensorteknologier til at forbedre interaktion og immersion. Derudover vil de lære at implementere prototyper, der demonstrerer disse koblinger effektivt. De studerende vil udvikle kompetencer i at udvikle avancerede prototyper, der integrerer sensorteknologier med VR og AR for at skabe nye anvendelser, der bygger bro mellem den fysiske og virtuelle verden. Dette inkluderer faserne planlægning, analyse, design, implementering og evaluering. De vil også blive dygtige til at udarbejde detaljeret dokumentation, der beskriver anvendelighed, teknologisk integration og brugerinteraktion for den udviklede prototype. Kurset vil udforske, hvordan sensorteknologier kan bruges til at augmentere fysiske miljøer eller forbedre virtuelle oplevelser. Studerende vil lære at anvende disse teknologier som udgangspunkt for at skabe semi-virtuelle og virtuelle oplevelser, læringsscenarier, samt til at designe og konstruere meningsfulde interaktioner mellem den fysiske og virtuelle verden. Formålet med kurset er at give de studerende de nødvendige værktøjer og viden til at innovere inden for feltet af VR og AR ved at integrere avancerede sensorteknologier, der forstærker brugeroplevelsen og åbner op for nye anvendelsesmuligheder inden for både underholdning, uddannelse, og andre fagområder.

Valgfag (5 ECTS):

Her har de studerende mulighed for at tilvælge et specialiseret fag.

Valgfag (5 ECTS):

Her har de studerende mulighed for at tilvælge et specialiseret fag.

6. Semester:

Ingeniørfagets videnskabsteori (3 ECTS):

Kurset i ingeniørfagets videnskabsteori er designet til at give de studerende en dybdegående forståelse for videnskabsteoriens grundlag, med særligt fokus på hvordan disse teorier relaterer sig til teknisk videnskab og ingeniørarbejde. Gennem en kombination af teoretiske indsigter og praktiske eksempler vil kurset udforske videnskabens historie, vigtige filosofiske strømninger og den rolle, teknologi spiller i samfundet. De studerende vil opnå viden om de fundamentale aspekter af videnskabsteori, herunder erkendelsesteori og metodologi. De vil lære om videnskabshistoriens vigtigste revolutioner og blive introduceret til centrale filosofiske strømninger såsom materialisme, positivisme og neopositivisme. Kurset vil også dække falsifikationisme og paradigmeteori samt diskutere videnskab i krydsfeltet mellem politik og økonomi. Desuden vil de studerende blive opmærksomme på projekters værdimæssige, politiske og etiske grundlag og de modsætningsforhold, der kan opstå. På færdighedsniveau vil de studerende lære at identificere videnskabsteoretiske problemstillinger relateret til teknisk videnskab og vurdere forholdet mellem videnskabelig viden og praktisk erfaring i udviklingen af nye teknologier. Kurset vil udstyre de studerende med evnen til at beskrive og analysere ingeniørers rolle i den teknologiske udvikling og vurdere de etiske problemstillinger, der opstår i ingeniørarbejde. De vil lære at reflektere over, hvordan videnskabelig viden anvendes i praksis, og hvordan etiske overvejelser bør integreres i beslutningsprocesserne inden for ingeniørarbejde. Kurset vil dække en bred vifte af emner inden for videnskabsteori, fra grundlæggende begreber og historisk udvikling til dybdegående diskussioner af moderne videnskabsteoretiske strømninger. Det vil inkludere undersøgelse af teknologiens rolle i samfundet og de etiske udfordringer, der følger med teknologisk innovation. Gennem forelæsninger, diskussioner og case-studier vil de studerende blive opfordret til at reflektere over deres egen rolle som ingeniører i samfundet og hvordan de kan bidrage til en ansvarlig og bæredygtig teknologisk udvikling. Dette kursus er essentielt for ingeniørstuderende, der ønsker at udvikle en kritisk forståelse for de teoretiske og filosofiske fundament, der underbygger deres faglige praksis, og som ønsker at navigere i de komplekse etiske dilemmaer, der kan opstå i forbindelse med ingeniørarbejde.

Game AI (2 ECTS):

Valgfag (5 ECTS):

Her har de studerende mulighed for at tilvælge et specialiseret fag.

Bachelorprojekt (15 ECTS):

Her skrives de studerendes bacheloropgave.