Modelagem Conceitual, Lógica e Física de Dados

 

A modelagem de dados é o primeiro passo em nosso projeto na criação de um banco de dados, pois é nele que criamos um modelo de dados específico para um determinado domínio.

Modelo de Dados

É uma representação simples, normalmente gráfica, de estrutura de dados reais mais complexas, sendo esta um modelo de uma abstração de um objeto ou evento real de maior complexidade. Sua função é auxiliar na compreensão das complexidades do ambiente real. Pela visão do BD, nada mais é que um modelo que representa estruturas de dados e suas característica, relações, restrições, transformações e outros elementos que tenham finalidade de dar suporte ao problema específico de um domínio.

Modelagem de Dados

Este é um processo iterativo e progressivo. Deve-se compreender o problema do domínio, e conforme essa compreensão de desenvolve, os detalhes irão surgir e acrescidos no modelo. Ao final da modelagem, teremos uma visão detalhada do todo, com todas as instruções para a construção de um BD que atenda às necessidades dos usuários finais. Essa modelagem terá descrições textuais e gráficas, que ajudarão no entendimento dos principais elementos de dados.

Características Básicas

Um modelo de dados pronto para implementação terá as seguintes características:

  • Descrição da estrutura de dados que armazenará os dados do usuário final;
  • Conjunto de regras aplicáveis para garantir a integridade dos dados;
  • Metodologia de manipulação de dados que dê suporte a transformação de dados reais;

Importância dos Modelos de Dados

Estes modelos podem ajudar na comunicação entre o projetista, programadores e o usuário final, dando uma compreensão mais aprimorada da organização para a qual está sendo desenvolvida.

As aplicações são criadas para gerenciar os dados e transformá-las em informações. Daí a importância de não ignorar esta etapa fundamental, principalmente que cada um dos envolvidos (projetistas, programadores e usuários finais) tem visões diferentes sobre o sistema como um todo.

Caso tenha um bom projeto em mãos para trabalhar, esses pontos de vista diferentes não importarão. Se você não tiver algo bom, você pode sofrer com prejuízos futuros. Imagina um software que faz conflito de dados, mostrando valores de produtos de forma trocada, algo como uma caneta simples mostrando o valor de R$ 1.200,00, que seria o valor de um outro produto que poderia ser um computador, por exemplo.

O modelo de dados é uma abstração que não será possível obter dados a partir dele, mas você irá precisar para começar seu projeto de banco de dados, dando mais segurança para o seu projeto dar certo, atendendo as necessidades do usuário final.

Graus de Abstração de Dados

Evolução da Modelagem de Dados

Modelagem Conceitual

O objetivo aqui é criar um modelo conceitual de forma gráfica, sendo este chamado de Diagrama Entidade e Relacionamento (DER), que identificará todas as entidades e relacionamentos de uma forma global. Aqui é evitado qualquer detalhamento específico do modelo de BD.

O modelo conceitual mais utilizado é o de ER, que é ajudado pelo DER, que na prática, constitui o modelo básico do BD. Este é utilizado para representar graficamente o esquema conceitual.

Através deste modelo, teremos uma visão de cima (macro) compreendida de modo relativamente fácil sobre o ambiente de dados. Também é independente de hardware ou software, ou seja, não depende de nenhum SGBD utilizado para implantá-lo. Por tanto, qualquer alteração no software ou hardware, não terão efeito no nível conceitual.

Modelagem Lógica

Depois que selecionamos um SGBD, iremos mapear o modelo conceitual para ele. O projetista relaciona as características e restrições do modelo conceitual com as do modelo selecionado para implementação. O modelo lógico constitui uma representação específica de um modelo interno, utilizando as estruturas de BD suportada pelo banco escolhido. Em um Banco de Dados Relacional (BDR), o esquema interno é expresso utilizando linguagem SQL, por padrão.

Neste nível, o modelo lógico depende do software. Por tanto, qualquer alteração feita no SGBD exigem que o modelo interno seja alterado para adequar-se às características e exigências de implementação do modelo de BD. Quando conseguimos alterar o modelo lógico sem afetar o modelo conceitual, teremos o que é chamado de independência lógica. No entanto, o modelo lógico continua independente de hardware, ou seja, qualquer alteração (escolha de um computador, sistema operacional diferente, etc) não afetará no modelo lógico.

É nesta modelagem que serão definidas os padrões e nomenclaturas, chaves primárias e estrangeiras, sempre levando em conta o modelo conceitual criado anteriormente.

