Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação...
Transcript of Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação...
![Page 1: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/1.jpg)
Sistemas de Informação eBases de Dados
2019/2020
Modelo Entidade-Associação (E-A)
![Page 2: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/2.jpg)
SIBD
![Page 3: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/3.jpg)
SIBD
Sumário
� Sistemas de Informação
� Modelo Entidade-Associação (E-A)
� Entidades e Associações
� Exemplo Prático (banco)
� Requisitos não formalizáveis em E-A
![Page 4: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/4.jpg)
SIBD
Sistemas de Informação Sistemas de Informação
= código + informação
= código + [dados + estrutura].
![Page 5: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/5.jpg)
SIBD
Sistemas de Informação Um sistema de Informação é diferente de um programa ou de um algoritmo..
Um sistema de informação é um sistema que gere informação, e uma base de dados é onde se estrutura e armazena a informação.
![Page 6: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/6.jpg)
SIBD
Sistemas de Informação Sistemas de Informação
= código + informação
= código + [dados + estrutura].
Base de Dados
Programa Information Schema
![Page 7: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/7.jpg)
SIBD
Sistemas de Informação Modelos de Informação
- Sistema de Ficheiros (não tem modelo)
- Relacional (Lógico)
- Entidade Associação (Conceptual)
- Orientado a Objetos (Lógico)
![Page 8: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/8.jpg)
SIBD
Sistemas de Informação
No fim de vida de um sistema de Informação o código acaba por ir fora, mas os dados são sempre extraídos e recuperados
![Page 9: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/9.jpg)
Modelação E-A
![Page 10: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/10.jpg)
SIBD
Tabelas de um sistema bancário
Como saber que são estas as tabelas (e não outras)?
![Page 11: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/11.jpg)
SIBD
Tabelas de um sistema bancário
Especificação de Requisitos
•requisito 1:
•requisito 2:
• …
•regra de integridade 1:
•regra de integridade 2:
•...
![Page 12: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/12.jpg)
SIBD
Concepção de uma Base de Dados
Especificação de Requisitos
•requisito 1:
•requisito 2:
• …
•regra de integridade 1:
•regra de integridade 2:
•...
Modelo Conceptual do Domínio(Modelo EA)
EsquemaRelacional
![Page 13: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/13.jpg)
SIBD
It pays to clearly define what the problem is!
Fifty-five minutes defining the problem and only five minutes finding the solution.
A. Einstein
![Page 14: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/14.jpg)
SIBD
Database Design
Good database design eliminates thousands of lines of code
https://rodgersnotes.wordpress.com/2010/09/14/database-design-mistakes-to-avoid/
![Page 15: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/15.jpg)
SIBD
Objectivos da modelação E-AA modelação E-A visa formalizar (apenas) a
estrutura de informação do domínio (do problema) focando-se no levantamento de:
‣ Entidades do domínio
‣ De Associações entre entidades
‣ Das Restrições que as possíveis soluções válidas para o problema têm de respeitar
![Page 16: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/16.jpg)
SIBD
Vantagens do Modelo E-A1. Permite efetuar a comunicação entre os vários
interessados (tal como a planta de uma casa entre o utilizador final, arquiteto e construtor)
2. É um linguagem gráfica simples com poucos símbolos
3. Captura a maior parte das situações graficamente; as restantes podem ser capturadas por escrito
4. É um modelo do problema e não da solução
5. Um modelo é uma rede de conceitos inter-relacionado, portanto não pode ter ilhas isoladas
![Page 17: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/17.jpg)
SIBD
Objectivos do diagrama E-A‣ A descrição do domínio não deve ser poluída (com
detalhes da solução) para:
1. Não ocultar/esconder incoerências/defeitos do modelo
2. Evitar assumir que quem modela sabe qual é a melhor solução
‣ A descrição deve ser declarativa e independente (da solução) para:
4. Não restringir as possibilidades de implementação (evitando que se encontrem boas soluções).
5. Simplificar o modelo
![Page 18: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/18.jpg)
SIBD
E-A vs Diagrama de Tabelas
Semelhantes, mas:
‣ As ferramentas de modelação de bases de dados permitem criar diagramas de tabelas e de relações entre tabelas
‣ Diagramas de tabelas são modelos da solução e não modelos do problemas
![Page 19: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/19.jpg)
SIBD
Entidades e Associações
![Page 20: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/20.jpg)
SIBD
Diferenças para a notação do livro
NOTA
A notação ensinada nas aulas tem algumas diferenças relativamente à notação do livro adoptado. Pode utilizar-se, de forma coerente, tanto notação do livro como a ensinada nas aulas.
![Page 21: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/21.jpg)
SIBD
Entidades
![Page 22: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/22.jpg)
Bases de Dados 2017/18
Entidade
Definição
Uma Entidade ou (Tipo de Entidade) representa um conceito para o qual existe um conjunto de objetos (instâncias, exemplares ou ‘indivíduos’) distintos no mundo real
![Page 23: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/23.jpg)
SIBD
Entidades
‣Dado um conjunto de atributos A1… An onde- Cada atributo Ai tem associado um domínio de
valores possíveis D(Ai)
‣Uma entidade E: é um conjunto de objetos com a mesma estrutura (informação):- E = {(v1,..., vn) | v1 ∈ D(A1), ..., vn ∈ D(An)}- Cada elemento e ∈ E é uma instância de E
![Page 24: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/24.jpg)
SIBD
E-A Graphic Language
Entity Name
An entity type of the domain representing a concept for which multiple distinct objects may exist.
An entity type must have a set of attributes that distinguish between the different entity instances (KEYs)
For example, 'Employee' or 'Invoice' are entities in the sense that the system may keep information regarding, respectively, multiple 'employees', and multiple 'invoices'.
‣ Entity
![Page 25: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/25.jpg)
SIBD
Entidades(exemplos)
NOTA: O conceito de entidade só está completo com a definição da forma de identificar cada instancia (chave)
![Page 26: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/26.jpg)
SIBD
E-A Graphic Language
Entity
Attributes are characteristics of entities that represent the information (data values) to be captured for each instance of an entity set
Each instance has one value for each attribute.
‣ Attributesattr1
attr2
![Page 27: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/27.jpg)
SIBD
Entidades com atributos (Exemplo)
![Page 28: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/28.jpg)
SIBD
Entidades e Atributos…Visão TOP DOWN
‣ O conceito é fundamentalmente depreendido pelo nome da entidade
‣ A escolha dos atributos reflecte o nível de detalhe com o qual queremosrepresentar informação acerca de entidades.
Visão BOTTOM UP
‣ O conceito é depreendido com base nas propriedades (atributos) e das associações da entidade.
‣ O nome da entidade não tem semântica. É apenas um nome
EM AMBOS OS CASOS O CONCEITO NÂO FICA DEFINIDO ENQUANTO NÂO SE SOUBER RESPECTIVA FORMA DE IDENTIFICAÇÂO (CHAVE)
![Page 29: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/29.jpg)
SIBD
Restrições de Chave(Identificação)
![Page 30: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/30.jpg)
SIBD
Chaves de EntidadesDefinição
‣ Uma chave é o conjunto mínimo de atributos cujos valores identificam univocamente cada entidade do conjunto
‣ A chave primária está sublinhada
‣ Na prática os valores dos atributos chave são únicos (i.e. nunca podem repetir-se)
![Page 31: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/31.jpg)
SIBD
Chaves compostas
‣ nbi é chave? ‣ nbi + arq_id é chave!
Chave composta
![Page 32: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/32.jpg)
SIBD
Chaves de Candidatas‣ Podem existir vários atributos (ou sub-conjuntos de
atributos) que definem chaves, ou seja:
- Podem existir várias chaves candidatas
- Uma é escolhida para ser chave primária
‣ Se existirem várias chaves candidatas, apenas a chaveprimária é representada graficamente no modelo, as outrassão descritas como uma RI textual.
![Page 33: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/33.jpg)
SIBD
Heurísticas para a Chave Primária
‣ A chave mais curta (mas não necessariamente)
‣ A chave mais reconhecida pelos utilizadores do domínio
‣ A chave que não depende de nenhum outro atributo
- 'telefone' depende de 'morada' mas 'morada' nãodepende de ‘telefone'
![Page 34: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/34.jpg)
SIBD
Heurísticas E-A
1. Entidade com apenas um atributo: Podem não ser umaentidade (eventualmente o atributo é de outraentidade)
2. Entidade sem chave: Pode não ser uma entidade mas sim uma associação
![Page 35: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/35.jpg)
SIBD
Associações
![Page 36: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/36.jpg)
Bases de Dados 2017/18
Associação
Definição
Uma Associação entre duas ou mais entidades representa os possíveis relacionamentos entre as instâncias das entidades
respetivas
‣ Relaciona instâncias de entidades:- Associação Binária: duas entidades
• Não necessariamente distintas- Ternárias: três entidades, …‣ Pode ter atributos
![Page 37: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/37.jpg)
SIBD
Associação
‣ Dadas entidades E1… En e atributos A1…Am
‣ Uma associação A é o conjunto de elementos:- A = {(e1, ..., en, v1, …, vm) | e1 ∈ E1, ..., en ∈ En /\
v1 ∈ D(A1), ..., vm ∈ D(Am)}
‣ Cada elemento a ∈ A é uma instância da associação A
![Page 38: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/38.jpg)
SIBD
E-A Graphic Language
A binary association between two entities capturing the relationship between them in the sense that instance of the distinct entities may can be related to one another through the association.
Note: Association = Relationship
‣ Binary Association
association name
![Page 39: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/39.jpg)
SIBD
Comutatividade das Associações
‣ A informação representada por:
‣ É a mesma representada por:
![Page 40: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/40.jpg)
SIBD
Nome das Associações‣ Minúsculas por convenção
‣ Tipicamente um verbo
‣ Os nomes das associações devem ser sempre únicosporque:
- O modelo é uma ferramenta da comunicação (e se assim não fosse, no limite todas as associações teriam o mesmo nome resultando em perda de informação do domínio)
‣ Sempre que a direção de leitura não seja óbvia deve ser indicada a direção de leitura com ‘>’ ou '<'
![Page 41: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/41.jpg)
SIBD
E-A Graphic Language
An association with attribute captures additional information that characterises the relationship being established.
‣ Association with attribute
Association Name
attr
![Page 42: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/42.jpg)
SIBD
Associações com atributos (exemplo)
![Page 43: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/43.jpg)
SIBD
Instâncias (exemplares) de uma associação
Associating an Employee to multiple departments is the same creating multiple associations of the ‘works_in' association.
![Page 44: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/44.jpg)
SIBD
E-A Graphic Language
A ternary association captures a relationship between three entities meaning that individuals of each of the three entities may be related through the specified association named 'assoc name'.
‣ Ternary Association
Association Name
![Page 45: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/45.jpg)
SIBD
Associação ternária (exemplo)
![Page 46: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/46.jpg)
SIBD
Entidades e Associações
A única forma de relacionar entidades é através de associações.
Não é colocando atributos com nomes de entidades…..
A B
A B
BNeste caso, estamos a afirmar que a entidade A nada tem a ver com a entidade B, apesar de
ter um atributo com o mesmo nome
![Page 47: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/47.jpg)
SIBD
Exercise: Modelling the Bank
Domain
![Page 48: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/48.jpg)
SIBD
Domain Requirements
‣ Store the information regarding accounts with attributes acctnum and balance, the first being its key.
‣ Every account is owned by a depositor with attributes id card number, name and address, the first being its key;
‣ Accounts are registered in branches. A branch is characterisedby a branch name and a city, the first being its key;
‣ It is necessary to know which depositors have an account in the city where they live, the first being its key;
![Page 49: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/49.jpg)
SIBD
Bank Solution
![Page 50: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/50.jpg)
SIBD
Requisitos não formalizáveis num modelo E-A
1. Requisitos que não sejam requisitos de informação não podem ser formalizados em E-A (desejos do utilizador, considerações sobre o aspecto gráfico do sistema)
2. Requisitos para os quais não seja possível determinar quais os atributos, não são formalizáveis em E-A
3. Requisitos que tenham que ver com o comportamento/funcionalidade dos sistema, tipicamente não são formalizáveis
![Page 51: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/51.jpg)
SIBD
Entidades e AssociaçõesNa prática tanto entidades como associações são:
‣ conjuntos de instâncias
‣ Podem ter propriedades
A diferença real está na forma de identificação.
‣ Os atributos que identificam as instancias de uma entidades são atributos das próprias entidades
‣ Os atributos que identificam as instancias de uma associação são atributos das entidades associadas!
Esta é a verdadeira diferença entre entidades e associações
![Page 52: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/52.jpg)
Sistemas de Informação eBases de Dados
2019/2020
Modelo Entidade-Associação (cont.)
![Page 53: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/53.jpg)
SIBD
![Page 54: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/54.jpg)
SIBD
Sumário
� Modelo Entidade-Associação (Continuação)
� Restrições de Chave
� Restrições de Cardinalidade
� Restrições de Participação
� Generalização de restrições
![Page 55: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/55.jpg)
SIBD
Restrições de Multiplicidade
![Page 56: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/56.jpg)
SIBD
Exemplo(sem restrições)
‣ Um departamento pode ser gerido por quantos empregados?
‣ Um empregado pode gerir quantos departamentos?
R: Nenhum, um, ou muitos
R: Nenhum, um, ou muitos
![Page 57: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/57.jpg)
SIBD
Exemplo(com uma restrição de
multiplicidade)
‣ Um departamento pode ser gerido por quantos empregados?
‣ Um empregado pode gerir quantos departamentos?
R: No máximo um
R: Nenhum, um, ou muitos
![Page 58: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/58.jpg)
SIBD
Exemplo(com duas restrição de
multiplicidade)
‣ Um departamento pode ser gerido por quantos empregados?
‣ Um empregado pode gerir quantos departamentos?
R: No máximo um
R: No máximo um
![Page 59: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/59.jpg)
SIBD
E-A Graphic Language
Each instance of either entity may be related many (as well as to none, one, or all) instances of the other entity.
‣ Many-to-many (no constraint)
‣ One-to-manyEach instance of the left entity is associated to potentiality many instances of the entity on the right. Each instance on the right can be associated with at most one instance from the left entity.
‣ One-to-one Each instance of the left entity must be associated with at most one instance of right entity. Moreover, each instance of the right entity can be related with at most one instance of the left entity.
![Page 60: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/60.jpg)
SIBD
Cardinalidade
muitos-para-muitos 1-para-11-para-muitos muitos-para-1
‣ Menos restrito ‣ Mais restrito
![Page 61: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/61.jpg)
SIBD
Restrições de Participação
![Page 62: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/62.jpg)
SIBD
Exemplo(sem restrições)
‣ É possível existir um Departamento sem gestor?
‣ É possível existir um Empregado que não seja gestor?
R: Sim
R: Sim
![Page 63: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/63.jpg)
SIBD
Exemplo(com uma restrição de
participação)
‣ É possível existir um Departamento sem gestor?
‣ É possível existir um Empregado que não seja gestor?
R: Não
R: Sim
![Page 64: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/64.jpg)
SIBD
Exemplo(com duas restrições de
participação)
‣ É possível existir um Departamento sem gestor?
‣ É possível existir um Empregado que não seja gestor?
R: Não
R: Não (todos os empregados têm obrigatoriamente de ser gestores)
![Page 65: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/65.jpg)
SIBD
E-A Graphic Language
Instances of either entity type can exist in the system without necessarily participating in the association.
‣ Optional (or partial) participation (no constraint)
‣ Mandatory (or total) participation
Each instance on the right-hand entity type must participate in the association in order to exist in the system.
‣ Mutual (total on both sides) participationInstances of both entities must participate in the association.
![Page 66: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/66.jpg)
SIBD
Exemplo (final)
‣ É possível existir um Departamento sem gestor?
‣ Quantos gestores podem existir para um departamento?
R: Não
R: No máximo um
![Page 67: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/67.jpg)
SIBD
Exercício A.
![Page 68: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/68.jpg)
SIBD
Exprima em língua natural cada um dos seguintes diagramas
![Page 69: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/69.jpg)
SIBD
Diagrama 1
‣ Employees can manage many Departments
‣ Same for ‘works_in’ …
‣ Departments can be managed by many Employees
‣ Some Departments (not all) can be managed by an Employee
‣ Some Employees (not all) may manage Departments
![Page 70: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/70.jpg)
SIBD
Diagrama 1I
‣ Every Employee works at least in one Department
‣ Some Departments may not have employees
‣ Every Departments is necessarily managed by an Employee
‣ Some Employees (not all) may manage Departments
‣ An Employee can work in many Departments
![Page 71: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/71.jpg)
SIBD
Diagrama III
‣ Every Employee works in at least one Department
‣ Every Department must have have at least one Employee
‣ Every Departments is necessarily managed by an Employee
‣ Some Employees (not all) manage Departments
‣ An Employee can work in many Departments
![Page 72: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/72.jpg)
SIBD
Diagrama IV
‣ Every Employee works in at least one Department
‣ Every Department must have have at least one Employee
‣ Every Departments is necessarily managed by an Employee
‣ Some Employees (not all) manage Departments
‣ An Employee can work in at most on department
![Page 73: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/73.jpg)
SIBD
Exercício B.
‣ Apresente uma restrição ao modelo que não possa ser representada graficamente
![Page 74: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/74.jpg)
SIBD
Soluções
‣ Um empregado só pode gerir um departamentoonde trabalha, ou
‣ Um departamento só pode ser gerido por um empregado de outro departamento
![Page 75: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/75.jpg)
SIBD
Solução
(IC-1) Instances of Employee in manages relation must also be in works_in relation
![Page 76: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/76.jpg)
SIBD
Restrições nas associações ternárias
![Page 77: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/77.jpg)
SIBD
Obrigatoriedade
a) No constraint on A, B, or C (instances of A, B, and C may exist without participating in the association)
b) Every element of A, must participate in assoc
c) Every element of A, and every element of B, must participate in assoc
d) Every element of A, B, or C, must participate in assoc
![Page 78: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/78.jpg)
SIBD
Multiplicidade
a) No constraint on A, B, or C
b) Any element of A, if associated, can only be associated once in assoc
c) Any element of A, and any element B, if associated, can only be associated once in assocd) Any element of A, B, or C, if associated, can only be associated once in assoc
![Page 79: Sistemasde Informaçãoe Bases de Dados 2019/2020 · Sistemas de Informação ModeloEntidade-Associação(E-A) Entidadese Associações ExemploPrático ... Bases de Dados 2017/18](https://reader034.fdocumentos.tips/reader034/viewer/2022050122/5f51f1387eeaf4388c2e5d41/html5/thumbnails/79.jpg)
SIBD
Próxima aula
‣ Modelo Entidade-Associação (cont.)