?>
1-mysql Básico
Exercícios
?>

Capítulo 5

1-Modelagem e Projeto de Banco de Dados

Introdução

No mercado, há vários tipos de SGBD. Neste curso abordamos o tipo de SGBD relacional, e portanto nossa abordagem de projetos também será a partir do modelo relacional.

Como apresentado na página da Oracle (vide O Que É um Banco de Dados Relacional) um banco de dados relacional pode ser definido como:

Um banco de dados relacional é um tipo de banco de dados que armazena e fornece acesso a pontos de dados relacionados entre si. Bancos de dados relacionais são baseados no modelo relacional, uma maneira intuitiva e direta de representar dados em tabelas. Em um banco de dados relacional, cada linha na tabela é um registro com uma ID exclusiva chamada chave. As colunas da tabela contêm atributos dos dados e cada registro geralmente tem um valor para cada atributo, facilitando o estabelecimento das relações entre os pontos de dados.

Nesse capítulo estudamos conceitos de modelagem de banco de dados, ou seja, como proceder para, partindo de dados que queremos armazenar, podemos chegar numa organização de um sistema computacional para armazenar os dados.

Grande parte dos conceitos aqui apresentados foram extraídos do Livro do Professor Carlos Alberto Heuser e das aulas do Professor André Santanchè. Vide as Referências desse capítulo, clicando aqui

Modelagem

Como comentado no artigo, "Modelagem de Dados - Teoria e Práica" a modelagem de sistemas, tanto a nível funcional quanto de dados, é um requisito fundamental para a obtenção de produtos de software de maior qualidade e confiabilidade.

Entretanto, percebe-se que cada vez menos profissionais têm dado a atenção devida ao processo de construção de modelos de suas aplicações. Isso provavelmente se deve às pressões por sistemas em prazos cada vez mais curtos e com menores custos de produção mas, por outro lado, acaba por prejudicar - e muito - o entendimento correto do problema e, consequentemente, a construção do sistema que atenda às reais expectativas do usuário.

Esta situação muitas vezes leva a sistemas de baixa qualidade, com elevada necessidade de modificação e de difícil manutenção.

Para construir um modelo de dados, usa-se uma linguagem de modelagem de dados. Existem linguagens textuais e linguagens gráficas.

É possível descrever os modelos em diferentes níveis de abstração e com diferentes objetivos.

Podemos definir o processo de um projeto de banco de dados a partir da elaboração de modelos, que vão de um nível de abstração alto (modelo conceitual) até um nível de abstração baixo, e portanto "nível de concretização" alto, ou seja, um modelo relacionado com a efietiva implementação do Banco de Dados.

Projeto de Um Banco de Dados

A figura abaixo ilustra as etapas de projeto de um Banco de Dados.

projeto

O projeto de um novo BD dá-se em três etapas:

  1. Modelagem Conceitual - Define um "modelo conceitual" que é um modelo de dados abstrato, que descreve a estrutura de um banco de dados de forma independente de um SGBD particular. Registra QUAIS dados podem aparecer no banco, mas não registra COMO estes dados estão armazenados no SGBD.

  2. Projeto Lógico - A etapa de projeto lógico objetiva transformar o modelo conceitual obtido na primeira fase em um modelo lógico. O modelo lógico define como o banco de dados será implementado em um SGBD específico. Enquanto que no modelo conceitual pensamos em como o usuario quer organizar os dados, no modelo lógico pensamos em como "guardar os dados no computador". Existem algumas formas bem definidas de se organizar os dados nos computadores. Ou dizendo de outra forma, existem diferentes "modelos lógicos" de bancos de dados.

    • O modelo lógico já leva em conta algumas limitações e implementa recursos como adequação de padrão e nomenclatura, define as chaves primárias e estrangeiras, normalização, integridade referencial, entre outras. Para o modelo lógico deve ser criado levando em conta os exemplos de modelagem de dados criados no modelo conceitual.

  3. Projeto Físico - Nessa etapa final do projeto do BD, o modelo lógico é "programado" em um SGBD específico. Por exemplo, no caso de usarmos o mysql, nessa etapa estaríamos escrevendo o BD, usando a linguagem SQL e alimentado os dados.

  4. Nas próximas seções veremos cada uma dessas etapas do projeto.

    Referencias

    voltar ao início da página