Modelagem de dados: diferenças entre revisões

Origem: Wikipédia, a enciclopédia livre.
Conteúdo apagado Conteúdo adicionado
Wilfredor (discussão | contribs)
source
Linha 20: Linha 20:
* '''Modelo Lógico''': O modelo lógico mostra as ligações entre as tabelas de banco de dados, as chaves primárias, os componentes de cada uma, etc.
* '''Modelo Lógico''': O modelo lógico mostra as ligações entre as tabelas de banco de dados, as chaves primárias, os componentes de cada uma, etc.
* '''Modelo Físico''': Inclui a análise das características e recursos necessários para armazenamento e manipulação das estruturas de dados (estrutura de armazenamento, endereçamento, acesso e alocação física), sendo uma sequência de comandos executados em [[SQL]] a fim de criar as tabelas, estruturas e ligações projetadas até então e finalmente criar o banco de dados.
* '''Modelo Físico''': Inclui a análise das características e recursos necessários para armazenamento e manipulação das estruturas de dados (estrutura de armazenamento, endereçamento, acesso e alocação física), sendo uma sequência de comandos executados em [[SQL]] a fim de criar as tabelas, estruturas e ligações projetadas até então e finalmente criar o banco de dados.
Exemplo de Modelo Físico (SQL ANSI 2003):<br />
;Exemplo de Modelo Físico (SQL ANSI 2003):
<source lang="sql">
CREATE TABLE Produtos (<br />
CREATE TABLE Produtos (
COD_PROD Texto(1) PRIMARY KEY,<br />
MODELO Texto(1),<br />
COD_PROD Texto(1) PRIMARY KEY,
DESCRICAO Texto(1),<br />
MODELO Texto(1),
COR Texto(1),<br />
DESCRICAO Texto(1),
CATEGORIA Texto(1),<br />
COR Texto(1),
QUANT_PROD Texto(1)<br />
CATEGORIA Texto(1),
QUANT_PROD Texto(1)
)<br />
)

</source>
=== Modelo Lógico de Dados ===
=== Modelo Lógico de Dados ===
Um modelo lógico de dados para uso meramente operacional/transacional deve:
Um modelo lógico de dados para uso meramente operacional/transacional deve:

Revisão das 16h27min de 5 de março de 2015

Modelar significa criar um modelo que explique as características de funcionamento e comportamento de um software a partir do qual ele será criado, facilitando seu entendimento e seu projeto, através das características principais que evitarão erros de programação, projeto e funcionamento. É uma parte importante do desenho de um sistema de informação.

A abordagem que se dispensa ao assunto normalmente atende a três perspectivas:

  • Modelagem Conceitual: é usada como representação de alto nível e considera exclusivamente o ponto de vista do usuário criador dos dados;
  • Modelagem Lógica: agrega mais alguns detalhes de implementação.
  • Modelagem Física: demonstra como os dados são fisicamente armazenados.

Quanto ao objetivo, podemos identificar as seguintes variações:

Modelos

De acordo com a abordagem que utilizam, os modelos de dados normalmente são classificados da seguinte forma:

  • Modelo Conceitual: O modelo conceitual é um diagrama em blocos que demonstra todas as relações entre as entidades, suas especializações, seus atributos e auto-relações.
  • Modelo Lógico: O modelo lógico mostra as ligações entre as tabelas de banco de dados, as chaves primárias, os componentes de cada uma, etc.
  • Modelo Físico: Inclui a análise das características e recursos necessários para armazenamento e manipulação das estruturas de dados (estrutura de armazenamento, endereçamento, acesso e alocação física), sendo uma sequência de comandos executados em SQL a fim de criar as tabelas, estruturas e ligações projetadas até então e finalmente criar o banco de dados.
Exemplo de Modelo Físico (SQL ANSI 2003)
CREATE TABLE Produtos (
       COD_PROD Texto(1) PRIMARY KEY,
       MODELO Texto(1),
       DESCRICAO Texto(1),
       COR Texto(1),
       CATEGORIA Texto(1),
       QUANT_PROD Texto(1)
)

Modelo Lógico de Dados

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;
  • 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.

Identificação de Objetos

  • Coisas Tangíveis: elementos que têm existência concreta, que ocupam lugar no espaço.
Ex: Meio de Transporte (avião, carro, barco, navios, etc);
  • Funções: percepção dos objetos através da função por eles exercida (papel, atribuição, classificação, capacitação, etc).
Ex: Organização (órgãos funcionais - venda, suporte, despacho de mercadorias, etc), especialistas (médicos, engenheiros, etc), cliente (pessoa atendida), atendente (pessoa que atende), etc;
  • Eventos ou Ocorrências: alguns objetos só conseguem ser individualizados ou percebidos enquanto uma certa ação se desenrola (identifica-se características que tornam determinado fato materializável).
Ex: vôo comercial, acidente de trânsito, jogo de futebol, etc.
  • Interações: resultantes das associações entre objetos em função de um processo executado - cada objeto participante da interação preserva suas características não sendo impactados pela materialização da interação.
Ex: compra de um imóvel, adoção de uma criança, venda de um produto;
  • Especificações: são elementos que definem características de outros objetos.
Ex: modelos de carro (cor, dimensões, etc), espécies animais (mamíferos, carnívoros, gatinhos. lulinhas, esponjinhas, etc.)

Definição

Uma definição deve:

  • ser única e especial (dentro de qualquer dicionário no qual ela aparece);
  • ser estabelecida no singular;
  • estabelecer o que o conceito é (não o que ele não é), o que faz, quando algum elemento passa a ser, ou deixa de ser, pertencente a esse grupo;
  • ser estabelecida como uma frase ou sentença descritiva;
  • ser expressa sem definições embutidas de outros termos;
  • estabelecer o significado essencial do conceito;
  • ser precisa e não-ambígua;
  • ser concisa;
  • ser significativa por si só;
  • evitar raciocínio circular.

Atributos

Quanto ao tipo, podem ser classificados como:

  • Descritivos: representam as características intrínsecas dos objetos;
  • Nominativos: além de cumprirem a função de descritivos servem como definidores de nomes ou rótulos de identificação dos objetos (nome, código, número, sigla, etc);
  • Referenciais: representam uma citação ou ligação do objeto em questão com outro objeto, não propriamente definindo uma característica do objeto mas explicitando um relacionamento existente[1].
Ex: Cidade de nascimento, Nome do fabricante do carro, Local de trabalho, etc.

Relacionamentos

Na descrição de um relacionamento devem aparecer:

  • Sua função;
  • O que ele representa;
  • Quais as regras de seu estabelecimento;
  • Quais as exceções a seu estabelecimento;
  • Quando ocorre;
  • Quando pode deixar de existir.

Recomendações

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 que o 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 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.

Ver também

Referências

  1. Durante a normalização estes são deslocados para o objeto a que pertencem e é feito então um relacionamento entre eles