You need to activate javascript for this site.
Menu Conteúdo Rodapé
  1. Home
  2. Courses
  3. Web, Mobile and Cloud Computing
  4. Databases

Databases

Code 14729
Year 3
Semester S1
ECTS Credits 6
Workload PL(30H)/T(30H)
Scientific area Informatics
Entry requirements Competence in algorithms and programming.
Mode of delivery Face-to-face instruction.
Work placements Not applicable.
Learning outcomes This course introduces the theme of design, analysis, and construction of the relational paradigm. Therefore, its main objective is to prepare students to understand, design and develop database systems.
The course focuses on the relational model, namely, modeling, normalization, query languages (relational algebra and SQL), database management issues and developing client/server database applications.
Upon completion of the teaching-learning process, the student should be able to:
- Given a real, or hypothetical case, develop a suitable data model;
- Normalize (3NF, BCNF, or a superior normal form) and "de-normalize" relations;
- Choose a database management system that fulfills the needs of the information system to be developed;
- Produce the physical database model;
- Query the database (using SQL);
- Develop multi-user database applications;
- Use transactions.
Syllabus 1. Introduction to Database Systems
1.1.Data storage
1.2.The Database approach and the Database Environment
1.3.Database System Development Lifecycle

2. Database Models
2.1. Introduction
2.1.1 Hierarchical model
2.1.2 Network model
2.1.3 Relational model
2.2 Relational Model
2.2.1 Relational data structures
2.2.2 Relational Algebra
2.2.3 Relational DBMS
2.2.4 Query languages
2.2.5 Integrity constraints

3. Normalization
3.1 Data redundancy
3.2 Functional dependencies
3.3 The normalization process (1NF to BCNF. Dependencies preservation)

4. Entity-Relationship (ER) Modeling
4.1 Introduction
4.2 ER diagram
4.3 Relationship properties
4.4 M:N relationship decomposition
4.5 Complex relationships
4.5 Problems with ER models
4.6 Relational schema

5. Client/server applications development
5.1 Server (SQL Server)
5.2 Client app (Radzen and Lazarus)

6. Transactions
6.1 ACID properties
6.2 Isolation, levels
6.3 Locks and Concurrency
Main Bibliography 1. Thomas Connolly, Carolyn Begg. “Database Systems, A Practical Approach to Design, Implementation and Management”, 6th Edition, 2015. Pearson, ISBN: 978-1-292-06118-4.

2. Feliz Gouveia. “Fundamentos de Bases de Dados”, FCA, 2014, ISBN: 978-972-722-799-0.

3. Luís Damas, “SQL”, 14ª Edição, FCA, 2017, ISBN 978-972-722-829-4.

4) R. Ramakrishnan and J. Gehrke, Database Management Systems, McGraw-Hill, 2003.
Language Portuguese. Tutorial support is available in English.
Last updated on: 2023-03-17

The cookies used in this website do not collect personal information that helps to identify you. By continuing you agree to the cookie policy.