Code: | L.EIC012 | Acronym: | BD |
Keywords | |
---|---|
Classification | Keyword |
OFICIAL | Informatics Engineering and Computing |
Active? | Yes |
Responsible unit: | Department of Informatics Engineering |
Course/CS Responsible: | Bachelor in Informatics and Computing Engineering |
Acronym | No. of Students | Study Plan | Curricular Years | Credits UCN | Credits ECTS | Contact hours | Total Time |
---|---|---|---|---|---|---|---|
L.EIC | 381 | Syllabus | 2 | - | 6 | 52 | 162 |
BACKGROUND
Information Systems (IS) is a key topic in informatics engineering. Databases are data repositories required in any IS. The database course is a key course in the area of IS. The main objective of this course unit is to prepare students to design and develop database systems that meet the users' needs according to the organizational management goals.
SPECIFIC AIMS
This is an introductory course on databases. It is focused on the relational paradigm. It covers the design (UML model and relational normalization), construction (SQL data definition language), querying (SQL data manipulation language) and management (physical organization and query optimization).
PERCENT DISTRIBUTION
Scientific component: 50%
Technological component:50%
LEARNING OUTCOMES
Upon completion of this unit students should be able to:
- Explain the main features of a database management system;
- Define a high-level database model for a particular context;
- Map a high-level database model to a relation schema;
- Identify the functional dependencies of a relation;
- Diferentiate normal forms in relation schemas;
- Decompose relation schemas to the Boyce-Codd normal form and the third normal form;
- Create a relacional databse in SQL from a relational schema;
- Use relational algebra to query databases;
- Query relational databases in SQL;
- Understand the need of indexes and identify the best index for a given situation.
PRE REQUISITES
Basic knowledge on set theory.
UML class diagram. Relational schema, normalization and mapping from a high-level database model. SQL Data Definition Language and integrity constraints. Relational algebra as a query language. SQL Data Manipulation Language. Views. Indexes.
Lectures are used to present the subject topics along with application examples. Practical classes take place in a computer lab, using a database management system available in the market (SQLite). In the labs, practical exercises will be performed using an example database, and small developments will be carried out.
Designation | Weight (%) |
---|---|
Exame | 50,00 |
Teste | 25,00 |
Trabalho laboratorial | 25,00 |
Total: | 100,00 |
Designation | Time (hours) |
---|---|
Estudo autónomo | 60,00 |
Frequência das aulas | 52,00 |
Trabalho laboratorial | 50,00 |
Total: | 162,00 |
To be eligible for the final exam, students cannot exceed the maximum number of absences in the laboratorial classes. Presence in classes will be registered. It is necessary to obtain a minimum of 8 marks (in 20) in the distributed evaluation to be admitted to the final exam. The distributed evaluation is determined by group work and an SQL test.
TSQL - SQL test (individual)
PROJ - Project/Group work
AD - Distributed Evaluation (minimum grade: 8 out of 20): AD = 0.5 TSQL + 0.5 PROJ
EF - Final Exam (miminum grade: 8 out of 20)
Final mark = round(0,5 AD + 0,5 EF)
The project is a group work that will be assessed in three different moments: each of the first two submissions worth 25% and the last submission is worth 50% of the project evaluation.
The distributed assessment is mandatory for students with worker statute or equivalent.
It is possible to improve the final exam mark through a second exam of similar difficulty.
The classification of the distributed assessment can be improved in the following year.