1.

Slides:



Advertisements
Apresentações semelhantes
01/08/2011 Professor Leomir J. Borba- –
Advertisements

Programa das Aulas 20/09/05 - Apresentação da disciplina
Curso: Banco de Dados I Análise de Sistemas PUC Campinas
Raphael Gatti Thomás Bryan
Introdução a Banco de Dados
Unified Modeling Language (UML) - Modelação da Arquitectura -
1 LEIC, LBD 2002, Gabriel David, Ana Paiva, Luis Paulo Reis Geração da base de dados lógica n A ferramenta de transformação do modelo EA para o modelo.
Dispositivos lógicos programáveis (DLP)
DIAGRAMA DE CLASSES X DIAGRAMA DE ENTIDADES E RELACIONAMENTOS
Circuitos Lógicos Sequenciais
Projeto de Sistemas de Software
Teste em Esquemas de Dados Maria Cláudia Figueiredo Pereira Emer Universidade Federal do Paraná Departamento de Informática Seminário.
Mutação Orientada a Objeto para Assegurar a Qualidade de Testes Baseado no Artigo: Object-Oriented Mutation to Asses the Quality of Tests Anna Derezinska.
Mapeamento Objeto Relacional
Componentes: A Abordagem Catalysis
1 MODELAGEM COM A UML (UNIFIED MODELING LANGUAGE) BREVE HISTÓRICO CARACTERÍSTICAS CONCEITOS DE PROGRAMAÇÃO ORIENTADA A OBJETOS MODELAGEM DE ANÁLISE E DE.
DIAGRAMA DE ATIVIDADES
UML NO PROJETO LÓGICO DE BANCO DE DADOS: 1ª PARTE
DIAGRAMA DE CASOS DE USO PERSPECTIVA CONCEITUAL
April 05 Prof. Ismael H. F. Santos - 1 Módulo II XML Processing: XSLT, SAX e DOM Prof. Ismael H F Santos.
Administração para Engenharia
Introdução a diagrama de classes e UML
Introdução à Modelagem Conceitual 1. Conceitos Básicos
Prof. Alexander Roberto Valdameri
Auditoria de Segurança da Informação
Aula 8 Orientação à Objetos
Composição e Geração de Aplicações usando Aspectos
Roteiro Para o Trabalho do Módulo
Aula 9 Fases do desenvolvimento de software UML Diagramas de classes
Fases do desenvolvimento de software UML
Gerenciamento do Escopo
Classes e objetos Modelagem
Análise de Casos de Uso Alexandre Motnteiro.
Mapeamento de Objetos para Tabelas Relacionais
Administração de Sistemas de Informação Banco de Dados
Monitoria GDI Aula Prática
Engenharia de Requisitos
I- Introdução A Evolução dos Modelos de Dados e dos Sistemas de Gerência de Banco de Dados.
I- Introdução A Evolução dos Modelos de Dados e dos Sistemas de Gerência de Banco de Dados.
Visão Geral do RUP.
Object Oriented Software Construction (MEYER, Bertrand)
Projeto de Sistemas de Software
GAPH Integração de Hardware do Usuário ao CoreConnect Leandro Heleno Möller e Leonel Pablo Tedesco Prototipação Rápida e Computação.
Mapeamento de Objetos para o Modelo Relacional - Introdução
Salas de Matemática.
2.2.1Database System Concepts©Silberschatz, Korth and Sudarshan (Modificado) Capítulo 2: Modelo ER Conjuntos de entidades Conjuntos de relações Aspectos.
Persistência em Software Orientado a Objetos:
Ritornello Um Framework para Representação de Conhecimento Musical
IF696 - Integração de Dados e DW
Planejamento e Gerenciamento
1 1.
Referências: Booch, G. et al. The Unified Modeling Language User Guide
Projeto de Banco de Dados
1 2 Observa ilustração. Cria um texto. Observa ilustração.
Portugal: Convergência Real Para a União Europeia Abel Moreira Mateus Outubro 2000.
1-1 Copyright © Oracle Corporation, All rights reserved. Administrando Objetos de Esquema Este capítulo abordará os seguintes tópicos: Visão geral.
Técnicas e Projeto de Sistemas
BPM BUSINESS PROCESS MANAGEMENT Projecto em Informática e Gestão de Empresas Lisboa, 20 de Junho de 2006.
CALENDÁRIO SEXY Ele & Ela. CALENDÁRIO SEXY Ele & Ela.
Marcio de Carvalho Victorino
Banco de Dados Parte 04 Ceça. Ceça Moraes 2 Conteúdo  Os três níveis da arquitetura  Mapeamentos  Arquitetura cliente-servidor.
Diagramas de Venn e de Carroll Não se chamam propriamente ferramentas/instrumentos estatísticos mas ajudam a organizar de uma forma simples alguns tipos.
Rio Verde - Goiás - Brasil
UML - Unified Modeling Language
Abr-17 Atividades, Artefatos e Responsáveis da Disciplina de Análise e Projeto Fluxo de análise e projeto.
Modelando aspectos de Implementação
Desenvolvimento de Jogos e Entretenimento Digital
H. GalhardasBD 2004/05 Apresentação de Bases de Dados Programa Bibliografia Planeamento teóricas e práticas Avaliação Corpo docente.
Banco de Dados Universidade do Estado de Santa Catarina
Projeto de Arquitetura de Software
Transcrição da apresentação:

1

IN1008 – Projeto Conceitual de BD Mapeamento entre Esquema Conceitual UML e Esquema Lógico por: Erico Augusto C. Guedes eacg@cin.ufpe.br

Roteiro Motivação Conceitos Básicos Estado da Arte Mapeamento Objeto -> Relacional Abordagem Prática(Descrição) Conclusões

Motivação Por que mapear objetos para um banco de dados relacional ? Há uma discrepância entre: Modelo Orientado a Objetos Modelo Entidade-Relacionamento

Motivação Aplicações Existentes Muitas delas lidam com camadas de aplicação complexas, escritas em linguagens de programação OO Contudo, utilizam sistemas de banco de dados relacionais na camada de armazenamento

Objetivo Demonstrar os procedimentos de mapeamento entre: Estruturas do Esquema OO e Esquema ER Esquema Conceitual OO para Esquema Lógico ER Esquema Conceitual OO para Esquema Lógico OO

Conceitos Básicos O que é um Esquema de BD? Descrição de um BD segundo um modelo de dados Ou seja: o esquema é especificado segundo um modelo

Conceitos Básicos Modelo Representação simplificada daquilo que se deseja construir Exemplo:Planta Baixa

Conceitos Básicos Modelo Exemplo:Desenho em Perspectiva

Principais Conceitos Envolvidos UML – Unified Modeling Language Dentre os diversos tipos de diagramas Comporamentais Caso de Uso Estado Atividades Interação Seqüência Comunicação Estrutural Pacote Componente Objeto Classe Super-conjunto do Modelo ER [BOOCH, 1999]

Principais Conceitos Envolvidos Esquema Conceitual UML [BOOCH, 1999]

Principais Conceitos Envolvidos Esquema Lógico UML Apresentam detalhes em um nível suficiente para construir um banco de dados físico [BOOCH, 1999]

Mapeamento Objeto-Relacional Atributo -> Coluna Será mapeado para Zero ou uma coluna do banco de dados relacionais É importante recordar que nem todos os atributos são persistentes.

Mapeamento Objeto-Relacional Mapeando Classes para Tabelas O Mapeamento é direto Contudo, depende da complexidade do sistema Somente modelos muito simples terão um mapeamento 1:1 Como implementar herança? [IBM, 2000]

Mapeamento Objeto-Relacional Implementando Herança em DB Relacional Semelhante ao mapeamento especialização/generalização em MER Usar uma entidade para toda hierarquia de classe Usar uma entidade de dados por classe concreta Usar uma entidade de dados por classe

Mapeamento Objeto-Relacional Uma entidade para toda hierarquia de classe

Mapeamento Objeto-Relacional Uma entidade de dados por classe concreta

Mapeamento Objeto-Relacional Usar uma entidade de dados por classe

Mapeamento Objeto-Relacional Mapeando relacionamentos Há quatro tipos de relacionamentos com os quais um objeto pode estar envolvido Herança Associação

Mapeamento Objeto-Relacional Mapeando relacionamentos Agregação Representa uma relação estrutural entre o todo e suas partes Composição: Relacionamento forte e coincidência de tempo de vida

Mapeamento Objeto-Relacional Mapeando relacionamentos Agregação/Composição Do ponto de vista do banco de dados a diferença entre associação e agregação/composição Quão firmes os objetos estão amarrados Com agregação/composição, qualquer atividade realizada sobre o todo precisa ser feita sobre as partes.

Mapeamento Objeto-Relacional Mapeando relacionamentos Associação Mantidos através de chaves estrangeiras Permitem relacionar linhas de tabelas diferentes

