Modelagem de dados: diferenças entre revisões
Linha 8: | Linha 8: | ||
== Modelos == |
== Modelos == |
||
De acordo com a abordagem que utilizam, os modelos de dados normalmente são classificados da seguinte forma:<br /> |
De acordo com a abordagem que utilizam, os modelos de dados normalmente são classificados da seguinte forma:<br />ttgf |
||
<br /> |
<br /> |
||
Modelo Conceitual:<br /> |
Modelo Conceitual:<br /> |
||
Linha 20: | Linha 20: | ||
<br /> |
<br /> |
||
Exemplo de Modelo Físico (SQL ANSI 2003):<br /> |
Exemplo de Modelo Físico (SQL ANSI 2003):<br /> |
||
CREATE TABLE Produtos (<br /> |
CREATE TABLE Produtos (<br />i |
||
COD_PROD Texto(1) PRIMARY KEY,<br /> |
COD_PROD Texto(1) PRIMARY KEY,<br />kmur |
||
MODELO Texto(1),<br /> |
MODELO Texto(1),<br yh/> |
||
COR Texto(1),<br />jhyn |
|||
COR Texto(1),<br /> |
|||
CATEGORIA Texto(1),<br /> |
CATEGORIA Texto(1),<br /> |
||
QUANT_PROD Texto(1)<br /> |
QUANT_PROD Texto(1)<br /> |
Revisão das 20h02min de 6 de junho de 2013
Modelagem de Alguns Dados
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, Modelagem Lógica e Modelagem Física. A primeira é usada como representação de alto nível e considera exclusivamente o ponto de vista do usuário criador do dado, a segunda já agrega alguns detalhes de implementação e a terceira demonstra como os dados são fisicamente armazenados.
Quanto ao objetivo, podemos identificar as seguintes variações: modelagem de dados entidade-relacionamento (leitura, construção e validação dos modelos); modelagem de relacionamentos complexos, grupos de dados lógicos e ciclo de vida das entidades; modelagem de dados corporativa; modelagem de dados distribuídos (cliente/servidor); modelagem e re-engenharia de dados legados e modelagem de dados para Data Warehouse.
Modelos
De acordo com a abordagem que utilizam, os modelos de dados normalmente são classificados da seguinte forma:
ttgf
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 afim 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 (
i
COD_PROD Texto(1) PRIMARY KEY,
kmur
MODELO Texto(1),
COR Texto(1),
jhyn
CATEGORIA Texto(1),
QUANT_PROD Texto(1)
)
brModelo - Ferramenta de Ensino: Modelagem de Dados (MER)
Ferramenta freeware voltada para ensino de modelagem em banco de dados relacional
- REDIRECT [1]
Regras de Derivação:
Normalização das estruturas de dados
Derivação de estruturas de agregação e generalização-especialização
Derivação de relacionamentos
Regras de Restrição:
Restrição de domínio
Restrição de Integridade
Restrição de Implementação
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, 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, etc.)
Definição
Uma definição deve:
- ser única (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.
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.
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
- UML - Linguagem de Modelagem Unificada
- Arquitetura de dados
- Administração de dados
- MER - Modelo de Entidades e Relacionamentos
- Ferramenta CASE
- Matriz CRUD
- Banco de dados
- Engenharia de software
- Análise de requisitos
- Modelagem dimensional
Referências
- ↑ Durante a normalização estes são deslocados para o objeto a que pertencem e é feito então um relacionamento entre eles