IT-Universitetet i København
  Tilbage Kursusoversigt
Kursusnavn (dansk):Introduction to Database Design, BSc 
Kursusnavn (engelsk):Introduction to Database Design, BSc 
Semester:Efterår 2017 
Udbydes under:Bachelor i softwareudvikling (bswu) 
Omfang i ECTS:7,50 
Min. antal deltagere:
Forventet antal deltagere:
Maks. antal deltagere:145 
Formelle forudsætninger:This course assumes basic ability to use a computer. We also assume that a student is taking an introductory programming course in parallel (otherwise basic programming skills in Java are expected) and is following a discrete math course such as SGDM (or has knowledge of basic discrete math: logic, set theory and proofs). 
Læringsmål:After the course the students should be able to:
* suggest a database design according to the relational model, and present it as an
SQL schema, using the concepts key, type, and constraint.
* transform a database design in the E-R model to a corresponding relational data model
*Analyze and improve database designs using normal form theory
* write SQL queries, involving multiple relations, compound conditions, grouping, aggregation, and subqueries.
* find functional dependencies in a relation and perform decomposition to eliminate unwanted dependencies.
* decide if a given index is likely to improve performance for a given query.
* identify possible problems in transaction handling, related to consistency, atomicity, and isolation.
* Analyze/predict/improve efficiency of the designed database using indices
* use SQL from other programming languages.
* suggest a conceptual and physical design of an OLAP system 
Fagligt indhold:The course gives an introduction to relational databases as well as an introduction to data analytics, both from a practical and theoretical point of view.

The main part of the course deals with relational databases, including theory and practice for modeling and quering a database. Towards the end of the course the focus will be on techniques for OLAP.

For relational databases the following topics will be covered:
• Programming in SQL, including all basic operations as well as some more advanced constructions (e.g. subqueries)
• Database design using E-R modelling
• Defining a database design using the relational model and SQL schemas
• Normalization of relations
• Use of different indexes, including hash indexes, B-tree indexes, non-clustered and clustered indexes
• Transaction handling
• Using SQL in applications, e.g. Java-applications
• Other basic concepts related to relational databases and SQL, such as triggers, views etc.

For data analytics the following topics will be covered:
• OLAP and data warehousing 
Læringsaktiviteter:12 forelæsninger og 12 øvelsesgange

* Lectures will provide tools and methods for describing, creating and using databases.
* Weekly exercises consist of coding exercises, applying techniques, and using them to analyze and improve designs. 

Obligatoriske aktivititer:Der er ingen obligatoriske aktiviteter.
There are no mandatory activities. Please, change this text ONLY when there are mandatory activities. 
Eksamensform og -beskrivelse:X: Eksperimentel eksamensform., (7-scale, external exam)

There will be four homework assignments. Each will be graded. There will be a final written exam. The final grade is computed 10% for each homework + 60% final exam. The duration of the written examination on premises is 4 hours with the following restrictions:

1. Physical copies of the book and other printed materials are permitted.
2. Ebooks on laptops, ipads, and other e book readers are permitted.
3. Use of a local DBMS on your laptop is permitted.
4. Cell phones are *not* permitted.
5. It is *not* permitted that you access any other other information from the internet, including newsgroups, social media, email, facebook twitter, etc. or elsewhere that is not in book form.

Students should bring a computer with wifi and with the MySQL database system installed.

The reexam form will depend of the number registered for re-exam  

Litteratur udover forskningsartikler:Database Management Systems, 3rd edition, by Ramakrishnan and Gehrke 
Følgende personer underviser på kurset:
NavnStillingUndervisertypeIndsats (%)
Rasmus Pagh Professor(ITU) Kursusansvarlig 60
Johan von Tangen Sivertsen Ph.d.-studerende(ITU) Underviser 40
Kevin Jon Jensen Hjælpelærer(ITU) Hjælpelærer 0
Martin Krøse Hjælpelærer(ITU) Hjælpelærer 0
Oscar Thykier Hjælpelærer(ITU) Hjælpelærer 0
Lasse Lange Jakobsen Hjælpelærer(ITU) Hjælpelærer 0