Mapeamento Objeto-Relacional

Abordagem Prática ZOPE + Plone + Poseidon + ArchGenXML Plataforma para desenvolvimento de aplicações WEB Baseada em Geração de Código a partir de modelo Geração de Código a partir do Modelo Lógico Armazenamento Persistente no ZODB Zope Object DataBase Banco de Dados OO

Metodologia Fontes de busca Organização IEEExplore Portal CAPES - ACM Google Organização Arquivo de Metodologia Anotações Gerais

Estado da Arte Estado da arte A maioria dos trabalhos recentes para mapeamento Conceitual -> Lógico Ocorre através da utilização de XML [VARA, 2007] - Model Transformation for Object-Relational Database Development

Conclusões Contribuições Considerações Finais Exposição das diversas formas de mapeamento entre esquema conceitual e esquema lógico Conceitual[OO] -> Lógico[ER] Conceitual[OO] -> Lógico[OO] Considerações Finais O processo de mapeamento pode ser automático Geração via ferramenta Muitos dos sistemas a serem modelados possuirão objetos persistentes, o que significa que eles poderão ser armazenados em um banco de dados para posterior recuperação. Mais frequentemente, será utilizado um banco de dados relacional, um banco de dados orientado a objetos ou um banco de dados híbrido objeto/relacional para armazenamento persistente. UML é adequada para modelar esquemas lógicos de banco de dados, assim como o próprio banco de dados físico. O diagrama de classe UML é um superconjunto dos diagramas E-R. Enquanto que diagramas E-R clássicos são focados apenas nos dados, diagramas de classe vão um passo adiante, permitindo também a modelagem de comportamento. Para modelar um esquema: i. Identifique as classes presentes no modelo cujo estado deve transceder o tempo de vida da aplicação

Conclusões Trabalhos Futuros Explorar as transformações e mapeamentos com a utilização de XML (Projeto Final da Disciplina) Muitos dos sistemas a serem modelados possuirão objetos persistentes, o que significa que eles poderão ser armazenados em um banco de dados para posterior recuperação. Mais frequentemente, será utilizado um banco de dados relacional, um banco de dados orientado a objetos ou um banco de dados híbrido objeto/relacional para armazenamento persistente. UML é adequada para modelar esquemas lógicos de banco de dados, assim como o próprio banco de dados físico. O diagrama de classe UML é um superconjunto dos diagramas E-R. Enquanto que diagramas E-R clássicos são focados apenas nos dados, diagramas de classe vão um passo adiante, permitindo também a modelagem de comportamento. Para modelar um esquema: i. Identifique as classes presentes no modelo cujo estado deve transceder o tempo de vida da aplicação

Referências [BOOCH, 1999] G., RUMBOUGH J., JACOBSON, I. The Unified Modeling Language User Guide. Addison- Wesley. 482p. [SILBERSCHATZ, 2002] A., KORTH H, SUDARSHAN S. Database System Concepts. McGraw-Hill. 1064p. [IBM,2000] Mapping objects to relational databases. Disponível em <http://www- 128.ibm.com/developerworks/library/ws-mapping-to-rdb/>. Acessado em: novembro de 2007. [PLONE, 2007] ArchGenXML 1.x- Getting started. Disponível em: <http://plone.org/documentation/tutorial/archgenxml-getting-started>. Acessado em: dezembro de 2007. [ZOPE, 2007] Zope Project. Disponível em: <http://www.zope.org>. Acessado em: dezembro de 2007. [PLONE, 2007] Plone CMF. Disponível em: <http://www.plone.org>. Acessado em: dezembro de 2007. [VARA, 2007] J. M., et. al. Model Transformation for Object-Relational Database Development. SAC, 2007 Seul. Korea Muitos dos sistemas a serem modelados possuirão objetos persistentes, o que significa que eles poderão ser armazenados em um banco de dados para posterior recuperação. Mais frequentemente, será utilizado um banco de dados relacional, um banco de dados orientado a objetos ou um banco de dados híbrido objeto/relacional para armazenamento persistente. UML é adequada para modelar esquemas lógicos de banco de dados, assim como o próprio banco de dados físico. O diagrama de classe UML é um superconjunto dos diagramas E-R. Enquanto que diagramas E-R clássicos são focados apenas nos dados, diagramas de classe vão um passo adiante, permitindo também a modelagem de comportamento. Para modelar um esquema: i. Identifique as classes presentes no modelo cujo estado deve transceder o tempo de vida da aplicação

30