Data Modeling and Preparation

Base Knowledge

Programação

Teaching Methodologies

  ME1. Exposição Interativa: apresentação estruturada dos conceitos-chave, articulada com exemplos e questões dirigidas, suportando OA1-OA5.

  ME2. Aprendizagem Baseada em Problemas: resolução progressiva de exercícios de SQL, modelação e normalização, individualmente e em pequenos grupos, promovendo OA2-OA4 e CD1-CD4.

  ME3. Aprendizagem Baseada em Projetos: desenvolvimento de um Projeto de Base de Dados a partir de requisitos de um problema aplicado, integrando modelação, normalização, implementação e consultas, com incidência em OA2-OA4 e CD2-CD5.

  ME4. Orientação Tutorial: acompanhamento das fases do projeto, discussão das soluções propostas, esclarecimento de dúvidas e feedback orientado à melhoria.

As metodologias privilegiam a participação ativa, a resolução de problemas e a aplicação dos conteúdos a situações concretas.

Learning Results

Objetivos a desenvolver:

  OA1. Explicar os fundamentos de Bases de Dados e SGBD, incluindo modelos de dados, integridade, segurança, transações e ACID.
  OA2. Definir, consultar, manipular e preparar dados através de SQL, incluindo agregações, junções, subconsultas, views e triggers.
  OA3. Analisar problemas e projetar Bases de Dados através do modelo Entidade-Associação e da sua transformação para o modelo relacional.
  OA4. Identificar redundâncias e dependências funcionais e normalizar relações até à 3.ª Forma Normal.
  OA5. Distinguir Bases de Dados relacionais e NoSQL e executar operações fundamentais em MongoDB.

Competências a desenvolver:

  CD1. Pensamento crítico: selecionar modelos e mecanismos adequados às características dos dados e do problema.
  CD2. Resolução de problemas: formular soluções de consulta e manipulação de dados através de SQL.
  CD3. Modelação: representar requisitos através de modelos conceptuais e relacionais.
  CD4. Qualidade e integridade: identificar problemas estruturais e aplicar restrições e normalização.
  CD5. Comunicação técnica: apresentar e defender as decisões adotadas nas soluções desenvolvidas.

DEMONSTRAÇÃO DA COERÊNCIA DOS CONTEÚDOS PROGRAMÁTICOS COM OS OBJETIVOS DE APRENDIZAGEM

Os conteúdos seguem uma progressão entre fundamentos, utilização, projeto e comparação de modelos de Bases de Dados.

  OA1 / CD1: P1 apresenta os conceitos de Bases de Dados e SGBD, modelos de dados, integridade, segurança, transações e ACID.

  OA2 / CD2: P2 desenvolve SQL de forma progressiva, desde operações fundamentais até consultas avançadas, manipulação, views, triggers e controlo de acesso.

  OA3 / CD3: P3 desenvolve a análise de problemas, a modelação Entidade-Associação e a transformação para o modelo relacional.

  OA4 / CD4: P4 aborda redundâncias, chaves, dependências funcionais e normalização até à 3.ª Forma Normal.

  OA5 / CD1: P5 introduz os tipos de Bases de Dados NoSQL, BASE, Teorema CAP e MongoDB.

  CD5 é desenvolvida transversalmente através da apresentação e defesa das soluções produzidas.

Program

P1. Introdução aos Sistemas de Bases de Dados
  1.1 Conceitos de Bases de Dados e SGBD
  1.2 Capacidades dos SGBD
  1.3 Integridade, transações, segurança e ACID
  1.4 Modelos de dados (hierárquico, rede, relacional e não relacional)

P2. SQL e Bases de Dados Relacionais
  2.1 SQL fundamental: seleção, projeção, ordenação e operadores
  2.2 Definição e manipulação: DDL, DML, restrições, Insert, Update e Delete
  2.3 Agregação: funções, GROUP BY e HAVING
  2.4 Consultas avançadas: junções, subconsultas e consultas combinadas
  2.5 Views, Triggers, transações e controlo de acesso

P3. Modelação
  3.1 Projeto de Bases de Dados
  3.2 Modelo Entidade-Associação: entidades, atributos, associações, cardinalidades e restrições
  3.3 Transformação para o modelo relacional

P4. Normalização
  4.1 Redundâncias, chaves e dependências funcionais
  4.2 Normalização (1.ª FN, 2.ª FN e 3.ª FN)

P5. Bases de Dados NoSQL
  5.1 Tipos e aplicações
  5.2 ACID vs. BASE e Teorema CAP
  5.3 MongoDB

Curricular Unit Teachers

Adriano del Pino Lino

Grading Methods

A avaliação prevê duas modalidades: Avaliação Contínua e Avaliação por Exame.

Os estudantes podem optar por um dos seguintes regimes de avaliação:

A) AVALIAÇÃO CONTÍNUA

MA1. Atividades Práticas - 15%
  - 3 atividades, com ponderação de 5% cada;
  - realizadas individualmente;
  - incluem exercícios teórico-práticos de Bases de Dados, SQL e modelação;
  - nota mínima: 7 valores;
  - IA: não permitida;
  - caráter obrigatório.

MA2. Teste Individual - 35%
  - componente teórica e prática;
  - nota mínima: 7 valores;
  - IA: não permitida;
  - caráter obrigatório.

MA3. Projeto de Base de Dados em Grupo - 50%
  - grupos de, no máximo, 4 estudantes;
  - descrição do negócio, problema e requisitos a resolver;
  - projeto da Base de Dados, incluindo modelação, normalização, implementação da Base de Dados e sistema;
  - apresentação do projeto;
  - defesa oral individual;
  - nota mínima: 7 valores;
  - IA: não permitida;
  - caráter obrigatório.

Classificação Final

  CF = 0,15 × MA1 + 0,35 × MA2 + 0,50 × MA3

  A aprovação requer CF ≥ 10 valores e nota mínima de 7 valores em cada elemento obrigatório.

B) AVALIAÇÃO POR EXAME

MA4. Exame Individual - 50%
  - componente teórica e prática;
  - abrange os conteúdos da Unidade Curricular;
  - nota mínima: 7 valores;
  - IA: não permitida;
  - caráter obrigatório.

MA5. Projeto Individual de Base de Dados - 50%
  - realizado individualmente;
  - novo enunciado para a respetiva época de exame;
  - descrição do negócio, problema e requisitos a resolver;
  - projeto da Base de Dados, incluindo modelação, normalização, implementação da Base de Dados e sistema;
  - apresentação e defesa oral individual;
  - nota mínima: 7 valores;
  - IA: não permitida;
  - caráter obrigatório.

Classificação Final

  CF = 0,50 × MA4 + 0,50 × MA5

  A aprovação requer CF ≥ 10 valores e nota mínima de 7 valores em cada elemento obrigatório.


    Internship(s)

    NAO

    Bibliography

    Gouveia, F. (2021). Bases de dados: Fundamentos e aplicações (2.ª ed. aumentada). FCA Editores.
    Belo, O. (2021). Bases de dados relacionais: Implementação com MySQL. FCA Editores.