DB2 - Banco de dados - Modelo Entidade e Relacionamentos - www.cadcobol.com.br



Desenvolvido por DORNELLES Carlos Alberto - Analista de Sistemas - Brasília DF. - cad_cobol@hotmail.com

Modelo Entidade e Relacionamentos

INTRODUÇÃO

O Modelo Entidade-Relacionamento (modelo relacional) foi definido por Peter Chen em 1976, e teve como base a teoria relacional criada por E.F.Cood (1970).

Segundo Chen, a visão de uma dada realidade, baseia-se no relacionamento entre conceitos desta realidade, os quais retratam os fatos que governam esta mesma realidade, e que cada conceito (entidade ou relacionamento) pode possuir atributos (qualificadores desta realidade).

O conceito de abstração permite ao analista separar da realidade em estudo, as partes que são realmente relevantes para o desenvolvimento do sistema de informações e excluir da modelagem todos os aspectos que não exercem influência sobre o ambiente a ser modelado.

O objetivo da modelagem de dados é possibilitar a apresentação de uma visão única não redundante e resumida dos dados de um problema.
Também nos ajuda a entender a estrutura e o significado destes dados.

No desenvolvimento de aplicações em banco de dados, o Modelo Entidade Relacionamento (E-R) é o mais largamente utilizado para a representação e entendimento dos dados que compôem a essência de um problema.

A Modelagem de Dados é amplamente utilizada como meio de conhecer os problemas organizacionais e projetar soluções.

EXEMPLOS DAS NOTAÇÕES MAIS CONHECIDAS NO MODELO ENTIDADE RELACIONAMENTO


MODELO CONCEITUAL

Ao se utilizar Modelagem Conceitual de dados com a técnica de Entidade e Relacionamentos, obteremos resultados e esquemas puramente conceituais sobre a essência de um problema ou negócio para o qual estamos desenvolvendo um projeto, não representando-se procedimentos ou fluxo de dados existentes.

Chen dedicou-se a destacar a importância de reconhecer os objetos que compõem um problema ou negócio, independentemente de preocupar-se com formas de tratamento das informações, procedimentos, programas, etc.

Estes objetos que desejamos conhecer e modelar para um sistema, Chen classificou em dois grupos : Entidades e Relacionamentos.

A Modelagem acontece em 3 fases:

  1. Listar os Requisitos de Informação - levantamento de informações junto ao cliente.
  2. Construir modelos para cada elemento
  3. Escolha da tecnologia a ser utilizada - converter os modelos em sistemas

Ou seja a Modelagem Conceitual de Dados se caracteriza por ser Independente de tipo de SGBD e Programas a serem desenvolvidos.
Ou seja, nesta fase, não nos preocupamos muito em como será feita a implementação dos programas, serviços web, componentes ou páginas do sistema.

O modelo Entidade Relacionamento propõe que a realidade seja visualizada sob três pontos de vista:

  1. Os objetos que compõe a realidade
  2. os tipos de informação ou características que se deseja conhecer sobre os objetos que compõem a realidade e
  3. a forma como estes objetos se relacionam entre si.

Desta forma, o Modelo Entidade-Relacionamento é composto por três conceitos: Entidade, Atributo e Relacionamento.
Para representação destes conceitos, existe o Diagrama Entidade Relacionamento.

DIAGRAMA ENTIDADE RELACIONAMENTO

  • Técnica mais difundida de modelagem conceitual
    • Abordagem entidade-relacionamento (ER)
      • É um diagrama que descreve as entidade e relacionamentos entre as entidades em um modelo de dados.
  • O Modelo conceitual é representado através de diagrama entidade-relacionamento
    • Entidade
      • Define-se entidade como aquele objeto que existe no mundo real com uma identificação distinta e com um significado próprio.
  • Representação de uma entidade.

Propriedades de entidades

  • Entidade isoladamente não informa nada
  • É necessário atribuir propriedades às entidades
  • Propriedades especificadas na forma de: relacionamentos, atributos e generalizações/especializações

ATRIBUTO

É uma caracteristica ou qualidade de uma entidade que tem valor para o negócio, que deve ser observada pelo usuario.

Exemplo:
Em um cadastro de clientes de uma empresa, podemos encontrar os seguintes atributos de cliente:

cpf, nome, endereço, cidade, bairro, estado, cep.

A definição dos atributos geralmente acontece durante várias discussões com o cliente.
Todo atributo que pode vir a ser necessário em alguma tomada de decisão, no presente ou no futuro, deve ser incluído.

Mas cuidado... evite armazenar dados desnecessários.

Os atributos podem ser classificados de várias formas dependendo do tipo de informação que representam, obrigatoriedade de preenchimento do atributo, e composição do atributo.

Atributo Monovalorado

Assume um único valor para cada elemento do conjunto x entidade
Exemplo: Nome

Atributo Composto

Formado por um ou mais sub-atributos.
Quando nos deparamos com uma situação dessas, temos que analisar se deveremos fragmentar este atributos em sub-atributos.
Exemplo: Endereço (composto de rua, número, complemento,bairro,cep)

Atributo Multivalorado

Uuma única entidade tem diversos valores para este atributo (seu nome é sempre representado no plural)
Exemplo: Dependentes

Atributo Determinante

Identifica cada entidade de um conjunto-entidade (também conhecido com atributo chave)
Exemplo: Cod_Func

Domínio de um Atributo

Conjunto de valores permitidos para o atributo.
Exemplo: Sexo {M, F}, Estado Civil ( C, S, D )

Atributo Obrigatório e Opcional

  • Alguns atributos de uma entidade são obrigatórios outros são opcionais.
  • Nome é obrigatório pois toda pessoa deve ter um nome.
  • Telefone é opcional pois nem toda pessoa possui um telefone.
  • Para chegarmos a essa conclusão, temos que fazer uma análise minunciosa
  • de campo a campo da(s) entidade(s) que estamos criando.

Então podemos fazer as seguintes definições:

Atributo obrigatório
É aquele que para uma instância de uma entidade ou relacionamento deve possuir um valor. (NOT NULL)

Atributo opcional
É aquele que para uma instância da entidade ou relacionamento pode possuir um valor.
É o que chamamos de valor nulo. (NULL)

Como escolher o nome, tipo de dado e tamanho de um atributo?

Os nomes dos atributos devem sempre ser significativos e descrever claramente o tipo de informação que o atributo representa.

O tipo de dado de um atributo depende da informação que deseja ser armazenada no atributo.
O tipo de dado se for armazenar um dado que não fará parte de cálculos, um nome por exemplo, o tipo pode ser texto, se for armazenar valores numéricos que farão parte de cálculos o tipo será numérico(inteiro,simples...), se for armazenar datas o tipo será data e assim por diante.

O tamanho do atributo define a quantidade de informação que você pode armazenar, assim:
para um campo do tipo texto com tamanho 30 você poderá armazenar textos com no máximo 30 caracteres,
um campo numérico de tamanho 2 armazena números com até dois dígitos.

Tipos de dados:

Número

  • Smallint - Valor Inteiro de 15 bits com sinal

  • integer - Valor Inteiro de 31 bits com sinal

  • float(p) - formato científico com precisão

  • decimal(p,q) - formato decimal

Texto

  • char(n) - Cadeia de tamanho fixo de n caracteres

  • varchar(n) - cadeia de tamanho variável de n caracteres

  • long varchar - cadeia de caracteres de tamanho variável

Data/Hora

  • Date

  • time

  • timestamp

Dicas para identificação de Entidades, Relacionamentos e Atributos.

  • Dado um texto descrevendo o banco de dados a ser projetado:
    • A presença de um substantivo usualmente indica uma entidade,
    • Um adjetivo, que é uma qualidade, é uma forte indicação de um atributo,
    • Um advérbio temporal, qualificando o verbo, é uma indicação de um atributo do relacionamento.




© Copyright Professor Fernando De Siqueira - Banco de Dados I