Official course description:
Full info last published 23/04-20

Førsteårsprojekt: Danmarkskort. Visualisering, Navigation, Søgning og Ruteplanlægning

Course info
Language:
Danish
ECTS points:
15
Course code:
1413001U
Participants max:
150
Offered to guest students:
no
Offered to exchange students:
-
Offered as a single subject:
no
Programme
Level:
Bachelor
Programme:
BSc in Software Development
Staff
Course manager
Associate Professor
Teacher
Full Professor
Teaching Assistant
Teaching Assistant (TA)
Teaching Assistant
Teaching Assistant (TA)
Teaching Assistant
Teaching Assistant (TA)
Teaching Assistant
Teaching Assistant (TA)
Teaching Assistant
Teaching Assistant (TA)
Course semester
Semester
Forår 2020
Start
27 January 2020
End
31 August 2020
Exam
Exam type
ordinær
Internal/External
ekstern censur
Grade Scale
7-trinsskala
Exam Language
DK
Abstract
Førsteårsprojektet er det første større projekt på uddannelsen. I mindre grupper vil studerende planlægge og udføre et mindre projekt og kommer til at bruge teknikker fra de første to semestre, herunder grundlæggende programmering, projektarbejde og kommunikation, samt algoritmer og datastrukturer. I projektet skal gruppen identificere, definere og begrænse projektet, herunder kunne analysere og bestemme værktøj, teknologier, datastrukturer og algoritmer til at løse et givent software problem. Desuden skal gruppen sammenligne relevante designmuligheder (f.eks kd-træer vs quad-trees, Dijkstras algoritme mod A* heuristik) og implementere disse til en samlet løsning. Det samlede produkt skal dokumenteres, testes og evalueres i en større rapport.
Description

Kurset har til formål at give yderligere praktisk erfaring med programmering og de emner, som den studerende er blevet introduceret til i de to første semestre. På første semester har de studerende lavet mindre projekter. I dette kursus strækker projektet sig over hele semestret, og omfanget af projektet er nærmere det de vil møde i deres senere arbejdsliv. Kurset belyser og binder flere emner gennemgået på de to første semestre sammen.

Ud over en vigtig praktisk erfaring med emnerne på de to første semester eksponeres den studerende til emner, som vil danne vigtigt grundlag for de efterfølgende semestre hvor disse emner vil blive behandlet yderligere.

This course combines knowledge from the first semester undergraduate course Grundlæggende Programmering and knowledge that will be acquired during the second semester

from the course Algoritmer og datastrukturer. 

The course will give students the opportunity to work as a team and combine their existing knowledge with the topics covered in class, in constructing a real-world application.

Among others the following topics will be discussed:

Software testing:

  • Introductory software testing and methodologies
  • Unit Testing with JUnit

Data processing and representation:

  • Floating point numbers
  • Multidimensional representations of data
  • XML formats

Formal prerequisites
Dette kursus indgår på andet semester på bacheloruddannelsen i softwareudvikling.
Forudsætninger:
  • Grundlæggende Programmering
  • Algoritmer og Datastrukturer (tages typisk samtidig)
Intended learning outcomes

Efter kurset skal den studerende være i stand til:

  • Identificere relevante løsningsforslag, så som værktøjer, teknologier, algoritmer og datastrukturer (f.eks., forskellige data strukturer til indeksering af kortdata, beregne korteste veje, søge efter addresser, osv.).
  • Sammenligne de relevante løsningsforslag, og vælge den best egnede løsning ud fra teoretisk og praktisk ydeevne (eks., kd-træer ift. quad-træer, eller BST ift. Trie ift. sorterede lister, eller forskellige varianter af Dijkstra's algoritme).
  • Beskrive hvordan de valgte løsningers virkemåde, og redegøre for hvorfor de blev valgt.
  • Kombinere de valgte løsninger til et samlet produkt (implementation), der opfylder problembeskrivelsen, hvor de teoretiske elementer tilpasses og implementeres i en praktisk kontekst.
  • Anvende principperne for systematisk test på produktet (dvs., kuratere en test suite til regressionstest, med sikring af kodedækning med hensyn til formelle dækningskriterier)
  • Forklare i tekst og tale, der kan forstås af ikke-eksperter, de valgte løsninger og deres virkemåde, rationalet bag valgene, og hvordan de er tilpasset til det samlede produkt.
Learning activities

2 forelæsninger om ugen i de første fire uger, efterfulgt af projektfasen, hvor der vil være enkelte forelæsninger.


23/4-20 pga COVID19 situation er varighed af den mundtlige eksamen ændret fra 20 til 15 minutter + ændring i hvad der skal aflveres i 2. aflevering.

Mandatory activities
I hele projektfasen er der obligatoriske ugentlige statusrapporter, med mulig genaflevering ugen efter.

Den studerende får karakteren NA (ikke godkendt) ved den ordinære eksamen, hvis de obligatoriske aktiviteter ikke er godkendt, og den studerende bruger et eksamensforsøg.

Course literature

The course literature is published in the course page in LearnIT.

Student Activity Budget
Estimated distribution of learning activities for the typical student
  • Preparation for lectures and exercises: 8%
  • Lectures: 5%
  • Exercises: 2%
  • Assignments: 10%
  • Project work, supervision included: 70%
  • Exam with preparation: 5%
Ordinary exam
Exam type:
D: Submission of written work with following oral, External (7-point scale)
Exam variation:
D2G: Submission for groups with following oral exam supplemented by the submission. Shared responsibility for the report.
Exam submisson description:
Submission takes place on the course page in LearnIT on two different days. Please find dates etc. in LearnIT.

First submission - Program Code (2 files):
- Program as executable .jar file
- Source code as .zip file

Second submission - Report (2 files):
- Report as .pdf file
- A presentation of the features of the program as a video screen capture
Group submission:
Group
  • Group size: 5 students.
Exam duration per student for the oral exam:
15 minutes
Group exam form:
Mixed 1


reexam
Exam type:

Exam variation: