Você está na página 1de 10

ANÁLISE E DESENHO DE SISTEMAS

TEMA 6 – Dicionário de Dados (DD), Diagrama de Entidade e Associação


(DEA) e Normalização de Tabelas / SSADM

A – Dicionário de Dados (DD)

• Lista organizada de todos os dados existentes no sistema, com definições


precisas e únicas, para que, tanto o Utilizador como o Analista percebam do
que se está a falar.
• Proporciona um local centralizado para documentar todas as informações
referentes à fase de análise.
• Deve:
– Descrever o significado dos Fluxos e Arquivos de Dados do DFD;
– Descrever a composição dos dados que fluem no diagrama;
– Descrever a composição dos registos dos arquivos;
– Descrever os detalhes das relações entre entidades no DEA.

Notação

= Composto por
+ Significa E
() Opcional
A{}B Limite Inferior Iteração Limite Superior
[] Alternativa
** Comentário
@ Identificador de chave num arquivo
| Separador de alternativas em [ ]

Exemplos:
 Aluno = @Nome + Idade + Morada + (Apelido) + Sexo.
 Sexo = [Masculino | Femenino].
 Endereço = (End_Entrega) + (End_Cobrança).
 Pedido_Aluguer = Cod_Sócio + data + 1 {Num_Filmes} 6.
 Título = [ Sr. | Sra. | Prof. | Dr. | Eng. ] .

B – Diagrama de Entidade e Associação (DEA)


Diagrama de Entidade e Associação é a técnica de modelação conceptual que se
baseia nos conceitos de entidade, atributo e assoc
associação
Componentes do Modelo
 A escrita (ou desenho) de um DEA traduz-se se na representação gráfica dos
seus três componentes:
 Entidades - objectos (em sentido lato) sobre os quais a organização
guarda informação
informação.
 Atributos - as propriedades relevantes das entidades.
 Associações
ssociações - os relacionamentos entre entidades.

B.1 - Entidade
 Qualquer coisa (objecto ou conceito) com interesse para a organização a
respeito da qual é guardada informação e que possa ser identificável de
maneira inequívoca.
 Representa uma classe, ou conjunto de objectos,, e é caracterizada por um
nome (o nome da entidade) e pelo conjunto das suas propriedades (os
atributos da entidade).

B.2 – Ocorrência da Entidade


 Uma concretização de qualquer entidade.
 Uma determinada ocorrência de qualquer entidade só pode assumir, de cada
vez, um valor para cada atributo.
 Por outras palavras, cada atributo associa a uma ocorrência um valor num dado
domínio.

B.3 – Atributo
 Qualquer propriedade relevante de uma entidade.
 Mais precisamente, uma característica que qualifica, identifica, classifica,
quantifica, ou expressa o estado de uma entidade.

B.4 – Domínio de um atributo


É o conjunto de valores que esse atributo pode assumir.
A selecção dos atributos relevantes para uma entidade é uma das tarefas
importantes na análise - a captação e tradução do mundo real.

B.5 - Tipos de atributos


Uma entidade tem dois tipos de atributos:
 Identificador (chave)
o Atributo (ou conjunto de atributos) que identifica uma ocorrência
específica dessa entidade distinguindo-a das restantes ocorrências.
o Para que um atributo seja identificador de uma entidade é preciso
que não existam duas ocorrências distintas dessa entidade em que
esse atributo assuma o mesmo valor.
 Descritores
o Atributos que descrevem (ou caracterizam) as ocorrências da
entidade.

B.6 – Associação
 Qualquer relacionamento (ligação) entre duas ou mais entidades com
interesse para a organização.
 É caracterizada por um nome (o nome da associação) e pelo conjunto das suas
propriedades.

ASSOCIAÇÕES SÃO EXPRESSAS POR VERBOS


 Observação:
Muitos verbos são ambíguos.
“trabalha para”
“é empregado de”
O que significa ser empregado? Quando começa? Quando termina?

B.7 – Propriedades da associação


As propriedades de uma associação entre entidades são as seguintes:
 Grau
 Qualidade de participação
 Cardinalidade

B.7.1 - Grau
Uma associação entre duas entidades pode caracterizar
caracterizar-se de três formas distintas
 UM para UM;
 UM para MUITOS;
 MUITOS para MUITOS.

