Upload
gean-carlos-pires
View
43
Download
1
Embed Size (px)
Citation preview
Arquitetura Corporativa JEE/GIS para Sistemas de Gestão Estratégica (ERP/GRP)
RAFAEL Almeida Fernandez [email protected]
I Seminário de Geotecnologias Aplicadas à Gestão Estratégica
www.dextra.com.brwww.opengeo.com.br
O que vamos discutir
Panorama atual e importância de um processo de desenvolvimento alinhado com as novas tendencias impostas pelas geotecnologias dentro do contexto dos sistemas corporativos (ERP / GRP)
Arquitetura na plataforma GIS/JEE focado em padrões abertos e interoperabilidade via serviços OWS.
www.dextra.com.brwww.opengeo.com.br
Fase 1 – A necessidade pelo geoprocessamento
Workflow e Regras de Negocio
Processo 1 Processo 2
Departamentos/Seções
Modulo 1 Modulo 2 Modulo 3
Departamento de Geoprocessamento
Analistas e Técnicos em Geoprocessamento
SIG DESKTOP
SIG CRA SIG CRB SIG CRC
Base de Dados Corporativa
Orçamento Financeiro Físico Projetos
Base de Dados Geográfica
Arquivos vetoriais/rasters organizados em
diretórios:
Shapefile, DXF, DWG, DGN, etc.
www.dextra.com.brwww.opengeo.com.br
Evolução dos sistemas corporativos
Base de Dados Corporativa
Workflow e Regras de Negocio
Processo 1 Processo 2
Departamentos/Seções
Modulo 1 Modulo 2 Modulo 3
Base de Dados Geográfica
Departamento de Geoprocessamento
Analistas e Técnicos em Geoprocessamento
Arquivos vetoriais/rasters organizados em
diretórios:
Shapefile, DXF, DWG, DGN, etc.
SIG DESKTOP
SIG CRA SIG CRB SIG CRC
Módulo GEO
Base de Dados GEO
Orçamento Financeiro Físico GISProjetos
www.dextra.com.brwww.opengeo.com.br
Fase 3 – Sistemas de gestão com inteligência geográfica
Orçamento Financeiro Físico Projetos
Workflow e Regras de Negocio
Departamentos/Seções
Departamento 1 Departamento 2 Departamento 3 Analistas e Técnicos em Geoprocessamento
SIG DESKTOP
SIG CRA SIG CRB SIG CRCGEO
Processo 1 Processo 2
Base de Dados Corporativa
Rasters
www.dextra.com.brwww.opengeo.com.br
Mudança de paradigma e novos desafios no processo de desenvolvimento
Análise de Processos Identificação e mapeamento de novas características nos
processos que possuem interação direta/indireta com o geoprocessamento.
Definição de novos artefatos. Adequação de modelos de artefatos existentes. Mudança no modo de pensar dos analistas de processo.
Análise de Requisitos Mudança na metodologia para a elicitação de requisitos funcionais. Novos requisitos não funcionais. Adequação dos artefatos para documentar os requisitos de
geoprocessamento elicitados. Mudança de paradigma por parte dos Analistas de Requisitos.
www.dextra.com.brwww.opengeo.com.br
Mudança de paradigma e novos desafios no processo de desenvolvimento
Arquitetura e Implementação Inclusão de novos componentes na arquitetura. Integração de componentes já existentes com componentes GIS. Inclusão de funcionalidades GIS a componentes já existentes. Abstrair a complexidade das funcionalidades de
geoprocessamento para facilitar o trabalho do desenvolvedor. Mudança de paradigma na modelagem das entidades do sistema.
Teste Integração dos frameworks de teste existentes para ampliar a
cobertura dos testes sob os requisitos de geoprocessamento implementados ou a ser implementar.
www.dextra.com.brwww.opengeo.com.br
Geoprocessamento no âmbito dos sistemas Governamentais
( GRP )Government Resource Planning
www.dextra.com.brwww.opengeo.com.br
E-PING - Padrões de Interoperabilidade de Governo Eletrônico
Conjunto de premissas, politicas e especificações técnicas.
Regulamentação da utilização da Tecnologia da Informação e Comunicação.
Promover a Interoperabilidade de Serviços do Governo Eletrônico.
A primeira versão foi lançada em 2004. Atualmente está na versão 3.9
Tópicos específicos que tratam de padrões abertos voltados a interoperabilidade.
www.dextra.com.brwww.opengeo.com.br
E-PING - Padrões para o intercambio de informações georreferenciadas e armazenamento
GML – Indicado para o intercambio de estruturas vetoriais complexas
Shapefile – Indicado para o intercambio de estruturas vetoriais simples
GeoTIFF – Indicado para o intercambio de estruturas matriciais
SFS – Indicado para as informações geográficas presentes nos bancos de dados espacias.
www.dextra.com.brwww.opengeo.com.br
E-PING - Padrões para prover interoperabilidade entre Sistema de Informação Geográfica
OGC Web Services (OWS) – Todas as especificações OpenGIS que aplicam geoprocessamento e interoperabilidade tendo como principal meio de comunicação a web.
WMS - Web Map Services WFS – Web Feature Services WCS – Web Coverage Services CAT – Catalogue Services
www.dextra.com.brwww.opengeo.com.br
INDE – Infra-Estrutura Nacional de Dados Espaciais
INDE: conjunto integrado de tecnologias; políticas; mecanismos e
procedimentos de coordenação e monitoramento; padrões e
acordos, necessário para facilitar e ordenar a geração, o
armazenamento, o acesso, o compartilhamento, a disseminação e
o uso dos dados geoespaciais de origem federal, estadual,
distrital e municipal.
O compartilhamento e disseminação dos dados geoespaciais e
seus metadados é OBRIGATÓRIO para todos os órgãos e
entidades do Poder Executivo federal e voluntário para os órgãos
e entidades dos Poderes Executivos estadual, distrital e
municipal.
Modelo da CONCAR
www.dextra.com.brwww.opengeo.com.br
Antes de falar sobre arquitetura
“Qual o melhor modelo de arquitetura a ser seguido para a
realização de todos estes requisitos??”
“Qual conjunto de componentes devem ser utilizados para compor
esta arquitetura??”
www.dextra.com.brwww.opengeo.com.br
Premissas da Arquitetura Corporativa OPENGIS
Baseada em padrões e plataformas abertas consagradas pelo
mercado de soluções corporativas. Ex: OGC OPENGIS, JAVA ENTERPRISE EDITION , POSTGRESQL
Aplicação WEB 2.0 independente de plataforma com interface
avançada de visualização e edição de dados georreferenciados.
Orientada a serviços OWS e padrões de interoperabilidade de
informações(tradicionais e geográficas).
Trata a segurança de forma transversal a todos os componentes
do sistema incluindo os serviços e informações geográficas.
Flexível escalável e com altamente disponível.
100% Software Livre sem nenhum custo de licença.
www.dextra.com.brwww.opengeo.com.br
Arquitetura Corporativa JEE/GIS
BANCO DE DADOS
INTEGRAÇÃO PERSISTENCIA
NEGOCIO / SERVIÇOS
APRESENTAÇÃO
MÓDULOESPACIAL
CLIENTESFS
CLIENTEOWS
CLIENTEOWS
CLIENTEOWS
OWS SEGURANÇA
Componentes Tradicionais
Componentes Geoprocessamento
www.dextra.com.brwww.opengeo.com.br
BANCO DE DADOS MÓDULOESPACIAL
Adicionar suporte a utilização de objetos geográficos em
conjunto com os dados tradicionais.
Linguagem de consulta baseada no tradicionais SQL.
Prover estruturas de indexação espacial capaz de otimizar
consultas sobre uma massa de dados substancial.
Suporta a operações topológicas e validações espaciais.
Capaz de realizar transformações de coordenadas em tempo de
consulta.
Fornece uma API genérica para prover a integração com
plataformas de desenvolvimento.
100% Software Livre sem nenhum custo de licença.
Características
www.dextra.com.brwww.opengeo.com.br
Implementa a especificação SFS na integra.
POSTGRES + POSTGIS
www.dextra.com.brwww.opengeo.com.br
Atualmente disponibiliza ~663 funções para geoprocessamento
Implementa estrutura de indexação GIST.
Suporta a operações topológicas e validações espaciais.
Através da biblioteca PROJ4 é possível realizar conversões em
tempo de consulta para mais de 4300 sistemas de coordenadas
diferentes.
Interface ODBC com drivers implementados para diversas
plataformas.
Comunidade de desenvolvedores e patrocínio de diversas
empresas.
Sem custo de licença.
POSTGRES + POSTGIS
www.dextra.com.brwww.opengeo.com.br
A partir de uma base geográfica de municípios vamos extrair a seguinte informação Todos os municípios que possuem relação de vizinhança. A soma das áreas destes municípios tem que ser superior a
10.000.000.000 M2. Os dados estão presentes em formato WGS84 lat/lon. Representação das feições geográficas.
Resposta SELECT DISTINCT m1.nome, m2.nome, m2.uf from municipio m1,
municipio m2 where m1.id != m2.id AND m1.unidade_federativa_fk = 18 AND m2.unidade_federativa_fk = 18 AND ST_TOUCHES(m1.the_geom,m2.the_geom) = TRUE AND (area_square_meters(m1.the_geom) + area_square_meters(m2.the_geom)) > 10.000.000.000
ASKML, ASGML, ASTEXT .....
BDGEO EM AÇÃO 1
www.dextra.com.brwww.opengeo.com.br
Conjunto de dados sobre levantamento de 100.000 loteamentos espalhados dentro do território nacional com o sistema de coordenadas ASTRO CHUÁ
Banco de dados de patrimônio com o sistema de coordenadas SIRGAS2000 precisa agregar estas informações e não possui nenhum tipo de associação de dados.
Soluções 1- Analisar a localização(endereço) de todos os lotes e comparar
com todos os imoveis presentes na base de dados de patrimônio. 2- Utilizar um banco de dados geográfico e fazer um JOIN
TOPOLÓGICO
BDGEO EM AÇÃO 2
www.dextra.com.brwww.opengeo.com.br
SELECT municipio.nome as municipio, mesoregiao.nome as mesoregiao from municipio municipio INNER JOIN mesoregiao mesoregiao ON(ST_CONTAINS(mesoregiao.the_geom,municipio.the_geom) = TRUE) WHERE mesoregiao.uf = 'BA'
BDGEO EM AÇÃO 2
MESOREGIAO MUNICIPIOFK
MESOREGIAO
MUNICIPIO MUNICIPIO
MUNICIPIOMUNICIPIO
www.dextra.com.brwww.opengeo.com.br
Conjunto de padrões definidos pela OGC.
Prover padronização e possibilitar a interoperabilidade dos dados geográficos através do paradigma SOA.
Principais componentes desta especificação Web Map Service Web Feature Service Web Coverage Service
Utiliza a WEB como principal meio de comunicação
OGC WEB SERVICESOWS
www.dextra.com.brwww.opengeo.com.br
EXTRANET
Servidor de Mapas
Define 3 principais operações: Metadados com descrições do serviço Renderiza mapas e retornar uma imagem digital resultante Consulta informações sobre uma determinada feição.
Utilizado para disponibilizar mapas na web
WMS – Web Map Service
WMS
Arquivos Matriciais e Vetoriais
BDGEO
www.dextra.com.brwww.opengeo.com.br
EXTRANET
Servidor de dados vetoriais
Define 2 principais operações: Metadados com descrições do serviço Retorna o conjunto de dados vetoriais para cada feição em formato
GML
Utilizado para troca de dados vetoriais
WFS –Web Feature Service
WFS
Arquivos Vetoriais
BDGEO
www.dextra.com.brwww.opengeo.com.br
MAPSERVER
Ambiente de desenvolvimento para construção de aplicativos espaciais para internet.
Desenvolvido em C/C++ e disponível para hospedagem em servidores de aplicação através do formato CGI.
Utiliza diversas bibliotecas para tratar Dados matriciais Dados vetoriais Transformações espaciais
Implementa os principais padrões OWS (WMS,WFS,WCS,CAT...)
Servidor de mapas opensource mais utilizado do mundo.
www.dextra.com.brwww.opengeo.com.br
GEOSERVER
Servidor OWS em voga no mercado corporativo
Desenvolvido em plataforma JEE.
Utiliza a biblioteca GEOTOOLS como base para o geoprocessamento.
Implementa os principais padrões OWS (WMS,WFS,WCS,CAT...)
Possui uma interface web para a configuração
Na sua ultima versão adicionou suporte a biblioteca GDAL e possui internamente suporte a TILECACHE
www.dextra.com.brwww.opengeo.com.br
JAVA + GIS
GEOTOOLS
HIBERNATE
JSF + OPENLAYERS
www.dextra.com.brwww.opengeo.com.br
OpenLayers
Biblioteca javascript orientada a objetos.
Possibilita o rápido desenvolvimento de interfaces webgis atrelando recursos da WEB 2.0 (AJAX + DHTML).
Abstração da complexidade impostas pelo geoprocessamento.
Cliente de diversos padrões de informação geográfica WMS WFS WCS GOOGLE MAPS VIRTUAL EARTH YAHOO MAPS MAPSERVER OUTRAS
www.dextra.com.brwww.opengeo.com.br
EJB3 + HIBERNATE SPATIAL
GAP Semântico entre o modelo Relacional e o modelo Orientado a Objetos
CROSS SPATIAL DATABASES
Utilização de anotações (JPA)
Geração automática de todo o schema de tabelas, inclusive espaciais
Querys espaciais em linguagem HQL
Possibilita anotações para Validações Topológicas
Produtividade no desenvolvimento de querys complexas
Implementa dialeto Oracle Spatial, PostGIS e MySQL
www.dextra.com.brwww.opengeo.com.br
Exemplos@Entity
@Table(name = "MUNICIPIO")
@SequenceGenerator(name = "SEQ_MUNICIPIO", sequenceName = "SEQ_MUNICIPIO")
public class Municipio extends Auditoria implements Serializable {
private Integer id;
private String nome;
private MicroRegiao microRegiao;
private Geometry feicao;
@Type(type = "br.com.opengeo.java.hbspatial.persistence.GeometryType")
@Column(name = "THE_GEOM", columnDefinition = "Geometry")
@INTERSECT(br.com.opengeo.java.hbspatial.persistence.Municipio)
public Geometry getFeicao() {
return feicao;
}
}
www.dextra.com.brwww.opengeo.com.br
Exemplos
Query q = session.createQuery("from Municipio m , UF uf where within(uf.feicao,m.feicao) = true");
Type geometryType = new CustomType(GeometryUserType.class, null);
List result = q.list();