quinta-feira, 2 de abril de 2009

4 - Modelo Conceitual

A construção do Modelo Conceitual é iniciada a partir da especificação dos requisitos e resulta no esquema conceitual do banco de dados, onde a semântica da realidade deve estar correta. Um esquema conceitual é uma descrição em alto nível da estrutura do banco de dados, independente do Sistema de Gerenciamento de Banco de Dados (SGBD) adotado para implementá-lo. É utilizado para descrever os esquemas conceituais. É chamado de modelo de alto nível, pois não está ligado (relacionado) a nenhum Banco de Dados. Sua verdadeira intenção é promover o entendimento dos fatos de uma realidade (mundo) para ser representado e tratado em um BD.

De acordo com Cougo o modelo conceitual pode ser definido como um modelo no qual os objetos, suas características e relacionamentos têm a representação fiel ao ambiente observado, independente de quaisquer limitações impostas por tecnologias, técnicas de implementação ou dispositivos físicos.

Considerando o ciclo de vida de desenvolvimento de um sistema esta etapa pode ser considerada a fase de análise dos dados (ou requisitos) capturados na etapa anterior (levantamento de dados). São analisados os fatos (entidades ou conjunto de ocorrências de dados) de interesse e seus relacionamentos, juntamente com seus atributos (propriedades ou características) e construída uma notação gráfica (abstrata, uma representação de alto nível) para facilitar o entendimento dos dados e suas relações, tanto para os analistas quanto para os futuros usuários.

Objetivos do Modelo Conceitual

• Descrição das Informações – O objetivo do modelo conceitual é descrever as informações contidas em uma realidade, as quais estarão armazenadas em um banco de dados.

• Resultado real – O resultado de um Modelo Conceitual é um esquema que representa a realidade das informações existentes, assim como as estruturas de dados que representam essas informações.

• Independência de Manipulação e Manutenção dos Dados – Não é construído com considerações procedurais, não existindo preocupação com as operações de manipulação/manutenção dos dados.

• Independência do SGBD – Não retrata aspectos ligados à abordagem do banco de dados que
será utilizado e nem com as formas de acesso ou estruturas físicas implementadas por um SGBD.

Características do Modelo Conceitual

• Representação da Realidade – Registra as necessidades de informação de uma realidade.

• Melhor Conhecimento do Sistema – Permite que os analistas possam interagir melhor com os usuários validando seus objetivos e metas permitindo a construção de um sistema de informações cada vez mais próximo da realidade do usuário.

• Inicia o projeto – É a primeira etapa do projeto de um sistema de aplicação em banco de dados.

A fase de projeto conceitual é tida como uma das mais (senão a mais) delicadas em todo esse processo, pois depende muito da habilidade do projetista do banco de dados e das qualidades do modelo de dados adotado para a elaboração do esquema conceitual. A meta nessa fase é obter um esquema conceitual do banco de dados que seja tão completo e expressivo quanto possível.
Esse esquema deve procurar expressar o máximo da semântica envolvida na informação.


Mecanismos de representação de alto nível são empregados, tais como representação de hierarquias de subconjunto e de generalização, representação de restrições de cardinalidade e de atributos compostos e multivalorados.

O esquema conceitual deve permanecer como uma parte da documentação do processo de projeto, sendo utilizado durante a operação e manutenção do banco de dados, pois facilita o entendimento dos esquemas de dados e das aplicações que os utilizam.
Para auxiliar o projetista a elaborar o projeto conceitual de um banco de dados existem as abstrações de dados, que apresentam as vantagens:

• ajudam o projetista a entender, classificar e modelar a realidade,

• melhoram a eficiência de implementações subseqüentes,

• permitem melhor representar a semântica das novas aplicações de banco de dados,
provenientes de áreas não tradicionais.

O Modelo Conceitual oferece

• Melhor compreensão pelo usuário leigo: Um modelo conceitual é normalmente uma representação gráfica de fatos e relações do mundo real. Assim sendo, a compreensão destes conceitos é facilitada, se exposta graficamente. O usuário leigo, para o qual o BD será
desenvolvido, tem melhores condições de criticar o projeto feito e interagir no projeto.

• Independência de detalhes de implementação: Um modelo conceitual não é vinculado a nenhum modelo de dados de BD, ou seja, não apresenta detalhes de estruturação de dados que só precisam ser considerados no momento da criação do esquema em um SGBD. Assim, modificações nesta etapa do projeto são menos comprometedoras do que nas etapas seguintes. Inclusive, é recomendado que se critique bastante o modelo conceitual, para evitar mudanças depois.

• Tradução para qualquer modelo de dados de BD: Um modelo conceitual pode ser mapeado para qualquer modelo de BD, desde que se saibam as regras para realizar tal tarefa. Isto facilita o upgrade do BD (por exemplo, migração de um SGBD relacional para um
SGBD orientado a objetos), uma vez que não é preciso repensar do zero a nova organização lógica que os dados terão no novo modelo de dados.

• Ferramenta indispensável para o processo de engenharia reversa de BD: O upgrade (ou migração) de um esquema implementado em um certo modelo de dados de BD para outro exige a realização de um processo chamado engenharia reversa. O objetivo deste processo é
justamente obter o modelo conceitual a partir de um modelo lógico (projeto de BD “ao contrário”), para que possa então ocorrer o upgrade, como comentado na vantagem anterior.

• Maior estabilidade frente a mudanças a nível de implementação: O modelo conceitual, por ser um modelo de alto nível (semântico), tem menor probabilidade de ser afetado quando ocorrem mudanças a nível de implementação, realizadas no SGBD, como por exemplo, definir índices para aumentar a performance, tornar o BD distribuído, utilizar estratégias de clusterização para gilizar consultas, etc. Às vezes, mesmo modificações, por exemplo, em tabelas de um BD relacional, não inviabilizam o modelo conceitual, uma vez que as regras de mapeamento para um modelo lógico admitem algumas variações, como por exemplo, o fato de um relacionamento 1:1 com parcialidade gerar ou não uma tabela para o relacionamento.

• Mais adequado para o exercício da criatividade: Um modelo conceitual é na verdade uma ferramenta que admite diversas alternativas de solução para a interpretação de uma realidade, dependendo de quem está modelando. É interessante que uma modelagem
conceitual seja realizada por diversos analistas e comparada entre eles, para se determinar
qual delas é a mais clara, ou seja, captura melhor a semântica da realidade.


Exemplo de Modelagem Conceitual



Nenhum comentário:

Postar um comentário