SlideShare a Scribd company logo
1 of 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
<<
>>
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 Geographic
Applications”. 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 de
Dados 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: IX
Escola 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
Obrigado!
jvguinelli@gmail.com
pantoja@cefet-rj.br
TURING
PROJETO
<<
>>

More Related Content

Similar to Uma DSL de Engenharia Reversa para Modelagem de Banco de Dados Relacionais e Geográficos Baseado em SQL-SFS

Banco de Dados Ágeis e Refatoração
Banco de Dados Ágeis e RefatoraçãoBanco de Dados Ágeis e Refatoração
Banco de Dados Ágeis e Refatoraçãoelliando dias
 
Uma Extensão MDA para Geração Automática de Codificação SFS para Banco de Dad...
Uma Extensão MDA para Geração Automática de Codificação SFS para Banco de Dad...Uma Extensão MDA para Geração Automática de Codificação SFS para Banco de Dad...
Uma Extensão MDA para Geração Automática de Codificação SFS para Banco de Dad...Carlos Eduardo Pantoja
 
Website Fixie - Metodologia Projeto E
Website Fixie - Metodologia Projeto EWebsite Fixie - Metodologia Projeto E
Website Fixie - Metodologia Projeto EIsabela Loepert
 
Mapas conceituais podem preencher a lacuna semântica entre as necessidades do...
Mapas conceituais podem preencher a lacuna semântica entre as necessidades do...Mapas conceituais podem preencher a lacuna semântica entre as necessidades do...
Mapas conceituais podem preencher a lacuna semântica entre as necessidades do...Paulo Correia
 
Planode Aula
Planode AulaPlanode Aula
Planode Aulasofteam
 
Treinamento ASP.NET 2014
Treinamento ASP.NET 2014Treinamento ASP.NET 2014
Treinamento ASP.NET 2014Eric Gallardo
 
Georreferenciamento das Ocorrencias Públicas
Georreferenciamento das Ocorrencias PúblicasGeorreferenciamento das Ocorrencias Públicas
Georreferenciamento das Ocorrencias PúblicasJoão Carlos Mancuso Jr
 
Db mapeamento relacional
Db mapeamento relacionalDb mapeamento relacional
Db mapeamento relacionalEdvaldo Freitas
 
NoSQL para Desenvolvedores .NET - SQLSaturday #804 - São Paulo
NoSQL para Desenvolvedores .NET - SQLSaturday #804 - São PauloNoSQL para Desenvolvedores .NET - SQLSaturday #804 - São Paulo
NoSQL para Desenvolvedores .NET - SQLSaturday #804 - São PauloRenato Groff
 
Projeto de Banco de Dados - Capítulo 1
Projeto de Banco de Dados - Capítulo 1Projeto de Banco de Dados - Capítulo 1
Projeto de Banco de Dados - Capítulo 1Januário Neto
 
Laboratório Web 2013-2014 - Apresentação Unidade Curricular
Laboratório Web 2013-2014 - Apresentação Unidade CurricularLaboratório Web 2013-2014 - Apresentação Unidade Curricular
Laboratório Web 2013-2014 - Apresentação Unidade CurricularRicardo Pereira Rodrigues
 
Tesi Dados Final
Tesi Dados FinalTesi Dados Final
Tesi Dados Finaljcaroso
 
Interoperabilidade entre bancos de dados
Interoperabilidade entre bancos de dadosInteroperabilidade entre bancos de dados
Interoperabilidade entre bancos de dadospichiliani
 
Interoperabilidade entre bancos de dados
Interoperabilidade entre bancos de dadosInteroperabilidade entre bancos de dados
Interoperabilidade entre bancos de dadospichiliani
 
Php Conf08 Enterprise Patterns
Php Conf08 Enterprise PatternsPhp Conf08 Enterprise Patterns
Php Conf08 Enterprise PatternsWildtech
 
Artigo de Protótipo de Sistema de Gerenciamento de Rotas para Transporte Cole...
Artigo de Protótipo de Sistema de Gerenciamento de Rotas para Transporte Cole...Artigo de Protótipo de Sistema de Gerenciamento de Rotas para Transporte Cole...
Artigo de Protótipo de Sistema de Gerenciamento de Rotas para Transporte Cole...Alessandro Marchi Panaccione
 

