modelo entidade-associação - iseg
TRANSCRIPT
![Page 1: Modelo Entidade-Associação - ISEG](https://reader035.vdocuments.mx/reader035/viewer/2022072319/62db4313b0d3f913f4171639/html5/thumbnails/1.jpg)
TI2008/09 MEA_1
Cadeira de Tecnologias de Informação
Ano lectivo 2008/09
Modelo Entidade-Associação
Prof.ª Ana Lucas (Responsável)Mestre Cristiane PedronMestre Fernando NavesEngª Filipa Pires da SilvaDr. José Camacho Dr. Luís Vaz Henriques
![Page 2: Modelo Entidade-Associação - ISEG](https://reader035.vdocuments.mx/reader035/viewer/2022072319/62db4313b0d3f913f4171639/html5/thumbnails/2.jpg)
TI2008/09 MEA_2
• Técnica para modelizar os dados de um sistema de informação
• Modelo conceptual independente da tecnologia
O Que é?
![Page 3: Modelo Entidade-Associação - ISEG](https://reader035.vdocuments.mx/reader035/viewer/2022072319/62db4313b0d3f913f4171639/html5/thumbnails/3.jpg)
TI2008/09 MEA_3
Vantagens
• Questionar regras da organização
• Salientar novas necessidades de informação
• Revelar incoerências actuais
• Construção faseada, “ Top-Down ”
• Facilidade de comunicação entreutilizadores e informáticos
![Page 4: Modelo Entidade-Associação - ISEG](https://reader035.vdocuments.mx/reader035/viewer/2022072319/62db4313b0d3f913f4171639/html5/thumbnails/4.jpg)
TI2008/09 MEA_4
Níveis de descrição
Gráfico
Diagrama Entidade/Associação
Descritivo
Especificações para cadacomponente do modelo
Entidades Associações
Descrição
ENTIDADES
Descrição
ASSOCIAÇÕES
Descrições de
ATRIBUTOS
![Page 5: Modelo Entidade-Associação - ISEG](https://reader035.vdocuments.mx/reader035/viewer/2022072319/62db4313b0d3f913f4171639/html5/thumbnails/5.jpg)
TI2008/09 MEA_5
Análise das necessidades informacionais e
elaboração do modelo Entidade-Associação
Análise das necessidades informacionais e
elaboração do modelo Entidade-Associação
Transformação do Modelo EA num conjunto de
tabelas
Transformação do Modelo EA num conjunto de
tabelas
Normalização das tabelasNormalização das tabelas
Etapa 1
Etapa 3
Etapa 2
Modelo EA
Tabelas não normalizadas
Tabelas normalizadas
Análise e Concepção
Desenho
Etapas da Modelização da Informação
![Page 6: Modelo Entidade-Associação - ISEG](https://reader035.vdocuments.mx/reader035/viewer/2022072319/62db4313b0d3f913f4171639/html5/thumbnails/6.jpg)
TI2008/09 MEA_6
Conceitos básicos
– Entidade
– Associação
– Entidade Associativa
– Atributo
![Page 7: Modelo Entidade-Associação - ISEG](https://reader035.vdocuments.mx/reader035/viewer/2022072319/62db4313b0d3f913f4171639/html5/thumbnails/7.jpg)
TI2008/09 MEA_7
Entidade
Qualquer objecto ou conceito com interesse para
a organização, sobre o qual se quer guardar
informação e que possa ser identificável de
forma inequívoca
Exemplos:
• Contrato
• Produto
• Cliente
• Fornecedor
«Nome-da-Entidade»
![Page 8: Modelo Entidade-Associação - ISEG](https://reader035.vdocuments.mx/reader035/viewer/2022072319/62db4313b0d3f913f4171639/html5/thumbnails/8.jpg)
TI2008/09 MEA_8
Atributo
• Propriedade que caracteriza uma entidadeExemplos:
• Nº de Cliente
• Nome de Cliente
• Morada de Cliente• ...
• Elementos atómicos que assumem valores
de um domínio
Propriedades da Entidade “Cliente ”
![Page 9: Modelo Entidade-Associação - ISEG](https://reader035.vdocuments.mx/reader035/viewer/2022072319/62db4313b0d3f913f4171639/html5/thumbnails/9.jpg)
TI2008/09 MEA_9
Tipos de Atributos
• Identificadores ou Chaves Candidatas
• são os atributos de uma entidade que identificam, de
forma inequívoca, uma ocorrência específica dessa
entidade, distinguindo-a das restantes.
• Descritores
• são os atributos que apenas descrevem ou caracterizam
as ocorrências de uma entidade
![Page 10: Modelo Entidade-Associação - ISEG](https://reader035.vdocuments.mx/reader035/viewer/2022072319/62db4313b0d3f913f4171639/html5/thumbnails/10.jpg)
TI2008/09 MEA_10
Exemplo : Uma entidade “FUNCIONÁRIO” com as seguintes ocorrências:
O único identificador desta entidade é o atributo “Nº FUNCIONÁRIO”
Nº Funcionar. Nome Categoria
1234
1235
1236
1237
Silva
Martins
Silva
Lopes
J
H
L
L... ... ...
Identificador ou Chave Candidata
![Page 11: Modelo Entidade-Associação - ISEG](https://reader035.vdocuments.mx/reader035/viewer/2022072319/62db4313b0d3f913f4171639/html5/thumbnails/11.jpg)
TI2008/09 MEA_11
Descrição de uma Entidade
Uma possível representação da descrição de uma entidade é :
Cliente
Nº Cliente
Nome Cliente
Morada
Telefone
Nº Contribuinte
...
Identificadores
Nº Cliente
Nº Contribuinte
EmpregadoNº Empregado
Nome Empregado
MoradaB.I.
Local Emissão B.I.
Telefone
Data NascimentoNº Contribuinte
IdentificadoresNº EmpregadoB.I. + Local Emissão
Nº Contribuinte
![Page 12: Modelo Entidade-Associação - ISEG](https://reader035.vdocuments.mx/reader035/viewer/2022072319/62db4313b0d3f913f4171639/html5/thumbnails/12.jpg)
TI2008/09 MEA_12
Associação
Representa uma interligação relevante entre entidades do
sistema
•Uma associação pode ser:
–Binária• Relaciona duas entidades entre si
–Unária• Relaciona uma entidade consigo própria
Nome da associação
![Page 13: Modelo Entidade-Associação - ISEG](https://reader035.vdocuments.mx/reader035/viewer/2022072319/62db4313b0d3f913f4171639/html5/thumbnails/13.jpg)
TI2008/09 MEA_13
Associação Binária
• Exemplo
– Uma associação que relaciona “Empregado” com “Departamento” pode representar:
• Os empregados afectos a um departamento
• A que departamento está afecto um empregado
Departamento EmpregadoTem afecto
![Page 14: Modelo Entidade-Associação - ISEG](https://reader035.vdocuments.mx/reader035/viewer/2022072319/62db4313b0d3f913f4171639/html5/thumbnails/14.jpg)
TI2008/09 MEA_14
Associação Unária
• Exemplo
– Uma associação que relacione a entidade“Empregado” consigo própria assente no conceitochefe/subordinado, sendo garantido que:
• nem todos os empregados têm chefe
• um chefe pode ter mais do que um subordinado
Empregado
Responsável por
![Page 15: Modelo Entidade-Associação - ISEG](https://reader035.vdocuments.mx/reader035/viewer/2022072319/62db4313b0d3f913f4171639/html5/thumbnails/15.jpg)
TI2008/09 MEA_15
Graus de uma Associação
A cada extremo de uma associação correspondem dois graus:
•Inferior• Número mínimo possível de ocorrências (“0” ou “1”)
•Superior• Número máximo possível de ocorrências (“1” ou “N”)
Cliente FacturaTem
Inferior
Cliente FacturaTem
Superior
![Page 16: Modelo Entidade-Associação - ISEG](https://reader035.vdocuments.mx/reader035/viewer/2022072319/62db4313b0d3f913f4171639/html5/thumbnails/16.jpg)
TI2008/09 MEA_16
Grau de uma Associação
• Exemplo
• Um departamento tem afectos vários empregados
(eventualmente só um ou mesmo nenhum), e um
empregado está obrigatoriamente afecto a apenas um e
um só departamento
Departamento EmpregadoAfecto
![Page 17: Modelo Entidade-Associação - ISEG](https://reader035.vdocuments.mx/reader035/viewer/2022072319/62db4313b0d3f913f4171639/html5/thumbnails/17.jpg)
TI2008/09 MEA_17
Entidade Associativa
• Existem situações em que as associações têmatributos próprios– Exemplo
• Uma associação que relacione fornecedor com produto, para além de indicar quais os fornecedores de um produto
e quais os produtos fornecidos por um fornecedor, poderá
também conter o preço pelo qual um fornecedor forneceesse produto.
• Neste caso, a associação será “promovida” a entidade e e staé referida por “ Entidade Associativa ”
Fornecedor LinhaCatálogo
ProdutoPertence Refere
![Page 18: Modelo Entidade-Associação - ISEG](https://reader035.vdocuments.mx/reader035/viewer/2022072319/62db4313b0d3f913f4171639/html5/thumbnails/18.jpg)
TI2008/09 MEA_18
Entidade Associativa
Uma entidade-associativa (EA) "sai" duma associação com atributos próprios e caracteriza-se através de 4 condições:
Em HOFPER, J. A., PRESCOTT, M. B. e McFADDEN, F.R., (2007), Modern Database Management, 8th edition, Prentice Hall
1. A associação de onde "sai" a EA deve ser M:N;2. A EA deve ter significado para os utilizadores e até ser
identificada por um identificador único;3. A EA deve ter um ou mais atributos para além do
identificador (vem da própria definição de EA);4. A EA pode participar em uma ou mais associações,
independentemente das que tem com as entidades que "associa“.
![Page 19: Modelo Entidade-Associação - ISEG](https://reader035.vdocuments.mx/reader035/viewer/2022072319/62db4313b0d3f913f4171639/html5/thumbnails/19.jpg)
TI2008/09 MEA_19
Entidades versus Associações
Para distinguir Entidades de Associações podemos
socorrer-nos do vocabulário utilizado pelas
organizações
Geralmente utilizam-se:
– Substantivos - para referenciar Entidades
– Verbos - para referenciar Associações
![Page 20: Modelo Entidade-Associação - ISEG](https://reader035.vdocuments.mx/reader035/viewer/2022072319/62db4313b0d3f913f4171639/html5/thumbnails/20.jpg)
TI2008/09 MEA_20
Definições versus Conteúdo
Estamos perante:
– Uma entidade ARMAZÉM com 2 ocorrências, e uma entidade
PRODUTO com 5 ocorrências
– Uma associação ARMAZENA com 3 ocorrências
Definição:
Produto 1
Armazém 1
Armazém 2
Armazém
Conteúdo:
Armazém ProdutoArmazena
Produto
Produto 2
Produto 3
Produto 4
Produto 5
![Page 21: Modelo Entidade-Associação - ISEG](https://reader035.vdocuments.mx/reader035/viewer/2022072319/62db4313b0d3f913f4171639/html5/thumbnails/21.jpg)
TI2008/09 MEA_21
Notação
Conceito Representação
Entidade
Associação
EntidadeAssociativa
Nome
![Page 22: Modelo Entidade-Associação - ISEG](https://reader035.vdocuments.mx/reader035/viewer/2022072319/62db4313b0d3f913f4171639/html5/thumbnails/22.jpg)
TI2008/09 MEA_22
Método de Construção do Modelo EA
Etapa 1 - Pesquisar Entidades e Atributos
Etapa 2 - Identificar Associações
Etapa 3 - Pesquisar Entidades Associativas
Etapa 4 - Validar o Modelo Global Encontrado
![Page 23: Modelo Entidade-Associação - ISEG](https://reader035.vdocuments.mx/reader035/viewer/2022072319/62db4313b0d3f913f4171639/html5/thumbnails/23.jpg)
TI2008/09 MEA_23
Tipificação das Entidades
Para melhor identificar as ENTIDADES vamos começar por efectuar
alguma tipificação suplementar (notar que as ENTIDADES
ASSOCIATIVAS já constituem uma 1ª tipificação do conceito geral
de ENTIDADE).
Para uma melhor compreensão utilizaremos um modelo simplificado
de um Sistema de Gestão de Alunos de uma Universidade
Etapa 1 - Pesquisar Entidades e Atributos
![Page 24: Modelo Entidade-Associação - ISEG](https://reader035.vdocuments.mx/reader035/viewer/2022072319/62db4313b0d3f913f4171639/html5/thumbnails/24.jpg)
TI2008/09 MEA_24
Entidades Fundamentais
São as Entidades Estruturantes ou Básicas para o sistema em
análise.
Ex:
Aluno Curso Disciplina
Etapa 1 - Pesquisar Entidades e Atributos
![Page 25: Modelo Entidade-Associação - ISEG](https://reader035.vdocuments.mx/reader035/viewer/2022072319/62db4313b0d3f913f4171639/html5/thumbnails/25.jpg)
TI2008/09 MEA_25
Entidades Descodificadoras
São Entidades cuja existência apenas se justifica pela
necessidade de Descodificação.
As Entidades Fundamentais só “dependem” das Entidades Descodificadoras e estas
não dependem de quaisquer Entidades, excepto eventualme nte de outras
Descodificadoras
SexoSexo
Código_S
Designação_S
Identificador
Código_S
Etapa 1 - Pesquisar Entidades e Atributos
M – Masculino
F - Feminino
Ex:
![Page 26: Modelo Entidade-Associação - ISEG](https://reader035.vdocuments.mx/reader035/viewer/2022072319/62db4313b0d3f913f4171639/html5/thumbnails/26.jpg)
TI2008/09 MEA_26
Entidades Atributivas
São Entidades cuja existência apenas se justifica pela
necessidade de utilização de atributos repetitivos, p. ex.
TELEFONE de um ALUNO, e pelo facto do modelo relacion al,
que irá suportar a respectiva base de dados, não aceitar este
tipo de atributos (ver-se-á posteriormente que violam a 1 ª
Forma Normal).
As Entidades Atributivas não podem existir independentem ente
da respectiva Entidade Fundamental (no caso ALUNO) e d o seu
identificador faz parte o identificador daquela.
Etapa 1 - Pesquisar Entidades e Atributos
![Page 27: Modelo Entidade-Associação - ISEG](https://reader035.vdocuments.mx/reader035/viewer/2022072319/62db4313b0d3f913f4171639/html5/thumbnails/27.jpg)
TI2008/09 MEA_27
Entidades Atributivas (Cont.)
Ex:Aluno Telefone_
AlunoAluno
Número
BI
Local_de_emissão_BI
Data_Nascimento
Morada
…...
Identificadores
Número
BI+ Local_de_emissão_BI
Telefone_Aluno
Número_Aluno
N_Telefone
Identificador
Número_Aluno+ N_Telefone
Etapa 1 - Pesquisar Entidades e Atributos
![Page 28: Modelo Entidade-Associação - ISEG](https://reader035.vdocuments.mx/reader035/viewer/2022072319/62db4313b0d3f913f4171639/html5/thumbnails/28.jpg)
TI2008/09 MEA_28
Como distinguir Entidades e Atributos?
As ENTIDADES são caracterizadas através de vários descr itores ,
contrariamente aos ATRIBUTOS.
Se, para além do identificador, existe pelo menos um des critor para
caracterizar um objecto então trata-se de uma ENTIDADE.
Se, pelo contrário, apenas existe um identificador , então estamos perante
um ATRIBUTO.
Ex: Considere-se o conceito “Sexo”. Se o pretendemos codificar, como aliás
deve ser feito, criamos uma Entidade Descodificadora Sexo, cujo Identicador é
Cod_Sexo e que conta com o Descritor “Designação”. Caso contrário “Sexo”
entendido como “Designação_Sexo” é um atributo de Aluno.
Etapa 1 - Pesquisar Entidades e Atributos
![Page 29: Modelo Entidade-Associação - ISEG](https://reader035.vdocuments.mx/reader035/viewer/2022072319/62db4313b0d3f913f4171639/html5/thumbnails/29.jpg)
TI2008/09 MEA_29
Como encontrar Associações?
Etapa 2 - Pesquisar Associações
É frequente que em qualquer conjunto coerente de informaç ão cada
entidade esteja relacionada com quase todas as outras.
Não é, contudo, desejável/conveniente contemplar todas as associações
possíveis no nosso modelo de dados.
Deve-se procurar identificar as associações que :
– sejam intrínsecas ao sistema
– sejam importantes em função das necessidades de tra tamento
![Page 30: Modelo Entidade-Associação - ISEG](https://reader035.vdocuments.mx/reader035/viewer/2022072319/62db4313b0d3f913f4171639/html5/thumbnails/30.jpg)
TI2008/09 MEA_30
Atribuir Nomes às Associações?
Um nome sugere uma direcção na associação, mas as associa ções
são, por natureza, bidireccionais.
Na atribuição de nomes às Associações alguns problemas se podem
colocar.
Ex:
Deve, sempre que possível, utilizar-se verbos na sua for ma mais
sugestiva.
Aluno Telefone_Aluno
Tem Afecto?
Está Afecto?
Etapa 2 - Pesquisar Associações
![Page 31: Modelo Entidade-Associação - ISEG](https://reader035.vdocuments.mx/reader035/viewer/2022072319/62db4313b0d3f913f4171639/html5/thumbnails/31.jpg)
TI2008/09 MEA_31
Etapa 3 - Pesquisar Entidades Associativas
Aluno Aprovação Disciplina
Nesta fase de construção do Diagrama Entidade-Associaçã o, é útil
identificar quais as associações que têm atributos própri os que
explicitem a sua natureza.
Ex:
“Aprovação” para além de associar Aluno com Disciplina, tem
atributos próprios tais como a classificação e a data da aprovação do
Aluno na Disciplina
![Page 32: Modelo Entidade-Associação - ISEG](https://reader035.vdocuments.mx/reader035/viewer/2022072319/62db4313b0d3f913f4171639/html5/thumbnails/32.jpg)
TI2008/09 MEA_32
Etapa 4 - Validação do Modelo Global
O Diagrama EA deve ser validado de modo a:
– Eliminar possíveis erros de interpretação;
– Representar a realidade de forma conveniente, face à f orma
como os dados vão ser utilizados.
![Page 33: Modelo Entidade-Associação - ISEG](https://reader035.vdocuments.mx/reader035/viewer/2022072319/62db4313b0d3f913f4171639/html5/thumbnails/33.jpg)
TI2008/09 MEA_33
Etapa 4 - Validação do Modelo Global
Orientações para a validação
Por vezes, entre duas entidades, existem associações com
diferentes significados, que não são contempladas na anál ise.
Deve ser analisada cuidadosamente a semânticadas associações!
![Page 34: Modelo Entidade-Associação - ISEG](https://reader035.vdocuments.mx/reader035/viewer/2022072319/62db4313b0d3f913f4171639/html5/thumbnails/34.jpg)
TI2008/09 MEA_34
Etapa 4 - Validação do Modelo Global
Os Alunos relacionam-se com Disciplinas de várias form as:
– Inscrevem-se em Disciplinas;
– Obtêm aprovação em Disciplinas.
Assim sendo, a Associação anterior não permite represen tar as duas
formas de relacionamento das duas Entidades
Aluno Disciplina
![Page 35: Modelo Entidade-Associação - ISEG](https://reader035.vdocuments.mx/reader035/viewer/2022072319/62db4313b0d3f913f4171639/html5/thumbnails/35.jpg)
TI2008/09 MEA_35
Etapa 4 - Validação do Modelo Global (Cont)
Para permitir resolver a situação são necessárias duas
Associações: uma que represente a Inscrição e outra a
Aprovação. Vimos atrás que a Aprovação adquire o estatut o de
Entidade Associativa por dispôr de atributos próprios.
O modelo que resolve a semântica é o seguinte:
Aluno Aprovação Disciplina
Está inscrito
![Page 36: Modelo Entidade-Associação - ISEG](https://reader035.vdocuments.mx/reader035/viewer/2022072319/62db4313b0d3f913f4171639/html5/thumbnails/36.jpg)
TI2008/09 MEA_36
Cadeira de Tecnologias de Informação
Ano lectivo 2008/09
Transformação do Modelo EA num Conjunto de Tabelas
Prof.ª Ana Lucas (Responsável)Mestre Cristiane PedronMestre Fernando NavesEngª Filipa Pires da SilvaDr. José Camacho Dr. Luís Vaz Henriques
![Page 37: Modelo Entidade-Associação - ISEG](https://reader035.vdocuments.mx/reader035/viewer/2022072319/62db4313b0d3f913f4171639/html5/thumbnails/37.jpg)
TI2008/09 MEA_37
Empregado (Nº_Empregado , Nome,......…, Cod_dept ,......)
Nome da Tabela Identificador Restantes AtributosPróprios da Tabela
Representação
Identificadores de Outras Tabelascom as quais esta se Relaciona
![Page 38: Modelo Entidade-Associação - ISEG](https://reader035.vdocuments.mx/reader035/viewer/2022072319/62db4313b0d3f913f4171639/html5/thumbnails/38.jpg)
TI2008/09 MEA_38
Cada Entidade dá normalmente origem a uma tabela, com:
• Identificador da Entidade Chave da Tabela
• Descritores da Entidade Outros Atributos da Tabela
• Identificadores de outras Entidades que eventualmente lh e
estejam associadas Chaves Estrangeiras
Entidades
![Page 39: Modelo Entidade-Associação - ISEG](https://reader035.vdocuments.mx/reader035/viewer/2022072319/62db4313b0d3f913f4171639/html5/thumbnails/39.jpg)
TI2008/09 MEA_39
Associações 1:N
Esta situação é representada por duas tabelas, uma para cad a entidade.
DEPARTAMENTO (Cod_Dept , Designação, ......)
EMP (Nº_Emp, Nome, ......, Cod_Dept)
DEPARTAMENTO EMPREGADO
Trabalha
Associações Binárias
![Page 40: Modelo Entidade-Associação - ISEG](https://reader035.vdocuments.mx/reader035/viewer/2022072319/62db4313b0d3f913f4171639/html5/thumbnails/40.jpg)
TI2008/09 MEA_40
São um caso particular das associações 1:N
Associações 1:1
Para representar esta situação são necessárias duas tabel as, uma para cada
entidade
Caso uma das entidades seja não obrigatória, colocar o id entificador dessa
entidade na tabela correspondente à entidade obrigatória
EMPREGADO (Nº_Emp , Nome, ......)
AUTOMÓVEL (Matrícula , Marca, ........, Nº_Emp)
EMPREGADO AUTOMÓVELutiliza
Associações Binárias
![Page 41: Modelo Entidade-Associação - ISEG](https://reader035.vdocuments.mx/reader035/viewer/2022072319/62db4313b0d3f913f4171639/html5/thumbnails/41.jpg)
TI2008/09 MEA_41
Associações M:N
Independentemente das obrigatoriedades, esta situação é sempre representada
por três tabelas, uma para cada entidade e uma para a assoc iação.
FORNECEDOR (Cod_Forn , Nome, ......)
PRODUTO ( Cod_Prod , Designação, ...... )
FORNECE ( Cod_Forn, Cod_Prod )
FORNECEDOR PRODUTOfornece
Associações Binárias
![Page 42: Modelo Entidade-Associação - ISEG](https://reader035.vdocuments.mx/reader035/viewer/2022072319/62db4313b0d3f913f4171639/html5/thumbnails/42.jpg)
TI2008/09 MEA_42
Associações 1:N
Esta situação é representada por uma única tabela,
EMPREGADO (Nº_Emp , Nome, ......,Nº_Emp_Chefe)
EMPREGADO
chefia
Associações Unárias
Representação Idêntica à das Associações Binárias 1:N
![Page 43: Modelo Entidade-Associação - ISEG](https://reader035.vdocuments.mx/reader035/viewer/2022072319/62db4313b0d3f913f4171639/html5/thumbnails/43.jpg)
TI2008/09 MEA_43
Esta situação é representada por uma única tabela.
PILOTO (Nº_Piloto , Nome, ...... , Nº_Co_Piloto)
Associações 1:1
Piloto
Co-piloto
Associações Unárias
São, tal como nas Associações Binárias, um caso particul ar das
Associações Unárias 1:N
![Page 44: Modelo Entidade-Associação - ISEG](https://reader035.vdocuments.mx/reader035/viewer/2022072319/62db4313b0d3f913f4171639/html5/thumbnails/44.jpg)
TI2008/09 MEA_44
Associações M:N
Independentemente das obrigatoriedades, esta situação é sempre representada por
duas tabelas, uma para a entidade, outra para a associaç ão.
PEÇA (Cod_Peça , ......)
ESTRUTURA ( Cod_Peça_Pai, Cod_Peça _Filho )
PEÇA
estrutura
Associações Unárias
![Page 45: Modelo Entidade-Associação - ISEG](https://reader035.vdocuments.mx/reader035/viewer/2022072319/62db4313b0d3f913f4171639/html5/thumbnails/45.jpg)
TI2008/09 MEA_45
Cadeira de Tecnologias de Informação
Ano lectivo 2008/09
Modelo de Entidade-AssociaçãoEstendido
Prof.ª Ana Lucas (Responsável)Mestre Cristiane PedronMestre Fernando NavesEngª Filipa Pires da SilvaDr. José Camacho Dr. Luís Vaz Henriques
![Page 46: Modelo Entidade-Associação - ISEG](https://reader035.vdocuments.mx/reader035/viewer/2022072319/62db4313b0d3f913f4171639/html5/thumbnails/46.jpg)
TI2008/09 MEA_46
Modelo EA Estendido
�Acrescenta semântica aos conceitos do MEA básico
�Apresentam-se aqui apenas algumas extensões�Subclasses/super-classes
�Herança de atributos e de associações�Especialização/Generalização
�União
![Page 47: Modelo Entidade-Associação - ISEG](https://reader035.vdocuments.mx/reader035/viewer/2022072319/62db4313b0d3f913f4171639/html5/thumbnails/47.jpg)
TI2008/09 MEA_47
Subclasses e super-classes
�Quando uma entidade A é um subgrupo de outraentidade B, entende-se que:�A é uma subclasse de B�B é uma super-classe de A�a relação entre A e B denomina-se Is-a (“é um”)
�As subclasses herdam todos os atributos e associaçõesda super-classe
�Os processos para a criação de subclasses esuper-classes, designam-se por:�Especialização e Generalização
![Page 48: Modelo Entidade-Associação - ISEG](https://reader035.vdocuments.mx/reader035/viewer/2022072319/62db4313b0d3f913f4171639/html5/thumbnails/48.jpg)
TI2008/09 MEA_48
Especialização – Processo top-down
�Identificar subgrupos de instâncias da entidade, quepossuam características específicas: �Atributos aplicáveis a apenas algumas instâncias�e/ou associações aplicáveis a apenas algumas instâncias
�Representar a associação Is-a entre a super-classe e as subclasses
![Page 49: Modelo Entidade-Associação - ISEG](https://reader035.vdocuments.mx/reader035/viewer/2022072319/62db4313b0d3f913f4171639/html5/thumbnails/49.jpg)
TI2008/09 MEA_49
Generalização – Processo bottom-up
�Identificar entidades diferentes que compartilhem características comuns, e essas serão as subclasses �Atributos comuns�e/ou associações comuns
�Criar uma nova entidade, que será a super-classe, passando esta a ser constituída pelas característicascomuns, compartilhadas pelas subclasses
�Representar a relação Is-a entre super-classe e as subclasses
![Page 50: Modelo Entidade-Associação - ISEG](https://reader035.vdocuments.mx/reader035/viewer/2022072319/62db4313b0d3f913f4171639/html5/thumbnails/50.jpg)
TI2008/09 MEA_50
Representação da Especialização/Generalização
CLIENTE
CÓDIGO
NOME
PESSOAFÍSICA
PESSOAJURÍDICA
É UM
SEXO
B.I.
NPC
![Page 51: Modelo Entidade-Associação - ISEG](https://reader035.vdocuments.mx/reader035/viewer/2022072319/62db4313b0d3f913f4171639/html5/thumbnails/51.jpg)
TI2008/09 MEA_51
Restrição de não-sobreposição
�Disjuntas� Uma mesma entidade pode ser membro de no máximo uma subclasse da especialização
� Representação: “d” (disjointed)
�Sobreposição� Uma mesma entidade pode ser membro de maisde uma subclasse da especialização
� Representação: “o” (overlap)
![Page 52: Modelo Entidade-Associação - ISEG](https://reader035.vdocuments.mx/reader035/viewer/2022072319/62db4313b0d3f913f4171639/html5/thumbnails/52.jpg)
TI2008/09 MEA_52
Restrição de completude
�Total�Toda e qualquer instância na super-classe deve ser membro de pelo menos uma subclasse
�Representação: “t” (total)
�Parcial�Permite que uma entidade não pertença a nenhumadas subclasses
�Representação: “p” (parcial)
![Page 53: Modelo Entidade-Associação - ISEG](https://reader035.vdocuments.mx/reader035/viewer/2022072319/62db4313b0d3f913f4171639/html5/thumbnails/53.jpg)
TI2008/09 MEA_53
Representação das Restrições (Total, Disjunta)
CLIENTE
CÓDIGO
NOME
PESSOAFÍSICA
PESSOAJURÍDICA
t,d
SEXO
B.I.
NPC
![Page 54: Modelo Entidade-Associação - ISEG](https://reader035.vdocuments.mx/reader035/viewer/2022072319/62db4313b0d3f913f4171639/html5/thumbnails/54.jpg)
TI2008/09 MEA_54
Representação das Restrições (Parcial, Overlap)
PESSOA
NOME
FUNCIONÁRIO ALUNO
p,o
ESPECIALIDADE SALÁRIO MATRICULA
PROFESSOR
![Page 55: Modelo Entidade-Associação - ISEG](https://reader035.vdocuments.mx/reader035/viewer/2022072319/62db4313b0d3f913f4171639/html5/thumbnails/55.jpg)
TI2008/09 MEA_55
União
� Analisámos até agora hierarquias (super-classe, subclasse) com uma única super-classe.
� Pode, no entanto, haver necessidade de modelar hierarquias super-classe, subclasse, com mais do que uma super-classe.
![Page 56: Modelo Entidade-Associação - ISEG](https://reader035.vdocuments.mx/reader035/viewer/2022072319/62db4313b0d3f913f4171639/html5/thumbnails/56.jpg)
TI2008/09 MEA_56
União
BANCO
PROPRIETÁRIO
VEÍCULO REGISTADO
U
PESSOA EMPRESA
Nome_B Endereço_BNome_E Endereço_EEndereço
Nome
BI
È_DONO_DE MatriculaData da Compra
![Page 57: Modelo Entidade-Associação - ISEG](https://reader035.vdocuments.mx/reader035/viewer/2022072319/62db4313b0d3f913f4171639/html5/thumbnails/57.jpg)
TI2008/09 MEA_57
Exercício 1
Utilize o MEAE para modelar informações sobre PEÇAS de uma fábrica, que possuem as informações seguintes: nº de peça e descrição.
Uma mesma peça (identificada por um nº de peça) pode ser manufacturada ou comprada.
As peças manufacturadas têm nº de projecto, data de fabrico e nº de lote. Para as peças compradas, énecessário registar o nome do fabricante e o preço.
![Page 58: Modelo Entidade-Associação - ISEG](https://reader035.vdocuments.mx/reader035/viewer/2022072319/62db4313b0d3f913f4171639/html5/thumbnails/58.jpg)
TI2008/09 MEA_58
Resolução do Exercício 1
PEÇA
DESCRIÇÃO
PEÇACOMPRADA
t,o
DT. FABRICO PREÇO
PEÇA MANUFACTURADA
Nº PEÇA
Nº LOTENº PROJECTONOME
FABRICANTE
![Page 59: Modelo Entidade-Associação - ISEG](https://reader035.vdocuments.mx/reader035/viewer/2022072319/62db4313b0d3f913f4171639/html5/thumbnails/59.jpg)
TI2008/09 MEA_59
Exercício 2
Considere a hierarquia da Especialização e/ou Generalização abaixo, e resolva as questões seguintes:
PESSOA
PROFESSOR
T,d
ALUNO
a) O que significa a inserção de uma instância “José” na entidade PESSOA, relativamente às instâncias PROFESSOR e ALUNO?
b) O que significa a eliminação de uma instância do aluno “Carlos”, relativamente às instâncias PROFESSOR e PESSOA?
c) Suponha agora que a hierarquia continua total, porém com sobreposição (t,o) , e responda às questões a) e b).
![Page 60: Modelo Entidade-Associação - ISEG](https://reader035.vdocuments.mx/reader035/viewer/2022072319/62db4313b0d3f913f4171639/html5/thumbnails/60.jpg)
TI2008/09 MEA_60
Resolução do Exercício 2
Considere a hierarquia da Especialização e/ou Generalização abaixo, e resolva as questões seguintes:
PESSOA
PROFESSOR
t,d
ALUNO
a) O que significa a inserção de uma instância “José” na entidade PESSOA, relativamente às instânciasPROFESSOR e ALUNO? R: Deverá ser inserida uma de duas instâncias possív eis, na entidade ALUNO no caso do “José” ser aluno, ou na entidade PROFESSOR n o caso do “José” ser professor.
b) O que significa a eliminação de uma instância do aluno “Carlos”, relativamente às instânciasc) PROFESSOR e PESSOA? R: A eliminação do aluno “Carlos” implica a eliminaç ão da instância “Carlos” na
entidade PESSOA. Não tem qualquer implicação na ent idade PROFESSOR.
d) Suponha agora que a hierarquia continua total, porém com sobreposição (t,o) , e responda ás questões a) e b). R: Relativamente á questão a), implica a inserção de uma instância na entidade ALUNO ou de uma instância na entidade PROFESSOR, ou de uma instânci a em ambas. Quanto á questão b), implica a eliminação de uma instância na entidade ALUNO. Elim inar-se-á a instância na entidade PESSOA se o “Carlos” não for simultaneamente PROFESSOR.
![Page 61: Modelo Entidade-Associação - ISEG](https://reader035.vdocuments.mx/reader035/viewer/2022072319/62db4313b0d3f913f4171639/html5/thumbnails/61.jpg)
TI2008/09 MEA_61
Cadeira de Tecnologias de Informação
Ano lectivo 2008/09
Transformação das Extensões ao ModeloEA num Conjunto de Tabelas
Prof.ª Ana Lucas (Responsável)Mestre Cristiane PedronMestre Fernando NavesEngª Filipa Pires da SilvaDr. José Camacho Dr. Luís Vaz Henriques
![Page 62: Modelo Entidade-Associação - ISEG](https://reader035.vdocuments.mx/reader035/viewer/2022072319/62db4313b0d3f913f4171639/html5/thumbnails/62.jpg)
TI2008/09 MEA_62
Generalização Total ou Parcial, DisjuntaSuperclasse e Subclasse com a mesma chave primária
EMPREGADO
ENGENHEIRO
p,d
TÉCNICO
N_EmpNome
Escola
N_EmpN_Emp
Especialidade
Independentemente da cobertura ser total ou parcial, e sta situação pode ser representada da seguinte forma:EMPREGADO (N_Emp , Nome, ....., Tipo ) Em que tipo pode ser “Técnico”, “Engenheiro” ou null (no caso do empregado em causa não pertencer a nenhumasubclasseTÉCNICO (N_Emp, Especialidade)ENGENHEIRO (N_Emp, Escola)
![Page 63: Modelo Entidade-Associação - ISEG](https://reader035.vdocuments.mx/reader035/viewer/2022072319/62db4313b0d3f913f4171639/html5/thumbnails/63.jpg)
TI2008/09 MEA_63
Generalização Total ou Parcial, DisjuntaSuperclasse e Subclasse com diferentes chaves primárias
Independentemente da cobertura ser total ou parcial, e sta situação pode ser representada da seguinte forma:CLIENTE (Código , Nome, ....., Tipo ) Em que tipo pode ser “Pessoa Física”ou“Pessoa Jurídica”PESSOA FÍSICA (BI , Código , Sexo)PESSOA JURÍDICA (NPC, Código )
CLIENTE
CÓDIGO
NOME
PESSOAFÍSICA
PESSOAJURÍDICA
t,d
SEXO
B.I.
NPC
![Page 64: Modelo Entidade-Associação - ISEG](https://reader035.vdocuments.mx/reader035/viewer/2022072319/62db4313b0d3f913f4171639/html5/thumbnails/64.jpg)
TI2008/09 MEA_64
Generalização Total ou Parcial, OverlappingSuperclasse e Subclasse com a mesma chave primária
Independentemente da cobertura ser total ou parcial, e sta situação pode ser representada da seguinte forma:PEÇA (NºPeça, Descrição) PEÇA MANUFACTURADA (NºPeça , Nº Projecto, Dt Fabrico, Nº Lote)PEÇA COMPRADA (NºPeça, Nome Fabricante, Preço )
PEÇA
DESCRIÇÃO
PEÇACOMPRADA
t,o
DT. FABRICO PREÇO
PEÇA MANUFACTURADA
Nº PEÇA
Nº LOTENº PROJECTONOME
FABRICANTE
Nº PEÇA Nº PEÇA
![Page 65: Modelo Entidade-Associação - ISEG](https://reader035.vdocuments.mx/reader035/viewer/2022072319/62db4313b0d3f913f4171639/html5/thumbnails/65.jpg)
TI2008/09 MEA_65
Generalização Total ou Parcial, OverlappingSuperclasse e Subclasse com diferentes chaves primárias
Independentemente da cobertura ser total ou parcial, e sta situação pode ser representada da seguinte forma:PESSOA (N_BI , Nome) PROFESSOR (N_FUNC, N_BI, Salário, Especialidade)FUNCIONÁRIO (N_FUNC, N_BI, Salário)ALUNO (N_ALUNO , N_BI, matricula)
PESSOA
NOME
FUNCIONÁRIO ALUNO
p,o
ESPECIALIDADE SALÁRIO MATRICULA
PROFESSOR
N_BI
N_FUNC N_FUNCN_ALUNO
SALÁRIO
![Page 66: Modelo Entidade-Associação - ISEG](https://reader035.vdocuments.mx/reader035/viewer/2022072319/62db4313b0d3f913f4171639/html5/thumbnails/66.jpg)
TI2008/09 MEA_66
União
PESSOA (N_BI , Nome, Endereço, N_Proprietário ) N_Proprietário é uma chave (de Proprietário) gerada automaticamente ( Surrogate Key )BANCO (Nome_B , Endereço_B, N_Proprietário )EMPRESA (Nome_E , Endereço_E, N_Proprietário )PROPRIETÁRIO (N_Proprietário )VEÍCULO_REGISTADO (Matrícula , Data_da_Construção)É_DONO_DE (N_Proprietário, Matrícula, Data_da_Compra)
BANCO
PROPRIETÁRIO
VEÍCULO REGISTADO
U
PESSOA EMPRESA
Nome_B Endereço_BNome_E Endereço_EEndereço
Nome
BI
É_DONO_DE MatriculaData da Compra
Data da Construção