Baixe o app para aproveitar ainda mais
Prévia do material em texto
Modelagem de Dados – Material de Apoio Aulas 3,4 e 5 Prof. Vanilde Modelo, Instâncias e Esquemas Projeto de banco de Dados Em função do que vimos anteriormente, podemos dizer que desenvolver um projeto de sistema de informação consiste em traduzir um “problema” do mundo real numa “solução” que envolve a organização, pessoas e tecnologia (hardware e software). Todo projeto de um sistema de aplicação para banco de dados necessita de um coração, um centro nervoso do mesmo. A modelagem de um sistema através da abordagem Entidades-Relacionamentos representa este ponto central no projeto conceitual de um sistema. O objetivo da Modelagem de Dados é transmitir e apresentar uma representação única, não redundante e resumida, dos dados de uma aplicação. Em projetos conceituais de aplicação em banco de dados o Modelo Entidades-Relacionamentos é o mais largamente utilizado para representação e entendimento dos dados que compõe um sistema. 3.4.1. Modelagem de Dados: histórico e definição Histórico: Desenvolvida na década de 70, possui paternidade discutível: Charles Bachman, James Martin, Peter Chen e outros. É de Peter Chen o rótulo MER (Modelo Entidades-Relacionamentos) que se transformou em, praticamente, sinônimo da técnica de Modelagem de Dados. O que é Modelagem de Dados? Método de análise que busca determinar a natureza fundamental dos recursos de dados utilizados em um contexto, permitindo organizar todos os fatos relevantes que estejam associados ao domínio de conhecimento analisado. 3.4.2. Objetos conceituais Quando Peter Chen formulou a proposta do Modelo Entidades-Relacionamentos , baseou-se na compreensão da realidade em que se situava o problema.Como iremos projetar um sistema se não entendemos o negócio para o qual será realizado? Chen dedicou-se a destacar a importância de reconhecer os objetos que compõem este negócio, independentemente das formas de tratamento das informações, procedimentos, programas, etc. Estes objetos que desejamos conhecer e modelar foram classificados em dois grupos: Entidades e Relacionamentos. O modelo entidades-relacionamento baseia-se na percepção de um universo constituído por um grupo básico de objetos chamados entidades e por relacionamentos entre estes objetos. Ele foi desenvolvido a fim de facilitar o projeto de banco de dados permitindo a especificação de um esquema de negócio. Tal esquema representa a estrutura lógica global do banco de dados.” 3.4.2.1. Entidade Define-se Entidade como aquele objeto que existe no mundo real, com identificação distinta e com um significado próprio. A representação de uma entidade no MER é feita através de um retângulo, com o nome da entidade em seu interior. ALUNO Entidades podem ser: Tangíveis: pessoas, edifícios Intangíveis: departamento, reserva de vôo, curso Entidade Fraca: não existe se não estiver relacionada a outra, isto é, ela é logicamente dependente da outra. 3.4.2.2. Atributo Todo objeto para ser uma entidade possui propriedades que são descritas por atributos e valores. Estes atributos e valores, juntos, descrevem as instâncias de uma entidade. O que descreve CLIENTE ? Cliente é descrito por um código de identificação, nome, endereço, telefone de contato, CGC ou CPF, etc.... Atributos podem ser: Atributos Compostos (Grupo de Atributos): Combinação ou agregação de atributos relacionados Ex. Endereço é formado pelos atributos: rua, bairro, cidade, estado, CEP. Atributos Simples ou Atômicos: Atributos que não são divisíveis em unidades dados mais simples. Ex. DataNascimento, NumeroFatura, ValorTotalVenda Atributos Multi-Valorados : Um atributo simples que pode ter múltiplos valores Ex. Uma pessoa pode ter mais de um telefone ou mais de um emprego. Domínio de um atributo: Descrição de possíveis valores permitidos para um atributo. Ex: domínio do atributo CorPeça: azul, amarelo, verde, vermelho, branco Valores nulos: Um valor nulo é um atributo sem um valor. Quando um valor nulo pode ocorrer? –O valor não é conhecido –O atributo não é relevante para descrever uma entidade em particular Um objetivo básico de um projeto de BD relacional é minimizar a ocorrência de valores nulos 3.4.2.3 Relacionamento Um relacionamento é uma associação entre duas entidades cujo significado seja de interesse para a realidade analisada. Os relacionamentos estão intimamente ligados às ações realizadas pelos processos sobre os dados e representam os caminhos de navegação ou rotas de acesso do Modelo de Dados. Existem várias formas de se representar graficamente um relacionamento. Por exemplo, Peter Chen utiliza um retângulo para desenhar uma associação entre entidades, outros autores a representam através de um traço unindo as entidades. Observação: podemos representar os atributos como círculos ou elipses 3.5. Modelando o Negócio Num primeiro contato com um negócio para o qual se efetuará um sistema de aplicação, podemos não possuir conhecimento especializado no mesmo, logo, devemos procurar conhecer seus objetos principais. Ao descrevermos textualmente a realidade analisada, as entidades podem ser identificadas por similaridade com a análise sintática nas linguagens naturais. Nesse caso, algumas regras podem ser aplicadas: o sujeito e o objeto da sentença são, provavelmente, entidades; os verbos sugerem relacionamentos; os adjetivos correspondem a atributos de entidades advérbios e adjuntos adverbiais podem sugerir atributos de relacionamentos Exemplo: “Um país participa das Olimpíadas”: A frase sugere de imediato a garimpagem de PAÍS e OLIMPÍADAS como entidades e o verbo “PARTICIPA” como o relacionamento entre elas. 3.5.1. Identificação de Relacionamento Relacionamento entre objetos de diferentes tipos: “João é proprietário de um jipe amarelo”, Identificar os objetos envolvidos PESSOA, com a instância “João” VEICULO, com a instância “jipe” 2 - Caracterizar os objetos PESSOA, caracterizado por: nome, data de nascimento, sexo, CPF VEICULO, caracterizado por: marca cor, ano de fabricação, número do chassis 3 - Representar os objetos: VEÍCULO PESSOA 4 - Identificar o relacionamento entre os objetos PESSOA é proprietária de VEICULO 5 - Representar o relacionamento VEÍCULO PESSOA proprietária propriestária Este processo pode ser utilizado para mapear qualquer relacionamento entre dois, ou mais, tipos de objetos e, também, entre os mesmos objetos. Assim, se necessitamos expandir nosso modelo representando também as observações: - um VEICULO é de propriedade de uma PESSOA mas pode ser utilizado por diversas PESSOAS para locomoção - uma PESSOA utiliza um IMOVEL para morar Teríamos que repetir os passos de 1 a 5 para cada nova observação. 1 - Identificar os objetos envolvidos PESSOA, VEICULO, IMOVEL 2 - Caracterizar os objetos PESSOA, caracterizado por: nome, data de nascimento, sexo, CPF VEICULO, caracterizado por: marca cor, ano de fabricação, número do chassis IMOVEL, caracterizado por: numero do registro, endereço, metragem, tipo de edificação 3 - Representar os objetos: PESSOA VEÍCULO IMÓVEL 4- Identificar os novos relacionamentos entre os objetos PESSOA utiliza VEICULO PESSOA utiliza IMOVEL 5- Representar novos relacionamentos utiliza PESSOA VEÍCULO proprietário utiliza IMÓVEL Cardinalidade Uma relação entre duas entidades pode ser descrita em termos da sua cardinalidade Como expressar a cardinalidade Um para Um 1:1 Um empregado pode ser atribuído a um carro. Um para Muitos 1:N Um cliente pode tomar emprestado várias fitas de vídeo. Muitos para Muitos N:M Um estudante pode fazer várias disciplinas e uma disciplina pode ser cursada por vários estudantes A cardinalidade é determinada pelas “regras de negócio” criadaspela organização. Os usuários e a documentação da organização dirão qual a cardinalidade existente entre entidades e atributos Cardinalidade um para um Cardinalidade um para muitos Cardinalidade muitos muitos Mais sobre Relacionamentos ... Relações podem ser nomeados usando verbos ou palavras agregadas As relações podem ter limites mínimos e máximos Um professor pode ensinar de 0 a 4 disciplinas (limite inferior é 0 e limite superior é 4) e um uma disciplina pode ser ministrada por 0 a 1 professor (limite inferior é 0 e o limite superior é 1) Quando o limite inferior da cardinalidade for 0, o relacionamento é definido como “opcional” Quando o limite inferior da cardinalidade for 1, o relacionamento é definido como “obrigatório” Relações recursivas Ocorre quando uma entidade possui um relacionamento com ela mesma Os relacionamentos recursivos podem também ter limites inferiores e superiores Exemplo: Um organização possui uma entidade “Empregado”e que guardar a informação sobre quais empregados são casados entre si. Esse é um relacionamento recursivo 1:1 onde a entidade “Empregado” se relaciona consigo mesmo. Relacionamentos recursivos um para um Pode ser visto como a entidade relacionando-se com ela mesma Limites inferiores e superiores em um relacionamento 1:1 recursivo Atributos de Relacionamentos Os atributos de relacionamento são possíveis quando o grau do relacionamento for N : M ( muitos para muitos ) Estrutura de Generalização-Especialização “É-um” Entidades podem ter subtipos ou subclasses e supertipos ou superclasses Um entidade supertipo é uma generalização de uma entidade subtipo “especializada” Cada entidade subtipo herda os atributos de sua entidade supertipo Cada entidade supertipo tem seus próprios atributos únicos A relação entre um subtipo de entidades e seu pai é referenciada por uma relação “É-um” Num diagrama ER um relacionamento “É-um” conecta uma entidades mais especializada a uma entidade generalizada pode ser escrita como: Um triângulo invertido Um losango com o label “É-um” Exemplo CLIENTE: NumeroCliente, NomeCliente, ValorDevido CLIENTE INDIVIDUAL: Endereço, NumeroIdentidade CLIENTE ASSOCIADO: NumeroIdentidade, Endereço, NumeroIdentificaçãoTaxa CLIENTE CORPORAÇÃO: PessoaContato, Telefone, NumeroIdentificaçãoTaxa Estrutura de Agregação“Faz_parte_de” CLIENTE PRODUTO CLIENTE PRODUTO pede
Compartilhar