Curso Mestrado em Engenharia Electrotécnica e de Computadores Ano lectivo 1995/96 Nome da disciplina Tópicos Avançados de Bases de Dados Ano 1 Semestre 2 Escolaridade 3h T Departamento que lecciona a disciplina DEEC Docentes Gabriel David; João Correia Lopes Turmas: teóricas 1 práticas teórico/práticas
OBJECTIVOS
Estudar as tendências actuais de evolução dos sistemas de gestão de bases de dados, em particular os baseados em tecnologia orientada por objectos. Pretende-se que os alunos utilizem efectivamente alguns sistemas, através da feitura de trabalhos práticos.
PRÉ-REQUISITOS
Supõem-se conhecimentos prévios em bases de dados relacionais e alguma exposição a linguagens de programação por objectos.
CONTEÚDO
Modelo relacional: vantagens e limitações. Sistemas de tipos e modelos de dados.
Linguagens persistentes; características do Napier88; funções de ordem superior; tipos de dados abstractos; persistência; concorrência.
Bases de dados orientadas por objectos; objectos complexos; linguagens de BDOO; o caso do Object Store; transacções; gestão de versões; a norma de BD de objectos ODMG.
Técnicas de implementação.
Bases de dados distribuídas.
Bases de dados dedutivas.
METODOLOGIA DA DISCIPLINA
As aulas serão usadas para exposição formal da matéria, acompanhada da apresentação de exemplos, resolução de pequenos exercícios e sua discussão. Serão adicionalmente propostos trabalhos de média dimensão envolvendo o uso efectivo de sistemas persistentes e de BDOO.
BIBLIOGRAFIA OBRIGATÓRIA
BIBLIOGRAFIA RECOMENDADA
* Serge Abiteboul, Richard Hull, Victor Vianu. Foundations of Databases.
Addison-Wesley Publishing Company, 1995.
* Roderic G. G. Cattell. Object Data Management.
Addison-Wesley Publishing Company, Reading MA, 1991.
* Roderic G. G. Cattell. The Object Database Standard, ODMG-93.
Morgan Kaufann Publishers, San MAteo CA, 1994.
* Claude Delobel, Christophe Lecluse, Philippe Richard. Databases: from Relational to Object-Oriented Systems.
International Thomson Publishing, 1995.
* Setrag Khoshafian. Object Oriented Databases.
John Wyley & Sons, New York, 1993.
* Object Store User Guide (Release 4).
Object Design Inc., Burlington, MA, 1995.
* Norman Paton, Richard Cooper, Howard Williams, Philip Trinder. Database Programming Languages.
Prentice Hall International, 1996.
* Jeffrey Ullman. Principles of Database and Knowledge-Base Systems.
Computer Science Press, 1988.
AVALIAÇÃO
Avaliação dos trabalhos práticos: 40%.
Exame: 60% (prova com consulta, com a duração de 2H30 horas).
PROGRAMA DETALHADO
1 Sistemas relacionais
Modelo relacional: vantagens e limitações.
Novas aplicações.
Modelo entidade-associação.
2 Tipos
Sistemas de tipos e modelos de dados.
Linguagens de programação de BD.
3 Linguagem Napier88
Linguagens persistentes ortogonais.
Arquitectura do sistema e características do Napier88.
4 Persistência
Funções de ordem superior. Verificação de tipos.
Ligação. Tipos de dados abstractos.
Construção incremental e evolução.
Persistência.
Proposição de trabalho prático.
5 Concorrência
Reflexão linguística e evolução.
Concorrência (threads, semáforos e transacções).
6 Bases de dados orientadas por objectos
Conceitos de orientação por objectos.
Objectos complexos. Restrições de integridade.
7 Linguagens de BDOO
Extensão de linguagens de BD com características OO.
Extensão de linguagens de programação OO com características de BD.
Colecções. Interrogações e índices.
O caso do Object Store.
8 Concorrência em BDOO
Transacções. Controlo da concorrência. Gestão de versões.
Proposição de trabalho prático.
9 A norma de BD de objectos ODMG
O modelo de objectos.
Linguagem de definição de objectos.
Linguagem de interrogação de objectos.
Concretizações em C++ e Smalltalk.
10 Técnicas de implementação
11 Bases de dados distribuídas
Concorrência em ambientes distribuídos.
Arquitecturas cliente-servidor.
12 Bases de dados dedutivas