You are on page 1of 7

BD-I - Prof.

Guilherme Tavares de Assis

BD-I - Prof. Guilherme Tavares de Assis

Fases do Projeto de um Banco de Dados

Modelo ER
O Modelo de Entidades e Relacionamentos (MER) um modelo conceitual usado para projeto de aplicaes de banco de dados. um modelo baseado na percepo do mundo real como conjuntos de objetos bsicos chamados entidades e nos relacionamentos entre esses objetos. independente de aspectos de implementao.

BD-I - Prof. Guilherme Tavares de Assis

BD-I - Prof. Guilherme Tavares de Assis

Exemplo de Aplicao de Banco de Dados


Deseja-se criar um BD "Empresa" que controla empregados, departamentos e projetos de uma empresa. Aps a fase de coleta e anlise dos requisitos, os projetistas declararam a seguinte descrio do "mini-mundo":
A empresa organizada em departamentos. Cada departamento possui um nome nico, um cdigo nico e um determinado empregado que gerencia o departamento. Acompanha-se a data inicial que o empregado comeou a gerenciar o departamento. Um departamento pode possuir diversas localizaes. Um departamento controla um nmero de projetos onde cada um deles possui um nome nico, um cdigo nico e uma localizao nica.
3

Exemplo de Aplicao de Banco de Dados


Armazenam-se o nome, o nmero da seguridade social, o endereo, o salrio, o sexo e a data de nascimento de cada empregado. Um empregado alocado a um nico departamento, mas pode trabalhar em diversos projetos, que no so necessariamente controlados pelo mesmo departamento. Acompanha-se o nmero de horas por semana que um empregado trabalha em cada projeto. Tambm acompanha-se o supervisor direto de cada empregado. Acompanham-se os dependentes de cada empregado para fins de seguridade social. So mantidos, para cada dependente, o nome, o sexo, a data de nascimento e o grau de parentesco com o empregado.

BD-I - Prof. Guilherme Tavares de Assis

BD-I - Prof. Guilherme Tavares de Assis

Entidade
Entidade um objeto que existe no mundo real e distinguvel dos outros objetos. Exemplos:
O empregado Joo da Silva com o CPF 890.123.456 O estudante Jos Carlos Albuquerque com matrcula 2.034

Tipo de Entidade define uma coleo de entidades que possuem os mesmos atributos. Descreve o esquema para um conjunto de entidades. Conjunto de Entidades uma coleo das instncias de entidades de um determinado tipo de entidade. Empregado
Exemplo: o conjunto de todos os empregados pode ser definido como um conjunto de entidades Empregado.
e1 e2 e3

BD-I - Prof. Guilherme Tavares de Assis

BD-I - Prof. Guilherme Tavares de Assis

Atributo
Atributo uma propriedade que descreve uma caracterstica particular de uma entidade.
Ex.: uma entidade Empregado tem os atributos nome, CPF, endereo, salrio, sexo e data de nascimento com os valores "Joo da Silva", "890.123.456" , "Contorno, 1900, Centro", R$ 1.500,00, "M" e 20/10/1970, respectivamente.

Atributo
Mono-valorados ou Multi-valorados: os atributos monovalorados tm um nico valor para uma entidade particular e os atributos multi-valorados podem ter um conjunto de valores.
Ex.: o atributo nome da entidade Departamento um atributo mono-valorado e o atributo localizaes multi-valorado (um departamento pode estar localizado em mais de lugar).

Os atributos podem ser dos seguintes tipos:


Simples (atmicos) ou Compostos: os atributos simples so indivisveis e os atributos compostos podem ser divididos em subpartes menores.
Ex.: o atributo nome da entidade Empregado pode ser dividido em primeiro nome e sobrenome. Assim, nome um atributo composto. O atributo salrio simples.
7

Armazenados ou Derivados: os atributos derivados podem ser obtidos a partir dos atributos armazenados (e portanto no precisam ser armazenados no banco de dados).
Ex.: o atributo no_de_empregados da entidade Departamento pode ser calculado atravs do relacionamento trabalha_para com a entidade Empregado. Um atributo idade pode ser calculado a partir de um atributo data de nascimento.
8

BD-I - Prof. Guilherme Tavares de Assis

BD-I - Prof. Guilherme Tavares de Assis

Atributo
Atributos complexos: os atributos podem ser compostos e multi-valorados ao mesmo tempo.
Exemplo: um atributo endereo de uma entidade Pessoa pode ser composto por rua, numero, complemento, cidade, estado e cep. Uma mesma pessoa pode ter mais de um endereo (comercial e residencial).

Atributo
Cada atributo de um tipo de entidade est associado com um conjunto de valores (ou domnio de valores), o qual especifica os valores que podem ser atribudos quele atributo para cada instncia de entidade.
Exemplo:
O conjunto de valores para o atributo nome de Empregado pode ser definido como uma cadeia de caracteres. Se o intervalo de salrios permitidos para os empregados est entre 700,00 e 7.000,00 reais, ento o conjunto de valores para o atributo salrio de Empregado deve ser um nmero real entre 700 e 7.000.

