realiza projeto do sistema; prepara testes define regras do negócio usuárioanalista de sistemas...

49

Upload: amelia-faro-palmeira

Post on 07-Apr-2016

215 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: Realiza projeto do Sistema; Prepara testes Define regras do negócio UsuárioAnalista de Sistemas Banco de dados DBA Projeto Lógico/ Físico BD Projeto Conceitual
Page 2: Realiza projeto do Sistema; Prepara testes Define regras do negócio UsuárioAnalista de Sistemas Banco de dados DBA Projeto Lógico/ Físico BD Projeto Conceitual

Realiza projeto do Sistema; Prepara testes

Define regras do negócio

Usuário Analista de Sistemas

Banco de dados

DBAProjeto Lógico/Físico BD

Projeto Conceitual/ Lógico BD

Projetista

Prepara projeto do BDDefine restrições e solução lógica

Atores do Processo

4

5

5

3

21

Page 3: Realiza projeto do Sistema; Prepara testes Define regras do negócio UsuárioAnalista de Sistemas Banco de dados DBA Projeto Lógico/ Físico BD Projeto Conceitual

ANALISTA

Mini-mundo

ModeloLógico

Modelo Físico

ModeloConceitual

Banco de Dados

Realidade

Page 4: Realiza projeto do Sistema; Prepara testes Define regras do negócio UsuárioAnalista de Sistemas Banco de dados DBA Projeto Lógico/ Físico BD Projeto Conceitual

4

Mundo Real

Modelo Conceitual(modelo abstrato dos dados)

Independente do modelo de dados

Independente do SGBD

Modelo Lógico(estrutura dos dados)

Dependente do modelo de dados

Independente do SGBD

Relacional Orientado a Objetos

Objeto-relacional

Modelo Físico Dependente do

modelo de dados Dependente do SGBD

Organisação física dos dados Estruturas de armazenamento de dados Índices de acesso

Médico PacienteConsulta

CRM nome

Médico (CRM, Nome)

Sistema Médico

Page 5: Realiza projeto do Sistema; Prepara testes Define regras do negócio UsuárioAnalista de Sistemas Banco de dados DBA Projeto Lógico/ Físico BD Projeto Conceitual

5

*Modelos de Dados (conceitual)*Entidade-Relacionamento (ER)*Orientado a Objetos (OO)

*Modelos de Dados (lógicos)*Redes*Hierárquico *Relacional*Objeto-relacional*Orientado a Objetos

Modelos mais antigos

Page 6: Realiza projeto do Sistema; Prepara testes Define regras do negócio UsuárioAnalista de Sistemas Banco de dados DBA Projeto Lógico/ Físico BD Projeto Conceitual

=> modelo abstrato que descreve a estrutura de um BD de forma independente de um SGBD particular (restrições impostas por tecnologias, técnicas de implementação ou dispositivos físicos)

Page 7: Realiza projeto do Sistema; Prepara testes Define regras do negócio UsuárioAnalista de Sistemas Banco de dados DBA Projeto Lógico/ Físico BD Projeto Conceitual

*primeira etapa do projeto de um sistema de aplicação em banco de dados

*utilizado para entendimento, transmissão, validação de conceitos, mapeamento do ambiente, diálogo entre usuários e desenvolvedores

Page 8: Realiza projeto do Sistema; Prepara testes Define regras do negócio UsuárioAnalista de Sistemas Banco de dados DBA Projeto Lógico/ Físico BD Projeto Conceitual

AUTOR LIVROescreveN

INFANTIL ADULTO

N

Modelo Entidade-Relacionamento

Page 9: Realiza projeto do Sistema; Prepara testes Define regras do negócio UsuárioAnalista de Sistemas Banco de dados DBA Projeto Lógico/ Físico BD Projeto Conceitual

*Os objetos, suas características e relacionamentos têm uma representação de acordo com as regras de implementação e limitações impostas por algum tipo de tecnologia

*Relacional, Orientada a Objetos, Objeto-Relacional

