Projetar Base de Dados. Copyright © 2002 Qualiti. Todos os direitos reservados. Qualiti Software Processes Projetar base de dados | 2 Objetivos deste.

Slides:



Advertisements
Apresentações semelhantes
Modelo Relacional e Transformação DER x Relacional
Advertisements

Resumo 1.1) Introdução 1.2) Abordagem Convencional de Arquivos
SISTEMAS DE INFORMAÇÃO
Projeto de Banco de Dados
DIAGRAMA DE CLASSES X DIAGRAMA DE ENTIDADES E RELACIONAMENTOS
Maurício Edgar Stivanello
Sistema Gerenciador de Banco de Dados SGBD
Sistema Gerenciador de Banco de Dados SGBD
Mapeamento Objeto Relacional
Professora: Aline Vasconcelos
Org. e Projeto de Banco de Dados
RUP: Fluxo de Análise e Projeto
Gerencia de Projeto OO Aspectos Avançados em Engenharia de Software Aula 5 Fernanda Campos DCC/UFJF.
Mapeamento de Objetos para Tabelas Relacionais
Prof. Alfredo Parteli Gomes
Ana Cecília Martins Barbosa (acmb)
Projetar Serviços Vítor Braga –
SQL Server 2012 Introdução a Modelagem de Dados
Tecnologias de Linguagens para Banco de Dados
Banco de Dados Aplicado ao Desenvolvimento de Software
Banco de Dados Aplicado ao Desenvolvimento de Software - BDD
Sistema de Gerenciamento de Pessoas e Projetos
Arquitetura Orientado a Serviços
Otimizador de consultas
BD.
Prof. Kelly E. Medeiros Bacharel em Sistemas de Informação
BD.
Modelo de Banco de Dados
Análise de Sistemas de Informação
A abordagem de banco de dados para gerenciamento de dados
Abr-17 Atividades, Artefatos e Responsáveis da Disciplina de Análise e Projeto Fluxo de análise e projeto.
Analisar Caso de Uso 10/04/ /04/2017 Analisar caso de uso
Banco de Dados Aplicado ao Desenvolvimento de Software
Objetivos do Capítulo Explicar a importância da implementação de processos e tecnologias de gerenciamento de dados numa organização. Explicar as vantagens.
Campus de Caraguatatuba Aula 2: Introdução a Tecnologia de BD
Projetar Arquitetura. Copyright © 2006 Qualiti. Todos os direitos reservados. Qualiti Software Processes Análise e Projeto OO com UML e Padrões| 2 Objetivos.
Teste.
TECNOLOGIAS E LINGUAGENS PARA BANCO DE DADOS I
Abr-17 Analisar Caso de Uso Analisar caso de uso.
Abr-17 Projetar Processos Projetar distribuição.
1 24/4/ :29 FMU – 1. Semestre – Tecnologia – Analise e Desenvolvimento de Sistemas Professor: Eduardo Silvestri Aluno:Clóvis de Oliveira- RA
Abr-17 Projetar Subsistema Projetar subsistema.
5 - Atividade Projetar Caso de Uso
Fluxo de Análise e Projeto 7 - Atividade Projetar Classes.
Fluxo de Análise e Projeto 6 - Atividade Projetar Subsistema.
Objetos em Bancos de Dados Relacionais Alcides Calsavara.
Abr-17 Projetar Base de Dados Projetar base de dados.
PãoSoft Sistema de Gerenciamento para Panificadora
Copyright © 2006 Qualiti. Todos os direitos reservados. Projetar Classes.
Modelagem Conceitual descreve a informação que o sistema vai gerenciar.
SisCol Modelo de Banco de Dados
Projeto de Banco de Dados
UCSal – Bacharelado em Informática
Banco de dados e tipos de programação
B ANCO DE DADOS Introdução ABTécnico. C ONCEITO É uma coleção de dados interrelacionados, representando informações sobre um domínio específico. Exemplos:
CIn/UFPE – IF696 - Integração de Dados e DW - Prof. Robson Fidalgo  1.
Projetar Cápsulas Parte 1. Copyright © 2002 Qualiti. Todos os direitos reservados. Qualiti Software Processes Projetar cápsulas | 2 Objetivos deste módulo.
Projetar Cápsulas Segunda parte. Copyright © 2002 Qualiti. Todos os direitos reservados. Qualiti Software Processes Projetar cápsulas | 2 Objetivos deste.
Modelo Relacional, Chaves e Relacionamentos
Copyright © 2011 Ramez Elmasri and Shamkant Navathe slide 1 Tópicos  Introdução  Um exemplo  Características da abordagem de banco de dados  Vantagens.
Analisar Caso de Uso. Copyright © 2006 Qualiti. Todos os direitos reservados. Qualiti Software Processes Análise e Projeto OO com UML e Padrões| 2 Objetivos.
/ de Julho de UFPE - Universidade Federal de Pernambuco CIn - Centro de Informática Pós-Graduação em Ciência da Computação Tópicos Avançados.
Modelos de dados.
Analisar Caso de Uso. Copyright © 2002 Qualiti. Todos os direitos reservados. Qualiti Software Processes Analisar caso de uso | 2 Objetivos deste módulo.
Modelo de Banco de Dados Jairo Charnoski Janisson Gois.
Atividades, Artefatos e Responsáveis da Disciplina de Análise e Projeto.
Persistência de dados e padrão DAO
Modelagem de Dados Aula 3.
Prof.: Jean Carlo Mendes
Modelagem de Banco de Dados: Conceitos
Transcrição da apresentação:

Projetar Base de Dados

Copyright © 2002 Qualiti. Todos os direitos reservados. Qualiti Software Processes Projetar base de dados | 2 Objetivos deste módulo Apresentar os passos necessários para realizar a atividade projetar base de dados e discutir seus artefatos Discutir orientações para o mapeamento objeto-relacional

Copyright © 2002 Qualiti. Todos os direitos reservados. Qualiti Software Processes Projetar base de dados | 3 Projetar Base de Dados Analisar Casos de Uso Revisar Projeto Projetar Arquitetura Projetista de Banco de Dados Arquiteto de Software Revisor de projeto Projetar Casos de Uso Projetar Subsistemas Projetar Base de Dados Analista de Sistemas Projetar Cápsulas

Copyright © 2002 Qualiti. Todos os direitos reservados. Qualiti Software Processes Projetar base de dados | 4 Projetar Base de Dados Analisar Casos de Uso Revisar Projeto Projetar Arquitetura Projetista de Banco de Dados Arquiteto de Software Revisor de projeto Projetar Casos de Uso Projetar Subsistemas Projetar Base de Dados Analista de Sistemas decisões do arquiteto Projetar Cápsulas

Copyright © 2002 Qualiti. Todos os direitos reservados. Qualiti Software Processes Projetar base de dados | 5 O que foi feito até agora Identificação das classes de análise, seus atributos, responsabilidades e relacionamentos Mapeamento das classes de análise em elementos de projeto Identificação das oportunidades de reuso Definição da organização do sistema Definição da distribuição do sistema Refinamento das realizações dos casos de uso (substituição dos elementos de análise por elementos de projeto) Modelagem dos subsistemas Projeto detalhado de classes

Copyright © 2002 Qualiti. Todos os direitos reservados. Qualiti Software Processes Projetar base de dados | 6 Objetivos desta atividade Definir as estruturas que serão usadas para armazenar os dados persistentes, de acordo com o meio de armazenamento adotado Otimizar essas estruturas de acordo com os requisitos não funcionais do projeto e estimativas do volume de dados a ser manipulado

Copyright © 2002 Qualiti. Todos os direitos reservados. Qualiti Software Processes Projetar base de dados | 7 Considerações Vamos assumir um SGBD relacional como meio de armazenamento Passos para bancos orientados a objetos são similares; passos para outros meios de armazenamento não estão contemplados Levar em conta o modelo corporativo da instituição e regras de nomenclatura Sugestões para aumentar desempenho devem ser discutidas com o projetista responsável

