Introdução ao Desenvolvimento de Sistemas
Janynne L. S. Gomes
AULA 4
DIAGRAMA ENTIDADE
RELACIONAMENTO
2
Introdução ao Desenvolvimento de Software
Janynne L. S. Gomes
3
Agenda
• O que é um Diagrama Entidade Relacionamento (DER)?
• Elementos do DER
– Entidades
– Atributos
• Tipos de atributos
– Relacionamentos
• Auto-relacionamento
• Grau de relacionamento
• Atributos
• Cardinalidade
3
Introdução ao Desenvolvimento de Software
Janynne L. S. Gomes
4
O que é um Diagrama Entidade
Relacionamento(DER)?
Um modelo que descreve o modelo de dados de
um sistema com alto nível de abstração.
Ele é a principal representação das dependências e
exigências estabelecidas entre as entidades do
sistema.
5
Elementos do DER
Entidade Atributo Relacionamento
Médico CRMTrabalha
6
Entidade
1. Um conjunto de objetos do mundo real sobre os quais se deseja
manter informações na base de dados.
2. É distinguível de outros objetos
3. É representada através de um retângulo
4. Pode representar:
1. Objetos concretos (uma pessoa)
2. Objetos Abstratos (uma empresa, um setor, um departamento)
Introdução ao Desenvolvimento de Software
Janynne L. S. Gomes
7
Entidade
Médico Setor Funcionário
LivroPaciente Secretária
Alguns exemplos:
8
Entidade
Conta Corrente Conta Poupança Conta Salário
AgênciaCliente
Alguns exemplos: Sistema Bancário
9
Atributo
• Propriedades (características) que descrevem entidades
• Exemplo de atributos para entidade médico:
– Nome
– CRM
– Data de nascimento
– Cidade Natal
– Apelido
10
Atributo
• Propriedades (características) que descrevem entidades
• Exemplo de atributos para entidade médico:
– Nome: José Steve da Silva
– CRM: 4887
– Data de nascimento: 01/05/1950
– Cidade Natal: Governador Valadares
– Apelido: Steve
11
Atributo Simples e Atributo Composto
• Simples: atributo que possui apenas um único valor atômico
(apenas um dado).
• Exemplo:
– Nacionalidade
– Nome
• Composto: atributo que é composto por vários dados.
• Exemplo:
– Endereço
– Data de Nascimento
12
Atributo Simples
Médico
Nome Nacionalidade CRM
13
Atributo Simples e Atributo Composto
• Simples: atributo que possui apenas um único valor atômico
(apenas um dado).
• Exemplo:
– Nacionalidade
– Nome
• Composto: atributo que é composto por vários dados.
• Exemplo:
– Endereço
– Data de Nascimento
14
Atributo Composto
Médico
EndereçoData de
Nascimento Mês
Ano
Dia
Rua
Número
CEP
Bairro
Estado
Cidade
15
Atributo Monovalorado e Atributo
Multivalorado
• Monovalorado: atributo que possui apenas um único valor.
• Exemplo:
– Local de Nascimento
– Nome
– CRM
• Multivalorado: atributo que pode possuir vários valores ao mesmo
tempo.
• Exemplo:
– Telefone
16
Atributo Monovalorado
Médico
Nome Nacionalidade CRM
17
Atributo Monovalorado e Atributo
Multivalorado
• Monovalorado: atributo que possui apenas um único valor.
• Exemplo:
– Local de Nascimento
– Nome
– CRM
• Multivalorado: atributo que pode possuir vários valores ao mesmo
tempo.
• Exemplo:
– Telefone
18
Site
Atributo Multivalorado
Médico
Telefone E-mail SiteE-mailTelefone
19
Atributo Armazenado e Atributo Derivado
• Armazenado: atributo que o valor é apenas armazenado, não
possui regra de cálculo para ser obtido.
• Exemplo:
– Local de Nascimento
– Nome
– CRM
• Derivado: atributo que pode ser obtido através de cálculo de
demais valores armazenados e valores externos.
• Exemplo:
– Idade é obtida a partir do cálculo de subtração do ANO da data
atual, pelo ANO da Data de Nascimento.
20
Atributo Identificador (chave)
• Atributo (ou combinação de atributos) que
identifica univocamente uma instância de
entidade
• Uma entidade pode ter mais de uma chave
21
Atributo Identificador (chave)
Médico
Nome Nacionalidade CRM
22
Relacionamento
• Relacionamento é uma associação entre
entidades
• Cada tipo entidade que participa de um tipo
relacionamento executa um papel no
relacionamento.
• Papéis não são necessários em relacionamentos
cujas entidades associadas sejam distintas.
23
Relacionamento
Médico Atende Paciente
Papel: médico Papel: paciente
24
Auto-relacionamento
• Relacionamento entre instâncias da mesma entidade.
• Instâncias participam com papéis diferentes.
Funcionário SupervisionaGerente
Secretária
25
Médico
Relacionamento
Paciente
Camila Cavalcanti
Tânia Fernandes
Eduarda Carvalho
Nicole Oliveira
Dr. Joel Garcia
Dra. Giovanna
Consulta
Consulta
Consulta
26
Relacionamento
Médico Atende Paciente
Papel: médico Papel: paciente
27
Grau de Relacionamento
O grau de um relacionamento é o número de
entidades participantes.
• Unários
• Binários
• Ternários
28
Relacionamento Unário
Funcionário SupervisionaGerente
Secretária
Possui apenas uma entidade
29
Relacionamento Binário
Médico Atende Paciente
Possui apenas duas entidades
30
Relacionamento Ternário
Médico Examina Paciente
Possui três entidades
Exame
31
Multiplos Relacionamentos
Médico
Examina
Paciente
Possui três entidades
Exame
Consulta
32
Atributo de Relacionamento
• Características específicas do relacionamento.
• São informações que precisam ser armazenadas sobre a associação.
Médico Atende Paciente
Data
Data Medicação
33
Médico
Atributo de Relacionamento
Paciente
Camila Cavalcanti
Tânia Fernandes
Eduarda Carvalho
Nicole Oliveira
Dr. Joel Garcia
Dra. Giovanna
Consulta
Consulta
Consulta
34
Médico
Atributo de Relacionamento
Paciente
Camila Cavalcanti
Tânia Fernandes
Eduarda Carvalho
Nicole Oliveira
Dr. Joel Garcia
Dra. Giovanna
Consulta
Consulta
Consulta
Data: 22/10/2014Horário: 13:00Convênio: UnimedDiagnóstico: ResfriadoMedicação prescrita: Resfedryl, tomar a cada 4 horas um comprimido.
35
Cardinalidade
Especifica o número máximo de vezes em que a
entidade pode participar do relacionamento:
• um-para-um (1:1)
• um-para-muitos (1:N) ou muitos-para-um (N:1)
• muitos-para-muitos (N:M)
36
Um para um (1:1)
Empregado Gerencia Setor1 1
Cada setor da empresa possui apenas 1 gerente, portanto, somente um
empregado pode se relacionar com o Setor como Gerente.
37
Um para muitos (1:N) ou
Muitos para um (N:1)
Empregado Trabalha SetorN 1
Cada empregado pode trabalhar em apenas um setor da empresa, mas um
mesmo setor pode ter vários funcionários
38
Muitos para muitos (N:M)
Empregado Desenvolve ProjetoN M
Cada empregado pode desenvolver vários projetos na empresa, e um
mesmo projeto pode ter vários empregados desenvolvendo.
39
Praticando...
Cenário: Locadora
Uma pequena locadora de vídeos possui cerca de 2.000 DVDs, cujo
empréstimo deve ser controlado. Cada DVD possui um número. Para
cada filme, é necessário saber seu título e sua categoria (comédia,
drama, aventura, …).
Cada filme recebe um identificador próprio. Para cada DVD é
controlado que filme ele contém. Para cada filme há pelo menos um
DVD. Alguns poucos filmes necessitam de mais de um DVD.
40
Praticando...
Cenário: Locadora
Os clientes podem desejar encontrar os filmes estrelados pelo seu ator
predileto. Por isso, é necessário manter a informação dos atores que
atuam em cada filme. Os clientes, às vezes, desejam receber referências
de determinado ator, tais como o nome real, a data de nascimento, etc.
A locadora possui muitos clientes cadastrados. Somente clientes
cadastrados podem alugar DVDs. Para cada cliente é necessário saber
seu pré-nome e seu sobrenome, seu telefone e seu endereço. Além
disso, cada cliente recebe um número de associado.
41
Praticando...
Cenário: Locadora
Finalmente, desejamos saber quais DVDs estão locados por um dado
cliente. Um cliente pode locar vários DVDs ao mesmo tempo. Não são
mantidos registros históricos de aluguéis.
42
Praticando...
• Passos para resolver o exercício
– Identificar as entidades
– Identificar se precisa agrupar as entidades por tipo
– Identificar os atributos das entidades
– Identificar os relacionamentos entre as entidades
– Identificar os atributos dos relacionamentos
43
Praticando...
Cenário: Empresa de construção civil
Uma grande empresa de engenharia civil deseja informatizar a gerência
de seus projetos de construção de imóveis.
Cada projeto é contratado por um ou mais clientes e possui um nome,
uma data de início de fim, uma categoria de imóvel (se é apartamento,
casa, flat, loja), um endereço da construção, um gerente do projetos e
várias fases.
O endereço possui logradouro, numero, complemento, CEP, bairro,
cidade, estado, país.
44
Praticando...
Cenário: Empresa de construção civil
Cada fase possui um nome, uma data de início, uma data de fim, uma
ou mais equipes de funcionários.
Para cada equipe de funcionários é necessário ter pelo menos um
engenheiro civil, pelo menos um engenheiro eletricista, pelo menos um
arquiteto, pelo menos um pedreiro e pelo menos 3 ajudantes de
pedreiro.
Cada funcionário possui um nome, cpf, data de nascimento, RG e
trabalha em vários projetos.
45
Praticando...
Cenário: Empresa de construção civil
Cada fase é composta de várias tarefas a serem executadas. Cada tarefa
possui apenas um reponsável, uma data de início, uma data de fim, um
status e um campo para guardar observaçoes sobre a execução da
tarefa.
Cada cliente possui um nome, cpf, um ou mais endereços, um ou mais
telefones. Um cliente pode contratar vários projetos ao mesmo tempo.
46
Praticando...
Cenário: Empresa de construção civil
O gerente poderá acompanhar o status dos projetos através do
agrupamento das atividades pelo status e data de conclusão.
O gerente ainda poderá saber em qua atividade cada funcionário está
alocado no momento.
47
Referências
• http://pt.wikipedia.org/wiki/Diagrama_entidade_relacionamento
• http://www.ic.unicamp.br/~beatriz/cursos/mc536/slides/MER-p-
pagina.pdf
48
Disciplina: Introdução ao Desenvolvimento de Sistemas
Professora: Janynne L. S. Gomes
Contato: [email protected]
www.eteit.univale.br
Top Related