DM505: Database Design and Programming

Study Board of Science

Teaching language: Danish or English depending on the teacher, but English if international students are enrolled
EKA: N330029112, N330029102
Assessment: Second examiner: None, Second examiner: External
Grading: Pass/Fail, 7-point grading scale
Offered in: Odense
Offered in: Spring
Level: Bachelor

STADS ID (UVA): N330029101
ECTS value: 5

Date of Approval: 25-10-2018


Duration: 1 semester

Version: Archive

Comment

15005101(former UVA) is identical with this course description. 
The course is co read with SI2-PDB(Programmering og Database) og DM564: Database Systems (10 ECTS).

Entry requirements

None

Academic preconditions

Students taking the course are expected to:

  • Have knowledge in programming in Java.
  • Have proficiency in programming in general.

Course introduction

The purpose of this course is to give the student theoretical skills and
practical experience in the use, design, and implementation of a
relational database.

The content of DM550 – Introduction to
Programming must be known. Basic knowledge about modelling of software
systems is also assumed.

The course provides the basis for the course ‘principles of database systems’

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

  • giving the competence to plan and design a relational database
  • knowledge of structured querying and manipulating relational databases
  • application of a relational database system to model real world data
  • developing skills in the programming of database applications
  • giving the competences to handle complex and development-oriented situations in study and work contexts
  • skills to identify own learning needs and to structure own learning in different learning environments

Expected learning outcome

The learning objectives of the course is that the student demonstrates the ability to:

  • design a suitable conceptual model for a database, on the basis of a problem description
  • transform a conceptual model for a database into a suitable relational model
  • write SQL queries for a relational database
  • optimize
    a relational database through choice of indexes, use of equivalent
    SQL-expressions, and use of the theory of normal forms
  • access a  database from an application program.
  • describe work done on the above subjects in clear and precise language, and in a structured fashion
  • justify design conditions
  • describe, formulate and communicate issues and results to specialists and non-specialists, or project partners and end users

Content

The following main topics are contained in the course:

  • Relational databases
  • database design (conceptual data modelling, normal forms)
  • relational algebra
  • SQL
  • database access from application programs
  • basic disk structure
  • index use and index implementations (hashing based, tree based)

Literature

See Blackboard for syllabus lists and additional literature references.

Examination regulations

Prerequisites for participating in the exam element a) (exempt spring 2019)

Timing

Spring

Tests

Project assignments

EKA

N330029112

Assessment

Second examiner: None

Grading

Pass/Fail

Identification

Full name and SDU username

Language

Normally, the same as teaching language

Examination aids

To be announced during the course

ECTS value

0

Additional information

Prerequisite test a) has been removed from spring 2019 and is therefor no longer a prerequisite for participation in examination element a).

Exam element a)

Timing

Spring

Prerequisites

Type Prerequisite name Prerequisite course
Examination part Prerequisites for participating in the exam element a) (exempt spring 2019) N330029101, DM505: Database Design and Programming

Tests

1-day take-home exam

EKA

N330029102

Assessment

Second examiner: External

Grading

7-point grading scale

Identification

Full name and SDU username

Language

Normally, the same as teaching language

Duration

24 hours

Examination aids

To be announced during the course

ECTS value

5

Additional information

None.

Re-examination

Assessment

Second examiner: Internal

Grading

7-point grading scale

Identification

Student Identification Card

Language

Normally, the same as teaching language

Examination aids

Will be announced prior to the exam

ECTS value

5

Additional information

Oral re-examination.

Indicative number of lessons

42 hours per semester

Teaching Method

In the intro phase, concepts, theories and models are introduced and put into perspective. In the training phase, students train their skills through exercises and dig deeper into the subject matter. In the study phase, students gain academic, personal and social experiences that consolidate and further develop their scientific proficiency. Focus is on immersion, understanding, and development of collaborative skills.

Teacher responsible

Name E-mail Department
Peter Schneider-Kamp petersk@imada.sdu.dk

Timetable

Administrative Unit

Institut for Matematik og Datalogi (datalogi)

Team at Educational Law & Registration

NAT

Offered in

Odense

Recommended course of study