Copyright © 2002 Qualiti. Todos os direitos reservados. Qualiti Software Processes Projetar base de dados | 8 Visão geral dos artefatos Projeto de Banco de Dados Projetista de Banco de Dados Projetar Base de Dados Requisitos Não Funcionais Modelo de Análise e Projeto

Copyright © 2002 Qualiti. Todos os direitos reservados. Qualiti Software Processes Projetar base de dados | 9 Passos para Projetar base de dados 1. Mapear classes persistentes 2. Mapear relacionamentos das classes persistentes 3. Identificar índices 4. Definir restrições de integridade 5. Definir características de armazenamento 6. Criar estruturas de armazenamento

Copyright © 2002 Qualiti. Todos os direitos reservados. Qualiti Software Processes Projetar base de dados | 10 Passo 1. Mapear classes persistentes Mapear atributos em colunas Mapear classes em tabelas Identificar chaves

Copyright © 2002 Qualiti. Todos os direitos reservados. Qualiti Software Processes Projetar base de dados | 11 Mapear atributos em colunas Regra geral - mapear diretamente ­ cada atributo transforma-se em uma coluna Atributos complexos - como mapear?

Copyright © 2002 Qualiti. Todos os direitos reservados. Qualiti Software Processes Projetar base de dados | 12 Mapear atributos em colunas Mapeamento de atributos complexos

Copyright © 2002 Qualiti. Todos os direitos reservados. Qualiti Software Processes Projetar base de dados | 13 Mapear atributos em colunas Considerar também os valores máximos e mínimos para cada atributo O atributo pode ser chave? ­ Preferencialmente, um único atributo para chave ­ Chaves devem ser estáveis! ­ Colunas com valores seqüenciais gerados automaticamente

Copyright © 2002 Qualiti. Todos os direitos reservados. Qualiti Software Processes Projetar base de dados | 14 Mapear classes em tabelas Analisar as classes persistentes O mapeamento dificilmente será direto ­ hierarquias de classes

Copyright © 2002 Qualiti. Todos os direitos reservados. Qualiti Software Processes Projetar base de dados | 15 Pessoa nome endereco telefone Fornecedor produto Funcionario salario dataInicio horasTrabalhadas Mapear classes em tabelas Como mapear?

Copyright © 2002 Qualiti. Todos os direitos reservados. Qualiti Software Processes Projetar base de dados | 16 Mapear classes em tabelas Estratégias de mapeamento ­ uma única tabela para todas as classes da hierarquia ­ uma tabela para cada classe da hierarquia ­ uma tabela para cada classe concreta da hierarquia

Copyright © 2002 Qualiti. Todos os direitos reservados. Qualiti Software Processes Projetar base de dados | 17 Mapear classes em tabelas Diagrama de classes Uma única tabela para todas as classes da hierarquia Uma tabela para cada classe da hierarquia Uma tabela para cada classe concreta da hierarquia Funcionario pessoaID (PK,FK) salario dataInicio Pessoa pessoaID (PK) nome endereco telefone Fornecedor pessoaID (PK,FK) produto Pessoa nome endereco telefone Fornecedor produto Funcionario salario dataInicio horasTrabalhadas Fornecedor pessoaID (PK) nome endereco telefone produto Funcionario pessoaID (PK) nome endereco telefone salario dataInicio Pessoa pessoaID (PK) nome endereco telefone produto salario dataInicio tipoDoObjeto

Copyright © 2002 Qualiti. Todos os direitos reservados. Qualiti Software Processes Projetar base de dados | 18 Passo 2. Mapear relacionamentos das classes persistentes Relacionamentos 1 para 1 Relacionamentos 1 para muitos Relacionamentos muitos para muitos

Copyright © 2002 Qualiti. Todos os direitos reservados. Qualiti Software Processes Projetar base de dados | 19 Relacionamentos 1 para 1 Como mapear?

Copyright © 2002 Qualiti. Todos os direitos reservados. Qualiti Software Processes Projetar base de dados | 20 Relacionamentos 1 para 1 Chaves estrangeiras - FK (foreign key) ­ se as classes tiverem relacionamentos com outras classes Fusão das tabelas ­ se uma das classes for não persistente A decisão é caso-a-caso

