UNIPAC 2º SEMESTRE 2007 Técnica de BD – Modelagem (2) Christien Lana Rachid 5.2.1 Modelagem de Dados em Projetos de Sistemas de Banco de Dados Relacionais Adaptado do Curso MOD da ORACLE Christien Lana Rachid 5.2.2 Desenvolvimento de Sistemas de BD MÉTODOS TÉCNICAS FERRAMENTAS Christien Lana Rachid 5.2.3 Desenvolvimento de Sistemas de BD Um MÉTODO normalmente compõe-se de uma série de tarefas que devem ser executadas para o desenvolvimento de um Projeto de Software. (Por exemplo: o Método de Desenvolvimento Estruturado de Software, onde o Planejamento, a Análise e o Projeto Lógico são realizados de cima para baixo, e o Projeto Físico, a Implementação e os Testes são realizados de baixo para cima; entre outros). TÉCNICA é a maneira pela qual um Método é implementado (Exemplos: a Técnica de Normalização, utilizando a 1FN, 2FN e 3FN; a Técnica de Modelagem, utilizando o Modelo Entidade Relacionamento - MER; entre outras) FERRAMENTA é um instrumento de auxílio à elaboração de um Projeto (Exemplos: as Ferramentas de Software ERWIN Versão 4.0 da Computer Associate (CA); DESIGNER da ORACLE; entre outras). Christien Lana Rachid 5.2.4 Processo de Desenvolvimento de um Aplicativo de BD Regras de Negócio Modelo Conceitual Visão de Negócio Projeto Lógico Visão de Sistema Construção Física Aplicativo de BD Operacional Christien Lana Rachid 5.2.5 Modelagem de Dados Conceitual • Objetivo : Compreender e definir os elementos significativos do Negócio, que necessitam ser conhecidos, armazenados e recuperados, e as relações entre esses elementos, utilizando a Técnica de Modelagem, com a finalidade de obter mais facilidade de desenvolvimento e maior integração das Aplicações de BD com uma sintaxe robusta. Christien Lana Rachid 5.2.6 Independência de HW e SW: • O Modelo Conceitual de Dados deve ser independente de H/W ou S/W; • Isso permite que se tenha uma visão objetiva das Regras de Negócio, sem as restrições existentes nos ambiente, após diversos ambientes; e • Caso haja modificação no a sua implementação, o Modelo Original continuará válido. Christien Lana Rachid 5.2.7 Terminologia de BD MODELO CONCEITUAL PROJETO (Visão de Negócio) (Visão de Sistema) • Entidade • Tabela • Relacionamento • Chave Estrangeira • Atributo • Coluna • Identificador • Chave Primária ou Único LÓGICO Chave Única Christien Lana Rachid 5.2.8 Um Modelo Entidade-Relacionamento consiste de: • Diagramas – Entidades, Atributos, Super-tipos, Sub-tipos, Arcos, Relacionamentos; e • Informações Complementares não Diagramáticas – Descrições das Entidades e dos Atributos, Formatos, Valores Admissíveis, Domínios, e Regras de Negócio. Christien Lana Rachid 5.2.9 Principais Elementos do DER na Notação ORACLE Entidade Relacionamento XXXXXX YYYYYY #* aaaa # identificador único * atributo obrigatório o atributo opcional * eeee * cccc Arco exclusivo o rrrr ZZZZZZ Atributos Supertipo XXXXXX Subtipo Relacionamento recursivo Christien Lana Rachid 5.2.10 Entidade Uma Entidade deve representar algo significativo, sobre o qual se necessita armazenar alguma informação. Ela deve possuir atributos. Convenções EMPREGADO #* numero * nome Nome da entidade em maiúscula e no singular Nomes dos atributos em minúscula o cargo o salario Soft-box * data adm Christien Lana Rachid 5.2.11 Relacionamento : Associação entre Entidades Convenções Opcionalidade ou Cardinalidade Mínima Obrigatório Opcional COPIA TITULO Procedente de Muitos Gerador de Um Grau ou Cardinalidade Máxima Tradução: Cada COPIA deve ser procedente de um TITULO. Cada TITULO pode ser gerador de uma ou mais COPIAS. Christien Lana Rachid 5.2.12 Identificando e Modelando Entidades • Siga os passos abaixo para ajudá-lo a Identificar e Modelar Entidades, a partir de anotações de uma entrevista ou outra documentação qualquer. • Examine de cada Substantivo da Contextualização quais são os significativos para o Negócio: – Existe informação sobre o Substantivo, que necessite ser armazenada e recuperada ?; – Caso positivo, represente o Substantivo em seu Modelo, nomeando-o como um grupo de coisas que pode vir a ocorrer ou ser instanciado; e – Dê um nome significativo a este Substantivo, como uma Entidade, identificando alguns de seus Atributos. Christien Lana Rachid 5.2.13 Exemplo 1 - Construção de um Modelo Entidade Relacionamento a partir de uma Contextualização “Eu sou o Diretor de Recursos Humanos de uma grande Empresa. Nós precisamos manter informações sobre os nossos Empregados tais como: nome, cargo, data de admissão e salário. Alguns de nossos Empregados são Gerentes, e freqüentemente nós precisamos saber qual é o Gerente de determinado Empregado e quais Empregados estão sob responsabilidade de um determinado Gerente. A nossa Empresa é dividida em Departamentos. Cada Empregado é designado para um dos Deptos. precisamos saber a localização desse Departamento.” Christien Lana Rachid Nós 5.2.14 Exemplo 1 - Construção de um Modelo Entidade Relacionamento a partir de uma Contextualização (Continuação) EMPREGADO #* numero * nome DEPARTAMENTO o cargo o salario #* numero designado para composto por gerente de * nome * localizacao * data adm gerenciado por Christien Lana Rachid 5.2.15