Print

Matematik for softwareingeniører

Code

SW-MSE1

Version

1.0

Offered by

Software Ingeniør

ECTS

5

Prerequisites

​Kurset kræver matematik svarende til optagelseskravene til Softwareingeniør uddannelsen​.

Main purpose

Hovedformålet med kurset er at give de studerende de matematiske forudsætninger for at arbejde med teknisk IT og specifikt software engineering. Med hensyn til kompetenceprofilen for Softwareingeniøruddannelsen vil fokus for kurset være at

- levere kompetencer i at analysere og generalisere algoritmer og problemer, der opstår i forbindelse med softwareudvikling
- levere færdigheder i at udtrykke ens viden klart og præcist
- formalisere udsagn på en logisk og beregningsmæssig korrekt måde
- levere analytiske problemløsningsfærdigheder

Efter at have gennemført kurset, vil de studerende have opnået en solid forståelse af den matematik, der anvendes i software engineering, et klart analytisk mindset samt færdigheder i softwareengineering-metodikken.​

Knowledge

Efter afslutning af kurset vil de studerende være i stand til at:
- Forklare principperne for grundlæggende aritmetik og talsystemer, essentielle for alle beregningsopgaver.
- Beskrive anvendelser af Boolsk algebra i logikkredsløb og programmeringsbetingelser.
- Diskutere kombinatoriske problemer og grundlæggende problemer i sandsynlighedsteori
- Opsummere konceptet for lineære ligninger, løsningsmængder og lineær afhængighed i konteksten af datastrukturer og optimering af algoritmer.
- Forklare matrixalgebra, dens betydning i komplekse beregninger og anvendelser i softwareteknologi
- Undersøge anvendelsen af egenværdier og egenvektorer i softwareteknologi
- Skitsere grundlaget for asymptotisk analyse og Big O-notation til evaluering af algoritmeeffektivitet.
- Gøre rede for konceptet for funktioner og løkker i programmering, og understrege deres betydning i at skabe effektiv og genanvendelig kode.

Skills

​Ved kursets afslutning vil de studerende opnå færdigheder i:
- At udføre aritmetiske operationer og anvende forskellige talsystemer til varierede beregningskontekster.
- Anvende Boolsk algebra i udvikling og optimering af logiske udtryk og algoritmer.
- Løse kombinatoriske ​problemer og anvende sandsynlighedsteori til at analysere og forudsige udfald i softwareprojekter.
- Anvende betinget sandsynlighed og Bayes' teorem
- Løse lineære ligninger, forstå løsningsmængder og lineær afhængighed for at forbedre dataanalyse og algoritmeudvikling.
- Manipulere med matricer og anvende matrixalgebra i transformationer og komplekse beregninger.
- Bestemme egenværdier og egenvektorer
- Anvende asymptotisk analyse og Big O-notation til at vurdere og forbedre algoritmepræstation.
- Oprette funktioner og implementere løkker i programmering for at forbedre kodeeffektivitet, læsbarhed og vedligeholdelse.

Competences

​Efter kurset vil de studerende være kompetente i:
- At formulere og løse lineære og kombinatoriske problemer analytisk og algoritmisk, og forberede dem til komplekse udfordringer i software engineering.
- At designe og optimere algoritmer ved hjælp af Boolsk algebra, matrixoperationer og asymptotisk analyse, afgørende for
højtydende softwareudvikling.
- At udvikle grundlaget for prædiktive modeller og beslutningstagningssystemer ved at anvende koncepter for sandsynlighed, betinget sandsynlighed og Bayes' teorem.
- At anvende de opnåede matematiske færdigheder og programmeringsteknikker i mere avancerede software engineering kurser og praksisnære projekter, hvilket giver dem mulighed for at tackle komplekse problemer med selvtillid.

Topics

Teaching methods and study activities

​Kursets varighed er 12 uger. Det samlede arbejdsomfang for den studerende anslås til 130 timer. Undervisningsmetoden er klasseundervisning med teorigennemgang kombineret med opgaveløsning. Det forventes, at den studerende vil læse den tildelte litteratur og løse problemer mellem de teoretiske lektioner og i praksislektionerne.

Resources

​Alt materiale vil blive gjort tilgængeligt for den studerende.

Evaluation

Examination

​Eksamensforudsætning

1. Deltagelse (≥ 75%)
2. Godkendelse af otte ud af ti obligatoriske opgaver.

Hvis eksamensforudsætningerne ikke er opfyldt, skal den studerende afslutte en skriftlig opgave i WISEflow for at kvalificere sig til reeksamen.
Denne opgave vil blive planlagt efter den ordinære eksamen.

Eksamensform:
Eksamen har to dele: 

Den første del er en Flowlock-eksamen i Wiseflow.
Den anden del er en Wiseflow-eksamen uden Flowlock.

Eksamen har en samlet varighed af 4 timer.
Den studerende vil ikke kunne få adgang til anden del, før første del er afsluttet.
Hver del har lige vægt i den endelige karakter.

Intern bedømmelse. 

Tilladte hjælpemidler:
I den første del har de studerende lov til at bruge alle noter, bøger og/eller andet skriftligt/trykt materiale og vil have adgang til pdf-filer på deres bærbare computer. Den studerende må medbringe egen lommeregner.

I anden del er alle supplerende materialer og hjælpemidler tilladt, f.eks. brug af en computer til beregninger, men den studerende må ikke gå online, dvs. ingen internetadgang. Endvidere er det ikke tilladt at bruge AI-værktøjer som CoPilot, ChatGPT, Bing osv. i henhold til de generelle VIA-regler.

Al form for kommunikation er ikke tilladt under eksamen og vil føre til bortvisning af alle involverede parter fra eksamen.

Reeksamen:
Reeksamener kan være mundtlige.

Grading criteria

​Bedømmelse i henhold til 7-trins karakterskalaen.​

Additional information

Responsible

Richard Brooks (rib)

Valid from

01-08-2024 00:00:00

Course type

Compulsory for Software Ingeniør
1. semester

Keywords

Matematisk analyse, Algoritmer, Lineære ligningssystemer, Matrixalgebra, Sandsynlighedsteori, Boolsk algebra, Asymptotisk analyse, Egenværdier og egenvektorer. Kombinatorik, Funktioner og løkker.