Modelagem Física

Aqui é trabalhado no nível mais baixo de abstração, descrevendo o modo como os dados são salvos em meios de armazenamentos, como discos e fitas, sendo exigido a definição tanto dos dispositivos de armazenamento físico como dos métodos de acesso (físico) necessários para se chegar aos dados nesse dispositivos, o que o torna dependente tanto de software como de hardware. Os projetistas precisam de um conhecimento detalhado do hardware e do software utilizado para implementar o projeto de BD.

Não é necessário que o projetista se preocupe com as características do armazenamento físico dos dados, mas a implementação de um modelo relacional pode exigir sintonização refinada no nível físico para melhorar o desempenho, principalmente em BD muito grandes em ambientes mainframes.

Níveis de Abstração de Dados

MODELO GRAU DE ABSTRAÇÃO FOCO INDEPENDÊNCIA
Externo Alto Visões dos usuários finais Hardware e Software
Conceitual Média-Alta Visão global dos dados (independe do modelo do BD) Hardware e Software
Lógica Média-Baixa Modelo específico de BD Hardware
Físico Baixo Métodos de armazenamento e acesso Nem hardware ou software

Bons estudos e um grande abraço!

Sou bacharel em Sistemas de Informação pela Estácio de Sá (Alagoas), especialista em Gestão Estratégica da Tecnologia da Informação pela Univ. Gama Filho (UGF) e pós-graduando em Gestão da Segurança da Informação pela Univ. do Sul de Santa Catarina (UNISUL). Certificações que possuo: EC-Council CEH, CompTIA (Security+, CySA+ e Pentest+), EXIN (EHF e ISO 27001), MCSO, MCRM, ITIL v3. Tenho interesse por todas as áreas da informática, mas em especial em Gestão e Governança de TI, Segurança da Informação e Ethical Hacking.

19 Responses to “Modelagem Conceitual, Lógica e Física de Dados”

  1. Ana Carvalho disse:

    Como posso saber se minha modelagem ficou bem feita? Pois, não sei se o que faço está certo ou errado.

  2. Danilo Queiroz disse:

    Você teria algum livro para referência?

  3. ADELINO CHIPA disse:

    MUITO BOM AJUDOU BASTANTE

  4. Paulo disse:

    Onde se concentram a maior parte das definições de dados?
    lógico (externo) ou conceitual?

    Seria externo? Pelo nível de abstração de dados ser alto? Ou do contrário?

  5. Mario disse:

    Sou engenheiro de computação, ficou realmente muito bom seu trabalho!

  6. Bruno disse:

    Muito bom seu artigo. Mas tenho uma dúvida, UML é um padrão de modelagem lógica?

  7. Etnã disse:

    Essa modelagem de dados é o mesmo que algoritimos?

    • Diego Macêdo disse:

      De forma resumida: Não, o algoritmo é a lógico do código-fonte utilizado para criar os programas, basicamente está ali na camada lógica. A modelagem de dados é um processo para se criar um software a partir de uma visão geral sobre como os dados serão armazenados no banco de dados, desde uma visão mais abstrata e regras de negócio, até a camada física.

    • Ana Carvalho disse:

      Na verdade, modelagem é a compreensão do problema por parte do analista de sistemas para a atingir aos objetivos do requisitante do sistema. Algoritmos são procedimentos lógicos para a solução de problema.

  8. Creuzinha de Ipatinga/ Mg disse:

    Excelente o que você diz, ótima matéria.
    Mas queria te fazer uma pergunta: No levantamento e análise de requisitos de que forma os modelos poderiam auxiliar e como você pode ilustrar sua resposta?

  9. Muito bom o resumo.
    Parabéns pela iniciativa.

  10. Nitai Charan disse:

    Muito bom para pesquisa! Parabéns pelo trabalho

  11. carlos disse:

    Um desenvolvedor recebe um documento detalhando de maneira precisa
    e
    estrutura
    da
    um banco de dados. O
    desenvolvedor deverá im
    plementar um software para acessar
    esse
    banco de dados através de um SGBD
    conforme esta estrutura. Esse documento é um
    projeto
    conceitual, um
    projeto
    lógico ou um
    projeto
    físico?

  12. Renato Vieira disse:

    Show de Bola! Muito bem explicado!

Deixe um comentário para Qual a diferença entre modelagem conceitual, lógica e física? - banco-de-dados modelo-relacional entidade-relacionamento - Perguntas e Respostas Cancelar resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *