banco de dados i – bd i prof. lineu mialaret aula 6: modelo entidade relacionamento (3)
DESCRIPTION
Instituto Federal de Educação, Ciência e Tecnologia de São Paulo - IFSP Campus de Caraguatatuba Tecnólogo em Análise e Desenvolvimento de Sistemas 1 0 Semestre de 2013. Banco de Dados I – BD I Prof. Lineu Mialaret Aula 6: Modelo Entidade Relacionamento (3). Elementos do MER. - PowerPoint PPT PresentationTRANSCRIPT
©Prof. Lineu MialaretAula 6 - 1Banco de Dados I
Banco de Dados I – BD I Prof. Lineu Mialaret
Aula 6: Modelo Entidade Relacionamento (3)
Instituto Federal de Educação, Ciência e Tecnologia de São Paulo - IFSP
Campus de Caraguatatuba
Tecnólogo em Análise e Desenvolvimento de Sistemas
10 Semestre de 2013
©Prof. Lineu MialaretAula 6 - 2Banco de Dados I
Elementos do MER Um Modelo Entidade Relacionamento - MER consiste dos
seguintes elementos: Diagramas,
Os quais contém Entidades (Supertipos e Subtipos, por exemplo), Atributos, Relacionamentos; e
Informações Complementares não Diagramáticas (Dicionário de Dados), As quais representam descrições das Entidades e dos Atributos,
Formatos, Valores Admissíveis, Domínios, e Regras de Negócio.
©Prof. Lineu MialaretAula 6 - 3Banco de Dados I
Identificando e Modelando as Entidades
Os passos descritos abaixo ajudam a identificar e modelar entidades, a partir de anotações de uma entrevista ou outra documentação qualquer (ou supondo que tenha sido realizada a Etapa de Especificação e produzido também o Modelo Funcional): Examinar cada substantivo do contexto.
Quais são os substantivos significativos para o domínio de negócio?
Nomear (dar nomes significativos) as entidades descobertas e identificar alguns de seus atributos, bem como os componentes que farão parte de chaves.
Essas entidades relacionam-se com outras?
Quais são esses esses relacionamentos e suas cardinalidades?
Eles possuem atributos?
©Prof. Lineu MialaretAula 6 - 4Banco de Dados I
Exemplo de Modelagem (Chen) V 1.0
Uma locadora de veículos tem uma agência, a qual possui
vários automóveis usados para alugar. Os automóveis são
classificados pelo seu porte (pequeno, médio e grande) e
têm um preço do aluguel (R$/dia) definido pelo porte. A
locadora precisa armazenar os dados de seus veículos e
movimentações financeiras, bem como seus clientes
devem ter sua informações (nome, CPF, endereço e
telefone) disponibilizadas de forma permanente.
©Prof. Lineu MialaretAula 6 - 5Banco de Dados I
1- Identificar Entidades
Agencia
Cliente
Automovel
©Prof. Lineu MialaretAula 6 - 6Banco de Dados I
2 - Identificar Atributos
Agencia
Cliente
Automovel
Porte
codigo nome endereco
cpf endereco telefone
codigo nome
placamarca
tipo preco
©Prof. Lineu MialaretAula 6 - 7Banco de Dados I
Agencia
Cliente
Automovel
Porte
codigo nome endereco
cpf endereco telefone
codigo nome
placamarca
tipo preco
3 - Identificar Chaves
©Prof. Lineu MialaretAula 6 - 8Banco de Dados I
Agencia
Cliente
Automovel
Porte
codigo nome endereco
cpf endereco telefone
codigo
nome
placamarca
tipo preco
tem
tem
alugapossui
4 - Identificar Relacionamentos
©Prof. Lineu MialaretAula 6 - 9Banco de Dados I
Agencia
Cliente
Automovel
Porte
codigo nome endereco
cpf endereco telefone
codigo
nome
placamarca
tipo preco
tem
tem
alugapossui
5 - Identificar Cardinalidades
©Prof. Lineu MialaretAula 6 - 10Banco de Dados I
Agencia
Cliente
Automovel
Porte
codigo nome endereco
cpf endereco telefone
codigo
nome
placamarca
tipo preco
tem
tem
alugapossui
data_inicio data_fim
valor_pago
6 - Identificar Atributos de Relacionamentos
©Prof. Lineu MialaretAula 6 - 11Banco de Dados I
Um hospital emprega vários médicos e enfermeiras. Cada
médico é auxiliado por uma ou mais enfermeiras, e ele
atende um ou mais pacientes no seu turno de trabalho.
Para cada paciente atendido, o médico receita um
tratamento, que pode ou não utilizar medicamentos.
Exercício 1 - Contexto de Negócio
©Prof. Lineu MialaretAula 6 - 12Banco de Dados I
Uma empresa de treinamento oferece vários cursos na
área de informática. Cada curso tem código, nome e
preço. Os cursos têm a duração de uma, duas ou três
semanas. Um professor pode lecionar em vários cursos.
Cada curso é ministrado por apenas um professor. Um
aluno pode matricular-se em vários cursos. A empresa
precisa registrar nome e telefone de cada aluno e de
cada professor.
Exercício 2 - Contexto de Negócio
©Prof. Lineu MialaretAula 6 - 13Banco de Dados I
Exercício 3 - Contexto de Negócio
“Eu sou o Diretor de Recursos Humanos de uma grande Empresa. Precisamos manter informações sobre os nossos empregados tais como: nome, cargo, data de admissão e salário.
Alguns dos Empregados são Gerentes. Freqüentemente precisamos saber qual é o Gerente de determinado Empregado e quais Empregados estão sob responsabilidade de determinado Gerente.
A Empresa é dividida em Departamentos. Cada Empregado é designado para um dos Departamentos. Precisamos saber a localização desse Departamento.”
©Prof. Lineu MialaretAula 6 - 14Banco de Dados I
“Nossa empresa vende produtos para todo o país. Ela está dividida em em quatro regiões de vendas: Norte, Sul, Leste e Oeste. Cada região é dividida por sua vez em distritos.
Cada distrito é segmentado em territórios e cada território está separado em áreas de vendas.
Nós temos vendedores que são responsáveis por uma ou mais áreas e possuem uma cota de venda específica.
Também temos gerentes que são responsáveis por um ou mais distritos e pelos territórios dentro deles. Diretores de vendas são responsáveis por uma ou mais regiões. ”
Exercício 4 - Contexto de Negócio
©Prof. Lineu MialaretAula 6 - 15Banco de Dados I
“Nossa empresa aluga pequenos caminhões e utilitários. Nós possuímos 347 escritórios em todo o território nacional e a nossa frota é de 5.780 veículos. Cada escritório tem um nome próprio e um código numérico com 3 dígitos. Cada escritório pode possuir vários veículos sob sua responsabilidade, mas cada veículo deve pertencer a apenas um único escritório.
A empresa trabalha com cinco tipos diferentes de veículos: caminhões pequenos, médios e grandes, e utilitários cabine simples e dupla. Cada tipo possui código próprio. Nós precisamos manter informações sobre a data da última manutenção e a data do vencimento do registro para todos os veículos.
Para os caminhões precisamos saber ainda a leitura do hodômetro, a capacidade do tanque e se possui rádio ou não. Nossa empresa aluga veículos para pessoas físicas ou para outras empresas e para cada veículo alugado é efetuado um contrato.
Das empresas locatárias precisamos armazenar apenas o nome e o endereço. Das pessoas físicas precisamos armazenar o nome, endereço, telefone e o número da habilitação.
Cada contrato de aluguel é identificado pelo número do escritório de origem mais um número de identificação do contrato. Nós precisamos armazenar também a data do aluguel, a duração provável, o escritório de retirada, o escritório para entrega, o depósito efetuado e as taxas diárias e por quilômetro.”
Exercício 5 - Contexto de Negócio
©Prof. Lineu MialaretAula 6 - 16Banco de Dados I
“Hospitais são formados por um ou mais Ambulatórios e cada um destes está em um único Hospital. Médicos clinicam em um único Hospital, cada um deles agregando vários Médicos. Hospitais solicitam exames clínicos em vários Laboratórios, e cada um destes pode ter solicitações de vários Hospitais. Pacientes consultam vários Médicos, e estes são consultados por vários Pacientes. Ambulatórios atendem vários Pacientes, enquanto que estes só podem ser atendidos em um único Ambulatório. Pessoal de apoio está alocado a cada Ambulatório, e cada um destes conta com vários integrantes do Pessoal de apoio. Pacientes realizam vários Exames, e cada Exame é realizado por um único Paciente. Laboratórios fazem vários Exames, e cada um dos Exames é feito em um único Laboratório. Cada Paciente pode receber vários Diagnósticos, e cada Diagnóstico é de um único Paciente.”
Exercício 6 - Contexto de Negócio
©Prof. Lineu MialaretAula 6 - 17Banco de Dados I
“Uma companhia é organizada em departamentos e cada um destes tem um nome, um número e um empregado que o gerencia. Deseja-se armazenar a data na qual o empregado começou a gerenciar o departamento.
Um departamento pode estar em vários locais. Um departamento controla uma quantidade de projetos, os quais possuem número, nome e um único local.
Um empregado é caracterizado por um número de matrícula, nome, sexo e salário. Ele está associado a um departamento mas pode trabalhar em vários projetos que não necessariamente são controlados pelo mesmo departamento.
Deseja-se armazenar o número de horas que um empregado trabalha em um projeto e o supervisor direto de cada empregado.
Cada empregado possui dependentes caracterizados por nome, data de nascimento e grau de parentesco.”
Exercício 7 - Contexto de Negócio
©Prof. Lineu MialaretAula 6 - 18Banco de Dados I
“Considere um pequeno aeroporto privado. Cada avião tem um número de registro, é de um tipo de avião específico e é armazenado em um hangar particular. Cada tipo de avião tem um número de modelo, uma capacidade e um peso.
Cada hangar tem um número, uma capacidade de armazenamento e uma localização. O Banco de Dados do aeroporto também deve manter informações sobre os proprietários de cada avião e sobre os empregados que realizam manutenção no mesmo. Cada avião pode pertencer a um grupo de empresas, enquanto que cada empresa pode ter mais de um avião. Além disso, deseja-se armazenar a data de aquisição do mesmo pelas empresas proprietárias.
Cada uma destas empresas é caracterizada pelo CNPJ, nome, endereço e telefone. Cada empregado pode realizar vários serviços de manutenção, os quais podem ser feitos por vários empregados. Um avião pode passar por vários serviços de manutenção e cada um destes serviços é caracterizado pela data da manutenção, número de horas trabalhadas, tipo do serviço feito e finalmente, o número do avião é também usado na identificação de cada serviço.
Exercício 8 - Contexto de Negócio (1)
©Prof. Lineu MialaretAula 6 - 19Banco de Dados I
Cada piloto tem atributos específicos, como o número da licença e o conjunto de restrições de vôo. Cada empregado tem atributos próprios, como salário, função e data de início no emprego. Todas as pessoas cujas informações são armazenadas têm um CPF, nome, endereço e telefone.
A base de dados do aeroporto também mantém informações sobre os aviões que cada piloto pilota e os tipos de aviões que cada empregado pode realizar manutenção.
Cada avião pode ser pilotado por vários pilotos e cada piloto pode pilotar vários aviões. Sempre que um vôo é (ou está para ser) realizado, comunicações são feitas com várias torres de comando. Cada torre de comando possui um código e uma localização.
Cada empregado pode trabalhar na manutenção de vários tipos de avião e cada modelo de avião pode precisar de vários empregados trabalhando na sua manutenção.”
Exercício 8 - Contexto de Negócio (2)
©Prof. Lineu MialaretAula 6 - 20Banco de Dados I
“Considere o seguinte sistema de gerenciamento imobiliário simplificado, que visa manter informações sobre clientes, proprietários dos imóveis, contratos de aluguel, funcionários e agências, o qual deve atender os seguintes requisitos de dados persistentes:
1) Cada cliente possui CPF, nome, endereço e uma lista de telefones para contato.
2) Cada cliente é atendido por um único funcionário, o qual é caracterizado pelo número da carteira profissional, nome, endereço, telefone, função e salário.
3) Cada funcionário possui um único supervisor e trabalha em uma única agência. Cada agência tem um código, uma descrição e um funcionário que a gerencia.
4) Deve-se armazenar a data na qual o funcionário começou a gerenciar a agência. Além disso, cada gerente pode gerenciar apenas uma única agência.
5) Um cliente tem uma ou mais preferências por um ou mais tipos de imóveis, onde cada preferência é caracterizada pelo código do cliente, tipo e valor máximo de aluguel.
Exercício 9 - Contexto de Negócio (1)
©Prof. Lineu MialaretAula 6 - 21Banco de Dados I
6) Um cliente pode estar associado a vários contratos de aluguel, os quais possuem número, período e valor. Mas cada contrato refere-se a um único cliente.
7) Cada contrato diz respeito a um único imóvel, o qual possui um código, localização, tipo e valor solicitado pelo proprietário. Além disso, cada imóvel possui um único proprietário, que tem CPF, nome e telefones.
8) Um imóvel disponível para negociação pode ser divulgado em vários jornais, os quais possuem um código e um nome. Deve-se armazenar a data e o custo da divulgação de cada imóvel feito por cada jornal.”
Exercício 9 - Contexto de Negócio (2)