DM550: Introduction to Programming

Study Board of Science

Teaching language: Danish or English depending on the teacher, but English if international students are enrolled
EKA: N330054102
Assessment: Second examiner: Internal
Grading: 7-point grading scale
Offered in: Odense
Offered in: Autumn
Level: Bachelor

STADS ID (UVA): N330054101
ECTS value: 10

Date of Approval: 17-03-2021


Duration: 1 semester

Version: Archive

Comment

The course is discontinued-offered last time E21.
The course continues in a 7.5 ECTS version with the code DM574, which is offered for the first time E22.

  1. The last ordinary exam is held January 2022
  2. The first reexamination will be held March 2022
  3. The second and last reexamination will be held August 2022
15015201 (former UVA) is identical with this course description.

Entry requirements

The course cannot be followed if you have passed DM536, DM562, DM857, DS800, DS801 or MM560, or if you have DM536, DM562, DM857, DS800, DS801 or MM560 mandatory in your curriculum.

Academic preconditions

None

Course introduction

The course gives an introduction to structured and object-oriented programming. 
The course provides an academic basis for solving problems by modelling and implementing computer programs.

In relation to the learning outcomes of the degree the course has explicit focus on:

  • giving the competence to plan and execute computer programs in Java 
  • knowledge of common programming methods
  • developing skills in programming in different types of programming languages
  • developing skills in software development
  • developing skills in constructing bigger software systems
  • developing skills in deciding and justify professional decisions
  • developing skills in describing, formulating and disseminating problems and results to either other professional or non-specialists or collaborative partners and users
  • giving the competence to handle complex and development-oriented situations in study and work contexts
  • giving the competence to identify one's own needs for learning and structure one's own learning in different learning environments

This course builds upon the students' highschool competences in Mathematics. The course's content is essential for later courses in algorithms and software development, where the students are required to be able to program.

Expected learning outcome

The learning objectives of the course are that the student demonstrates the ability to:
  • design object-oriented models for concrete problems;
  • devise a program structure based on the model;
  • implement the planned program in the concrete programming language used;
  • find and use adequate elements in the program library belonging to the  language;
  • plan and execute a testing of the program;
  • design and implement recursive solutions of problems;
  • design and implement abstract data types;
  • use basic tree structures and algorithms for these.

Content

The following main topics are contained in the course:
  • The basic structuring tools sequence, repetition, conditional instruction and subprogram.
  • Fundamental data structures such as lists, maps, and trees.
  • Object-oriented programming techniques, including examples and applications.
  • Recursion and recursive data structures.
  • Examples of abstract data types and their realization.

The course is taught in Java.

Literature

See itslearning for syllabus lists and additional literature references.

Examination regulations

Exam element a)

Timing

Autumn and january

Tests

Portfolio exam consisting of small individual assignments, a group project and oral defense

EKA

N330054102

Assessment

Second examiner: Internal

Grading

7-point grading scale

Identification

Full name and SDU username

Language

Normally, the same as teaching language

Examination aids

To be announced during the course

ECTS value

10

Additional information

Portfolio exam consisting of small individual assignments and a group project (with written report and oral defense). The oral defense is located during the exam period in January. 

Indicative number of lessons

94 hours per semester

Teaching Method

At the faculty of science, teaching is organized after the three-phase model ie. intro, training and study phase.

Teaching activities are planned for the following amount of hours:

  • Introphase (lectures): 28 hours
  • Training phase: 56 hours, of which 28 are discussions and 28 are labs.
  • Studyphase: 10 hours.

In the intro phase a combination of classical lectures, where the terms and methods of the course are presented, and more applied sessions, where students are taught how the learnt knowledge can be applied in concrete scenarios, is employed. The training phase is divided into discussions and labs, where the students learn the competences that enable them to transform their knowledge into solution and, consequently, into concrete computer problems. In the study phase the students work independently with improving their understanding and their competences regarding the contents of the course.

Activities during the study phase: Programming of small tasks and little projects.

Teacher responsible

Name E-mail Department
Luís Cruz-Filipe lcf@imada.sdu.dk Concurrency

Timetable

Administrative Unit

Institut for Matematik og Datalogi (datalogi)

Team at Educational Law & Registration

NAT

Offered in

Odense

Recommended course of study

