Mestrado em Inteligência Artificial e Computação
Sistemas de Bases de Dados
Ano lectivo de 2001/2002

Sumários das aulas

Número Datas Assunto Acetatos
1 21-02-2002 Apresentação da disciplina (SBD): objectivo, conteúdo, metodologia, bibliografia e avaliação.
Refinamento do esquema e normalização: redundância, anomalias, dependências funcionais (DF); refinamento de um diagrama E/A; regras de inferência de DFs; Axiomas de Armstrong e teoremas; fecho transitivo de um conjunto de atributos. Formas Normais: Forma Normal de Boyce-Codd (BCNF); Terceira Forma Normal (3NF). Decomposição de um esquema de relação; problemas com as decomposições; decomposição sem perdas; decomposição com preservação de dependências; decomposição para BCNF e para 3NF. Refinamento de um esquema relacional com base nas DFs.
Refinamento do esquema da BD
2 28-02-2002 Afinação da Base de Dados: 1/ Afinação física da base de dados; carga do sistema; escolha de índices; assuntos a considerar na escolha de índices; aglomeração; chaves compostas; planos de execução só com índices.
2/ Afinação do esquema lógico; desnormalização; decomposição horizontal; disfarçar alterações ao esquema; afinação de interrogações e vistas.
Dase Base Tuning
3 07-03-2002 Limitações do Modelo Relacional e Outros Modelos: vantagens do modelo relacional; limitações das linguagens relacionais; C embebido e desadaptação de impedâncias; nova geração de sistemas; fosso semântico.
SGBD Orientados por Objectos e Relacionais-Objecto: motivação; aplicação de SGBDOO; SGBDRO; tipos complexos; tipos de dados abstractos; coleções encaixadas, tipos referência, expressões de caminho e herança. Novas facilidades da DML, modificações para suportar SGBDRO.
Outros modelos
4 14-03-2002 (Falta do docente por motivo de saúde) -
5 21-03-2002 SQL-3: SGBD Relacional-Objecto: introdução, modelo e tipos básicos; equivalência de tipos; extensões ao sistema de tipos. Arquitectura do SQL.
Tipos de Dados Abstractos (ADT): atributos, criação e iniciação (funções construtor), funções destrutor, interface pública, privada e protegida, uso de ADTs, funções observador e modificador, subtipagem, herança, substitutabilidade, predicados de tipo, ligações estáticas e dinâmicas de funções, despacho dinâmico.
SQL3 - SGBD Relacional-Objecto
6 04-04-2002 Persistência, tabelas base persistentes, tabelas globais temporárias, tabelas locais temporárias, tabelas vista, tabelas derivadas. Persistência de ADTs. Módulos persistentes.
Tipos colecção: colecções de ADTs, tipo ROW, tipos referência, tipo SET, tipo LIST, tipo MULTISET, construtores de tipos colecção, interrogações sobre colecções, manipulação de colecções.
Módulos cliente e módulos servidor. Rotinas do esquema: SQL e externas. Elementos procedimentais de SQL.
SQL3 - Persistência, Colecções e Módulos
7 11-04-2002 Regras de integridade e gatilhos. Restrições de Integridade em SQL-92: restrições de chave, R.I. referencial, restrições baseadas em atributos, restrições baseadas em tuplos, asserções em SQL-92, avaliação de asserções. Manutenção de restrições de integridade. Gatilhos em SQL-3: definição de gatilhos, modelo de execução, criação, eventos, granularidade, variáveis e tabelas de transicção, condições, acções e tempo de activação. Asserções em SQL-3. Regras de integridade e gatilhos
8 18-04-2002 Apresentação da disciplina (BDI): objectivo, conteúdo, metodologia, bibliografia e avaliação.
Introdução: Web e acesso a dados; Internet.
Web e Internet
9 02-05-2002 Interface com o utilizador na Web: Introdução e exemplos de HTML, CSS, applets e Javascript. UI na Web
10 09-05-2002 Java Server Pages (JSP), vantagens da arquitectura JSP em relação a servlets; ciclo de vida de uma página JSP, modelos de acesso a dados, sintaxe e semântica, tratamento de excepções, gestão de sessões.
Exemplo de aplicação.
JSP
11 16-05-2002 Programação Java de Servidor, Sessões: Conceitos básicos; Interface HttpSession; Ciclo de vida do Objecto session; Implementar sessões; Sessões e Eventos.. Servlets & Sessões
12 23-05-2002 Acesso a Bases de Dados: JDBC e SQLJ.
JDBC: arquitectura, tipos de drivers, cenários de utilização, mapeamento de tipos, execução de interrogações, excepções.
SQLJ: SQL embebido em Java, arquitectura, variáveis e cláusulas, resultados e iteradores. Exemplo de aplicação com uma arquitectura de 3 camadas, servlets e HTML.
JDBC e SQLJ
13 06-06-2002 Programação Java Servidor, Enterprise Java Beans (EJB); ligar servlets a EJB; Mostrar na Web dados de saída de um EJB. Web Services: História e arquitecturas; SOAP; Implementações Java e .NET; Exemplo de utilização. EJB e Web Services