Diagrama de Entidade Associação ou Relacionamento · Para aplicar a 1FN, efectuam-se os seguintes...

24
1 Diagrama de Entidade Associação ou Relacionamento Quanto à obrigatoriedade dos elementos de uma entidade participarem, ou não, no relacionamento com outra entidade, tem-se: Participação obrigatória de ambas as entidades Participação não obrigatória de uma das duas entidades Participação não obrigatória de nenhuma das entidades

Transcript of Diagrama de Entidade Associação ou Relacionamento · Para aplicar a 1FN, efectuam-se os seguintes...

1

Diagrama de Entidade Associação ou Relacionamento

Quanto à obrigatoriedade dos elementos de uma entidade participarem, ou não, no relacionamento com outra entidade, tem-se: Participação obrigatória de ambas as entidades

Participação não obrigatória de uma das duas entidades

Participação não obrigatória de nenhuma das entidades

2

Diagrama de Entidade Associação ou Relacionamento

O quadro 12 exemplifica um conjunto de situações e simbologias utilizadas, neste caso, num relacionamento binário

Para facilitar a explicação descreve-se, em quase todos os exemplos, o relacionamento apenas de um dos lados

No preenchimento da coluna “Descrição”, os valores entre parêntesis devem ler-se (mínimo..máximo)

3

Diagrama de Entidade Associação ou Relacionamento

4

Construção do DEA Na construção de um modelo DEA, realizam-

se por ordem os seguintes passos: Identificar as entidades

Identificar associações entre entidades, tipo e grau de associação

Identificar os atributos identificadores e os atributos descritores de cada entidade

Definir os graus máximo e mínimo de associações

5

Construção do DEA Também na construção de um modelo DEA se deve

observar que: Todos os atributos se aplicam a todas as instâncias de uma

entidade

Quando há grupos repetitivos cria-se uma nova entidade e uma nova associação. Entende-se por grupo repetitivo um conjunto de atributos cujos valores se repetem para um dado valor do atributo identificador

Quando existir relacionamentos de M:M, subdividem-se em dois relacionamentos 1:M, criando-se uma entidade associativa adicional, que fará a interface entre as entidades anteriores e que pode apresentar alguns atributos específicos

6

Construção do DEA A partir do conteúdo de dois depósitos de dados, fornecedores

e produtos, de um Dicionário de Dados, desenha-se o Diagrama de Entidade Associação da figura 1.16, identificando-se as entidades, o tipo e grau de associação, os atributos descritores e os atributos identificadores

7

Construção do DEA A figura 1.17 indica que face a um

relacionamento de M:M é preciso criar a entidade associação ForneceProdutos

8

Construção do DEA A figura 1.18 mostra uma outra forma de

representar o diagrama da figura 1.17

9

4.2.4. Normalização de dados

10

Normalização de dados A normalização de dados pode ser aplicada

directamente sobre um conjunto de dados em bruto ou feita a partir de modelos de dados resultantes da modelação com diagramas E-R, com o objectivo de criar um modelo de base de dados relacional

A normalização de dados consiste numa série de passos relacionados com o desenho de uma base de dados de forma a obterem-se estruturas de dados sem redundância e consistentes

Este processo é conduzido por um conjunto de regras que constituem as Formas Normais

11

Normalização de dados As Formas Normais enunciam um conjunto de

restrições sobre os relacionamentos ou as dependências existentes entre os dados

Inicialmente foram criadas três formas normais: 1.ª Forma Normal (1FN), 2.ª Forma Normal (2FN) e 3.ª Forma Normal (3FN)

Depois surgiram mais formas normais: Forma Normal de Boyce-Codd (FNBC), 4.ª Forma Normal (4FN) e 5.ª Forma Normal (5FN)

12

Normalização de dados Representação de dados na forma não

normalizada Uma estrutura diz-se não normalizada quando os dados se

agrupam por atributos que não foram analisados segundo as regras da normalização

O quadro 13 mostra um exemplo de como representar uma entidade através dos seus atributos segundo três notações diferentes

Neste caso, por cada nota de encomenda podem existir vários produtos encomendados, o que acarreta, em termos de organização de uma base de dados informatizada, uma redundância de dados, ocupando mais espaço, tornando o processamento mais lento e aumentando a probabilidade de ocorrem erros

13

Normalização de dados Representação de dados na forma não

normalizada (continuação)

14

Normalização de dados Representação de dados na forma não

normalizada (continuação)

15

Normalização de dados Fases da normalização

