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

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

1.

Apresentações semelhantes


Apresentação em tema: "1."— Transcrição da apresentação:

1 1

2 IN1008 – Projeto Conceitual de BD
Mapeamento entre Esquema Conceitual UML e Esquema Lógico por: Erico Augusto C. Guedes

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

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

5 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

6 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

7 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

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

9 Conceitos Básicos Modelo Exemplo:Desenho em Perspectiva

10 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]

11 Principais Conceitos Envolvidos
Esquema Conceitual UML [BOOCH, 1999]

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

13 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.

14 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]

15 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

16 Mapeamento Objeto-Relacional
Uma entidade para toda hierarquia de classe

17 Mapeamento Objeto-Relacional
Uma entidade de dados por classe concreta

18 Mapeamento Objeto-Relacional
Usar uma entidade de dados por classe

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

20 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

21 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.

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

23 Mapeamento Objeto-Relacional

24 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

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

26 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

27 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

28 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

29 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, 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 30


Carregar ppt "1."

Apresentações semelhantes


Anúncios Google