B.7.2 - Qualidade de participação


Participação Obrigatória
Quando duas entidades estão associadas, por exemplo E1 e E2, diz-se
diz que E1
participa de forma obrigatória na associação se e só se a qualquer ocorrência de
E1 corresponder, pelo menos, uma ocorrência de E2.

Participação Opcional
Quando duas entidades estão associadas, por exemplo E1 e E2, diz-sediz que E1
participa de forma opcional na associação se puder existir uma ocorrência de E1 à
qual não corresponde qualquer ocorrência de E2

B.7.3 – Cardinalidade da associação

CARDINALIDADE GRAU + QUALIDADE DE PARTICIPAÇÃO


B.8 – Refinamento do modelo de dados e derivação do esquema de tabelas

B.8.1 - Refinamento do modelo


 Decomposição das associações complexas em associações binárias;
 Decomposição das associações de grau M:M em pares de associações 1:M

Objectivos:
 Fazer ressaltar a existência de entidades não identificadas de início (entidades
associativas, atributivas, particularizações e generalizações);
 Facilitar a análise posterior da consistência do diagrama;
 Dar ao modelo a forma adequada para passos subsequentes da metodologia.

Decompor associações complexas


As associações complexas (que envolvam mais do que uma entidade) devem ser
decompostas em associações binárias (apenas entre duas unidades).

Decompor associações M:M


As associações cujo grau seja M:M devem ser substituídas por um par de
associações do grau 1:M.

B.8.2 – Derivação do Esquema de Tabelas

Basicamente, uma tabela representa uma entidade em que:


 Cada coluna é um atributo;
 Cada linha corresponde a uma ocorrência;
 Não existem duas linhas com os mesmos valores em todos os atributos.

B.8.2.1 - Normas
1) Normalmente, cada entidade dá origem a uma tabela com:
a) Identificador da entidade;
b) Restantes atributos da entidade;
c) Identificadores de outras entidades que lhes estejam associadas (só em
alguns casos.
2) Associações sem dados podem dar origem a uma tabela, ou não, dependendo:
a) Do grau da associação;
b) Da qualidade da participação das respectivas entidades.
3) Deve-se:
a) Evitar
vitar ocorrências em que os identificadores de outras entidades tenham
valores nulos;
b) Não
ão criar tabelas de modo que identificadores de outras entidades se
repitam;
c) Criar
riar tabelas para as associações apenas quando tal seja necessário para não
violar as regras anteriores.

B.8.2.2 - Regras

Regra 1 – Sempre que uma entidade ocorre a outra entidade também tem que
ocorrer, ou seja, a cada ocorrência de uma entidade corresponde uma ocorrência
de outra entidade e vice-versa.
versa.
Logo:
 Basta uma tabela para representar esta situação.
 A chave tanto pode ser A1 como B1.

Regra 2 – Quando E1 ocorre, E2 pode ou não ocorrer, mas quando E2 ocorre E1


tem que ocorrer, ou seja, quando se cria uma ocorrência em E1 pode acontecer não
ter que criar uma ocorrência em E2,, mas quando se cria uma ocorrência em E2
tem de existir umaa ocorrência em E1.
Logo:
 Duas tabelas,, uma para cada entidade, em que a tabela da entidade de
participação obrigatória tem que possuir o identificador da entidade de
participação não obrigatória.

Regra 3 – Quando E1 ocorre, E2 pode ou não ocorrer e quando E2 ocorre, E1


pode ou não ocorrer, ou seja
seja, criar uma ocorrência em E1 não implica criar uma
ocorrência em E2,, assim como criar uma ocorrência em E2 não implica criar uma
ocorrência em E1.
Logo:
 Três tabelas,, uma para cada entidade e uma para a associação. A tabela da
associação possuirá os identificadores de E1 e E2,, podendo qualquer um
deles ser a chave.
Regra 4 – Associações 1:M com pparticipação
articipação obrigatória da entidade do lado M
na associação, origina duas tabelas
tabelas, uma para cada entidade.
 A tabela da entidade E2 possuirá A1 como chave estrangeira, uma vez que
quando ocorre E2 tem que ocorrer E1.

Regra 5 – Associações 1:M, com pparticipação


