Laboratório de Bases de Dados e Aplicações Web

Preparação do teste individual, dos requisitos e da modelação aos dados, à aplicação web e às suas garantias.

Perguntar sobre esta página

ChatGPTClaudePerplexityGrokGeminiCopiar e abrirDeepSeekCopiar e abrir

A Loja de Bilhetes acompanha o percurso dos requisitos às compras concorrentes. Compradores escolhem sessões de eventos e recebem bilhetes; cada capítulo acrescenta as decisões necessárias para representar, consultar ou proteger esses dados. As questões são próprias, não reproduções de provas oficiais.

Pré-requisitos

A cadeira pressupõe UML, modelo relacional e SQL de Bases de Dados, e HTTP, HTML, CSS e JavaScript de Linguagens e Tecnologias Web. Estas páginas recordam os conceitos usados nos exemplos, ou seja, não substituem o estudo desses fundamentos. Os dados, diagramas e programas da Loja de Bilhetes são exemplos didáticos simplificados, não um template de entrega do projeto.

Para recuperar os pré-requisitos, há dois vídeos de Rodrigo Dias: Consultas de SQL 101 e Programação Web, em ~4 horas. São revisões de fundamentos, não guias dos artefactos ou regras de LBAW.

Percurso de estudo

  1. Requisitos fixa atores, histórias, regras e critérios. Arquitetura de informação e acessibilidade organiza a tarefa de encontrar uma sessão e comprar, antes de qualquer tabela. Estes dois artefactos correspondem a A2 e A3 do projeto.
  2. Modelo conceptual, esquema relacional e normalização convertem as regras em estrutura, restrições e validação, com a notação compacta de A5. É o mesmo caso contínuo da Loja de Bilhetes, do desenho às tabelas. A FK composta acrescenta a verificação de uma combinação, quando duas referências independentes não chegam.
  3. Consultas SQL responde sobre os dados com junções, NULL, agregação e quantificação. Índices e pesquisa parte de uma consulta frequente e de uma carga definida para escolher índices e ler o plano, como pede A6.
  4. Triggers e transações trata atomicidade, isolamento e a corrida pelo último lugar, com o isolamento de cada transação justificado. HTTP, aplicação Laravel e segurança distinguem protocolo, responsabilidades e permissões sobre o mesmo recurso Sessões. O protótipo vertical liga uma história aos estados da interface, ao contrato e aos dados persistidos.
  5. Cliente e desempenho mede o percurso completo antes de otimizar. NoSQL decide armazenamento por operação, unidade de atualização e garantias, com o âmbito de CAP delimitado.

Cada capítulo termina com questões e resoluções justificadas. A cheat sheet conserva definições, condições e armadilhas para consulta depois de estudar.

Preparar o teste

Resolve uma questão de modelação, uma de normalização e uma consulta sem abrir as pistas. Depois analisa um cenário concorrente e identifica as defesas de um pedido web. Justifica sempre a condição, porque não chega dizer «tem trigger», «usa ORM» ou «está autenticado».

Para SQL, cria dados com zero, uma e várias correspondências, e com NULL quando é permitido. Para uma regra concorrente, escreve uma sequência possível de duas transações. Para uma falha web, identifica quem controla a entrada, onde ela é interpretada e que permissão devia ser verificada.

Os blocos SQL desta cadeira declaram o motor PostgreSQL. Os exemplos específicos de PostgreSQL, como PL/pgSQL e índices GIN, usam esse dialeto. Os níveis de isolamento exigem um servidor com várias ligações para demonstrar concorrência. Os fragmentos Laravel pressupõem a aplicação e as dependências do projeto; os blocos PHP executáveis isolam uma operação da linguagem.

Avaliação atual: pesos, mínimos e limites

A apresentação indica um teste individual de escolha múltipla, sem consulta, sobre os conceitos aplicados nos artefactos. A prática de justificação destas páginas ajuda a distinguir alternativas; não prevê as perguntas do teste.

