A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

I- Introdução A Evolução dos Modelos de Dados e dos Sistemas de Gerência de Banco de Dados.

Apresentações semelhantes


Apresentação em tema: "I- Introdução A Evolução dos Modelos de Dados e dos Sistemas de Gerência de Banco de Dados."— Transcrição da apresentação:

1 I- Introdução A Evolução dos Modelos de Dados e dos Sistemas de Gerência de Banco de Dados

2 Sumário I.1 Um Hiato entre Especificação e Implementação I.2 Especificação: Evolução dos Modelos Conceituais I.3 Implementação: Evolução dos Modelos Lógicos I.4 Projeto de Sistemas Baseados em SGBDs

3 I.1 Um Hiato entre Especificação e Implementação

4 Especificação Implementação

5 Nível de Abstração Especificação (Modelagem Conceitual) Implementação (Modelagem Lógica) Modelo de Entidade e Relacionamento Modelo de Objeto Modelo Relacional Modelo Objeto- Relacional

6 I.2 Especificação: Evolução dos Modelos Conceituais

7 Modelo de Entidade e Relacionamento Idéia Básica: Entidade –Atributos simples –Relacionamento entre entidades Instâncias de Entidades Associações entre instâncias de entidades Comportamento? (Modelo Estático)

8 Modelo de Objeto Idéia Básica: Objeto –Atributos complexos ou estruturados –Atributos coleção Exemplo: Conjunto –Atributo Identidade (OID) Transparente Independente de aplicação –Associações entre objetos Se um objeto A está associado a um objeto B, então A deve fazer referência ou apontar para B, ou A contém o OID de B –Comportamento Operações (Métodos) –Repositório dos objetos de uma classe

9 Modelo de Objeto (2) Classe de objeto –Atributos Atributo(s) chaves –Métodos –Relacionamentos entre classes de objeto –Repositório de objetos da classe

10 Modelo de Objeto (3) Classe de Objeto –Classe Estudante Atributos –Matrícula > –Nome –Endereço »Rua »Número »Bairro »Cep Prefixo Sufixo –Data_nasc –Historico_escolar »Conjunto Disciplinas_feitas Referência_disciplina, período, media_final, status

11 Modelo de Objeto (4) Classe de Objeto –Classe Estudante Métodos –CRE –Sufixo do CEP –Emissão do Histórico Escolar –... Relacionamentos –Matriculado em Disciplina Repositório: Estudantes

12 Modelo de Objeto (5) Multiplicidades de Relacionamentos –1:1 –1:N –M:N

13 Modelo de Objeto (6) Hierarquia de Classe –É possível declarar uma classe S como uma subclasse de outra classe C. Neste caso, S herda todas as propriedades da classe C, isto é, os atributos, os métodos, e os relacionamentos de C.

14 Modelo de Objeto (7) Hierarquia de Classe –S pode ter seus próprios atributos, suas próprios operações, seus próprios relacionamentos e seu próprio repositório (S é uma extensão de C). – Exemplo: a classe Estudante é uma subclasse de Pessoa –Relacionamento Subclasse é_um(a) (Sub)Classe –Multiplicidade 1:1

15 Modelo de Objeto (8) Métodos –Métodos de Instância Aplicáveis a um único objeto Exemplo: est.disciplinas_em_curso(), aplicável a um objeto da classe estudante (est é um objeto da classe Estudante) Parâmetro de entrada implícito: objeto self ou this –Métodos de Classe Não pode fazer referência a objeto self ou this Exemplo: Estudante.número_estudantes()

16 Modelo de Objeto (9) Métodos Assinatura (Interface) de Métodos –Uma assinatura de um método (ou interface) compreende: O nome Os parâmetros O tipo do valor de retorno (opcional) Comentários sobre a lógica do método Corpo (Código)

17 Modelo de Objeto (10) Métodos –Sobrecarga de métodos (Overloading) Métodos de uma classe com o mesmo nome, porém com pelo menos um argumento diferente –imprime_histórico_escolar ( ); –imprime_histórico_escolar (formato: string); Vantagem: Coesão