articipação não obrigatória da entidade do lado
M na associação:
 Origina três tabelas - uma para cada entidade e outra para a associação.
 A tabela da associação terá necessariamente como chave primária a chave
primária da entidade E2.

Regra 6 – Associações M:M


 Origina três tabelas - uma para cada entidade e outra para a associação.
asso
 A chave primária da tabela da associação será composta pela concatenação
das duas chaves primárias das entidades que participam na associação.

 Nota:: esta associação deve ser desfeita previamente, na fase de refinamento


do modelo de dados.

Quadro resumo
C – Normalização de Tabelas

Teoria de normalização - foi desenvolvida por Codd, no âmbito dos seus estudos
sobre o modelo e a teoria relacionais.
Codd considerou três níveis de normalização, respectivamente:
 A Primeira Forma Normal (1FN);
 A Segunda Forma Normal (2FN);
 A Terceira Forma Normal (3FN).

Normalização – consiste num processo de aplicação de um conjunto de regras


(princípios elementares) a uma determinada estrutura de dados.

Formas normais
 Conjunto de regras aplicadas durante um processo de normalização.
 É uma restrição que se pode aplicar na definição de bases de dados para não
permitir certas anomalias, por exemplo, nas operações de actualização.
 Formas normais são definidas primeiro para uma relação e depois para a
base de dados como um todo.
 Relação – é uma colecção de atributos, um registo.
 Tupla – uma instância de uma relação.
 Domínio - é o conjunto de valores que um atributo pode assumir.
 Dependência funcional – dados os atributos X e Y de uma entidade, diz-se
que Y é funcionalmente dependente de X se e só se a cada valor de X está
associado um só valor de Y.

Primeira Forma Normal (1FN) - Uma relação R está na 1ª Forma Normal (1FN)
se os valores de cada atributo de R são atómicos:
 Os valores no domínio de cada atributo não são listas ou conjunto de
valores, ou valores compostos;
 A definição de atómico não é clara: um valor que seja atómico numa
aplicação pode não ser noutra.

Por exemplo, é dada uma relação que não está normalizada, ou seja, não se
encontra na 1FN.
 Empregado = @numero_empregado + nome + morada + salário +
{nome_filho + sexo_filho + idade_filho}
A partir dela, pode-se obter relações na 1FN:
 Empregado = @numero_empregado + nome + morada + salário
 Filho = @ID_filho + nome_filho + sexo_filho + idade_filho +
numero_empregado
Segunda Forma Normal (2FN) - Uma relação R está na 2ª Forma Normal (2FN)
se estiver na 1FN, todo e qualquer atributo não chave for funcionalmente
dependente da totalidade da chave primária.

Por exemplo, é dada uma relação que está na 1FN.


 Factura = @numero_factura + @numero_cliente + data_factura +
valor_factura + nome_cliente
A partir dela, pode-se obter relações na 2FN:
 Factura = @numero_factura + @numero_cliente + data_factura +
valor_factura
 Cliente = @numero_cliente + nome_cliente

Terceira Forma Normal (3FN) - Uma relação R está na 3ª Forma Normal (3FN)
se estiver na 2FN e se não houver dependências funcionais entre atributos não-
chave.

Por exemplo, é dada uma relação que está na 2FN.


 Voo = @Id_voo + numero_piloto + nome_piloto + data_voo
A partir dela, pode-se obter relações na 3FN:
 Voo = @Id_voo + numero_piloto + data_voo
 Piloto = @numero_piloto + nome_piloto

D – Exercícios Práticos

Criação de Diagramas de Entidade e Associação dos sistemas de informação:


• Sistema de Gestão de Consumíveis,
• Sistema de Gestão de Transportes Semi-colectivos,
• Sistema de Gestão de Parques de Estacionamento,
• Sistema de Gestão de Espaços Publicitários,
• Sistema de Gestão de Bibliotecas,
• Sistema de Gestão de Consultas Médicas,
• Sistema de Gestão de Campeonatos de Futebol,
• Sistema de Gestão de Recursos Humanos,
• Sistema de Gestão de Stock,
• Sistema de Gestão de Vídeo Clube,
• Sistema de Gestão de Imposto Predial,
• Sistema de Gestão Hoteleira.

Você também pode gostar