Page 10: Realiza projeto do Sistema; Prepara testes Define regras do negócio UsuárioAnalista de Sistemas Banco de dados DBA Projeto Lógico/ Físico BD Projeto Conceitual

*Resulta da aplicação de regras de derivação sobre um modelo conceitual

*Nível mais restrito aos desenvolvedores

Page 11: Realiza projeto do Sistema; Prepara testes Define regras do negócio UsuárioAnalista de Sistemas Banco de dados DBA Projeto Lógico/ Físico BD Projeto Conceitual

*descreve as estruturas que estarão contidas no banco de dados, de acordo com as possibilidades permitidas pela abordagem, sem considerar características de armazenamento do SGBD

Page 12: Realiza projeto do Sistema; Prepara testes Define regras do negócio UsuárioAnalista de Sistemas Banco de dados DBA Projeto Lógico/ Físico BD Projeto Conceitual

*é dependente do TIPO/MODELO de dados particular do SGBD que será usado

*Exemplo: Tabela/Relação -> Modelo RelacionalIdentidade Nome Telefone

23470981 Flávio Câmara 21 2386754310876457 Lúcio Maia 81 65439878

65438945 Ana Furtado 83 2256756

19876589 Joana Marques 83 2478976

Page 13: Realiza projeto do Sistema; Prepara testes Define regras do negócio UsuárioAnalista de Sistemas Banco de dados DBA Projeto Lógico/ Físico BD Projeto Conceitual

*partirá do lógico e descreverá as estruturas físicas de armazenamento de dados (tamanho de campos, índices, métodos de acesso do SGBD, etc)*Linguagens e Notações dependem do SGBD*Pode ser necessário o conhecimento do modo físico de implementação das estruturas de dados

Page 14: Realiza projeto do Sistema; Prepara testes Define regras do negócio UsuárioAnalista de Sistemas Banco de dados DBA Projeto Lógico/ Físico BD Projeto Conceitual

*Os objetivos dos modelos são:

*Comunicação com clientes

*pode-se mostrar ao cliente, através de um produto de demonstração, parte ou todo o comportamento externo de um sistema

Page 15: Realiza projeto do Sistema; Prepara testes Define regras do negócio UsuárioAnalista de Sistemas Banco de dados DBA Projeto Lógico/ Físico BD Projeto Conceitual

*Os objetivos dos modelos são:*Visualização:*permite visualizar idéias antes de torná-las concretas

*Redução da complexidade: *os modelos reduzem a complexidade dividindo-a em um pequeno número de coisas importantes a serem tratadas de cada vez

Page 16: Realiza projeto do Sistema; Prepara testes Define regras do negócio UsuárioAnalista de Sistemas Banco de dados DBA Projeto Lógico/ Físico BD Projeto Conceitual

*Representar um ambiente observado*O significado da informação

*Servir de instrumento para comunicação*Favorecer o processo de verificação e validação

Page 17: Realiza projeto do Sistema; Prepara testes Define regras do negócio UsuárioAnalista de Sistemas Banco de dados DBA Projeto Lógico/ Físico BD Projeto Conceitual

*Capturar aspectos de relacionamento entre os objetos observados*Servir de referencial para a geração de estruturas de dados*Estabelecer conceitos únicos a partir de visões diversas

Page 18: Realiza projeto do Sistema; Prepara testes Define regras do negócio UsuárioAnalista de Sistemas Banco de dados DBA Projeto Lógico/ Físico BD Projeto Conceitual

*Histórico:*1976, Peter P. Chen publicou: “The Entity-Relationship Model: Toward the unified view of data”

*Base: Teoria Relacional (Codd, 1970)

Page 19: Realiza projeto do Sistema; Prepara testes Define regras do negócio UsuárioAnalista de Sistemas Banco de dados DBA Projeto Lógico/ Físico BD Projeto Conceitual

*É um modelo de dados conceitual de alto nível, projetado para estar o mais próximo possível da visão que o usuário tem dos dados, não se preocupando em representar como estes dados estarão realmente armazenados.

