Conceito
Introdução
Esta pesquisa traz uma breve amostra do conceito de um Diagrama de Entidade-Relacionamento (DER), bem como sua modelagem e aplicações, bastante utilizados em Engenharia de Software. Este é um importante recurso que permite identificar entidades e seus relacionamentos, a partir de um banco de dados conceitual, cuja ferramenta gráfica é utilizada para projetar e auxiliar no tratamento de banco de dados.
Entendendo uma modelagem de dados em OOA
Antes de entender do que se trata um DER, é preciso compreender bem o que é uma Análise Orientada a Objetos (OOA) bem como a modelagem de dados. Uma OOA consiste da definição das classes (objetos) que representam o problema a ser resolvido, o modo pelo qual as classes se relacionam e interagem umas com as outras, o funcionamento interno (atributos e operações) dos objetos e os mecanismos de comunicação (mensagens) que permitem a eles trabalharem juntos. Essas relações podem ser expressas através de uma modelagem de dados, que pode ou não seguir um padrão de linguagem. Um deles é o UML (Unified Modeling Language), uma linguagem gráfica para visualização, especificação, construção e documentação de artefatos de sistemas complexos de software, iniciada pelos grandes nomes da Engenharia de Software Booch, Rumbaugh e Jacobson, hoje aprovada pela OMG (Object Management Group), organização que define padrões para aplicações orientadas a objetos.
Deste modo, um DER é um diagrama de blocos que demonstra todas as relações entre as entidades, suas especializações, seus atributos e auto-relações.
Entidades
Uma entidade é um conjunto de objetos do mundo real,ou uma classe destes, sobre os quais se deseja manter informações em um banco de dados. No diagrama é representado por um nome que designa uma classe no interior de um retângulo.
[imagem]
São exemplos de entidades em um sistema bancário: cliente, conta, agência, banco. Já em um ambiente empresarial poderíamos ter: produto, empregado, departamento, entre outros.
OBS: Uma entidade é denominada entidade fraca quando há dependência desta com outra entidade regular. É o caso de uma empresa que possui em seu banco de dados a entidade "Funcionários" bem como a entidade "Dependentes". No entanto, caso um objeto funcionário seja destituído do banco de dados, a entidade Dependentes também deverá ser, uma vez que não é de interesse mantê-la. Neste caso, utilizamos a seguinte representação:
[imagem]
São dados associados a cada ocorrência de uma entidade ou de um relacionamento. Ou seja, apresentam características de uma classe de objetos, no caso uma entidade, ou de um relacionamento, como veremos a seguir. Em diagramas, é representado por elipses.
[imagem]
Os atributos pode ser:
(a) Simples ou composto: o atributo pode ou não ser particionado;
(b) Único ou multivalorado: o atributo pode assumir um único valor ou muitos deles;
(c) Armazenado ou Derivado: o atributo pode ser fixo ou dependente de outro;
(d) NULL: pode ser não aplicável ou desconhecido
[imagem]
OBS: Um atributo é denominado atributo chave, quando este não pode se repetir, ou seja, seus valores são distintos para cada entidade. É o caso de CPF e RG, no âmbito empresarial, quando do cadastro de clientes, por exemplo. É representado por elipses hachuradas ou por seu nome sublinhado.
[imagem]
Relacionamentos
Exemplos
Referências
FALEIRO, Adail Tiago Lima. Modelo de Entidade de Relacionamento, UPIS, 2011. Disponível em http://www.devmedia.com.br/modelo-entidade-relacionamento-mer/19821 (Acesso em 21 de abril de 2015);
PRESSMAN, Reger S., Engenharia de Software, 1995;
SOMMERVILLE, Ian. Engenharia de Software, 2003;
CARDOSO, Alexandre. Universidade Federal de Uberlândia. Faculdade de Engenharia Elétrica. Disponível em http://www.alexandre.eletrica.ufu.br/esof/ (Acesso em 21 de abril de 2015);
Homepage: http://www.ct.ufpb.br/programas/complexidade/downloads/modelagem_er_aula_2.pdf (Acesso em 21 de abril de 2015)