Similar to Uma DSL de Engenharia Reversa para Modelagem de Banco de Dados Relacionais e Geográficos Baseado em SQL-SFS (20)

Banco de Dados Ágeis e Refatoração
Banco de Dados Ágeis e RefatoraçãoBanco de Dados Ágeis e Refatoração
Banco de Dados Ágeis e Refatoração
 
Uma Extensão MDA para Geração Automática de Codificação SFS para Banco de Dad...
Uma Extensão MDA para Geração Automática de Codificação SFS para Banco de Dad...Uma Extensão MDA para Geração Automática de Codificação SFS para Banco de Dad...
Uma Extensão MDA para Geração Automática de Codificação SFS para Banco de Dad...
 
Website Fixie - Metodologia Projeto E
Website Fixie - Metodologia Projeto EWebsite Fixie - Metodologia Projeto E
Website Fixie - Metodologia Projeto E
 
Mapas conceituais podem preencher a lacuna semântica entre as necessidades do...
Mapas conceituais podem preencher a lacuna semântica entre as necessidades do...Mapas conceituais podem preencher a lacuna semântica entre as necessidades do...
Mapas conceituais podem preencher a lacuna semântica entre as necessidades do...
 
Planode Aula
Planode AulaPlanode Aula
Planode Aula
 
As bea cad_norma_r2011
As bea cad_norma_r2011As bea cad_norma_r2011
As bea cad_norma_r2011
 
Treinamento ASP.NET 2014
Treinamento ASP.NET 2014Treinamento ASP.NET 2014
Treinamento ASP.NET 2014
 
Georreferenciamento das Ocorrencias Públicas
Georreferenciamento das Ocorrencias PúblicasGeorreferenciamento das Ocorrencias Públicas
Georreferenciamento das Ocorrencias Públicas
 
Oficina cake php
Oficina cake phpOficina cake php
Oficina cake php
 
Db mapeamento relacional
Db mapeamento relacionalDb mapeamento relacional
Db mapeamento relacional
 
NoSQL para Desenvolvedores .NET - SQLSaturday #804 - São Paulo
NoSQL para Desenvolvedores .NET - SQLSaturday #804 - São PauloNoSQL para Desenvolvedores .NET - SQLSaturday #804 - São Paulo
NoSQL para Desenvolvedores .NET - SQLSaturday #804 - São Paulo
 
Projeto de Banco de Dados - Capítulo 1
Projeto de Banco de Dados - Capítulo 1Projeto de Banco de Dados - Capítulo 1
Projeto de Banco de Dados - Capítulo 1
 
Laboratório Web 2013-2014 - Apresentação Unidade Curricular
Laboratório Web 2013-2014 - Apresentação Unidade CurricularLaboratório Web 2013-2014 - Apresentação Unidade Curricular
Laboratório Web 2013-2014 - Apresentação Unidade Curricular
 
Artigo oo em bd
Artigo   oo em bdArtigo   oo em bd
Artigo oo em bd
 
Tesi Dados Final
Tesi Dados FinalTesi Dados Final
Tesi Dados Final
 
Interoperabilidade entre bancos de dados
Interoperabilidade entre bancos de dadosInteroperabilidade entre bancos de dados
Interoperabilidade entre bancos de dados
 
Interoperabilidade entre bancos de dados
Interoperabilidade entre bancos de dadosInteroperabilidade entre bancos de dados
Interoperabilidade entre bancos de dados
 
Aubr 45 apostila
Aubr 45 apostilaAubr 45 apostila
Aubr 45 apostila
 
Php Conf08 Enterprise Patterns
Php Conf08 Enterprise PatternsPhp Conf08 Enterprise Patterns
Php Conf08 Enterprise Patterns
 
Artigo de Protótipo de Sistema de Gerenciamento de Rotas para Transporte Cole...
Artigo de Protótipo de Sistema de Gerenciamento de Rotas para Transporte Cole...Artigo de Protótipo de Sistema de Gerenciamento de Rotas para Transporte Cole...
Artigo de Protótipo de Sistema de Gerenciamento de Rotas para Transporte Cole...
 

More from Carlos Eduardo Pantoja

Integrando a Programação Java com Arduino Utilizando o Javino
Integrando a Programação Java com Arduino Utilizando o JavinoIntegrando a Programação Java com Arduino Utilizando o Javino
Integrando a Programação Java com Arduino Utilizando o JavinoCarlos Eduardo Pantoja
 
Transporte de Agentes Cognitivos entre SMA Usando Framework Jason e o Middlew...
Transporte de Agentes Cognitivos entre SMA Usando Framework Jason e o Middlew...Transporte de Agentes Cognitivos entre SMA Usando Framework Jason e o Middlew...
Transporte de Agentes Cognitivos entre SMA Usando Framework Jason e o Middlew...Carlos Eduardo Pantoja
 
A Heterogeneous Architecture for Integrating Multi-Agent Systems in AmI Systems
A Heterogeneous Architecture for Integrating Multi-Agent Systems in AmI SystemsA Heterogeneous Architecture for Integrating Multi-Agent Systems in AmI Systems
A Heterogeneous Architecture for Integrating Multi-Agent Systems in AmI SystemsCarlos Eduardo Pantoja
 
An Architecture for the Development of Ambient Intelligence Systems Managed b...
An Architecture for the Development of Ambient Intelligence Systems Managed b...An Architecture for the Development of Ambient Intelligence Systems Managed b...
An Architecture for the Development of Ambient Intelligence Systems Managed b...Carlos Eduardo Pantoja
 
Transporte de Agentes Cognitivos entre SMA Distintos Inspirado nos Princípios...
Transporte de Agentes Cognitivos entre SMA Distintos Inspirado nos Princípios...Transporte de Agentes Cognitivos entre SMA Distintos Inspirado nos Princípios...
Transporte de Agentes Cognitivos entre SMA Distintos Inspirado nos Princípios...Carlos Eduardo Pantoja
 
Explorando a Comunicação entre Sistemas Multi-Agentes Embarcados em Ambientes...
Explorando a Comunicação entre Sistemas Multi-Agentes Embarcados em Ambientes...Explorando a Comunicação entre Sistemas Multi-Agentes Embarcados em Ambientes...
Explorando a Comunicação entre Sistemas Multi-Agentes Embarcados em Ambientes...Carlos Eduardo Pantoja
 
Questões de Concursos - Sistemas de Informação (Parte 1)
Questões de Concursos - Sistemas de Informação (Parte 1)Questões de Concursos - Sistemas de Informação (Parte 1)
Questões de Concursos - Sistemas de Informação (Parte 1)Carlos Eduardo Pantoja
 
Integrating Multi-Agent Systems and Internet of Things To Support Ambient Int...
Integrating Multi-Agent Systems and Internet of Things To Support Ambient Int...Integrating Multi-Agent Systems and Internet of Things To Support Ambient Int...
Integrating Multi-Agent Systems and Internet of Things To Support Ambient Int...Carlos Eduardo Pantoja
 
LISA - Laboratório Inteligente de Sistemas Autônomos
LISA - Laboratório Inteligente de Sistemas AutônomosLISA - Laboratório Inteligente de Sistemas Autônomos
LISA - Laboratório Inteligente de Sistemas AutônomosCarlos Eduardo Pantoja
 
Support for the Deployment of Ambient Intelligence Systems Managed by Cogniti...
Support for the Deployment of Ambient Intelligence Systems Managed by Cogniti...Support for the Deployment of Ambient Intelligence Systems Managed by Cogniti...
Support for the Deployment of Ambient Intelligence Systems Managed by Cogniti...Carlos Eduardo Pantoja
 
Suporte à Implementação de Ambientes Inteligentes Gerenciados por Agentes Cog...
Suporte à Implementação de Ambientes Inteligentes Gerenciados por Agentes Cog...Suporte à Implementação de Ambientes Inteligentes Gerenciados por Agentes Cog...
Suporte à Implementação de Ambientes Inteligentes Gerenciados por Agentes Cog...Carlos Eduardo Pantoja
 
Instalação e Manutenção de Computadores
Instalação e Manutenção de ComputadoresInstalação e Manutenção de Computadores
Instalação e Manutenção de ComputadoresCarlos Eduardo Pantoja
 
Desenvolvimento de Uma Smart Home Baseada na Arquitetura ARGO
Desenvolvimento de Uma Smart Home Baseada na Arquitetura ARGODesenvolvimento de Uma Smart Home Baseada na Arquitetura ARGO
Desenvolvimento de Uma Smart Home Baseada na Arquitetura ARGOCarlos Eduardo Pantoja
 
Explorando o Transporte de Agentes Cognitivos entre Sistemas Multi-Agentes Di...
Explorando o Transporte de Agentes Cognitivos entre Sistemas Multi-Agentes Di...Explorando o Transporte de Agentes Cognitivos entre Sistemas Multi-Agentes Di...
Explorando o Transporte de Agentes Cognitivos entre Sistemas Multi-Agentes Di...Carlos Eduardo Pantoja
 
Inside Jason: Experiências no Desenvolvimento de Arquiteturas Customizadas
Inside Jason: Experiências no Desenvolvimento de Arquiteturas CustomizadasInside Jason: Experiências no Desenvolvimento de Arquiteturas Customizadas
Inside Jason: Experiências no Desenvolvimento de Arquiteturas CustomizadasCarlos Eduardo Pantoja
 
Sistema de Controle de Justificativas de Medicamentos Antimicrobianos
Sistema de Controle de Justificativas de Medicamentos AntimicrobianosSistema de Controle de Justificativas de Medicamentos Antimicrobianos
Sistema de Controle de Justificativas de Medicamentos AntimicrobianosCarlos Eduardo Pantoja
 
Prototyping Ubiquitous Multi-Agent Systems: A Generic Domain Approach with Jason
Prototyping Ubiquitous Multi-Agent Systems: A Generic Domain Approach with JasonPrototyping Ubiquitous Multi-Agent Systems: A Generic Domain Approach with Jason
Prototyping Ubiquitous Multi-Agent Systems: A Generic Domain Approach with JasonCarlos Eduardo Pantoja
 
Introdução a Administração e a Economia
Introdução a Administração e a EconomiaIntrodução a Administração e a Economia
Introdução a Administração e a EconomiaCarlos Eduardo Pantoja
 
Managing Natural Resources in a Smart Bathroom Using a Ubiquitous Multi-Agent...
Managing Natural Resources in a Smart Bathroom Using a Ubiquitous Multi-Agent...Managing Natural Resources in a Smart Bathroom Using a Ubiquitous Multi-Agent...
Managing Natural Resources in a Smart Bathroom Using a Ubiquitous Multi-Agent...Carlos Eduardo Pantoja
 

More from Carlos Eduardo Pantoja (20)

Integrando a Programação Java com Arduino Utilizando o Javino
Integrando a Programação Java com Arduino Utilizando o JavinoIntegrando a Programação Java com Arduino Utilizando o Javino
Integrando a Programação Java com Arduino Utilizando o Javino
 
Transporte de Agentes Cognitivos entre SMA Usando Framework Jason e o Middlew...
Transporte de Agentes Cognitivos entre SMA Usando Framework Jason e o Middlew...Transporte de Agentes Cognitivos entre SMA Usando Framework Jason e o Middlew...
Transporte de Agentes Cognitivos entre SMA Usando Framework Jason e o Middlew...
 
A Heterogeneous Architecture for Integrating Multi-Agent Systems in AmI Systems
A Heterogeneous Architecture for Integrating Multi-Agent Systems in AmI SystemsA Heterogeneous Architecture for Integrating Multi-Agent Systems in AmI Systems
A Heterogeneous Architecture for Integrating Multi-Agent Systems in AmI Systems
 
An Architecture for the Development of Ambient Intelligence Systems Managed b...
An Architecture for the Development of Ambient Intelligence Systems Managed b...An Architecture for the Development of Ambient Intelligence Systems Managed b...
An Architecture for the Development of Ambient Intelligence Systems Managed b...
 
Transporte de Agentes Cognitivos entre SMA Distintos Inspirado nos Princípios...
Transporte de Agentes Cognitivos entre SMA Distintos Inspirado nos Princípios...Transporte de Agentes Cognitivos entre SMA Distintos Inspirado nos Princípios...
Transporte de Agentes Cognitivos entre SMA Distintos Inspirado nos Princípios...
 
Explorando a Comunicação entre Sistemas Multi-Agentes Embarcados em Ambientes...
Explorando a Comunicação entre Sistemas Multi-Agentes Embarcados em Ambientes...Explorando a Comunicação entre Sistemas Multi-Agentes Embarcados em Ambientes...
Explorando a Comunicação entre Sistemas Multi-Agentes Embarcados em Ambientes...
 
Questões de Concursos - Sistemas de Informação (Parte 1)
Questões de Concursos - Sistemas de Informação (Parte 1)Questões de Concursos - Sistemas de Informação (Parte 1)
Questões de Concursos - Sistemas de Informação (Parte 1)
 
Integrating Multi-Agent Systems and Internet of Things To Support Ambient Int...
Integrating Multi-Agent Systems and Internet of Things To Support Ambient Int...Integrating Multi-Agent Systems and Internet of Things To Support Ambient Int...
Integrating Multi-Agent Systems and Internet of Things To Support Ambient Int...
 
LISA - Laboratório Inteligente de Sistemas Autônomos
LISA - Laboratório Inteligente de Sistemas AutônomosLISA - Laboratório Inteligente de Sistemas Autônomos
LISA - Laboratório Inteligente de Sistemas Autônomos
 
Support for the Deployment of Ambient Intelligence Systems Managed by Cogniti...
Support for the Deployment of Ambient Intelligence Systems Managed by Cogniti...Support for the Deployment of Ambient Intelligence Systems Managed by Cogniti...
Support for the Deployment of Ambient Intelligence Systems Managed by Cogniti...
 
Suporte à Implementação de Ambientes Inteligentes Gerenciados por Agentes Cog...
Suporte à Implementação de Ambientes Inteligentes Gerenciados por Agentes Cog...Suporte à Implementação de Ambientes Inteligentes Gerenciados por Agentes Cog...
Suporte à Implementação de Ambientes Inteligentes Gerenciados por Agentes Cog...
 
Instalação e Manutenção de Computadores
Instalação e Manutenção de ComputadoresInstalação e Manutenção de Computadores
Instalação e Manutenção de Computadores
 
Desenvolvimento de Uma Smart Home Baseada na Arquitetura ARGO
Desenvolvimento de Uma Smart Home Baseada na Arquitetura ARGODesenvolvimento de Uma Smart Home Baseada na Arquitetura ARGO
Desenvolvimento de Uma Smart Home Baseada na Arquitetura ARGO
 
ContextNet Middleware
ContextNet MiddlewareContextNet Middleware
ContextNet Middleware
 
Explorando o Transporte de Agentes Cognitivos entre Sistemas Multi-Agentes Di...
Explorando o Transporte de Agentes Cognitivos entre Sistemas Multi-Agentes Di...Explorando o Transporte de Agentes Cognitivos entre Sistemas Multi-Agentes Di...
Explorando o Transporte de Agentes Cognitivos entre Sistemas Multi-Agentes Di...
 
Inside Jason: Experiências no Desenvolvimento de Arquiteturas Customizadas
Inside Jason: Experiências no Desenvolvimento de Arquiteturas CustomizadasInside Jason: Experiências no Desenvolvimento de Arquiteturas Customizadas
Inside Jason: Experiências no Desenvolvimento de Arquiteturas Customizadas
 
Sistema de Controle de Justificativas de Medicamentos Antimicrobianos
Sistema de Controle de Justificativas de Medicamentos AntimicrobianosSistema de Controle de Justificativas de Medicamentos Antimicrobianos
Sistema de Controle de Justificativas de Medicamentos Antimicrobianos
 
Prototyping Ubiquitous Multi-Agent Systems: A Generic Domain Approach with Jason
Prototyping Ubiquitous Multi-Agent Systems: A Generic Domain Approach with JasonPrototyping Ubiquitous Multi-Agent Systems: A Generic Domain Approach with Jason
Prototyping Ubiquitous Multi-Agent Systems: A Generic Domain Approach with Jason
 
Introdução a Administração e a Economia
Introdução a Administração e a EconomiaIntrodução a Administração e a Economia
Introdução a Administração e a Economia
 
Managing Natural Resources in a Smart Bathroom Using a Ubiquitous Multi-Agent...
Managing Natural Resources in a Smart Bathroom Using a Ubiquitous Multi-Agent...Managing Natural Resources in a Smart Bathroom Using a Ubiquitous Multi-Agent...
Managing Natural Resources in a Smart Bathroom Using a Ubiquitous Multi-Agent...
 

Recently uploaded

10 - RELOGIO COMPARADOR - OPERAÇÃO E LEITURA.pptx
10 - RELOGIO COMPARADOR - OPERAÇÃO E LEITURA.pptx10 - RELOGIO COMPARADOR - OPERAÇÃO E LEITURA.pptx
10 - RELOGIO COMPARADOR - OPERAÇÃO E LEITURA.pptxVagner Soares da Costa
 
Lista de presença treinamento de EPI NR-06
Lista de presença treinamento de EPI NR-06Lista de presença treinamento de EPI NR-06
Lista de presença treinamento de EPI NR-06AndressaTenreiro
 
Apresentação Manutenção Total Produtiva - TPM
Apresentação Manutenção Total Produtiva - TPMApresentação Manutenção Total Produtiva - TPM
Apresentação Manutenção Total Produtiva - TPMdiminutcasamentos
 
TRABALHO INSTALACAO ELETRICA EM EDIFICIO FINAL.docx
TRABALHO INSTALACAO ELETRICA EM EDIFICIO FINAL.docxTRABALHO INSTALACAO ELETRICA EM EDIFICIO FINAL.docx
TRABALHO INSTALACAO ELETRICA EM EDIFICIO FINAL.docxFlvioDadinhoNNhamizi
 
Calculo vetorial - eletromagnetismo, calculo 3
Calculo vetorial - eletromagnetismo, calculo 3Calculo vetorial - eletromagnetismo, calculo 3
Calculo vetorial - eletromagnetismo, calculo 3filiperigueira1
 
07 - MICRÔMETRO EXTERNO SISTEMA MÉTRICO.pptx
07 - MICRÔMETRO EXTERNO SISTEMA MÉTRICO.pptx07 - MICRÔMETRO EXTERNO SISTEMA MÉTRICO.pptx
07 - MICRÔMETRO EXTERNO SISTEMA MÉTRICO.pptxVagner Soares da Costa
 

Recently uploaded (6)

10 - RELOGIO COMPARADOR - OPERAÇÃO E LEITURA.pptx
10 - RELOGIO COMPARADOR - OPERAÇÃO E LEITURA.pptx10 - RELOGIO COMPARADOR - OPERAÇÃO E LEITURA.pptx
10 - RELOGIO COMPARADOR - OPERAÇÃO E LEITURA.pptx
 
Lista de presença treinamento de EPI NR-06
Lista de presença treinamento de EPI NR-06Lista de presença treinamento de EPI NR-06
Lista de presença treinamento de EPI NR-06
 
Apresentação Manutenção Total Produtiva - TPM
Apresentação Manutenção Total Produtiva - TPMApresentação Manutenção Total Produtiva - TPM
Apresentação Manutenção Total Produtiva - TPM
 
TRABALHO INSTALACAO ELETRICA EM EDIFICIO FINAL.docx
TRABALHO INSTALACAO ELETRICA EM EDIFICIO FINAL.docxTRABALHO INSTALACAO ELETRICA EM EDIFICIO FINAL.docx
TRABALHO INSTALACAO ELETRICA EM EDIFICIO FINAL.docx
 
Calculo vetorial - eletromagnetismo, calculo 3
Calculo vetorial - eletromagnetismo, calculo 3Calculo vetorial - eletromagnetismo, calculo 3
Calculo vetorial - eletromagnetismo, calculo 3
 
07 - MICRÔMETRO EXTERNO SISTEMA MÉTRICO.pptx
07 - MICRÔMETRO EXTERNO SISTEMA MÉTRICO.pptx07 - MICRÔMETRO EXTERNO SISTEMA MÉTRICO.pptx
07 - MICRÔMETRO EXTERNO SISTEMA MÉTRICO.pptx
 

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

  • 1. 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 << >>
  • 2. www.facebook.com/projetoTuring Roteiro da Apresentação • Introdução • Problema • GenDBMTool • Objetivo • Tecnologias Utilizadas • Exemplo • Demonstração • Trabalhos Relacionados • Conclusão • Referências
  • 3. 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
  • 4. 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
  • 5. 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
  • 6. 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
  • 7. 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
  • 8. Metodologia www.facebook.com/projetoTuring Figura 1. A engenharia reversa proposta na metodologia. 6
  • 9. 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
  • 10. Exemplo www.facebook.com/projetoTuring Figura 2. O script DDL/SQL utilizado e a instância do AST. 8
  • 11. Exemplo www.facebook.com/projetoTuring Figura 3. O modelo conceitual gerado pela ferramenta. 9
  • 13. • 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
  • 14. • 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
  • 15. 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 Geographic Applications”. 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 de Dados 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: IX Escola 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