*É utilizado principalmente durante o processo de projeto de banco de dados

Page 20: Realiza projeto do Sistema; Prepara testes Define regras do negócio UsuárioAnalista de Sistemas Banco de dados DBA Projeto Lógico/ Físico BD Projeto Conceitual

Identifica e modela entidades e relacionamentos, permitindo a especificação de um esquema que represente a estrutura lógica geral do Banco de Dados;

Produz um diagrama fácil de ser entendido pelo usuário final;

Page 21: Realiza projeto do Sistema; Prepara testes Define regras do negócio UsuárioAnalista de Sistemas Banco de dados DBA Projeto Lógico/ Físico BD Projeto Conceitual

ENTIDADE 1 ENTIDADE 2Relacio-namento

Atributo 1

Atributo 2

Page 22: Realiza projeto do Sistema; Prepara testes Define regras do negócio UsuárioAnalista de Sistemas Banco de dados DBA Projeto Lógico/ Físico BD Projeto Conceitual

*ENTIDADES - Representa qualquer “coisa” (concreta ou abstrata) sobre o qual se deseja manter informações.

Ex: Empregado, empresa, consulta, embarque

•São representadas graficamente por um retângulo!

EmbarqueEmpregado

Page 23: Realiza projeto do Sistema; Prepara testes Define regras do negócio UsuárioAnalista de Sistemas Banco de dados DBA Projeto Lógico/ Físico BD Projeto Conceitual
Page 24: Realiza projeto do Sistema; Prepara testes Define regras do negócio UsuárioAnalista de Sistemas Banco de dados DBA Projeto Lógico/ Físico BD Projeto Conceitual

AlunoPessoa Professor

Material Animal Mamífero

Ave Meio de Transporte

Transporte Aéreo

Page 25: Realiza projeto do Sistema; Prepara testes Define regras do negócio UsuárioAnalista de Sistemas Banco de dados DBA Projeto Lógico/ Físico BD Projeto Conceitual

*Entidade *Pode ser interpretada como uma tabela de dados, onde cada linha representa uma instância

Page 26: Realiza projeto do Sistema; Prepara testes Define regras do negócio UsuárioAnalista de Sistemas Banco de dados DBA Projeto Lógico/ Físico BD Projeto Conceitual

*são características, valores descritos, propriedades ou dados associados a uma entidade ou relacionamento. Ex: são atributos da entidade Pessoa: nome, endereço, telefone, ...

*Para cada atributo há um conjunto de valores permissíveis (domínio)

Page 27: Realiza projeto do Sistema; Prepara testes Define regras do negócio UsuárioAnalista de Sistemas Banco de dados DBA Projeto Lógico/ Físico BD Projeto Conceitual

Placa Marca Chassi Proprietário Fabricante AnoJHK-3456 Gol 3KG00324MH9 José Batista Volkswagen 2001MSN-3289 Fiesta 5GH00845MH

8Carla Maia Ford 2002

JHG-5634 Meriva 7JK00887MH8 Ana Gomes Chevrolet 2002

Entidade: Automóvel

Identidade Nome Endereço Telefone Estatura Peso

123567-PB José Batista Dias Rocha, 345 228 9876 1,87 84

675439-CE Maria Costa Beira Mar, 245 246 7854 1,65 60754398-PE Caio Silva Boa Viagem, 234 226 2378 1,70 68

Entidade: Cliente

Page 28: Realiza projeto do Sistema; Prepara testes Define regras do negócio UsuárioAnalista de Sistemas Banco de dados DBA Projeto Lógico/ Físico BD Projeto Conceitual

*Fato ou acontecimento que liga dois objetos existentes no mundo real*são relações ou associações existentes entre entidades*Obs: Verbos expressam fatos

Page 29: Realiza projeto do Sistema; Prepara testes Define regras do negócio UsuárioAnalista de Sistemas Banco de dados DBA Projeto Lógico/ Físico BD Projeto Conceitual

