Transparências: Sistemas de informação

Propaganda
Informática
(módulo de Bases de Dados)
Sumário

Sistema de informação

Modelo entidade-associação
Modelo relacional
SQL
Projecto de BD
Pesquisa de informação implícita




Gabriel David
FEUP - Rua dos Bragas, 4050-123 Porto Codex - PORTUGAL
Tel. 351-222041842 - Fax: 351-222000808
Email: [email protected]
URL: http://www.fe.up.pt
1
Problema

Pretende-se construir um sistema de informação
para uma parte da actividade de uma escola






a escola ministra cursos que têm um código e uma designação
os planos de estudos dos cursos são compostos por disciplinas
leccionadas na escola; cada disciplina tem um código, uma
sigla e uma designação; a mesma disciplina pode ser oferecida
em vários cursos
cada turma segue um curso, num determinado ano curricular e
é identificada por uma letra
os professores são descritos pelo seu BI, nome, morada,
telefone, grau académico e grupo a que pertencem
os professores leccionam disciplinas às turmas, embora nem
todos os alunos frequentem todas as disciplinas
os alunos são descritos pelo seu BI, nome, morada, telefone e
data de nascimento; cada aluno está atribuído a uma turma e
está inscrito a disciplinas nas quais obtém classificações.
Introdução - 2
O que é uma Base de Dados?








Introdução - 3
A organização
Introdução - 4
Sistema de informação

Funções do SI
1
Gerar as informações primárias
• representam a actividade do Sistema Operante no seio do seu ambiente
2
Memorizar
• informações primárias
• evolução do ambiente
• certas informações-decisão
• algumas informações elaboradas (resultados de processamento)
3
4
Assegurar o acesso à memória e a comunicação das informações.
Tratar certas informações, a pedido do Sistema de Decisão.
Introdução - 5
Informação e informática

Gestão de informação



informação vista como um recurso e como tal gerida
responsável do Sistema de Informação é um gestor
Sistema de informação automatizado




parte correspondente às informações formalizáveis ou
codificáveis funcionando com a ajuda de um equipamento
informático
assente num sistema de processamento de dados, sob a
responsabilidade de um Informático
em estreita coordenação com o Gestor de Informação (por
vezes confundem-se os papéis)
maioria dos SI assentam num sistema de BD mais ou menos
integrado, mas tem mais componentes (comunicações,
documentação, fontes externas, …)
Introdução - 6
Conteúdo da BD
P1: Critérios de selecção das informações a memorizar?
P2: Organização e acesso a este arquivo?
R2: resposta durante todo o resto da cadeira
R1: deverão ser sistematicamente memorizadas as
informações primárias geradas com cada uma das
transacções, nas fronteiras do sistema, envolvendo
os vários recursos que a organização se propõe gerir

Estruturação da memória
• a partir das informações a guardar
• não a partir dos tratamentos/resultados das aplicações pretendidos
para permitir múltiplas utilizações das informações memorizadas
Introdução - 7
Base de Dados

uma BD é um conjunto de informações

armazenado de forma permanente num sistema informático
constituído por vários subconjuntos ordenados e estruturados

as informações estão associadas entre si


o Sistema de Gestão de Bases de Dados (SGBD)
integra todo o software de criação, acesso e
manutenção da BD

indissociável do conceito de BD

as aplicações recorrem ao SGBD

mesmo SGBD pode suportar várias BD
Introdução - 8
Sistema de Gestão de BD

Funções

dados persistentes
acesso arbitrário e eficiente a grandes quantidades de dados

suporte de um modelo de dados (abstracção matemática)


• complexidade exige princípios sólidos

linguagem de dados de alto nível, mas conveniente para vários
tipos de utilizadores (casual, especializado, programador)
• LDD: definir
• LI: interrogar
• LMD: manipular



gestão de transacções (concorrência)
controlo de acessos (segurança)
robustez (integridade e recuperação)
Introdução - 9
Diagrama de um SGBD
Pergunta
interactiva
Tabelas de
autorizações
Aplicação
Esquema
Processador da linguagem
de interrogação
Compilador
Gestor da BD
Tabelas
de acesso
concorrente
Tabelas
de descrição
da BD
Gestor de ficheiros
BD
física
Introdução - 10
Exemplo dos Cursos
codcurso
designacur
Curso
segue
Turma
letra
ano
plano
lecciona
atribuído
coddis
Disciplina
sigla
designadis
BI
nome
BI
morada
nome
telefone
resultado
inscrito
Professor
Aluno
morada
habilitação
telefone
grupo
data_nasc
Introdução - 11
Perspectivas diferentes
codcurso
designacur
Curso
BI
nome
Aluno
morada
plano
data_nasc
coddis
sigla
telefone
Disciplina
inscrito
resultado
designadis
Cálculo de médias
Introdução - 12
Perspectivas diferentes
Turma
segue
codcurso
designacur
Curso
lecciona
letra
ano
plano
designadis
nome
morada
coddis
sigla
BI
Disciplina
telefone
Professor
habilitação
grupo
Distribuição de serviço
Introdução - 13
Níveis de abstracção
• “subconjunto” do
esquema conceptual
- diversidade de usos
- evolução
utilizadores
interactivos
aplicações
vista n
vista 1
...
independência
lógica
• esquema conceptual
- descrição abstracta
- modelo entidade-associação
- modelo relacional
BD
conceptual
independência
física
• esquema interno
- descrição técnica
- implementação
- depende do SGBD
BD
física
Introdução - 14
Nível conceptual
Partida
Chegada
- realidade
apreendida
- linguagem da
organização
- ciências humanas
- nível físico
- linguagem
informática
- engenharia
Esquema conceptual
entidade-associação
Esquema lógico
modelo relacional
Linguagem natural e rigorosa
Introdução - 15
Independência dos dados


Imunidade das aplicações a alterações na estrutura
de memorização e na estratégia de acesso
Independência lógica: das vistas para o esquema
conceptual



suporta evolução no esquema conceptual sem obrigar a alterar
as aplicações que usam a vista
permite diferentes percepções adaptadas ao utilizador
Independência física: do esquema conceptual
para o esquema interno

permite alterações na localização e estrutura de armazenamento
dos dados
Introdução - 16
Exemplo da matriz

realidade


nível conceptual


f(i) = j=1m A[i,j]
(pode ser mais abstracto que o conceptual)
independência física


A[i,j] está no endereço a0 + 4( m(i-1) + j - 1)
vista


integer array[1..n; 1..m]
nível físico


matriz
armazenar por colunas, em vez de por linhas, para eficiência
independência lógica

aumentar a matriz, mantendo f(i)
Introdução - 17
Linguagens hospedeiras
Aplicações




interrogar a BD
tomar decisões
dialogar com o utilizador
etc.
linguagem de programação convencional
C, Cobol, Ada, Java
linguagem de manipulação de dados
optimizada para acesso rápido a grandes BD
O SGBD fornece um conjunto de procedimentos
que implementam as principais funções da LMD
Introdução - 18
Download