Course syllabus adopted 2022-02-01 by Head of Programme (or corresponding).
Overview
- Swedish nameDatabaser
- CodeTDA357
- Credits7.5 Credits
- OwnerTKITE
- Education cycleFirst-cycle
- Main field of studyComputer Science and Engineering, Software Engineering
- DepartmentCOMPUTER SCIENCE AND ENGINEERING
- GradingTH - Pass with distinction (5), Pass with credit (4), Pass (3), Fail
Course round 1
- Teaching language English
- Application code 52134
- Maximum participants185
- Block schedule
- Open for exchange studentsNo
- Only students with the course round in the programme overview.
Credit distribution
Module | Sp1 | Sp2 | Sp3 | Sp4 | Summer | Not Sp | Examination dates |
---|---|---|---|---|---|---|---|
0106 Examination 4.5 c Grading: TH | 4.5 c |
| |||||
0206 Laboratory 3 c Grading: UG | 3 c |
In programmes
- MPDSC - DATA SCIENCE AND AI, MSC PROGR, Year 1 (elective)
- MPDSC - DATA SCIENCE AND AI, MSC PROGR, Year 2 (elective)
- TIDAL - COMPUTER ENGINEERING, Year 2 (compulsory)
- TKIEK - INDUSTRIAL ENGINEERING AND MANAGEMENT - Information technology, Year 3 (compulsory)
- TKITE - SOFTWARE ENGINEERING, Year 2 (elective)
- TKITE - SOFTWARE ENGINEERING, Year 3 (elective)
Examiner
- Jonas Almström Duregård
- Senior Lecturer, Computing Science, Computer Science and Engineering
Course round 2
- Teaching language English
- Application code 52127
- Maximum participants150 (at least 10% of the seats are reserved for exchange students)
- Open for exchange studentsYes
Credit distribution
Module | Sp1 | Sp2 | Sp3 | Sp4 | Summer | Not Sp | Examination dates |
---|---|---|---|---|---|---|---|
0106 Examination 4.5 c Grading: TH | 4.5 c |
| |||||
0206 Laboratory 3 c Grading: UG | 3 c |
In programmes
- MPBME - BIOMEDICAL ENGINEERING, MSC PROGR, Year 2 (elective)
- MPDSC - DATA SCIENCE AND AI, MSC PROGR, Year 1 (elective)
- MPMED - BIOMEDICAL ENGINEERING, MSC PROGR, Year 1 (compulsory elective)
- TKAUT - AUTOMATION AND MECHATRONICS ENGINEERING, Year 3 (elective)
- TKDAT - COMPUTER SCIENCE AND ENGINEERING, Year 3 (elective)
- TKITE - SOFTWARE ENGINEERING, Year 2 (elective)
- TKITE - SOFTWARE ENGINEERING, Year 3 (elective)
- TKTEM - ENGINEERING MATHEMATICS, Year 3 (compulsory elective)
Examiner
- Ana Bove
- Head of Unit, Computing Science, Computer Science and Engineering
Eligibility
General entry requirements for bachelor's level (first cycle)Applicants enrolled in a programme at Chalmers where the course is included in the study programme are exempted from fulfilling the requirements above.
Specific entry requirements
The same as for the programme that owns the course.Applicants enrolled in a programme at Chalmers where the course is included in the study programme are exempted from fulfilling the requirements above.
Course specific prerequisites
To be eligible for the course the student should have successfully completed university level courses of at least 45 credits, including:- at least 15 credits in programming, e.g., TDA548, TDA552, TDA367, or equivalent,
- at least 7.5 credits in mathematics or mathematic reasoning,
- concepts in logic, sets, functions and relations that could be acquired with, e.g., TMV200
Aim
Databases are a ubiquitous feature of the information technology society, and most people have come in contact with them, either directly while using the world wide web, or indirectly through banks, the tax office, etc. A course on database systems is therefore essential to a well-rounded education in computer science.Learning outcomes (after completion of the course the student should be able to)
On successful completion of the course the student will be able to:
Knowledge and understanding
- explain the semantic meaning of queries using relational algebra;
Competence and skills
- construct an Entity-Relationship diagram for a given domain;
- translate an Entity-Relationship diagram into a relational database schema;
- apply design theory concepts for relational databases such as functional dependencies and normalization;
- retrieve and modify data using a database language for respective task;
- design a database interface using constraints, views and triggers;
- implement a relational database schema and related interface using a data definition language;
- use a semi-structured data model;
- communicate with a database, through a database interface, from a software application.
Judgement and approach
- evaluate and create different models for a database domain using Entity-Relationship diagrams and relational schemas;
- contrast the relational and the semi-structured data models.
Content
The course covers the basic principles of database systems as seen by users, application programmers and database administrators. A laboratory assignment develops these topics as a running example throughout the course. These include programming in SQL, as seen by a user querying or modifying an existing database, by a database designer, and by an application programmer invoking SQL from a host language.
Course contents include:
- entity-relationship modeling;
- functional dependencies and normalisation;
- database querying and manipulation through SQL;
- interfacing to a database from a host language (such as Java/JDBC);
- overview of document-based data format such as XML and JSON.
Organisation
The course consists of weekly lectures and exercise sessions, as well as supervised lab sessions.
Literature
Course literature to be announced the latest 8 weeks prior to the start of the course.Examination including compulsory elements
Written individual exam given in an examination hall and programming assignments. The programming assignments are normally carried out in pairs.
The course examiner may assess individual students in other ways than what is stated above if there are special reasons for doing so, for example if a student has a decision from Chalmers on educational support due to disability.