Baixe o app para aproveitar ainda mais
Prévia do material em texto
Workshop de modelagem de dados - Jorge Costa � PAGE �19� MODELO ENTIDADE RELACIONAMENTO O que é ? É uma ferramenta de Modelagem utilizada durante a fase de Projeto Conceitual de Dados. � A sua utilização propicia a criação de modelos de uma parcela do mundo real (mini-mundo) onde são representados e estruturados os conceitos que o ser humano (Usuário) possui a cerca dessa parcela do mundo real. Os conceitos que são motivo de interesse dos Analistas / Projetistas / Programadores são aqueles que representam os Requisitos de Informação (Necessidades de Informação) e as Regras de Negócio do Usuário. � � Requisito de Informação Representa uma necessidade de informação de um usuário ou de um grupo de usuários. � Regra de Negócio Procedimento que visa a condução das atividades de uma organização visando maior eficiência e eficácia dos resultados a serem obtidos. � Conceitos É o resultado da aplicação dos mecanismos de abstração (classificação, agregação e generalização). � � � Componentes para modelagem de objetos (aspecto estrutural do mundo real) Objetos de dados Entidade Antes de tentarmos definir os conceitos de entidade e entidade-tipo, iremos recordar alguns conceitos da teoria dos conjuntos. O conceito de conjunto como uma coleção arbitrária de objetos é provavelmente o mais básico conceito da matemática moderna. A noção de conjunto não é suscetível de definição precisa a partir de definições mais simples, ou seja, é uma noção primitiva, introduzida de modo explícito no século passado pelo matemático russo Georg Cantor. Segundo N. Bourbaki (Théorie des Ensembles): "um conjunto é formado de elementos suscetíveis de possuírem certas propriedades e de terem entre si, ou com elementos de outros conjuntos, certas relações". "Uma entidade é uma coisa que pode ser identificada distintamente. Uma pessoa, companhia, evento são exemplos de entidades" [CHE]. "Uma entidade é alguma coisa sobre a qual armazenamos informações". [GAN]. "Uma entidade é uma pessoa, lugar, coisa, evento ou conceito a cerca dos quais a informação é registrada" [ATR]. "Uma entidade é um objeto que tem existência própria quando considerado no contexto de atividades da empresa. Uma entidade é descrita por seus atributos. Por exemplo, a entidade empregado poderia ter os atributos nome, categoria, salário, etc"... [FUR]. "Uma entidade tem existência significativa no mundo real. Pode ser um objeto, um indivíduo, um conceito abstrato ou um evento" [VID]. "Entidade é uma coisa concreta ou abstrata existente no sistema e na qual estamos interessados. É algo sobre o qual queremos informações. É aquilo que se apresenta como um todo, alguma coisa que tem existência por si mesma" [SOU]. "Uma entidade é alguma coisa, concreta ou abstrata, no universo de discurso" [ISO]. "Entidade é "qualquer coisa" do mundo real que possui uma existência independente. Uma entidade pode ser um objeto com existência física: uma pessoa em particular, um carro, uma casa ou um empregado, ou pode ser um objeto com uma existência meramente conceitual: uma companhia, um curso numa universidade" [ELM89]. � � � � Entidade-tipo Uma entidade-tipo é uma classe ou conjunto de entidades que possuem as mesmas características. Entidade-tipo é o principal componente do modelo ER, sem o qual nenhum dos outros: atributo e relacionamento-tipo podem existir. � � � São as seguintes as categorias de Entidades-Tipo: Entidade-tipo fraca: representa um conjunto de entidades que não possuem existência independente, ou seja dependem da existência de alguma outra entidade "forte" relacionada com a mesma; Entidade-Tipo Agregada: representa um relacionamento-tipo com o propósito de permitir que o mesmo se relacione com outro relacionamento-tipo; e Entidade-tipo meramente conceitual: representa uma entidade-tipo sobre a qual não existe interesse sobre os seus atributos mas que deve ser representada para melhorar a expressividade de um diagrama entidade relacionamento. Relacionamento "Relacionamento é uma associação entre entidades. Por exemplo, PAI-FILHO é um relacionamento entre duas pessoas (entidades)" [CHEN]. "Um relacionamento é uma associação, com um significado, entre entidades" [FURTADO]. "Um relacionamento entre duas classes de objetos (entidades-tipo) é um mapeamento que associa cada objeto de uma classe a um número de objetos (entidades), possivelmente nenhum, da outra classe" [VIDAL]. "Um relacionamento é uma percebida associação entre entidades no universo de discurso" [ISO]. � � Relacionamento Tipo Um relacionamento tipo é uma classe ou conjunto de associações ou instâncias de relacionamento-tipo (relacionamentos) entre entidades pertencentes a entidades tipo. � � Considerando a existência de associações entre entidades como um relacionamento, o conjunto de relacionamentos ou relacionamento_tipo é uma relação matemática entre as entidades tipo envolvidas. Um relacionamento tipo R entre n entidades tipo E1, E2, ... , En é um conjunto de associações entre entidades pertencentes a essas entidades tipo. Ou seja, R é um conjunto de instâncias de relacionamentos ri, onde ri = (e1, e2, ... ,en) e cada entidade ej Ej, 1 < j < n. De outra forma, um relacionamento tipo pode ser definido como uma relação matemática em E1, E2, ... , En, ou seja, como um subconjunto do produto cartesiano de E1 X E2 ... X En. Cada entidade tipo E1, E2, ..En é dita como participante do relacionamento tipo R, e similarmente, cada entidade e1, e2, ... , en é dita como participante da instância de relacionamento r. Valores É um símbolo que pode ser conotado a um elemento de um conjunto, ou seja, é uma concatenação ou agregação de caracteres que possibilita a representação simbólica, é a abstração mais elementar dentro do modelo ER. � Exemplos: João, José, Maria, ... 08/10/55, 23/05/58, ... Rua A, Rua B, Rua C, ... 254-3435, 254-2773, ... DEP10, DEP20, DEP30, ... Planejamento, Financeiro, Industrial, ... Atributo "Atributo é um dado elementar que retém informação sobre uma entidade" [GANE]. "Cada entidade possui atributos básicos que a caracterizam" [ATRE]. "Um atributo pode ser uma propriedade que não tem sentido em si mesma, existindo apenas para caracterizar uma entidade, como o caso do nome. Atributo também pode ser um objeto que poderia ser visto como entidade mas que, no contexto das atividades da empresa, figura apenas para caracterizar uma entidade, como seria o caso de um dependente de um empregado" [FURTADO]. "Atributos são propriedades que definem o significado principal de uma entidade ou relacionamento. No caso de entidade, seus atributos independem dos atributos das outras entidades que lhe estiverem associadas" [CRISOSTOMO]. "Um atributo é uma percebida propriedade de uma entidade, ou uma percebida propriedade de um relacionamento, no universo de discurso" [ISO]. Um atributo é uma propriedade de uma entidade ou de um relacionamento, podendo ser visto como uma função ou uma relação matemática que mapeia de um conjunto de entidades em um conjunto de valores, definindo sobre este último um subconjunto válido de valores. Um atributo define um subconjunto de um conjunto de valores sobre um domínio definido por uma função de atribuição e que visa representar características ou propriedades de entidades-tipo ou relacionamentos-tipo. São as seguintes as categorias de atributos: Atributos simples ou atômicos: são atributos que não podem ser divididos em sub-partes uma vez que não haveria um significado associado a essas sub-parte; Atributos compostos ou moleculares: são atributos que podem ser decompostos em sub-partes (outros atributos) com algum significado associado a essas sub-partes. O valor de um atributo composto é a concatenação ou agregação de valores dos seus atributos simples. Atributos compostos são úteis quando algumas vezes nos referimos a eles como um todo não nos importando os seus componentes e outras vezes quando nos referimos somente aos seus componentes; Atributos mono-valorados: um atributo é mono-valorado quando ele determina no máximo um valor de um determinado domínio; Atributo multi-valorado: um atributo é multi-valorado quando ele determina diversos valores (n) de um domínio; Atributo opcional: um atributo é opcional quando uma dada entidade ou relacionamento não tiver valores de um domínio a eles associados. Atributos opcionais são atributos que aceitam o valor nulo. Nulo é um valor especial, usado para representar "valor desconhecido" ou "valor não aplicável". Não sendo a mesma coisa que espaço vazio ou zero; e Atributo mandatório (obrigatório): um atributo é mandatório quando uma dada entidade ou relacionamento tiver pelo menos um valore de um domínio a eles associado. � � RESUMO DOS OBJETOS DE DADOS ENTIDADE Entidade é "qualquer coisa" do mundo real que possui uma existência independente. Uma entidade pode ser um objeto com existência física: uma pessoa em particular, um carro, uma casa ou um empregado, ou pode ser um objeto com uma existência meramente conceitual: uma companhia, um curso numa universidade. ENTIDADE TIPO Uma entidade-tipo é uma classe ou conjunto de entidades que possuem as mesmas características. RELACIONAMENTO Um relacionamento é uma associação, com um significado, entre entidades. RELACIONAMENTO TIPO Um relacionamento tipo é uma classe ou conjunto de associações ou instâncias de relacionamento-tipo (relacionamentos) entre entidades pertencentes a entidades tipo. VALOR É um símbolo que pode ser conotado a um elemento de um conjunto, ou seja, é uma concatenação ou agregação de caracteres que possibilita a representação simbólica. É a abstração mais elementar dentro do modelo ER. ATRIBUTO Um atributo define um subconjunto de um conjunto de valores sobre um domínio definido por uma função de atribuição e que visa representar características ou propriedades de entidades-tipo ou relacionamentos-tipo. É uma propriedade ou característica de uma entidade tipo ou de um relacionamento tipo, que auxiliam no entendimento desses. Um atributo define um conjunto de valores válidos para propriedades ou características de uma entidade tipo ou de um relacionamento tipo. Exemplo 1 � � � � � � Exemplo 2 � � Exemplo 3 � Exemplo 4 � � Construtores de objetos de dados Possibilitam a construção dos objetos de dados vistos anteriormente. CONSTRUTORES DE OBJETOS DE DADOS CONSTRUTORES BOTTOM-UP CONSTRUTORES TOP-DOWN CLASSIFICAÇÃO INSTANCIAÇÃO GENERALIZAÇÃO ESPECIALIZAÇÃO AGREGAÇÃO PARTICIONAMENTO Construtores "BOTTOM-UP" Construtor de Classificação (c): permite a construção de classes a partir de um conjunto de valores elementares do mesmo tipo (inteiros, reais, strings, ...) ou de agregados construídos; Construtor de Agregação (a): Permite a construção de elementos agregados (compostos) a partir de outros elementos ou de classes agregadas (compostas) a partir de outras classes, sendo os elementos ou classes iniciais considerados como componentes ou partes da classe ou do elemento final. Os atributos da classe agregada são a união dos atributos das classes componentes; e Construtor de Generalização (g): permite a construção de classes genéricas a partir de classes específicas. Os atributos da classe genérica são a interseção dos atributos das classes específicas. Construtores "TOP-DOWN": Construtor de Instanciação (i): permite a construção de elementos a partir de uma classe, é inverso ao construtor de classificação; Construtor de Particionamento (p): permite a construção de elementos a partir de elementos agregados e classes a partir de classes agregadas, é inverso ao construtor de agregação; e Construtor de Especialização (e): permite a construção de classes específicas a partir de classes genéricas, é inverso ao construtor de generalização. Componentes para modelagem de restrições sobre objetos e operações A presente extensão de modelo entidade relacionamento apresenta as seguintes restrições de integridade. Restrições de integridade a nÍvel de objetos de dados Restrições de integridade inerentes a atributos Restrição de Integridade de Tipo de domínio ::= < INTEIRO, REAL, TEXTO, ... , m, cm, mm, kg, ton, Cz$, ... , domínios temporais { ..., segundo, minuto, hora, dia, mês, ano, século, data(dd/mm/aa), ...},..> Restrição de Integridade de Intervalo de Valores ::= ( LIM_SUP , LIM_SUP ) Restrição de Integridade de Valores Discretos ::= { VALOR1, VALOR2, ... VALORn } Restrição de Integridade de Formato de elemento de domínio Restrição de Integridade de unicidade: a cada atributo pode ser associada uma restrição de unicidade que irá dizer se possui valores únicos dentro de um determinado domínio. Restrição de cardinalidade: as cardinalidades são representadas por um par de valores (m,n) que especificam se o atributo é obrigatório (m=1) ou no (m=0) e também se é multivalorado (n>1) ou no (n=1). Sua semântica é a seguinte: "O atributo X participa da entidade Y no mínimo m vezes e no máximo n vezes". Se nada for declarado com relação a esta cardinalidade, assume-se o valor (0,1). Ex: Um pessoa tem no mínimo 0 telefones e no máximo n telefones < (0,n) >. Restrições de integridade inerentes a entidades-tipo Restrição de identificação: procura estabelecer para cada entidade-tipo qual é o seu identificador(chave-primária), ou seja que conjuntos de atributos e/ou relacionamentos tipo, identificam as entidades de uma entidade-tipo qualquer; Restrição de Tipo de Entidade Generalizada: esta restrição é associada a uma entidade que é generalização de outras entidades, sendo representada por um par (V1,V2), onde V1 indica se a entidade genérica possui alguma instância que no pertence a suas especializações. Se possuir diz-se que a generalização é parcial e V1 := P, caso contrário será total e V1 := T. O valor V2 indica se a generalização é exclusiva, ou seja, se uma instância da entidade genérica só aparece como instância de no máximo de uma especialização desta, neste caso V2 := E, caso contrário V2 := S, indicando uma sobreposição nas especializações. Restrições de Integridade Inerentes a Relacionamentos Tipo Restrição de cardinalidade: é representado por um par de valores que quando associado aos relacionamentos possuem a seguinte semântica: A entidade X participa do relacionamento Y no mínimo m vezes e no máximo n vezes. Se nada for declarado com relação a esta cardinalidade, assume-se o valor (0,n). Ex: Uma pessoa pode se matricular em no mínimo 0 matérias e no máximo em sete matérias - (0,7). Restrição de Função ou Palpel: este descritor é específico para os auto-relacionamentos, sendo um complemento indispensável para o conhecimento de sua semântica. Seu objetivo é definir precisamente a função dos componentes na associação resultante. �INETEP – INSTITUTO NACIONAL DE EDUCAÇÃO, TECNOLOGIA E PESQUISA _904655011.unknown _904655642.unknown _904655947.unknown _904656285.unknown _904656523.unknown _904656832.unknown _942991059.unknown _904656873.unknown _904656568.unknown _904656384.unknown _904656415.unknown _904656337.unknown _904656112.unknown _904656199.unknown _904655985.unknown _904655787.unknown _904655835.unknown _904655718.unknown _904655390.unknown _904655505.unknown _904655582.unknown _904655461.unknown _904655198.unknown _904655354.unknown _904655063.unknown _904654478.unknown _904654733.unknown _904654890.unknown _904654569.unknown _904653449.unknown _904653683.unknown _904653243.unknown
Compartilhar