MAC0439  Laboratório de Bancos de Dados

Por | Em

OBJETIVOS:  Consolidar os principais fundamentos apresentados em uma disciplina introdutória de sistemas de bancos de dados. Explorar os aspectos práticos envolvidos no desenvolvimento de um sistema com banco de dados, o que inclui o uso de sistemas gerenciadores de bancos de dados e ferramentas de apoio ao projeto de bancos de dados.

PROGRAMA RESUMIDO:  Especificação e implementação de um banco de dados com seus procedimentos de inserção, eliminação, atualização e consulta. Ferramentas de apoio para o desenvolvimento do projeto lógico e físico de bancos de dados. Gerenciamento de bancos de dados relacionais por meio de comandos da linguagem SQL: definição de dados e restrições; modificações e consultas sobre os dados; visões, gatilhos e procedimentos armazenados; segurança; transações; índices. Sintonia fina de bancos de dados relacionais. Integração de bancos de dados relacionais a sistemas de software.

PROGRAMA:  Prática da especificação e implementação de um banco de dados relacional ou objeto-relacional com seus procedimentos de inserção, remoção, alteração e consulta. Ferramentas de apoio para o desenvolvimento do projeto conceitual, lógico e físico de bancos de dados. Introdução e prática de conceitos de gerenciamento de bancos de dados relacionais por meio do uso da linguagem SQL: Definição de dados e restrições; Modificações nos dados -- inserção, remoção e alteração; Consultas envolvendo junções, união, interseção e diferença de relações; Consultas envolvendo agrupamento e agregação; Consultas recursivas; Visões, gatilhos e procedimentos armazenados; Segurança, autorização; Transações; Índices. Técnicas para sintonia fina de banco de dados relacionais. Integração de bancos de dados relacionais a sistemas de software: Padrões arquiteturais para o acesso a bancos de dados. Arcabouços para persistência em bancos de dados. Prática da implementação de um sistema simples que empregue dados semi-estruturados como solução para o gerenciamento de seus dados. Prática da implementação de um sistema simples que empregue um banco de dados não relacional como solução para o gerenciamento de seus dados.

RESPONSÁVEIS:  João Eduardo Ferreira, Marcelo Finger e Kelly Rosa Graghetto.

PRÉ-REQUISITOS:  MAC0350.

CARGA HORÁRIA SEMANAL E NÚMERO DE CRÉDITOS:  6 horas, 4 créditos-aula e 2 créditos-trabalho.

CRITÉRIO DE AVALIAÇÃO DA APRENDIZAGEM:  Método: aulas expositivas e laboratório de programação.
Critério: média ponderada de provas e exercícios.
Norma de recuperação: média ponderada da nota final e de provas e/ou tarefas de recuperação.

BIBLIOGRAFIA BÁSICA: 

  • T. J. Teorey, S. S. Lightstone, T. Nadeau, H. V. Jagadish, Database Modeling & Design: Logical Design, 5th edition, Morgan Kaufmann Publishers, 2011.
  • H. Garcia-Molina, J. D. Ullman, J. Widom, Database Systems: The Complete Book, 2nd ed., Pearson Prentice Hall, 2009.
  • R. Elmasri, S.B. Navathe, Sistemas de Bancos de Dados, 6a ed., Addison-Wesley, 2011.
  • C.J. Date, Introdução a Sistemas de Bancos de Dados, 8a ed., Campus, 2004.
  • D. Shasha, P. Bonnet, Database Tuning: principles, experiments and troubleshooting techniques, Morgan Kaufmann Publishers, 2002.
  • P.J. Sadalage, M. Fowler, NoSQL Distilled: A Brief Guide to the Emerging World of Polyglot Persistence, Addison Wesley, 2011.
  • Manuais das ferramentas de apoio ao desenvolvimento de banco de dados e dos gerenciadores de bancos de dados.

OBSERVAÇÃO:  Disciplina optativa eletiva no currículo do BCC.

 

[Veja dados da disciplina no JúpiterWeb]