Copyright © 2002 Qualiti. Todos os direitos reservados. Qualiti Software Processes Projetar base de dados | 21 Relacionamentos 1 para 1 Funcionario salario dataInicio CartaoPonto horasTrabalhadas Mapeamento usando chaves estrangeiras Mapeamento usando fusão de tabelas Funcionario pessoaID (PK) salario dataInicio CartaoPonto cartaoPontoID (PK) horasTrabalhadas pessoaID (FK) Funcionario pessoaID (PK) salario dataInicio horasTrabalhadas

Copyright © 2002 Qualiti. Todos os direitos reservados. Qualiti Software Processes Projetar base de dados | 22 Relacionamentos um para muitos Como mapear?

Copyright © 2002 Qualiti. Todos os direitos reservados. Qualiti Software Processes Projetar base de dados | 23 Relacionamentos um para muitos Mapeados através de chaves estrangeiras A chave estrangeira é inserida na tabela com multiplicidade * do relacionamento Atividade atividadeID (PK) nome pessoaID (FK) Funcionario pessoaID (PK) salario dataInicio

Copyright © 2002 Qualiti. Todos os direitos reservados. Qualiti Software Processes Projetar base de dados | 24 Relacionamentos muitos para muitos Precisam de uma tabela extra para representar a associação Cliente clienteID (PK) nome telefone enderecoResidencial ClienteConta clienteID (FK) contaID (FK) Conta contaID (PK) numero saldo Conta numero saldo Cliente nome telefone enderecoResidencial : Endereco 1..*

Copyright © 2002 Qualiti. Todos os direitos reservados. Qualiti Software Processes Projetar base de dados | 25 Passo 3. Identificar índices Otimização de consultas Custo extra na inclusão, remoção e atualização de dados ­ Não aconselhável em tabelas pequenas

Copyright © 2002 Qualiti. Todos os direitos reservados. Qualiti Software Processes Projetar base de dados | 26 Que colunas indexar? Chaves primárias são sempre indexadas Consultas x operações de manutenção (inclusão/atualização/remoção de dados) Analisar descrições dos casos de uso e requisitos não funcionais ­ freqüência das operações ­ requisitos de desempenho

Copyright © 2002 Qualiti. Todos os direitos reservados. Qualiti Software Processes Projetar base de dados | 27 Passo 4. Definir restrições de integridade Definir restrições sobre as informações que serão armazenadas. Definir se serão utilizados ou não os recursos do SGBD para implementação das restrições Determinar como essas restrições serão implementadas (triggers, procedures, etc.)

Copyright © 2002 Qualiti. Todos os direitos reservados. Qualiti Software Processes Projetar base de dados | 28 Passo 5. Definir características de armazenamento Definição de requisitos de espaço e organização física para o banco de dados ­ Densidade das informações nas páginas de disco ­ Localização das páginas de disco através de drivers de disco ­ Espaço em disco alocado para as estruturas de dados

Copyright © 2002 Qualiti. Todos os direitos reservados. Qualiti Software Processes Projetar base de dados | 29 Passo 6. Criar estruturas de armazenamento Normalmente é feito por um DBA Usar ferramenta como apoio Envolve: ­ criar a base de dados, tabelas, colunas, etc. ­ definir índices para as chaves primárias e restrições de integridade para chaves primárias e estrangeiras (se a ferramenta não criar automaticamente) ­ restrições relacionadas a regras de negócio não são implementadas pelo banco ­ popular tabelas de referência (ex.: estados do brasil)

Copyright © 2002 Qualiti. Todos os direitos reservados. Qualiti Software Processes Projetar base de dados | 30 Passos realizados nesta atividade 1. Mapear classes persistentes 2. Mapear relacionamentos das classes persistentes 3. Identificar índices 4. Definir restrições de integridade 5. Definir características de armazenamento 6. Criar estruturas de armazenamento

Projetar Base de Dados