O modelo da base de dados relacional organiza os dados em estruturas designadas por relações (figura 1.19)

Os atributos de uma relação correspondem às colunas e os tuplos correspondem às linhas que apresentam um conjunto de dados relativos a uma entidade concreta

Estes dados são, por sua vez, representados por valores

16

Normalização de dados Para alcançar um modelo de uma base de dados

minimamente consistente, é suficiente submeter a sua estrutura de dados até à terceira forma normal

A primeira forma normal obriga a que não exista grupo de atributos repetitivos

No exemplo da entidade Encomenda os atributos que se encontram entre parêntesis constituem um grupo repetitivo, porque para uma mesma encomenda podem ser pedidos vários produtos

17

Normalização de dadosEncomenda = @Número_encomenda + Data_encomenda + Código_cliente

+ Nome_cliente + Telefone + {Código_produto + Nome_produto + Preço_unitário + Quantidade} + Total_encomenda

Para aplicar a 1FN, efectuam-se os seguintes passos Escolher uma chave primária ou um atributo identificador,

que é um atributo que identifica de forma exclusiva cada ocorrência de uma entidade. No exemplo dado a chave identificada é Número_encomenda

Identificar o grupo repetitivo, que é {Código_produto + Nome_produto + Preço_unitário + Quantidade}

Criar uma nova relação por cada grupo repetitivo, escolhendo uma nova chave e efectuando um relacionamento com a entidade original através do atributo comum Número_encomenda

18

Normalização de dados Da entidade inicial Encomenda, depois de

aplica a 1FN, resultam as entidades Encomenda e DetalheEncomenda

Encomenda = @Número_encomenda + Data_encomenda + Código_cliente + Nome_cliente + Telefone + Total_encomenda

DetalheEncomenda = @Número_encomenda + @Código_produto + Nome_produto + Preço_unitário + Quantidade

19

Normalização de dados A segunda forma normal obriga a que se removam todas as

dependências funcionais que dependam apenas de uma parte da chave e não da sua totalidade

No caso da entidade DetalheEncomenda, a chave primária é constituída pelo para de atributos Número_encomenda e Código_produto

Os atributos Nome_produto e Preço_unitário, para além de serem identificados de forma unívoca pela chave, são também identificados por parte dela, isto é, são funcionalmente dependentes do atributo Código_produto

20

Normalização de dados Para aplicar 2FN, efectuam-se os seguintes

passos: Verificar se os atributos não-chave são

dependentes funcionalmente da totalidade da chave

Criar uma nova relação com os atributos que dependem de parte da chave, sendo esta a chave da nova relação

Identificar os relacionamentos existentes entre a nova relação e a relação original, mantendo, nesta, a chave inicial que contém o atributo comum às duas relações

21

Normalização de dados Da entidade inicial DetalheEncomenda,

depois de aplicada a 2FN, resultam as entidades DetalheEncomenda e Produto

DetalheEncomenda = @Número_encomenda + @Código_produto + Quantidade

Produto = @Código_produto + Nome_produto + Preço_unitário

22

Normalização de dados A terceira forma normal obriga a que se

removam todas as dependências funcionais que dependam de atributos-não-chave

No caso da entidade Encomenda, os atributos Nome_cliente e Telefone são também funcionalmente dependentes do atributo-não-chave Código_cliente

23

Normalização de dados Para aplicar a 3FN, efectuam-se os seguintes

passos: Verificar se os atributos não-chave são

dependentes funcionalmente de outros atributos-não-chave

Criar uma nova relação com os atributos que dependem dos atributos-não-chave, sendo estes a chave da nova relação

Identificar os relacionamentos existentes entre a nova relação e a relação original, mantendo, nesta, o atributo-não-chave que é um atributo comum

24

Normalização de dados Da entidade Encomenda, depois de aplicada a 3FN,

resultam as entidades Encomenda e ClienteEncomenda = @Número_encomenda + Data_encomenda + Código_clienteCliente = @Código_cliente + Nome_cliente + Telefone Depois de aplicadas as três formas normais à

entidade inicial, Encomenda, resultam as entidade normalizadas: Cliente, Produto, Encomenda, e DetalheEncomenda

Cliente = @Código_cliente + Nome_cliente + TelefoneProduto = @Código_produto + Nome_produto + Preço_unitárioEncomenda = @Número_encomenda + Data_encomenda + Código_clienteDetalheEncomenda = @Número_encomenda + @Código_produto +

Quantidade