Jump to content

DAT107 Database Systems

Course description for academic year 2020/2021

Contents and structure

The course will give an introduction to the design and use of database management systems (DBMS). Moreover, NoSQL databases are also introduced.

Contents:  

  • DBMS concepts, architecture, functionalities, and advantages
  • Entity-Relationship (ER) model, extended ER (EER) model
  • Relational data model
  • Mapping from ER (EER) model to relational schema
  • Structured Query Language (SQL) including DDL and DML
  • Relational integrity constraints
  • Transactions against databases
  • Functional dependency and normalization for relational database
  • NoSQL database, NoSQL graph database
  • MongoDB introduction
  • Introduction to XML
  • Interface from an application language to a database, such as JPA from Java
  • Data mining techniques

Learning Outcome

After completing this course, the student should be able to:

knowledge

  • Understand the database concepts, definition, and architecture  
  • Explain key terms and concepts regarding different database systems
  • Explain how data modeling is part of the development process
  • Understand the processes to build a database system
  • Programming against an API for a database system from an application language
  • Understand how to use the NoSQL to handle big database
  • Understand how to use data mining techniques to obtain the knowledge 

Skills

  • Create models in appropriate notation to express aspects of database design
  • Transform ER (EER) model to relational data model
  • Use SQL language such as DDL and DML to define, create, and manipulate the databases
  • Select an appropriate API to map objects to database objects so that an application can easily use the database, such as mapping with JPA in Java
  • Use NoSQL and XML to process the big data issues
  • Use the appropriate data mining techniques to retrieve the information

General competence

  • Consider the type of database that fits a given application

Entry requirements

None

Recommended previous knowledge

DAT100 Basic Programming and MAT101 Discrete Mathematics and Programming, or equivalent knowledge. ING102 Professional Engineering and Working Methods for Computer Science.

Teaching methods

Lectures, exercises and project work in groups.

Compulsory learning activities

4 compulsory exercises must be completed by set deadlines and approved before the exam can be taken. Relevant forms can be programming tasks, development projects, school tests.

Passed exercises also provide access to any postponed exam the following semester. For postponed and new exams the next time the subject is taught, new exercises must be provided.

Assessment

Written school exam, 4 hours.

The time and place for the exam are stated on the Student web and digital exam system.

The exam will be held on the digital exam system. Students must bring their own PC / MAC. The software required to complete the exam must be installed and tested before the exam day.

Grade scale AF, where F does not correspond to passing.

If there are few registered for the exam, oral exams may be arranged.

Examination support material

No. For a PC exam, only a simple text editor should be used.

More about examination support material