A apresentação e a FAQ de 2026/27 indicam 80% de projeto e 20% de teste individual, com mínimo de 8/20 no teste, sem arredondamento para atingir esse mínimo. Cada componente do projeto exige 10/20. A classificação final não pode exceder a nota do teste acrescida de cinco valores. Por exemplo, projeto 18 e teste 10 dão 16,4 pela média ponderada, mas o limite baixa esse resultado para 15.

Estas páginas ligam a preparação do teste às decisões aplicadas no projeto. Regras de frequência, entregas, apresentação e avaliação individual do projeto continuam nos materiais atuais do Moodle. A ficha SIGARRA de 2026/27 confirma os pesos, os mínimos e o limite de cinco valores acima do teste, também presentes na apresentação e na FAQ atuais. O plano do semestre acrescenta a sequência das aulas. Os slides disponíveis cobrem requisitos, arquitetura de informação, especificação da base de dados, índices, pesquisa textual, triggers e transações. As aulas posteriores continuam a precisar de comparação quando forem publicadas.

Fontes e anos: base, provas arquivadas e documentação

A base destas páginas são os cinco conjuntos de slides LBAW 2026/27 disponíveis em 8 de outubro, a FAQ e o plano do semestre. O exame modelo de abril de 2018 e os quizzes de prática exportados em abril de 2019, junho de 2021 e janeiro de 2023 ajudam a comparar conceitos. Os ficheiros arquivados como 2019 e 2021 são quizzes de prática. Estes modelos não confirmam o conteúdo nem as regras de uma prova futura. As notas de Fábio Sá partem da edição 2022/23 e foram revistas em 2023. Para as ferramentas, as definições e os exemplos destas páginas seguem a documentação primária ligada abaixo.

Referências complementares: documentação por tema

Os materiais da edição atual do Moodle definem o percurso da cadeira. A bibliografia institucional recolhida inclui Database Management Systems, de Raghu Ramakrishnan e Johannes Gehrke, e The Tangled Web, de Michal Zalewski. Estas referências ajudam a consultar definições, detalhes das ferramentas e aulas sobre os mesmos temas. Confirma a versão quando segues documentação de software.

Os vídeos recomendados vivem nas lições dos conceitos que ajudam a visualizar:

Artefactos A1 a A6

Cada capítulo usa a Loja de Bilhetes como caso contínuo: requisitos em A2, arquitetura em A3, modelo em A4, esquema e validação em A5, índices, triggers, transações e população em A6. A notação compacta e o SQL dos artefactos oficiais têm gralhas pontuais que estas páginas não reproduzem: aqui a regra entre 1 e 5 usa AND, currval é local à sessão e cada trigger verifica a coluna da regra que anuncia.

À tua maneira

Aparência

Modo de cor
Tema
Cor de destaque

Leitura

Fonte de leitura

Álgebra, lógica e uma ideia de cada vez.

Código

Fonte do código

Navegação

Cursor de leitura, sem edição. h, j, k, l movem; / pesquisa nesta página. v seleciona caracteres; V seleciona linhas; y copia. Tab permite destacar ou comentar. Espaço ou Enter abre blocos recolhíveis. Nos cartões, h, j, k, l mudam o foco.

CSS personalizado

Ativa uma sugestão ou guarda o teu CSS. Só muda este navegador.

Usa --page, --text e --accent para acompanhar o tema.

Seletores e recuperação

.site-header, .prose, .course-card, [data-reading-history], [data-playground] e .page-actions.

Abre a aparência com a tecla vírgula ou no rodapé. Se o CSS esconder os controlos, abre esta página sem CSS personalizado.

Pesquisar

Escreve para pesquisar em todo o site.

para escolher · Enter para abrir · Esc para fechar

Copiar fórmula

A cópia automática não está disponível. Copia o LaTeX abaixo.

Pesquisar nesta página

Enter procura · n / N repetem · Esc cancela. Ctrl / Cmd K pesquisa todo o site.

Atalhos de teclado

Clica numa tecla para a mudar. Esc cancela. Backspace desativa.

PesquisarCtrl / Cmd K

Os atalhos não interferem enquanto escreves. Tab e Enter funcionam sempre.