18 Modelo de Objeto (11) Métodos –Polimorfismo de Métodos Dois métodos, de classes diferentes, são polimorfos se têm a mesma assinatura O conceito de polimorfismo é extremamente útil em hierarquias de classes, mas não é restrito a elas –Aluno_especial é_um Aluno »Aluno_especial.histórico_escolar() »Aluno.histórico_escolar()

19 Modelo de Objeto (12) Agregação/Composição de Classes Relacionamentos especiais É_PARTE_DE Agregação Compartilhamento Exemplo: um objeto da classe Brinquedo é parte de vários objetos da classe Catálogo Composição Não compartilhamento Exemplo: um objeto da classe Departamento é parte de um único objeto da classe Centro Dependência existencial

20 Modelo de Objeto (13) Agregação/Composição de Classes –Brinquedo é-parte-de Catálogo –UML Catálogo Brinquedo * *

21 Modelo de Objeto (14) Agregação/Composição de Classes –Depto é-parte-estrita-de Centro –UML Centro Depto *

22 Modelo de Objeto (15) Uma linguagem de consulta a objetos –Estilo SQL! Qual o histórico escolar do estudante com matrícula 1234? Qual o CRE do estudante 1234? Quais as disciplinas em que o estudante 1234 está matriculado?

23 Modelo de Objeto e UML Pergunta: o que falta à linguagem UML para ela se tornar um completo padrão de BDOO? –Linguagem de consulta a objetos –Descrição textual completa de classes

24 Banco de Dados Orientado a Objeto Esquema de Banco de Dados Orientado a Objeto (BDOO) –Um conjunto de classes persistentes BDOO –Repositórios de classes persistentes –Linguagem declarativa de consulta a objetos

25 Banco de Dados Orientado a Objeto (2) Esquema –Classes Estudante, Disciplina, Curso, … Repositórios –Estudantes: João, Maria, José, … –Disciplinas: BDOO, BDR, … –Cursos: Sistemas Distribuídos e Web, …

26 I.3 Implementação: Evolução dos Modelos Lógicos

27 Modelo Relacional Tipos nativos –INTEGER –REAL –DATE –STRING Esquema de Banco de Dados Relacional (BDR) –Conjunto de tabelas BDR: valores de linhas de tabelas Linguagem de consulta SQL –Operações sobre tabelas relacionais Regras de transformação de esquemas de BDOO em esquemas de BDR –SGBDR: implementa BDRs

28 Modelo OR Tipos nativos –INTEGER –REAL –DATE –STRING –COLEÇÃO ARRAY (padrão SQL99) Oracle 8-9i –VARRAY –NESTED TABLE –APONTADOR (REFERENCE)

29 Modelo OR (2) Tipos Definidos pelo Usuário (Extensibilidade) –Tipos de Objeto Atributos Atributos apontadores, ou referências Métodos –Funções –Procedures –Hierarquias de tipos de objeto –Repositórios de objeto –Typed Table (SQL99, Informix-IBM) –Object Table (Oracle) – Linguagem de consulta SQLOR Extensão da linguagem SQL

30 Banco de Dados Objeto- Relacional Esquema de banco de dados objeto/relacional (BDOR) –Conjunto de tipos de objeto BDOR –Conjunto de Object(Typed) Tables e/ou conjunto de tabelas puramente relacionais Um BDOR estende stricto sensu um BDR Linguagem SQL: operações sobre object(typed) tables e/ou tabelas relacionais Regras de transformação de esquemas de BDOO em esquemas de BDOR SGBDOR: implementa BDORs

31 I.4 Projeto de Banco de Dados

32 Requisitos Esq. Conceitual OO Esq. Lógico R, OR Esq. Físico UML / ODL + OQL (Padrão ODMG p/ SGBDOO) Oracle8-9i; SQL Server;...


Carregar ppt "I- Introdução A Evolução dos Modelos de Dados e dos Sistemas de Gerência de Banco de Dados."

Apresentações semelhantes


Anúncios Google