Base de Dados, 2018/2019

Índice


Professor

Descrição e objectivos da disciplina

Esta disciplina aborda técnicas de análise e modelação de bases de dados e o uso de sistemas de gestão de base de dados (SGBDs) para o desenvolvimento de aplicações. Iremos aprender a fazer modelos conceptuais de dados usando UML. Estudaremos o modelo relacional, e a conversão de um modelo conceptual para o modelo relacional. Irá ser dado ênfase a linguagens de manipulação de dados, quer abstractas (álgebra relacional) quer concretas (SQL). A linguagem SQL é um standard para definir e manipular informação em bases de dados e irá ter uma cobertura extensiva. Veremos também como desenvolver aplicações utilizando SQL juntamente com uma linguagem de programação tradicional. Iremos também aprender noções sobre bases de dados semi-estruturadas.

Programa resumido

Bibliografia

O livro de texto recomendado é,

Livros em português para quem não esteja à vontade na língua inglesa,

Regras de avaliação

Trabalho prático 30%
Exame final 70%

É necessário uma nota não inferior a 7,0 valores no trabalho prático para serem admitidos a exame final. Arredondamentos só na nota final.

O trabalho prático é feito individualmente ou em grupo de 2 pessoas. O trabalho é composto por várias partes, cada qual com o seu prazo de entrega. Cada parte corresponde a uma tarefa necessária para o desenvolvimento de uma aplicação suportada por uma base de dados. A nota prática do grupo é convertida numa nota prática individual no momento da discussão dos trabalhos (que ocorrerá na última semana de aulas).


Aulas

aula data tópico slides
1 18/Set Introdução (PDF)
2 19/Set Modelação de dados com UML (PDF)
3 26/Set
4 02/Out
5 03/Out Modelo Relacional (PDF)
6 09/Out Conversão de UML para o modelo relacional (PDF)
7 10/Out Dependências Funcionais (PDF)
8 16/Out
9 17/Out Forma Normal de Boyce-Codd (BCNF), 3ª Forma Normal (3NF) (PDF)
10 23/Out

Aulas práticas

aula data tópico exercícios soluções Gradience
class token: E68759F1
1 24-28/Set Modelação de dados com UML (PDF) (PDF)  
2 01-05/Out Modelação de dados com UML (PDF) (PDF) HW 04E - UML
3 08-12/Out Conversão de UML para modelo relacional (PDF)   HW 02A - Relational Model
4 15-19/Out Dependências funcionais, BCNF, 3NF (PDF)   HW 03A - Functional Dependencies: Keys
HW 03B - Functional Dependency Inference
HW 03D - Normalization
5 22-26/Out

Gradiance

Gradiance é um sistema online que permite a realização de exercícios e receber feedback imediato. A grande vantagem deste sistema é que o feedback não é um simples certo ou errado: quando erram o sistema dá dicas sobre o erro cometido. O sistema é muito bom e é uma excelente ajuda para a aprendizagem da matéria de base de dados.

Recomendo que consultem http://infolab.stanford.edu/~ullman/pub/stud-guide.html e sigam as indicações que lá estão. Depois de criarem uma conta devem fazer login e fazer 'Sign up' usando o Class Token correspondente à matéria de Base de Dados: E68759F1.

Depois de fazerem o 'Sign up' podem fazer uma série de 'Homeworks' e 'Labs'.

Trabalho prático

Links para SGBDs gratuitos