*Pessoa possui automóvel*Professor ensina aluno*Pessoa mora em apartamento*Francisco é casado com Maria*Marcos passeia em um barco*Carla pilota avião*Documento pertence a processo

Page 30: Realiza projeto do Sistema; Prepara testes Define regras do negócio UsuárioAnalista de Sistemas Banco de dados DBA Projeto Lógico/ Físico BD Projeto Conceitual

*Generalização:* Resultado da união de dois ou mais conjuntos de entidades de nível mais baixo produzindo um conjunto de entidades de nível mais alto

*Especialização:* Resultado da separação de um subconjunto de entidades de nível mais alto, formando um conjunto de entidades de nível mais baixo

Page 31: Realiza projeto do Sistema; Prepara testes Define regras do negócio UsuárioAnalista de Sistemas Banco de dados DBA Projeto Lógico/ Físico BD Projeto Conceitual

CLIENTE

PESSOA FÍSICA

PESSOA JURÍDICA

Generalização

Especialização

Page 32: Realiza projeto do Sistema; Prepara testes Define regras do negócio UsuárioAnalista de Sistemas Banco de dados DBA Projeto Lógico/ Físico BD Projeto Conceitual

*Herança de Propriedades*Cada instância da entidade especializada possui, além de suas próprias propriedades, também as propriedades da instância da entidade genérica correspondente*Atributos*Relacionamentos*Generalizações ou especializações

Page 33: Realiza projeto do Sistema; Prepara testes Define regras do negócio UsuárioAnalista de Sistemas Banco de dados DBA Projeto Lógico/ Físico BD Projeto Conceitual

*Herança de Propriedades

CLIENTE

PESSOA FÍSICA

PESSOA JURÍDICA

nomecódigo

RG sexo CGC Tipo de organização

Page 34: Realiza projeto do Sistema; Prepara testes Define regras do negócio UsuárioAnalista de Sistemas Banco de dados DBA Projeto Lógico/ Físico BD Projeto Conceitual

*Total - Para cada instância da entidade genérica, existe sempre uma instância em uma das entidades especializadas

CLIENTE

PESSOA FÍSICA

PESSOA JURÍDICA

t Todo cliente deve ser pessoa física ou jurídica

Page 35: Realiza projeto do Sistema; Prepara testes Define regras do negócio UsuárioAnalista de Sistemas Banco de dados DBA Projeto Lógico/ Físico BD Projeto Conceitual

*Parcial - Nem toda ocorrência da entidade genérica possui correspondente em entidade especializada

FUNCIONÁRIO

MOTORISTA SECRETÁRIA

ptipo

Pode existir funcionário que

não seja motorista nem

secretária

Page 36: Realiza projeto do Sistema; Prepara testes Define regras do negócio UsuárioAnalista de Sistemas Banco de dados DBA Projeto Lógico/ Físico BD Projeto Conceitual

Não há limites no número de níveis hierárquicos

No entanto, atenção quanto ao número de níveis.

Page 37: Realiza projeto do Sistema; Prepara testes Define regras do negócio UsuárioAnalista de Sistemas Banco de dados DBA Projeto Lógico/ Físico BD Projeto Conceitual

37

Os dados e relacionamentos são representados por registros e ligações, respectivamente.

Os registros são organizados como coleções arbitrárias de árvores.

José Figueiras Campinas

900 55

João Laranjeiras Campinas

556 1.000

Antônio Ipê São Paulo

647 5.366

801 10.533647 5.366

Page 38: Realiza projeto do Sistema; Prepara testes Define regras do negócio UsuárioAnalista de Sistemas Banco de dados DBA Projeto Lógico/ Físico BD Projeto Conceitual

*Grau ou CardinalidadeCaracterizam o número mínimo e máximo de instâncias de cada entidade que podem estar associadas através do relacionamento

Page 39: Realiza projeto do Sistema; Prepara testes Define regras do negócio UsuárioAnalista de Sistemas Banco de dados DBA Projeto Lógico/ Físico BD Projeto Conceitual

