DM505: Database Design and Programming
Comment
The course is co read with SI2-PDB(Programmering og Database) og DM564: Database Systems (10 ECTS).
Entry requirements
Academic preconditions
Students taking the course are expected to:
- Have knowledge in programming in Java.
- Have proficiency in programming in general.
Course introduction
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
Examination regulations
Prerequisites for participating in the exam element a) (exempt spring 2019)
Timing
Tests
Project assignments
EKA
Assessment
Grading
Identification
Language
Examination aids
To be announced during the course
ECTS value
Additional information
Exam element a)
Timing
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
Assessment
Grading
Identification
Language
Duration
Examination aids
To be announced during the course
ECTS value
Additional information
Re-examination
Assessment
Grading
Identification
Language
Examination aids
ECTS value
Additional information
Indicative number of lessons
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.