Profile Education Semester Offer period
BSc major in Computer Science - Registration 1 September 2018 Bachelor of Science in computer science | Odense 1 E21
BSc major in Computer Science - Registration 1 September 2019 Bachelor of Science in computer science | Odense 1 E21
BSc major in Computer Science - Registration 1 September 2019 Bachelor of Science in computer science | Odense 1 E22
BSc major in Computer Science - Registration 1 September 2020 and 2021 Bachelor of Science in computer science | Odense 1 E22
BSc major in Computer Science - Registration 1 September 2020 and 2021 Bachelor of Science in computer science | Odense 1 E21
BSc major in Computer Science - Registration 1 September 2020 and 2021 Bachelor of Science in computer science | Odense 1 E23
BSc major in Computer Science and minor in Mathematics - Registration 1 September 2020 and 2021 Bachelor of Science in computer science | Odense 1 E22
BSc major in Computer Science and minor in Mathematics - Registration 1 September 2020 and 2021 Bachelor of Science in computer science | Odense 1 E21
BSc major in Computer Science and minor in Mathematics - Registration 1 September 2020 and 2021 Bachelor of Science in computer science | Odense 1 E23
BSc major in Computer Science and minor subject - Registration 1 September 2020 and 2021 Bachelor of Science in computer science | Odense 1 E21
BSc major in Computer Science and minor subject - Registration 1 September 2020 and 2021 Bachelor of Science in computer science | Odense 1 E23
BSc major in Computer Science and minor subject - Registration 1 September 2020 and 2021 Bachelor of Science in computer science | Odense 1 E22
BSc major in Computer Science and minor subject - Registration 1 September 2018 Bachelor of Science in computer science | Odense 1 E21
BSc major in Computer Science and minor subject - Registration 1 September 2019 Bachelor of Science in computer science | Odense 1 E21
BSc major in Computer Science and minor subject - Registration 1 September 2019 Bachelor of Science in computer science | Odense 1 E22
No longer applicable (31 August 2019): BSc major in Computer Science - Registration 1 September 2018 Bachelor of Science in computer science | Odense 1 E21
No longer applicable (31 August 2019): BSc major in Computer Science and minor in Mathematics - Registration 1 September 2018 Bachelor of Science in computer science | Odense 1 E21
No longer applicable (31 August 2020): BSc major in Computer Science - Registration 1 September 2018 and 2019 Bachelor of Science in computer science | Odense 1 E21
No longer applicable (31 August 2020): BSc major in Computer Science - Registration 1 September 2019 Bachelor of Science in computer science | Odense 1 E22
No longer applicable (31 August 2020): BSc major in Computer Science and minor subject - Registration 1 September 2018 and 2019 Bachelor of Science in computer science | Odense 1 E21
No longer applicable (31 August 2020): BSc major in Computer Science and minor subject - Registration 1 September 2019 Bachelor of Science in computer science | Odense 1 E22
No longer applicable (31 August 2020): BSc major in Computer Science and minor subject area - Registration 1 September 2018 and 2019 Bachelor of Science in computer science | Odense 1 E21
No longer applicable (31 August 2020): BSc major in Computer Science and minor subject area - Registration 1 September 2019 Bachelor of Science in computer science | Odense 1 E22
BSc major in Mathematics and minor in Biology, Computer Science, Physics, Chemistry or outside Natural Science - Registration 1 September 2018 and 2019 | Odense 3 E21
BSc major in Mathematics and minor in Biology, Computer Science, Physics, Chemistry or outside Natural Science - Registration 1 September 2019 | Odense 3 E22
No longer applicable (31 August 2019): BSc Major in Mathematics and minor in Computer Science, Physics and Chemistry - Registration 1 September 2018 | Odense 3 E21
BSc minor in Computer Science for major in Biology, Chemistry or subject area outside Natural Science - Registration 1 September 2018, 2019, 2020 and 2021 Bachelor of Science in computer science | Odense 5 E21
BSc minor in Computer Science for major in Biology, Chemistry or subject area outside Natural Science - Registration 1 September 2019 Bachelor of Science in computer science | Odense 5 E22
BSc minor in Computer Science for major in Biology, Chemistry or subject area outside Natural Science - Registration 1 September 2019, 2020 and 2021 Bachelor of Science in computer science | Odense 5 E22
BSc minor in Computer Science for major in Biology, Chemistry or subject area outside Natural Science - Registration 1 September 2020 and 2021 Bachelor of Science in computer science | Odense 5 E23
BSc minor in Computer Science for major in Physics - Registration 1 September 2018 Bachelor of Science in computer science | Odense 5 E21
BSc minor in Computer Science for major in Physics - Registration 1 September 2019 Bachelor of Science in computer science | Odense 5 E22
BSc minor in Computer Science for major in Physics - Registration 1 September 2019, 2020 and 2021 Bachelor of Science in computer science | Odense 5 E21
No longer applicable (31 August 2019): BSc minor in Computer Science for major in Biology, Chemistry or subject area outside Natural Science - Registration 1 September 2018 Bachelor of Science in computer science | Odense 5 E21
No longer valid per. August 31, 2021: BSc minor in Computer Science for major in Physics - Registration 1 September 2019 and 2020 Bachelor of Science in computer science | Odense 5 E21
No longer valid per. August 31, 2021: BSc minor in Computer Science for major in Physics - Registration 1 September 2019 and 2020 Bachelor of Science in computer science | Odense 5 E22
No longer valid per. August 31, 2021: BSc minor in Computer Science for major in Physics - Registration 1 September 2020 Bachelor of Science in computer science | Odense 5 E23