Unidade E - Modelo Lógico

Modelo Lógico

Apresenta o Banco de Dados no nível do SGBD, depende do SGBD que será usado.

Um modelo lógico de dados para uso meramente operacional/transacional deve:

- Ser completamente normalizado;

- Representar fielmente o NEGÓCIO, e NÃO necessariamente a base de dados desejada, a qual será construída posteriormente por ocasião do Projeto Físico;

- Conter descrição sucinta das entidades, atributos e relacionamentos;

Um modelo lógico de dados para uso meramente operacional/transacional deve:

- Conter os nomes de entidades e atributos, extensos e abreviados, atribuídos de acordo com algum padrão adotado na organização e formados por termos previamente convencionados em um glossário;

- Contemplar, para cada um dos atributos, o tipo de dado, tamanho e opcionalidade.

Um Modelo Lógico de Dados para uso meramente operacional/transacional não deve conter:

Replicações de atributos: fisicamente pode ser interessante alguma redundância com o objetivo de melhorar a performance de determinado(s) processo(s). No modelo lógico isso não pode ser feito; um atributo só é representado na Entidade a que pertence.
Atributos derivados: pelos mesmos motivos apontados anteriormente, a implementação das tabelas pode requerer o armazenamento de uma informação derivada de outra(s) (valor do saldo por exemplo). Tal tipo de informação não se constitui em um atributo do modelo lógico.
Atributos repetitivos: o uso de atributos repetidos, como Telefone-1 e Telefone-2, não é admitido. Se existe a possibilidade de uma pessoa possuir mais de um telefone, então Telefone deve ser representado como uma entidade, mantendo relacionamento Nx1 com a entidade Pessoa.

Os SGBD’s relacionais são os mais difundidos, neste tipo de SGBD os dados são organizados em tabelas.

O modelo lógico do BD relacional deve definir quais as tabelas e o nome das colunas que compõem estas tabelas.

Modelo Lógico - Tabelas

Apresenta a estrutura das tabelas, define quais as tabelas e o nome das colunas que compõem estas tabelas.

Exemplo de modelo lógico:

Aluno(matricula, nome_alu, endereco_alu)

Turma (turma, sala, turno)

Modelo Lógico x Modelo Físico

Detalhes internos de armazenamento, não são descritos no modelo lógico, pois estas informações fazem parte do modelo físico, que nada mais é que a tradução do modelo lógico para o SGBD definido para a criação do Banco de Dados.

Modelo Lógico

O modelo lógico leva em conta algumas limitações e implementa recursos como adequação de padrão e nomenclatura. Define as chaves primárias e estrangeiras. Deve ser criado levando em conta os exemplos de modelagem de dados criados no modelo conceitual.

Modelo Físico

No modelo físico fazemos a modelagem física do modelo de banco de dados. Deve-se levar em conta as limitações impostas pelo SGBD escolhido e ser criado sempre com base nos exemplos de modelagem de dados produzidos no modelo lógico.

Transformações entre modelos

A partir do Modelo Conceitual do BD teremos subsídios para a construção do Modelo Lógico.

Engenharia reversa de modelos relacionais

- Parte de modelo de implementação

- Obtém modelo de especificação (modelo conceitual)

- Identificação da construção ER correspondente a cada tabela;

- Definição de relacionamentos 1:n e 1:1;

- Definição de atributos;

-Definição de identificadores de entidades e relacionamentos.

Esquema relacional para engenharia reversa

Identificação da construção ER correspondente a cada tabela

- Uma entidade;

- Um relacionamento n:n;

- Uma entidade especializada;

- Um fator determinante;

- Uma composição de sua  chave primária.

Tipos de tabelas para identificação de construção ER

Construções identificadas

Identificação de relacionamentos 1:n ou 1:1.

– Representa relacionamento 1:n ou relacionamento 1:1.

Esquema não informa se é 1:1 ou 1:n.

Definição de atributos

- Um atributo na entidade/relacionamento correspondente à tabela.

- Correspondem a relacionamentos;

- Já foram tratadas nas etapas anteriores.

Definição de identificadores de entidades

- Corresponde a um atributo identificador da entidade ou relacionamento.

- Corresponde a um relacionamento identificador da entidade

Administração do Modelo de Dados

Ferramentas Case

 

Geralmente, o processo de modelagem é iterativo, onde:
• Inicialmente identificamos e representamos os conjuntos de entidades (fortes e fracas);
• Identificamos e representamos os conjuntos de relacionamentos;
• Procuramos os atributos das entidades e dos relacionamentos e o domínio destes atributos;
• Definindo as superchaves, chaves candidatas e chaves parciais;
• Definimos os tipos de atributos (simples/compostos, mono/multi valorados, armazenado/derivado);
• Definimos as cardinalidades dos conjuntos de relacionamentos;
• Definimos a participação (total ou parcial) de cada papel de relacionamento;
• Refinamos o modelo ER a fim de verificar se este atende às necessidades das diferentes visões.