PROJETO DE BANCO DE DADOS Ceça Moraes Conteúdo O problema dos dados não compartilhados Banco de Dados Compartilhamento de dados Sistema de Gerência de Banco de Dados Modelos de Banco de Dados Modelo conceitual Modelo lógico Modelo conceitual como modelo de organização Projeto de BD Ceça Moraes 2 Como Informática é adotada em organizações... Informática é implementada gradativamente Exemplo - empresa hipotética Implementa gradativamente sistemas para: Vendas Produção Compras Onde ficam os dados de produto?Ceça Moraes 3 Sistemas isolados e Dados não compartilhados Ceça Moraes 4 Sistemas isolados e Dados não compartilhados Problema: redundância de dados Tipos de redundância de dados redundância software gerencia redundância redundância dados usuário controlada de dados não controlada de gerencia redundância Ceça Moraes 5 Redundância não controlada Conseqüências Entrada repetida da mesma informação Inconsistências de dados Como evitar: Compartilhamento de dados Cada informação é armazenada uma única vez Usar o conceito de Banco de Dados Ceça Moraes 6 Banco de Dados Conjunto de dados integrados que atendem a um conjunto de sistemas Banco de dados conseqüências Compartilhamento de dados tem reflexos na estrutura do software Estrutura interna dos arquivos passa a ser mais complexa Devem atender às necessidades dos diferentes sistemas Controle de acesso Sistema de gerenciamento de banco de dados – SGBD Ceça Moraes 8 Evolução do Desenvolvimento de SW Início da programação de aplicações: Programa continha todas operações interface de usuário transformações de dados e cálculos operações de armazenamento de dados tarefas de comunicação com outros sistemas e programas,.... Ceça Moraes 9 Evolução do Desenvolvimento de SW Foram identificadas funcionalidades comuns Exibição dos dados na interface gerenciadores Comunicação gerenciadores de interface de usuário com processos remotos de comunicação Manutenção de grandes repositórios compartilhados de dados Sistemas de gerenciamento de banco de dados (SGBD) Ceça Moraes 10 Sistema de Gerenciamento de Banco de Dados Software que incorpora as funções de definição, recuperação e alteração de dados em um banco de dados Facilita desenvolvimento de aplicações de BD Manutenção de programas torna-se mais simples Produtividade de programadores aumenta Ceça Moraes 11 Modelos de Dados Modelo de (banco de) dados Descrição formal dos tipos de dados que estão armazenados em um banco de dados Exemplo: uma indústria Modelo de dados informa: para cada produto, são armazenados seu código, preço e descrição Modelo quais de dados não informa: os produtos que estão armazenados no BD Ceça Moraes 12 Esquema de Banco de Dados Para construir um modelo de dados usa-se linguagem de modelagem de dados textual gráfica Um modelo de dados pode ser apresentado de várias formas (texto, figura,...) Cada apresentação do modelo recebe a denominação esquema de banco de dados Ceça Moraes 13 Modelo de Dados Níveis de Abstração Ceça Moraes 14 Modelo Conceitual Independente de tipo de SGBD Registra Estrutura dos dados do banco de dados Não registra Como estes dados estão armazenados para um SGBD específico Ceça Moraes 15 Modelo Conceitual Diagrama ER Técnica mais difundida de modelagem conceitual Abordagem (ER) entidade-relacionamento Modelo conceitual é representado através de diagrama entidaderelacionamento (DER) Ceça Moraes 16 Diagrama ER Ceça Moraes 17 Modelo Lógico Nível de abstração visto pelo usuário do SGBD Geralmente os desenvolvedores Dependente do tipo particular de SGBD que está sendo usado Ceça Moraes 18 Modelo Lógico Modelo Lógico 20 Descrição textual do exemplo anterior: 05/11/2015 Modelo Físico Contém detalhes de armazenamento interno de informações Detalhes que Não têm influencia sobre a programação de aplicações no SGBD Influenciam a performance no processamento das aplicações Usados por profissionais que fazem sintonia de performance em banco de dados DBAs Ceça Moraes 21 Processo de Projeto de Banco de Dados Bancos de dados são componentes importantes dos sistemas de informação (SIs) O projeto do banco de dados é uma atividade essencial na fase de desenvolvimento A falta de abordagens adequadas para o projeto: ineficiência em atender a demanda de aplicações problemas com a manutenção dos dados A causa é a falta de clareza em entender a natureza exata dos dados em um nívelCeça Moraes 22 conceitual (abstrato) Processo de Projeto de Banco de Dados Abordagem em etapas: ETAPA 1 – Modelagem Conceitual ETAPA 2 – Projeto Lógico ETAPA 3 – Projeto Físico Ceça Moraes 23 Etapas da Modelagem de BD Análise de Requisitos Modelagem Conceitual Projeto Lógico Projeto Físico BD Ceça Moraes 24 Modelagem Conceitual Análise de Requisitos Modelagem Conceitual Projeto Lógico Projeto Físico BD (1) Descrição de alto nível da estrutura do BD (2) Não contém detalhes de implementação (3) Independente do tipo de SGBD usado (4) Construção de modelos semânticos (5) Ponto de partida do projeto de BD Ceça Moraes 25 Projeto Lógico Análise de Requisitos Modelagem Conceitual Projeto Lógico Projeto Físico BD (1) Descrição da estrutura que pode ser processada pelo SGBD (2) Obtido a partir do mapeamento do modelo conceitual (3) Dependente da classe de modelos de dados utilizada pelo SGBD, mas NÃO do SGBD específico escolhido para a implementação (4) Futuras alterações no modelo lógico devem ser primeiro efetuadas no MC • Retrabalho e refinamento Ceça Moraes 26 constantes Projeto Físico Análise de Requisitos Modelagem Conceitual Projeto Lógico Projeto Físico BD (1) Mapeamento do modelo lógico em um esquema físico de acordo com o SGBD específico (2) Descrição da implementação da base de dados (3) Descreve as estruturas de armazenamento e os métodos de acesso (4) Exemplos: alocação de espaços, particionamento físico das tabelas, etc. Ceça Moraes 27 Processo de Modelagem Considerações O esquema físico do banco de dados é influenciado pelas fases por que passou a construção do banco de dados A fase de projeto conceitual é tida como uma das mais (senão a mais) delicada em todo esse processo A meta é obter um esquema conceitual o mais completo possível Máximo da semântica envolvida na informação Ceça Moraes 28 Processo de Modelagem Considerações Colaboração bilateral Projetista: entender e transformar os requisitos dos usuários em esquemas conceituais. Usuários: descrever suas necessidades e o significado dos dados Ceça Moraes 29 O que vamos fazer..... Ceça Moraes 30 Exercícios Exercício 1.1: A definição do fator de bloco de um arquivo faz parte do modelo conceitual, do modelo lógico ou do modelo físico? Exercício 1.2: A definição do tipo de um dado (numérico, alfanumérico,…) faz parte do modelo conceitual, do modelo lógico ou do modelo físico? Ceça Moraes 31 Referências Heuser, Capítulo 1 Ceça Moraes 32 Referências 33 Projeto de Banco de Dados – Carlos Alberto Heuser, Capítulo 1 05/11/2015