Valores nulos: uma entidade pode no ter valor aplicado a um atributo. Neste caso, usado o valor especial nulo. tambm usado quando no se conhece o valor de um atributo.
Exemplo: um atributo apartamento do endereo de uma entidade empregado ser nulo se ele morar em uma casa.
9

10

BD-I - Prof. Guilherme Tavares de Assis

BD-I - Prof. Guilherme Tavares de Assis

Chave
Atributo Chave (identificador): um atributo cujos valores so distintos (nicos) para cada instncia de entidade de um mesmo tipo de entidade.
A chave pode ser formada por mais de um atributo (chave composta). Neste caso, a combinao dos valores desses atributos que nica para cada instncia de entidade. Exemplos:
O atributo seguridade_social do tipo de entidade Empregado. Os atributos seguridade_social_empregado + nome_dependente do tipo de entidade Dependente.

Chave
Superchave qualquer conjunto de um ou mais atributos cujos valores so distintos para cada instncia de entidade.
Exemplos:
O atributo seguridade_social do tipo de entidade Empregado uma superchave. Os atributos seguridade_social + nome tambm uma superchave do tipo de entidade Empregado. Os atributos seguridade_social + nome + salario tambm uma superchave do tipo de entidade Empregado.

11

12

BD-I - Prof. Guilherme Tavares de Assis

BD-I - Prof. Guilherme Tavares de Assis

Chave
Chave Candidata uma superchave que no possui subconjuntos prprios de superchaves, ou seja, uma superchave com um conjunto mnimo de atributos.
Exemplos:
No exemplo anterior, apenas o atributo seguridade_social uma chave candidata para o tipo de entidade Empregado. Para o tipo de entidade Departamento, tanto o atributo cdigo quanto o atributo nome do departamento so chaves candidatas.

Chave
Chave Primria a chave candidata escolhida arbitrariamente pelo projetista do banco de dados como meio principal de identificao de entidades para o tipo de entidade em questo.
As demais chaves candidatas so chamadas de chaves alternativas ou chaves secundrias. Exemplo:
Para o tipo de entidade Departamento, o atributo cdigo poderia ser escolhido para ser a chave primria; neste caso, o atributo nome seria uma chave alternativa ou secundria.

13

14

BD-I - Prof. Guilherme Tavares de Assis

BD-I - Prof. Guilherme Tavares de Assis

Projeto Conceitual inicial do BD Empresa


De acordo com a descrio do "mini-mundo" da empresa, identifica-se os seguintes tipos de entidade:
Departamento com os atributos nome, cdigo, localizaes, gerente, data_incio_gerncia. Localizaes o nico atributo multivalorado. Pode-se especificar que tanto nome quanto cdigo so atributos chaves (separados), porque cada um foi especificado para ser nico. Projeto com os atributos nome, cdigo, localizao e departamento_controlador. Tanto o nome quanto o cdigo so atributos chaves (separados).

Projeto Conceitual inicial do BD Empresa


Empregado com os atributos nome, seguridade_social (carteira profissional), sexo, endereo, salrio, data_nascimento, departamento, supervisor. Tanto o nome quanto o endereo podem ser atributos compostos (no foi especificado). O fato de que um empregado pode trabalhar em vrios projetos, um certo nmero de horas por semana para cada projeto, pode ser representado pelo atributo composto multi-valorado trabalha_em com os componentes (projeto, horas). Dependente com os atributos empregado, nome_dependente, sexo, data_nascimento, parentesco (com o empregado).

15

16

BD-I - Prof. Guilherme Tavares de Assis

BD-I - Prof. Guilherme Tavares de Assis

Relacionamento
Relacionamento uma associao entre entidades que representa um fato do mundo real. Tipo de Relacionamento R sobre n tipos de entidade E1, E2, ..., En define um conjunto de associaes entre entidades destes tipos.
Exemplo:
O tipo de relacionamento trabalha_para entre os tipos de entidade Empregado e Departamento associa cada empregado com o departamento para o qual ele trabalha.

Relacionamento
Grau de um tipo de relacionamento o nmero de tipos de entidades participantes.
Exemplos:
Grau 2 (binrio): o tipo de relacionamento trabalha_para. Grau 3 (ternrio): o tipo de relacionamento entre fornecedor, pea e projeto, onde fornecedores fornecem peas para os projetos.

Tipos de relacionamento podem ter atributos, similares queles dos tipos de entidade.
Exemplo:
Atributo horas do tipo de relacionamento trabalha_em entre Empregado e Projeto, que indica o nmero de horas por semana que um empregado trabalha em um projeto.

17

18

BD-I - Prof. Guilherme Tavares de Assis

BD-I - Prof. Guilherme Tavares de Assis

