DM857: Introduction to programming (10 ECTS)

STADS: 15019201

The course is a mandatory "conversion class" for MSc-students of Computational Biomedicine with a background outside the thematic field, for instance students of biology.

Level
Master's level course

Teaching period
The course is offered in the autumn semester.

Teacher responsible
Email: jbaumbac@imada.sdu.dk

Timetable
Group Type Day Time Classroom Weeks Comment
Common I Monday 12-14 U140 36-41,43-49
Common I Thursday 14-16 U140 36-37,39-40,43-45,47
H1 TE Tuesday 12-14 U154 36,38,40-41,46,48-49
H1 TL Tuesday 14-16 IMADA ComputerLab 36,38,40-41,46,48-49
H1 TL Tuesday 12-14 IMADA ComputerLab 37,39,43-45,47,50
Show entire timetable
Show personal time table for this course.

Comment:
Ubegrænset deltagerantal. Fælles med DM550

Prerequisites:
None

Academic preconditions:
None

Course introduction
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 and Python
  • 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
  • giving the competence to design higher level software architectures


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.
Subject overview
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.
Literature
    Meddeles ved kursets start.


Website
This course uses e-learn (blackboard).

Prerequisites for participating in the exam
  1. Mandatory assignements. Pass/fail, internal marking by teacher. (15019212).
Assessment and marking:
  1. Project. Pass/fail, internal marking by teacher. (10 ECTS).(15019202).
Expected working hours
The teaching method is based on three phase model.
Intro phase: 42 hours
Skills training phase: 42 hours, hereof:
 - Tutorials: 18 hours
 - Laboratory exercises: 28 hours

Educational activities
Activities during the study phase:
  • Programming of small tasks and little projects.
Educational form

Language
This course is taught in Danish or English, depending on the lecturer. However, if international students participate, the teaching language will always be English.

Course enrollment
See deadline of enrolment.

Tuition fees for single courses
See fees for single courses.