AAU logo
Uddannelse
Forskning
Samarbejde

Software

Fagligt indhold

Fagligt indhold

På bacheloruddannelsen i Software kommer du til at arbejde med programmering fra idé til færdig software. Du skal lære at arbejde med store og komplekse applikationer og databaser, og som en del af en projektgruppe kommer du til at udvikle forskellige dele til et komplet kørende system. Under hele forløbet har du mulighed for at arbejde sammen med en eller flere af de mange virksomheder, som viser stor interesse for at arbejde sammen med softwareingeniørstuderende om konkrete problemstillinger.

Se studieordningen for bacheloruddannelsen i Software. Her kan du finde detaljer om kurser og projekter samt information om uddannelsens lovhjemmel mm.

1. semester; Fra eksisterende software til modeller

I kurserne på 1. semester bliver du introduceret for de grundlæggende fag inden for software imperativ programmering, som betyder, at man her beskriver for computeren – trin for trin – hvad den skal foretage sig. Desuden får du et kursus, som understøtter projektarbejdet og som giver dig yderligere indsigt i principperne bag AAU’s læringsform. Du kan se mere om kurserne via links nedenfor.

kurser på 1. semester

På det første semester fokuserer vi især på at lære dig at arbejde efter den problemorienterede model, som vi bruger på Aalborg Universitet. På 1. semester er der to projekter: et helt kort projekt, der er en første smagsprøve på hvad projektarbejde er på et universitet og et noget længere projekt. I dette projekt skal du arbejde yderligere med problemanalyse, problemformulering og hvordan konstruktion af programmer indgår i løsning af problemet.

Projekteksempler på 1. semester

  • 3D-printning: Udbredelse af 3D-print
  • Anonymitet på internettet
  • Fysisk digitalt legetøj
     

2. semester; Programmering og problemløsning

I kurserne på 2. semester skal du bl.a. lære om objektorienteret programmering. Idéen bag objektorienteret programmering er at opdele programkoden i klasser, der har hver sit velafgrænsede ansvarsområde i programmet. Hvis man programmerer alting i samme klasse, vil man, hvis noget skulle vise sig at gå i stykker, være nødt til at omprogrammere hele programmet for at reparere det. Hvis man derimod bruger objektorienteret programmering, vil man kun være nødt til at omprogrammere den ene ting, der er gået i stykker og ikke hele programmet. Læs mere om kurserne ved at klikke på dem nedenfor.

Kurser på 2. semester