Relacionamento
Tipo de relacionamento recursivo ocorre quando o mesmo tipo de entidade participa mais de uma vez em um tipo de relacionamento desempenhando diferentes papis.
Exemplo:
Tipo de relacionamento superviso entre dois tipos de entidade Empregado, indicando que um determinado empregado supervisiona outros empregados. Neste caso, devese dar nome aos papis de cada um dos lados do tipo de relacionamento (um empregado participa do relacionamento no papel de supervisor ou de supervisionado).

Restrio de Cardinalidade
Restrio de cardinalidade especifica o nmero de instncias de um relacionamento que uma instncia de entidade pode participar. Para um tipo de relacionamento binrio R entre os tipos de entidade A e B, tem-se as relaes de cardinalidade:
1:1 (um-pra-um): uma entidade de A est associada a, no mximo, uma entidade de B, e uma entidade de B est associada a, no mximo, uma entidade de A. 1:N (um-pra-muitos) - uma entidade de A est associada a vrias (zero ou mais) entidades de B, mas uma entidade de B est associada a, no mximo, uma entidade de A. M:N (muitos-pra-muitos) - uma entidade de A est associada a vrias entidades de B (zero ou mais), e uma entidade de B est associada a vrias entidades de A (zero ou mais). 20

19

BD-I - Prof. Guilherme Tavares de Assis

BD-I - Prof. Guilherme Tavares de Assis

Restrio de Participao
Restrio de participao especifica se a existncia de uma entidade depende de sua associao a outra entidade por meio de um relacionamento. A participao pode ser:
Total (dependncia de existncia): todas as instncias do tipo de entidade devem participar de um relacionamento.
Exemplo: no tipo de relacionamento gerencia entre Empregado e Departamento, a participao total do lado de Departamento, informando que todo departamento tem obrigatoriamente um gerente (indicado no diagrama pelas linhas duplas).

Restrio de Cardinalidade Mnima e Mxima


Uma restrio estrutural alternativa em relacionamentos no Diagrama ER a Cardinalidade Mnima e Mxima.
Envolve associar um par de nmeros inteiros (min, max) a cada participao de um tipo de entidade E num tipo de relacionamento, onde 0 min max e max0. Os nmeros min e max significam que para cada instncia de entidade e em E, e deve participar de, no mnimo, min e, no mximo, max instncias do relacionamento em questo.
Neste mtodo, min=0 implica participao parcial e min>0 implica participao total.

Parcial: as instncias podem participar de um relacionamento.


Exemplo: no tipo de relacionamento gerencia entre Empregado e Departamento, a participao parcial do lado de Empregado, informando que nem todo empregado gerente de departamento (indicado no diagrama por uma linha simples).
21

22

BD-I - Prof. Guilherme Tavares de Assis

BD-I - Prof. Guilherme Tavares de Assis

Entidade Fraca
Tipo de Entidade Fraca um tipo de entidade que no possui atributos chaves (no tem identificao prpria).
Est sempre associada a um tipo de entidade forte (ou proprietria) atravs de um relacionamento identificador. Sua chave formada pela combinao da chave primria do tipo de entidade forte + uma chave parcial prpria. Sempre tem uma restrio de participao total (dependncia de existncia) em relao ao relacionamento identificador. representada no diagrama por contornos duplos. Algumas vezes tambm pode ser modelada como atributos complexos (compostos e multi-valorados).

Refinamento do Projeto do BD Empresa


Os atributos que representam relacionamentos devem ser transformados em tipos de relacionamento. Assim, tm-se os seguintes tipos de relacionamento no BD Empresa:
Gerencia um tipo de relacionamento 1:1 entre Empregado e Departamento. A participao de Empregado parcial. A participao de Departamento total j que foi dito que um departamento sempre deve possuir um gerente. O atributo data_inicio_gerncia designado ao relacionamento. Trabalha_para um tipo de relacionamento N:1 entre Empregado e Departamento. Ambos tm participao total.

Exemplo: tipo de entidade Dependente.


23 24

BD-I - Prof. Guilherme Tavares de Assis

BD-I - Prof. Guilherme Tavares de Assis

Refinamento do Projeto do BD Empresa


Controla um tipo de relacionamento 1:N entre Departamento e Projeto. A participao de Projeto total, enquanto que a de Departamento foi determinada como sendo parcial (aps consulta aos usurios). Superviso um tipo de relacionamento 1:N entre Empregado (supervisor) e Empregado (supervisionado). Ambas as participaes so parciais, j que os usurios mencionaram que nem todo empregado possui um supervisor e vice-versa.

Refinamento do Projeto do BD Empresa


Trabalha_em um tipo de relacionamento M:N entre Empregado e Projeto, com o atributo horas indicando quantas horas um empregado trabalha em um projeto. Ambas as participaes foram determinadas totais. Dependentes_de um tipo de relacionamento N:1 entre Dependente e Empregado, sendo um relacionamento identificador para a entidade fraca Dependente. A participao de Empregado parcial, enquanto que a de Dependente total.

25

26

BD-I - Prof. Guilherme Tavares de Assis

27

You might also like