Modelagem de dados: diferenças entre revisões

Conteúdo apagado Conteúdo adicionado
Profvalente (discussão | contribs)
Linha 1:
'''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,dados;
* aModelagem segunda jáLógica: agrega mais alguns detalhes de implementação.
* eModelagem a terceiraFísica: demonstra como os dados são fisicamente armazenados.
 
Quanto ao objetivo, podemos identificar as seguintes variações:
* modelagem de dados [[Modelo de entidade e relacionamento|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[[reengenharia]] 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:<br />
* 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.<br />
<br />
* 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.<br />
Modelo Conceitual:<br />
* 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.<br />
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.<br />
<br />
Modelo Lógico:<br />
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.<br />
<br />
Modelo Físico:<br />
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.<br />
<br />
Exemplo de Modelo Físico (SQL ANSI 2003):<br />
CREATE TABLE Produtos (<br />
Linha 28:
QUANT_PROD Texto(1)<br />
)<br />
brModelo - Ferramenta de Ensino: Modelagem de Dados (MER)<br />
Ferramenta freeware voltada para ensino de modelagem em banco de dados relacional<br />
#REDIRECT [http://www.sis4.com/brModelo/]
<br />
<br />
Regras de Derivação:<br />
[[Normalização]] das estruturas de dados<br />
Derivação de estruturas de agregação e generalização-especialização<br />
Derivação de relacionamentos<br />
<br />
Regras de Restrição:<br />
Restrição de domínio<br />
Restrição de Integridade<br />
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);
Linha 62 ⟶ 47:
== Definição ==
Uma definição deve:
 
* ser única (dentro de qualquer dicionário no qual ela aparece);
* ser estabelecida no singular;
Linha 76 ⟶ 60:
== 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<ref>Durante a [[Normalização de dados|normalização]] estes são deslocados para o objeto a que pertencem e é feito então um relacionamento entre eles</ref>.
: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;
Linha 94 ⟶ 76:
== Modelo Lógico de Dados ==
Um modelo lógico de dados para uso meramente operacional/transacional deve:
* Ser completamente [[Normalização de dados|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;
Linha 102 ⟶ 84:
== 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.
Linha 118 ⟶ 99:
* [[Análise de requisitos]]
* [[Modelagem dimensional]]
* [http://www.sis4.com/brModelo/ Ferramenta freeware voltada para ensino de modelagem em banco de dados relacional<br />]
 
{{referências}}