*Grau ou Cardinalidade

A BR

1. Com quantos elementos de B se relaciona cada um dos elementos de A?2. Dado um elemento de B, com quantos elementos de A ele se relaciona?

Page 40: Realiza projeto do Sistema; Prepara testes Define regras do negócio UsuárioAnalista de Sistemas Banco de dados DBA Projeto Lógico/ Físico BD Projeto Conceitual

*Relacionamento de Um-para-Um (1:1)

PESSOA CERTIDÃODE ÓBITOrecebe

1 1

Page 41: Realiza projeto do Sistema; Prepara testes Define regras do negócio UsuárioAnalista de Sistemas Banco de dados DBA Projeto Lógico/ Físico BD Projeto Conceitual

*Relacionamento de Um-para-Muitos (1:N)

EMPRESA FILIALpossui1 N

onde N = 0, 1 ou mais

Page 42: Realiza projeto do Sistema; Prepara testes Define regras do negócio UsuárioAnalista de Sistemas Banco de dados DBA Projeto Lógico/ Físico BD Projeto Conceitual

*Relacionamento de Muitos-para-Muitos (M:N) ou (N:N)

ATLETA ESPORTEpraticaM N

Page 43: Realiza projeto do Sistema; Prepara testes Define regras do negócio UsuárioAnalista de Sistemas Banco de dados DBA Projeto Lógico/ Físico BD Projeto Conceitual

43

*Gerenciador de arquivos*Gerenciador do banco de dados*Processador de consultas*Pré-compilador da DML*Compilador da DDL*Arquivos de dados*Dicionário de dados*Índices

Page 44: Realiza projeto do Sistema; Prepara testes Define regras do negócio UsuárioAnalista de Sistemas Banco de dados DBA Projeto Lógico/ Físico BD Projeto Conceitual

44

Page 45: Realiza projeto do Sistema; Prepara testes Define regras do negócio UsuárioAnalista de Sistemas Banco de dados DBA Projeto Lógico/ Físico BD Projeto Conceitual
Page 46: Realiza projeto do Sistema; Prepara testes Define regras do negócio UsuárioAnalista de Sistemas Banco de dados DBA Projeto Lógico/ Físico BD Projeto Conceitual

*Dicionários de Dados*Listagem de todos os dados do sistema*Não é um diagrama...

*Fornece uma definição precisa para requisitos*Representam dados de*Entrada de processos*Saída de processos*Componentes de depósitos

Page 47: Realiza projeto do Sistema; Prepara testes Define regras do negócio UsuárioAnalista de Sistemas Banco de dados DBA Projeto Lógico/ Físico BD Projeto Conceitual

*Dicionário de dados define*Significado dos fluxos e depósitos*Descrevem a estrutura de dados compostos

*Porquê?*Tornar formal a notação utilizada em DFD*Dando significado a valores de fluxos e depósitos

*Define regras para valores válidos e inválidos

Page 48: Realiza projeto do Sistema; Prepara testes Define regras do negócio UsuárioAnalista de Sistemas Banco de dados DBA Projeto Lógico/ Físico BD Projeto Conceitual

*Notação de dicionário de dados* = *É composto de

*+*e

*()*Opcional

*{ }*Repetição

*[ ] *Escolha de uma dentre muitas alternativas

****Comentário

*@* Identificador de chave primária

*| *Separador de alternativas na construção [ ]

Page 49: Realiza projeto do Sistema; Prepara testes Define regras do negócio UsuárioAnalista de Sistemas Banco de dados DBA Projeto Lógico/ Físico BD Projeto Conceitual

nome = cortesia + primeiro-nome + (nome-intermediario) + ultimo-nomecortesia = [Sr | Sra | Srs | Sras | Msc. | PhD]primeiro-nome = {caractere-válido}nome-intermediario = primeiro-nomeultimo-nome=primeiro-nomecaractere-valido=[A-Z | a-z | - ]