Uma DSL de Engenharia Reversa para Modelagem de Banco de Dados Relacionais e Geográficos Baseado em...

16
Uma DSL de Engenharia Reversa para Modelagem de Banco de Dados Relacionais e Geográficos Baseado em SQL/SFS João Victor Guinelli Carlos Eduardo Pantoja TURING PROJETO < < >>

Transcript of Uma DSL de Engenharia Reversa para Modelagem de Banco de Dados Relacionais e Geográficos Baseado em...

Uma DSL de Engenharia Reversa para Modelagem de

Banco de Dados Relacionais e Geográficos Baseado em

SQL/SFS

João Victor Guinelli

Carlos Eduardo Pantoja

TURINGPROJETO

<<>>

www.facebook.com/projetoTuring

Roteiro da Apresentação

• Introdução

• Problema

• GenDBMTool

• Objetivo

• Tecnologias Utilizadas

• Exemplo

• Demonstração

• Trabalhos Relacionados

• Conclusão

• Referências

Introdução

www.facebook.com/projetoTuring

A modelagem de banco de dados consiste em criar um modelo abstrato de determinado domínio apoiada por uma metodologia ou uma linguagem de

modelagem.

Em seguida este modelo conceitual é evoluído para um projeto lógico que resultará no projeto físico de banco de dados, que irá gerar efetivamente o

banco de dados a ser implementado [Navathe; Elmasri, 2005].

1

Problema

www.facebook.com/projetoTuring

Contudo, ao se deparar com bancos de dados em funcionamento em uma organização, muitas vezes este pode sofrer alterações e por descuido o modelo

conceitual acaba não sendo atualizado.

Nesses casos é possível utilizar a engenharia reversa, para, a partir do script em SQL/Simple Feature Specification (SFS), gerar o modelo conceitual

correspondente.

2

Trabalhos Relacionados

• MySQL Workbench [MySQL Workbench, 2015]

• gera modelos em Crow's Foot [Halpin, 1999];

• é embutido no SGBD.

• Visio Professional [Visio Professional, 2015]

• é uma ferramenta proprietária;

• também gera modelos baseados em Crow's Foot.

www.facebook.com/projetoTuring

Porém tais ferramentas não flexibilizam na escolha da linguagem de modelagem, obrigando o projetista a se adequar à ferramenta e em ambos

os casos não geram modelos geográficos.

3

GenDBMTool

• uma ferramenta que utiliza a Model-Driven Architecture (MDA) para modelagem ER [Rosa; Pantoja, 2013];

• utiliza um meta-modelo genérico para diversas linguagens de modelagens (relacionais e geográficas);

• Permite a integração de soluções a partir de transformações de modelos;

• Gera artefatos de textos em ANSI SQL e SQL/SFS.

www.facebook.com/projetoTuring 4

Objetivo

www.facebook.com/projetoTuring

O objetivo deste trabalho é desenvolver uma ferramenta para realizar a engenharia reversa de uma codificação em SQL/SFS para

geração automatizada de um modelo conceitual para banco de dados relacionais ou geográficos

5

Metodologia

www.facebook.com/projetoTuring

Figura 1. A engenharia reversa proposta na metodologia.

6

Tecnologias Utilizadas

• Generic Database Metamodel (GEDBM) [Guinelli et al., 2014]

• integra em um único meta-modelo conceitos geográficos e relacionais.

• Xtext

• gera uma Abstract Syntax Tree (AST), que é um modelo que representa o que está sendo descrito pela linguagem SQL.

• Query-View-Transformation (QVT) [OMG, 2011] • é realizado um mapeamento entre o AST e o GEDBM.

www.facebook.com/projetoTuring 7

Exemplo

www.facebook.com/projetoTuring

Figura 2. O script DDL/SQL utilizado e a instância do AST.

8

Exemplo

www.facebook.com/projetoTuring

Figura 3. O modelo conceitual gerado pela ferramenta.

9

Demonstração

www.facebook.com/projetoTuring 10

• Este artigo apresentou uma DSL baseada em SQL/SFS para engenharia reversa de bancos de dados geográficos e relacionais para o Eclipse;

• Utiliza o OMT-G Design para representação de modelos geográficos;

• A DSL gerada permite que o GEDBM seja instanciado automaticamente a partir de script SFS /SQL;

• A utilização do GEDBM como domínio específico de aplicação permite que a engenharia reversa possa ser realizada para diversas linguagens de modelagens relacionais e para modelagens de banco de dados geográficos;

• Permite a adição de novas tecnologias e linguagens devido ao uso da MDA.

Conclusão

www.facebook.com/projetoTuring 11

• expandir a abrangência da DSL para todas as construções relacionais e geográficas;

• desenvolver uma ferramenta gráfica para o Crow's Foot que instancie diretamente o GEDBM;

• adicionar à metodologia o UML GeoFrame.

Trabalhos Futuros

www.facebook.com/projetoTuring 12

Referências

www.facebook.com/projetoTuring

Borges, K. A. V., Davis Jr., C. A., Laender, A. H. F. (2001) “OMT-G: An Object-Oriented Data Model for GeographicApplications”. Geoinformatica, v. 5, n. 3, p. 221-260, 2001.

Elmasri, R., Navathe, S. B. (2005). "Sistemas de banco de dados". Editora Pearson.

Guinelli, J. V., Rosa, A., Pantoja, C. E., Choren, R. (2014). "Uma Metodologia Para Apoio ao Projeto de Banco deDados Geográficos Utilizando a MDA". Em: X Simpósio Brasileiro de Sistemas de Informação, 2014, Londrina: SBC,2014.

Halpin, T. (1999) "Entity Relationship Modeling from an ORM perspective: Part 1".

Martínez, A. O. T. ; Frozza, A. A. (2014) "OMT-G Design: Uma Ferramenta para Modelagem de Dados Espaciais". In:X Escola Regional de Banco de Dados, 2014, São Francisco do Sul: 2014.

MySQL Workbench. Disponível em: http://www.mysql.com/products/workbench/. Acesso em: 14/03/2015.

OMG. (2011) "Meta object facility (MOF) Query/View/Transformation specification.". URL: <http://www.omg.org/spec/QVT/1.1/PDF/ >.

Rosa, A., Pantoja, C. E. (2013). "Uma Ferramenta MDA para Modelagem de Banco de Dados Relacionais". Em: IXEscola Regional de Banco de Dados, Camboriú: 2013.

Visio Professional. Disponível em: < https://products.office.com/pt-br/visio/visio-professional-2013-business-and-diagram-software >. Acessado em: 13/03/2015.

13

[email protected]@cefet-rj.br

TURINGPROJETO

<<>>