DM505: Database Design and Programming (5 ECTS)
STADS: 15005101
Level
Bachelor course
Teaching period
The course is offered in the spring semester.
Teacher responsible
Email: jbaumbac@imada.sdu.dk
Timetable
Group |
Type |
Day |
Time |
Classroom |
Weeks |
Comment |
Common |
I |
Tuesday |
10-12 |
U55 |
6-11 |
|
Common |
I |
Wednesday |
08-10 |
U140 |
5 |
|
Common |
I |
Thursday |
08-10 |
U55 |
5,7,9 |
|
Common |
I |
Thursday |
08-10 |
U140 |
11 |
|
H7 |
TE |
Tuesday |
12-14 |
U53 |
6-8 |
|
H7 |
TE |
Tuesday |
12-14 |
U152 |
9-10 |
|
H7 |
TE |
Tuesday |
12-14 |
U44 |
11 |
|
H7 |
TE |
Wednesday |
10-12 |
U24 |
5 |
|
H7 |
TE |
Thursday |
14-16 |
U154 |
6,8 |
|
H7 |
TE |
Thursday |
14-16 |
U31 |
10 |
|
H8 |
TE |
Tuesday |
14-16 |
U31 |
6,8 |
|
H8 |
TE |
Tuesday |
14-16 |
U155 |
7,11 |
|
H8 |
TE |
Tuesday |
14-16 |
U153 |
9 |
|
H8 |
TE |
Tuesday |
14-16 |
T9 |
10 |
|
H8 |
TE |
Wednesday |
14-16 |
U31 |
5 |
|
H8 |
TE |
Thursday |
12-14 |
U56 |
6 |
|
H8 |
TE |
Thursday |
12-14 |
U24 |
8 |
|
H8 |
TE |
Thursday |
12-14 |
T9 |
10 |
|
T1 |
TE |
Tuesday |
08-10 |
U23A |
6,8,10 |
|
T1 |
TE |
Wednesday |
16-18 |
U24 |
5 |
|
T1 |
TE |
Wednesday |
08-10 |
U50A |
6,8 |
|
T1 |
TE |
Wednesday |
08-10 |
U155 |
7,9-11 |
|
T2 |
TE |
Wednesday |
10-12 |
U146 |
5,7-9 |
|
T2 |
TE |
Wednesday |
10-12 |
U153 |
6,10 |
|
T2 |
TE |
Wednesday |
10-12 |
U176 |
11 |
|
T2 |
TE |
Thursday |
10-12 |
U161 |
6,10 |
|
T2 |
TE |
Thursday |
10-12 |
U142 |
8 |
|
T3 |
TE |
Wednesday |
12-14 |
U156 |
5-9,11 |
|
T3 |
TE |
Thursday |
12-14 |
U11 |
6 |
|
T3 |
TE |
Thursday |
12-14 |
U154 |
8 |
|
T3 |
TE |
Thursday |
12-14 |
U146 |
10 |
|
T3 |
TE |
Friday |
08-10 |
U168 |
10 |
|
T4 |
TE |
Wednesday |
14-16 |
U24 |
5-8 |
|
T4 |
TE |
Wednesday |
14-16 |
T9 |
9,11 |
|
T4 |
TE |
Thursday |
14-16 |
U31 |
6 |
|
T4 |
TE |
Thursday |
14-16 |
U142 |
8 |
|
T4 |
TE |
Thursday |
14-16 |
U161 |
10 |
|
T4 |
TE |
Friday |
10-12 |
U168 |
10 |
|
Show entire timetable
Show personal time table for this course.
Comment:
Ubegrænset deltagerantal.
Prerequisites:
None.
Academic preconditions:
Students taking the course are expected to:
- Have knowledge in programming in Java.
- Have proficiency in programming in general.
Course introductionThe 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 outcomeThe 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
Subject overviewThe 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)
LiteratureMeddeles ved kursets start.
Website
This course uses
e-learn (blackboard).
Prerequisites for participating in the exam
- Project assignments are a prerequisite for participation in the exam element a). Pass/fail, internal evaluation. (15005112).
Assessment and marking:
- 1-day take-home exam. (5 ECTS). Graded according to the Danish 7-mark scale, external examiner. (15005102).
Oral re-examination. Internal examiner. 7-mark-scale.
Expected working hours
The teaching method is based on three phase model.
Intro phase: 22 hours
Skills training phase: 20 hours, hereof:
- Tutorials: 20 hours
Educational activities
Educational formIn 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.
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.