Artigo SQL Magazine 61 - Modelagem de dados para um sistema de controle de orçamento

O objetivo deste artigo é demonstrar o processo de construção do modelo conceitual e lógico de um banco de dados relacional.

Esse artigo faz parte da revista SQL Magazine edição 61. Clique aqui para ler todos os artigos desta edição

Clique aqui para ler esse editorial em PDF

Projeto

Modelagem de dados para um sistema para controle de orçamentos

 

O objetivo deste artigo é demonstrar o processo de construção do modelo conceitual e lógico de um banco de dados relacional. Para isso, utilizaremos um estudo de caso hipotético, que consiste na criação de um sistema de controle de orçamentos. Este sistema permite a inclusão de um orçamento mensal que é composto por contas de receita e despesa. Estas contas são definidas pelo usuário e classificadas em grupos e subgrupos que geram o plano de contas do sistema. Além do orçamento mensal, todos os recebimentos e pagamentos são lançados diariamente e vinculados à conta cadastrada no plano de contas. Desta forma, têm-se a possibilidade de análise do previsto através do orçamento mensal e da análise do que efetivamente foi realizado através dos lançamentos diários nas contas.

Para a construção do modelo de dados, seguiremos uma metodologia de desenvolvimento composta pelas etapas de: levantamento de dados, definição de entidades e associações, definição de atributos e identificadores, criação do modelo conceitual, definição das cardinalidades e, por fim, a criação do modelo lógico de dados.

 

Modelo Conceitual

Um modelo conceitual descreve a estrutura do banco de dados sem preocupar-se com o Sistema Gerenciador de Banco de Dados (SGBD) que será utilizado. Este modelo expressa quais dados aparecerão em um Banco de Dados (BD), e não como estes estão armazenados. Normalmente ele é usado para se representar todo o conjunto de informações disponíveis em um BD a ser projetado.

Considerado como um padrão para a modelagem conceitual, o modelo Entidade-Relacionamento (comumente chamado de modelo ER) foi criado por Peter Chen em 1976 é ainda hoje serve como base para vários modelos, inclusive modelos orientado a objetos. Ele percebe o mundo como sendo um conjunto de entidades e relações entre estas. Uma entidade nada mais é do que a representação de algum fato ou componente de um sistema. Usualmente, suas propriedades são representadas graficamente através de um Diagrama Entidade-Relacionamento (DER), onde os retângulos representam as entidades e os losangos interligados por linhas representam as associações. O relacionamento entre as entidades a partir destas associações caracteriza uma instância ou ocorrência de relacionamento. A identificação de uma instância de relacionamento entre as entidades é gerada a partir da utilização do atributo identificador. A Figura 1 apresenta todos os elementos e símbolos que compõem um diagrama de ER.

 

Figura 1. Símbolos Utilizados no DER

 

O número de ocorrências de determinada entidade que podem estar associadas a ocorrências de outra entidade chama-se cardinalidade. Devemos considerar dois tipos de cardinalidade: a mínima e a máxima. Conforme representado na Figura 1, a cardinalidade mínima é “0” (zero) e a cardinalidade máxima é “n”.

Após a definição das cardinalidades, temos como identificar se a entidade é forte ou fraca. Quando esta for fraca, a linha de ligação aparece em destaque (mais forte) conforme representado na Figura 1. Para melhor compreender o uso de cardinalidades e da definição de entidade forte ou fraca, vejamos o exemplo a seguir:

O domínio deste exemplo é a relação entre entidades Cliente e Compra, onde a cardinalidade mínima entre elas é “0” (zero) e a máxima “n”. Pela cardinalidade mínima, podemos afirmar que uma ocorrência de Cliente não obrigatoriamente precisa estar associada a uma ocorrência da entidade Compra. Pela cardinalidade máxima, podemos afirmar que várias ocorrências (um número máximo, porém não conhecido de ocorrências) da entidade Cliente podem estar relacionadas à entidade Compra.

Simplificando, podemos dizer que podem ser cadastrados clientes sem a obrigatoriedade destes terem registro de compra – também conhecida como associação opcional da entidade Cliente. Por outro lado, podemos dizer que cada compra possuirá no máximo um cliente. Como a entidade Compra depende de obrigatoriamente de uma ocorrência na entidade Cliente, dizemos que a entidade Compra é a entidade fraca, como observado na Figura 2.

 

Figura 2. Exemplo de Diagrama ER

 

Ao desenvolvermos o DER, temos uma melhor visão das relações existentes entre as entidades e desta forma facilita-se a construção do modelo lógico. Entretanto, para melhor compreendermos esta afirmação, vejamos a seguir algumas definições e características de qualquer modelo lógico de BD.

 

Modelo Lógico

O modelo lógico se preocupa em representar a estrutura dos dados e suas relações em um BD. Ele consiste em criar uma abstração da realidade do BD, enfatizando os objetos que dele pertencem, as relações entre estes objetos e os dados que serão armazenados. " [...] continue lendo...

Artigos relacionados