Bases de Dados › 42532
No final desta disciplina os alunos deverão ter conhecimentos ao nível dos conceitos, métodos e técnicas fundamentais no domínio das bases de dados, que lhes permitam:
Construir um modelo de dados relacional adequado aos requisitos de um sistema de informação, recorrendo às técnicas de desenho conceptual e lógico de uma base de dados;
Explorar as potencialidades de um sistema de gestão de bases de dados (SGBD), incluindo a especificação da estrutura da base de dados com SQL DDL, a manipulação de dados com SQL DML, as facilidades de programação SQL (stored procedures, triggers e functions) e os mecanismos de segurança;
Compreender as diferentes possibilidades de interacção com uma base de dados e desenvolver aplicações para acesso aos dados;
Compreender o papel das bases de dados no âmbito geral do ciclo de modelação e desenvolvimento de um sistema de software.
No final da disciplina o aluno deverá ser capaz de desenvolver um projecto completo de base de dados que inclua os seguintes domínios:
desenvolver um modelo conceptual para uma base de dados, usando Diagramas Entidade Relação, a partir dos requisitos da aplicação que a vai usar.
passagem do esquema conceptual para o esquema relacional.
restrições de integridade (domínio, entidade e referencial).
criação da estrutura da base de dados, num SGBD, a partir do modelo lógico usando a linguagem SQL DDL.
manipulação de dados utilizando a linguagem SQL DML, incluindo o uso de scripts, stored procedures, user-defined functions e triggers.
questões de desempenho: optimização de consultas e implementação de índices.
desenvolver aplicações clientes, para acesso à base de dados, usando as interfaces de acesso adequadas.
Introdução aos Sistemas de Base de Dados
Desenho Conceptual – Diagramas ER
Desenho Lógico - Modelo Relacional
Definição de Dados (Linguagem SQL – DDL)
Manipulação de Dados (Linguagem SQL – DML)
Índices e Optimização
Programação em SQL (Batch, Script, Cursores, Stored Procedures, User Defined Functions e Triggers)
Transacções, Controlo de Concorrência e Recuperação de Falhas
Segurança em Base de Dados
A avaliação da disciplina será contínua e terá duas componentes:
- Avaliação Teórica (AT) - 50%
2 testes intercalares teóricos AT1, AT2 (20% e 30%)
- Avaliação Prática (AP) - 50%
(AC) - 15% correspondentes ao desempenho nas aulas e realização dos guiões
(APF) - 35% para um trabalho prático final distribuído da seguinte forma: APFT (30%) para o trabalho realizado, incluindo relatório, que deverá ser entregue na última semana de aulas; APFA (5%) para a apresentação oral do trabalho na última aula prática.
A nota mínima para cada uma das duas componentes (Teórica e Prática) é de 7 valores.
Familiaridade com técnicas de modelação de dados.
A metodologia de ensino inclui a apresentação teórica dos conteúdos programáticos. Estas aulas têm um carácter expositivo, ilustrado, sempre que possível, com exemplos de aplicação e debate de casos de estudo.
As aulas práticas decorrem em laboratório de computadores e consistem na realização de trabalhos laboratoriais que induzem uma aprendizagem gradual dos conceitos. Existe ainda um projecto prático desenvolvido por dois alunos ao longo do semestre, em horário extra aulas. Este é fundamental para envolver e fomentar a aprendizagem dos alunos.
Os trabalhos práticos serão desenvolvido sobre SQL Server 2012.
R. Elmasri, S. Navathe, "Fundamentals of Database Systems", 6th Edition, 2011, Addison-Wesley.
H. Garcia-Molina. J. D. Ullman. J. Widom, "Database Systems: The Complete Book", 2nd Edition, 2009, Prentice Hall.