På 2. semester fokuserer projektarbejdet på programmering og modeldannelse i forbindelse med problemløsning. Gennem projektarbejdet skal du og dine medstuderende opnå et fælles fundament i programmering, der kan udnyttes på de efterfølgende semestre. Målet er, at du bliver i stand til at konstruere et velstruktureret program med hovedvægt på gode programstrukturer og velgennemtænkt anvendelse af algoritmer. Programmet skal udarbejdes i et objektorienteret programmeringssprog (typisk er det sproget C#). 

Projekteksempler på 2. semester

  • Social Network Simulator
  • Digital Fysioterapeutisk Genoptræning
  • En Personlig Sundhedsassistent

1. + 2. semester kører i fællesskab med 1. + 2. semester af Datalogiuddannelsen. Det betyder, at du har mulighed for efter 2. semester at skifte retning omkostningsfrit. 
 

3. semester; Udvikling af applikationer

3. semester har temaet "Udvikling af applikationer". Her skal du udvikle software, og du skal lære at analysere arbejdsfunktioner med henblik på at identificere krav til et it-system. På basis af dette designer du sammen med din gruppe et system, som I implementerer og tester i et moderne objektorienteret programmeringssprog. Semestret er baseret på programmeringssproget C#.

I kurserne på 3. semester skal du arbejde med bl.a. systemudviklingsmetoder, brugerkontekst og brugere mm. Se mere nedenfor.

Kurser på 3. semester

På 3. semester vil et projekt typisk handle om analyse, design, programmering og test af administrative it-systemer. Det kan fx være bibliotekssystemer, turneringsplanlægningssystemer til sportsklubber eller systemer, som understøtter konkrete forretningsbehov i små og mellemstore virksomheder.

Projekteksempler på 3. semester

  • Social media library
  • Flyselskabs reservationssystem
  • Skak computer
     

4. semester; Design, definition og implementering af programmeringssprog

I kurserne skal du lære om programmeringssprogsteori, semantik (den matematiske teori for programmers adfærd) og om principperne bag operativsystemer, bl.a. parallel programmering og hukommelseshåndtering.

Kurser på 4. semester

På 4. semester skal du "bag kulisserne" og lære, hvordan programmerne bliver udført på en computer og hvad principperne er i de mest udbredte programmeringssprog. Projektet handler om at udvikle og implementere sit eget programmeringssprog eller operativsystem. Det typiske projekt på 4. semester udvikler og implementerer et programmeringssprog til et bestemt formål, fx scripting, spiludvikling eller udformning af grafiske brugergrænseflader.

Projekteksempler på 4. semester

  • BoLa - Board Game Language
  • Designing a Language for Home Automation Systems
  • SPLAD - Simple Programming Language for Arduino Drinks-mixer
     

5. semester; Indlejrede systemer

I kurserne på 5. semester skal du bl.a. arbejde med beregnelighed og kompleksitet. Der er to obligatoriske kurser og hertil skal du vælge et valgfag blandt to mulige; tidstro software (processer, der forløber i realtid) eller maskinintelligens. 

Kurser på 5. semester

Et indlejret system er et elektronisk system med en computer, som ikke er en traditionel pc, og de findes i stort set alt elektronisk udstyr i dag, fx mobiltelefoner, tv, alarmsystemer, radioer, opvaskemaskiner mm. Således styres og reguleres tekniske anlæg og apparater som hovedregel af programmer, der er indlejret i dem. Indlejrede systemer er således en helt essentiel del af arbejdet som softwareingeniør, og derfor skal du som studerende i software i dit 5. semesterprojekt lære at udvikle indlejrede systemer.

Projekteksempler på 5. semester

  • CleanBot
  • Lego Projectile Launcher
  • Warehouse Robot

Projekteksempel med selvbalancerende Lego Mindstorms-robot fra 5. semester software:

 

6. semester; Udvikling af komplekse softwaresystemer

På 6. og sidste semester er der, som på 5. semester, to obligatoriske og to valgfri kurser. I de obligatoriske kurser skal du lære om logisk design af relationelle databaser, fysisk databasedesign samt distribuerede databaser. Desuden vil du blive undervist i videnskabsteori, hvor du lærer om videnskabernes metoder, sandhedskriterier og forudsætninger. I det valgfri kursus ”Avancerede algoritmer” skal du bl.a. arbejde med algoritmedesignteknikker og -analyse, og du skal lære at udvikle effektive algoritmer og datastrukturer. Kurset ”Modelleringog verifikation” handler om matematiske modeller til beskrivelse og verifikation af programmer, softwaresystemer og programmeringssprog med fokus på parallelle og kommunikerende systemer.

Kurser på 6. semester

Det er også på 6. semester, at du udarbejder dit bachelorprojekt, hvilket som regel også foregår i en gruppe. Temaet er ”Udvikling af komplekse softwaresystemer”. Sådanne systemer udvikles som oftest i et større udviklingsmiljø, hvor delprojekter skal koordineres til en fælles løsning. Fokus for 6. semesters projektarbejde er derfor, at du lærer at analysere organisatoriske omgivelser, samt at designe og implementere en applikation, som understøtter eller automatiserer en del heraf. Du skal desuden i dit projektarbejde demonstrere, at du kan analysere, designe, programmere og afprøve en applikation, herunder både integration med database og brugergrænseflade.

Eksempler på bachelorprojekter

  • Cars : Udvikling af Komplexe Software Systemer
  • Interaktiv Læringsøvelse for Børn Med Autisme: Et togspil
  • uBuy – An Online Auctioning Web Site Multi-Project in Django
  • Croc - En Android app til pictogram konstruktion
  • E-Learning Mangement System : Implementing Customisable Schedules
  • Constructing a Company Network Infrastructure

Når du har færdiggjort dit bachelorprojekt, er du bachelor i Software og således har du mulighed for at læse videre og blive civilingeniør. Se mere om dine muligheder for overbygningsuddannelser her.

Gruppe- og projektarbejde

Gruppe- og projektarbejde

Gruppe- og projektarbejdet på Aalborg Universitet giver dig mulighed for at få en spændende og lærerig studietid både fagligt og socialt.
 

Læs mere om gruppe- og projektarbejde