Baixe o app para aproveitar ainda mais
Prévia do material em texto
Notas Didáticas Prof. Luiz Camolesi Jr.Pg. 1 – Parte III (Projeto Conceitual de Banco de Dados) Projeto Conceitual de Banco de Dados 16 páginas ♦♦ IINNTTRROODDUUÇÇÃÃOO ♦♦ CCOONNCCEEIITTOOSS BBÁÁSSIICCOOSS ♦♦ EENNTTIIDDAADDEESS EE TTIIPPOOSS DDEE EENNTTIIDDAADDEESS ♦♦ RREELLAACCIIOONNAAMMEENNTTOOSS EE TTIIPPOOSS DDEE RREELLAACCIIOONNAAMMEENNTTOOSS ♦♦ AATTRRIIBBUUTTOOSS EE TTIIPPOOSS DDEE AATTRRIIBBUUTTOOSS ♦♦ AABBSSTTRRAAÇÇÕÕEESS DDEE DDAADDOOSS ♦♦ DDIIAAGGRRAAMMAA DDEE RREEPPRREESSEENNTTAAÇÇÃÃOO ♦♦ MMOODDEELLAAGGEEMM DDEE DDAADDOOSS ♦♦ EEXXEEMMPPLLOO “Marco Polo descreve uma ponte, pedra por pedra. - Mas qual é a pedra que sustenta a ponte? - Pergunta Kublai Khan. - A ponte não é sustentada por esta ou aquela pedra - responde Marco -, mas pela curva do arco que estas formam. Kublai Khan permanece em silêncio, refletindo. Depois acrescenta: - Por que falar de pedras então? Só o arco me interessa. Polo responde: - Sem pedras o arco não existe." Ítalo Calvino III Notas Didáticas Prof. Luiz Camolesi Jr.Pg. 2 – Parte III (Projeto Conceitual de Banco de Dados) 1 - INTRODUÇÃO O Modelo Entidade-Relacionamento (MER) foi originalmente criado pelo norte- americano Peter Pin-Shan Chen enquanto trabalhava no Massachusetts Institute of Technology. O MER foi colocado para conhecimento público durante a conferência internacional VLDB no ano de 1975. Segundo seu criador, o MER é uma poderosa ferramenta de apoio ao projeto conceitual de Bancos de Dados propiciando uma visão mais natural e consistente do mundo real através do uso de conceitos simples porém de grande representatividade. O principal motivo do grande sucesso da MER durante todos estes anos em que foi utilizado nas universidades como ponto de partida para diversas pesquisas e estudos, e nas empresas como instrumento para a organização de suas informações, foi a facilidade com que pode ser utilizado e a clareza com que apresenta seus resultados. Devido a sua grande importância, muitos trabalhos propuseram extensões do modelo para que se torna-se mais preciso na representação do mundo real. A inclusão destes novos conceitos podem rebatizar o modelo como MER* ou MER-X. Atualmente continuam sendo estudados novas propostas de extensão. Para isso, são realizados periodicamente (França 1986, EUA 1987, Itália 1988 e outras) conferências com esta finalidade específica. 2 - CONCEITOS BÁSICOS 2.1 - ENTIDADES E TIPOS DE ENTIDADES Um Banco de Dados normalmente armazenam as informações em grupos ou conjuntos, isto porque para as aplicações mais usuais existe muitas semelhanças entre os elementos que são armazenados. Tipo de Entidade é o conjunto de elementos (evento, ser ou coisa) Entidade é cada elemento pertencente a um conjunto - Animais - Pessoas Notas Didáticas Prof. Luiz Camolesi Jr.Pg. 3 – Parte III (Projeto Conceitual de Banco de Dados) Pode ocorrer que algum Tipo de Entidade possua uma dependência existencial com outro Tipo de Entidade e neste caso cada Entidade daquele Tipo existe somente porque está associada a outra Entidade de Tipo diferente. Este Tipo de Entidade é denominada Tipo de Entidade Fraca. Exemplo: Produtos é um Tipo de Entidade Fraca pois cada produto existente neste conjunto (e armazenado no Banco de Dados) existe somente porque uma pessoa (Entidade de Pessoas) o comprou. 2.2 - RELACIONAMENTOS E TIPOS DE RELACIONAMENTOS Nenhuma informação armazenada no Banco de Dados existe isoladamente. Todos os elementos pertencentes ao mundo real (restrito) modelado de alguma forma está associado a outros elementos. Normalmente estas associações representam ações físicas ou alguma forma de dependência entre os elementos envolvidos. Tipo de Relacionamento é a associação entre Tipos de Entidades Relacionamento é a associação entre Entidades A quantidade de Tipos de Entidades envolvido em um Tipo de Relacionamento pode ser determinado por sua semântica. Desta forma, pode-se categorizar os Tipos de Relacionamento em: • Unário: é um Tipo de Relacionamento que envolve um único Tipo de Entidade. • Binário: é um Tipo de Relacionamento que envolve dois Tipos de Entidades. - Produtos Notas Didáticas Prof. Luiz Camolesi Jr.Pg. 4 – Parte III (Projeto Conceitual de Banco de Dados) • Ternário: é um Tipo de Relacionamento que envolve três Tipos de Entidades. • Quaternário: é um Tipo de Relacionamento que envolve quatro Tipos de Entidades. A quantidade de Entidades envolvidas em cada Relacionamento é determinado pela Cardinalidade do Tipo de Relacionamento, ou seja, pode-se estabelecer a quantidade mínima e máxima de Entidades envolvidas com cada Entidade relacionada. ! A Cardinalidade Mínima que determina a quantidade mínima de Entidades relacionadas é determinada pelo número representativo, ou seja, 0 (zero) 1, 2, ...., N (muitos). ! A Cardinalidade Máxima que determina a quantidade máxima de Entidades relacionadas é determinada pelo número representativo, ou seja, 1, 2, ...., N (muitos). Para os Tipos de Relacionamento Binários (que são mais comuns) podemos citar que as Cardinalidades Máximas são as seguintes: Notas Didáticas Prof. Luiz Camolesi Jr.Pg. 5 – Parte III (Projeto Conceitual de Banco de Dados) Todo Relacionamento é reflexivo, ou seja, as Entidades envolvidas em um Relacionamento estão igualmente envolvidas na associação representada. Quando se desconhece alguma Cardinalidade (mínima ou máxima) de um Tipo de Relacionamento ou quando sabe-se que é maior que 1 então generaliza-se descrevendo como sendo muitos. 2.3 - ATRIBUTOS E TIPOS DE ATRIBUTOS Em um Banco de Dados são armazenados as informações necessárias à uma aplicação. Informações são compostas por dados. Os dados são características armazenadas ou calculadas pertencentes à alguma Entidade ou Relacionamento. A qualidade de um Banco de Dados pode ser determinada pela riqueza de detalhes que consegue representar (através dos dados) do mundo real restrito. Tipo de Atributo é uma propriedade que descreve alguma característica. Atributo é o valor para uma característica. Todo valor é extraído de um domínio. O Domínio é um conjunto de valores válidos para um Atributo, ou uma regra de construção para estes valores. Este conceito é importante para a padronização dos dados do BD. Os Tipos de Atributos são normalmente associados a Tipos de Entidades. Quando isto acontece, para cada Entidade armazenada no BD deve-se estabelecer seus Atributos. Notas Didáticas Prof. Luiz Camolesi Jr.Pg. 6 – Parte III (Projeto Conceitual de Banco de Dados) Entre os Tipos de Atributos associados a um Tipo de Entidade deve existir um ou mais Tipos de Atributos cujos Atributos são diferentes para cada Entidade. O menor conjunto de Tipos de Atributos necessário para distinguir cada Entidade é chamado Identificador. Identificador Identificador Os Tipos de Relacionamentos também podem ter Tipos de Atributos para caracterizá-los. Como os Tipos de Relacionamentos são normalmente ações (realizadas ou a se realizar) ou dependências entre os Tipos de Entidades envolvidos, então cada Tipo de Atributo que caracteriza estas associações normalmente representam algum dos seguintes aspectos: • Quantificavél : quantidade de elementos que a associação utiliza (ou utilizou) ou realiza (ou realizou) • Temporal : data (início ou fim) da associação, intervalo de tempo da associação • Explicativo :descrição de como ou porque foi realizada (ou se realiza) a associação • Espacial : descrição da localização da associação • Referêncial : indicação do agente da associação Nome Ana Idade 23 Profissão Dentista Sexo Feminino Nome João Idade 31 Profissão Diretor Sexo Masculino Nome Torre Heifel País França Cidade Paris Data Construção Código 12 Nome HI X Fábrica Sony Garantia 1 ano Tipo Portátil Notas DidáticasProf. Luiz Camolesi Jr.Pg. 7 – Parte III (Projeto Conceitual de Banco de Dados) visitará Quando? Por que? comprou Quando? Por que? Quantos? Onde? Normalmente, as Entidades possuem um Atributo (valor) de cada Tipo de Atributo que o caracteriza, porém pode ocorrer a necessidade de colocar vários Atributos do mesmo Tipo para uma entidade. O Tipo de Atributo que permite a representação de vários valores ao mesmo tempo é denominado Tipo de Atributo Multi-Valorado. Nome Popular Espécie Peso Médio Cores Notas Didáticas Prof. Luiz Camolesi Jr.Pg. 8 – Parte III (Projeto Conceitual de Banco de Dados) 3 - ABSTRAÇÕES DE DADOS Existem algumas construções semânticas que são naturais dos serem humanos e usadas para facilitar o entendimento do mundo. Para tentar representar com fidelidade estas construções foram criadas as diversas Abstrações de Dados. Abstração é o ato de separar mentalmente elementos de uma totalidade complexa, seja material, representação ou fato real. 3.1 - ESPECIALIZAÇÃO / GENERALIZAÇÃO Especialização é uma abstração que permite subdividir um grande conjunto de elementos em conjuntos menores de acordo com padrões que esstabelecidos pelas necessidades da aplicação. Generalização é a abstração inversa da Especialização, ou seja, agrupa-se conjuntos de elementos com alguma semelhança semântica em um conjunto maior. As características semelhantes que existem entre os Homens e as Mulheres são representadas no conjunto Pessoas, como por exemplo, o nome, a idade e a profissão. Todo Homem (ou Mulher) possui estas características pois é uma Pessoa. Este migração de características é denominada Herança. Além das características herdadas de Pessoas, o conjunto de Homens possui suas características próprias por exemplo altura, o mesmo ocorrendo com as Mulheres com a característica peso. Notas Didáticas Prof. Luiz Camolesi Jr.Pg. 9 – Parte III (Projeto Conceitual de Banco de Dados) Sucessivas operações de Generalização (ou Especialização) descrevem uma hierarquia de conjuntos que pode: a) não ser uma árvore, uma vez que conjunto Filho pode ter mais de uma conjunto Pai, o que pode estabelecer Múltiplas Heranças, quando então pode existir a possibilidade de conflito entre as características herdadas. Exemplo : Um conjunto de animais Anfíbios que são especializações de Terrestres e também de Aquáticos. Terrestres e Aquáticos possuem a característica Velocidade. Nos animais Terrestres representa a velocidade de locomoção na terra e nos animais Aquáticos é a velocidade de deslocamento na agua. Se Anfíbios herdam Velocidade de ambos os grupos existe o conflito. b) ser constituída por conjuntos não mutuamente exclusivos ou seja, dois ou mais conjuntos podem conter um mesmo elemento. Exemplo: um réptil que anda e também nada. O tamanho da Hierarquia de Generalização é determinado pelo interesse da aplicação, ou seja, subdivide-se em conjunto até que a representação esteja de acordo com as necessidades. Notas Didáticas Prof. Luiz Camolesi Jr.Pg. 10 – Parte III (Projeto Conceitual de Banco de Dados) 3.2 - DECOMPOSIÇÃO / COMPOSIÇÃO Decomposição é uma abstração que permite criar conjuntos de elementos que representam partes de um conjunto de elementos complexos. Composição é a abstração inversa da Decomposição. 3.3 - DERIVAÇÃO (SUMARIZAÇÃO) Alguns dados armazenados no BD podem ser resultado de algum tipo de calculo envolvendo outros dados. Código CC12 Ano 1985 Preço 100 Notas Didáticas Prof. Luiz Camolesi Jr.Pg. 11 – Parte III (Projeto Conceitual de Banco de Dados) 3.4 - AGREGAÇÃO O resultado de uma associação entre Entidades pode criar uma outra Entidade ou melhor um Agregado. Um Agregado pode se relacionar com outras Entidade e possuir características próprias. VISITA 3.5 - DIVISÃO As características de uma Entidade ou Relacionamento podem apresentar-se complexas e assim talvez criar dificuldades para o seu completo entendimento. Através desta Abstração pode-se representar partes de Tipos de Atributos complexos. Código CMC1 Área 2 Preço 700 4 x + 1 x Código MC20Ano 1980 Preço 300 ORGANIZADO POR Nome João Endereço Rua Número Bairro Cidade Visconde 1456 Centro Piracicaba Notas Didáticas Prof. Luiz Camolesi Jr.Pg. 12 – Parte III (Projeto Conceitual de Banco de Dados) 4 - DIAGRAMA DE REPRESENTAÇÃO A representação gráfica através do Diagrama Entidade-Relacionamento foi criada por Peter Chen para facilitar a visualização dos resultados de uma modelagem. Como o DER apresenta símbolo muito simples, pode ser utilizado para a depuração da modelagem junto ao cliente. Notas Didáticas Prof. Luiz Camolesi Jr.Pg. 13 – Parte III (Projeto Conceitual de Banco de Dados) 5 - MODELAGEM DE DADOS Notas Didáticas Prof. Luiz Camolesi Jr.Pg. 14 – Parte III (Projeto Conceitual de Banco de Dados) Esquimó ou índio ? Tendo realizado entrevistas com o cliente e/ou usuário(s) para determinar suas necessidades de informação e definido qual o problema ser resolvido, ou seja, tendo determinado as fronteiras que delimitam e restringem o mini-mundo a ser modelado, então deve-se seguir roteiro para se determinar uma primeira versão do DER, que pode ser descrito pelos seguintes passos : • Determinar os Tipos de Entidades • Determinar os Tipos de Atributos das Entidades • Determinar os Identificadores de Entidades • Determinar os Tipos de Relacionamentos • Determinar os Tipos de Atributos dos Relacionamentos • Determinar as Cardinalidades Mínima e Máxima • Determinar as Abstrações de Dados Alguns cuidados devem ser tomados durante a criação do DER: 1) Um Tipo de Atributo não pode ter Tipos de Atributos associados, de modo que se forem encontrados (em sua aplicação) significa que não se trata de Tipo de Atributo mas de um Tipo de Entidade. 2) Um Tipo de Entidade que não possui pelo menos um Tipo de Atributo além do Identificador ou está com sua especificação incompleta ou não se trata de um Tipo de Entidade mais de um Tipo de Atributo. 3) Um Tipo de Relacionamento é uma associação entre Tipos de Entidades. A completa e perfeita representação de uma associação somente esta correta se todos os Tipos de Entidades necessárias para a existência do Tipo de Relacionamento estão interligados. Após criada a primeira versão do DER deve-se apresentar ao cliente para que sejam verificados a corretude e completude do diagrama. Sucessivas apresentação do DER devem ser realizadas enquanto foram detectados falhas na representação. À primeira vista pode-se presupor que esta rotina de trabalho trará atrasos na construção do Banco de Dados, porém os especialistas em engenharia (software, mecânica e ect) sabem da extrema importância da fase de projeto. Erros ocorridos nesta fase acarretam graves atrasos e aumento no custo de realização do produto. A modelagem através do MER é exatamente uma etapa da Engenharia de Banco de Dados em que se realiza o projeto conceitual do Banco de Dados, uma etapa muito importante. Por esse motivo, o MER se tornou uma ferramenta de modelagem entre as mais difundidas, estimadas e utilizadas no mercado de informática. Notas Didáticas Prof. Luiz Camolesi Jr.Pg. 15 – Parte III (Projeto Conceitual de Banco de Dados) 6 - EXEMPLOS Notas Didáticas Prof. Luiz Camolesi Jr.Pg. 16 – Parte III (Projeto Conceitual de Banco de Dados) ❋
Compartilhar