SOFTWARE LIVRE NA ÁREA DE SIG: FICÇÃO OU REALIDADE?
|
|
- Aníbal Ximenes Padilha
- 8 Há anos
- Visualizações:
Transcrição
1 SOFTWARE LIVRE NA ÁREA DE SIG: FICÇÃO OU REALIDADE? Claudia de Andrade Tambascia, Lin Tzy Li, Marta Duarte Teixeira, Rafael de Melo Cuba e Sandro Danilo Gatti DSSO, SIGPPT. {claudiat,lintzyli,madute,rafael,gatti}@cpqd.com.br Abstract. This article presents main free software projects related to GIS (Geographical Information Systems) area, addressing spatial database, basic tools and applications for mapping and viewing spatial data. This paper will focus on how interoperability concept and international initiatives for open standards have contributed to the growth of GIS free software. Due to the CPqD's large experience in developing coorporative critical mission solutions based on geospatial data processing, mainly in the telecommunications field, it was possible to CPqD to do research in free software and opened standards for geographic information systems. As the result of those studies, a set of tools has been developed, attesting its competence to offer solutions in distinctive projects as city halls, smaller business and telecommunications public politics for the Brazilian Ministry of the Communications through SIGPPT project, which in portuguese stands for geographic information system for telecommunications public politics. Resumo. Este artigo apresenta os principais projetos de software livre na área de SIG (Sistema de Informações Geográficas), abordando banco de dados espaciais, bibliotecas, softwares básicos de infra-estruturas e aplicativos de visualização de mapas. Será dado um foco especial em como conceitos de interoperabilidade e iniciativas internacionais para definição de padrões abertos têm contribuído para o crescimento de software livre na área SIG Sistemas de Informações Geográficas. Com a experiência do CPqD no desenvolvimento de soluções coorporativas e de missão crítica baseadas em manipulação de informações georeferenciadas na área de telecomunicações, foi possível alavancar pesquisas em software livre e padrões abertos para sistemas de informações geográfica. Os impactos desta atuação forneceram ferramental para atuar em projetos de contexto diferenciado do quadro corporativista, como prefeituras, empresas de menor porte e também em políticas públicas de telecomunicações junto ao Ministério das Comunicações através do projeto SIGPPT. 1. Introdução A notícia de que o software livre tem revolucionado o mercado de software já não é mais novidade para a grande maioria de desenvolvedores e usuários de software, principalmente pela gama de produtos opensource, que vão de simples editores de texto a robustos servidores de aplicação.
2 A definição de padrões abertos para Sistemas de Informações Geográficas (SIG), principalmente pelo OpenGeospatial Consortium (OGC) [1], tem possibilitado não apenas a interoperabilidade entre sistemas, no sentido de comunicação e troca de dados, mas também a definição de arquiteturas SIG baseadas em componentes. E é neste aspecto que a combinação software livre e padrões abertos se torna muito interessante para toda comunidade SIG, pois impulsiona o trabalho tanto da comunidade de Software Livre como do OGC, buscando a comprovação prática de suas especificações. Empresas de desenvolvimento de soluções SIG ganham agilidade no processo de implementação e flexibilidade para decidirem onde utilizar software livre em uma solução SIG. Componentes opensource podem ser incorporados como parte de uma solução comercial ou mesmo utilizados na definição de uma arquitetura SIG totalmente opensource. Os resultados das pesquisas apresentados nesse artigo, relacionados a definição de arquiteturas SIG baseadas em componentes e definição de tecnologias envolvidas no desenvolvimento de software livre, agregam valor aos sistemas existentes ao viabilizar o desenvolvimento de aplicações SIG com softwares livres e padrões abertos internacionais para obter interoperabilidade entre sistemas, além da flexibilidade de se compôr uma solução SIG mais adequada através de componentes. Na seção 2 desse artigo será apresentado o conceito de software livre, definições importantes e suas categorias. Na seção 3 será apresentada as tecnologias envolvidas no desenvolvimento de software livre. Na seção 4 será apresentado como construir uma solução SIG utilizando componentes livres. Na seção 5 são detalhados os produtos, componentes e bibliotecas de Software Livre para SIG. Na seção 6 será apresentado a conclusão do trabalho que foi realizado.
3 2. Software Livre O Software Livre (SL) hoje não é mais uma tendência, e sim uma realidade. Sistemas proprietários têm perdido mercado ininterruptamente, e não há mais como ignorar as alterações e mudanças de paradigma que o SL tem feito na computação e até mesmo na sociedade [22]. Diversos fóruns, encontros técnicos, seminários, eventos e projetos de lei em vários países (nos quais o Brasil está inserido) mostram o espaço que o SL tem conquistado e a velocidade com o qual tem angariado adeptos, de diretores de TI a usuários finais, como é o caso do Geoinfo e GeoBrasil, das listas de discussão de Software Livre, etc. O rápido fluxo de informação entre os envolvidos nesse ambiente comumente citado como a sinergia da comunidade de SL e o baixo custo das licenças tem sido as principais alavancas para a disseminação dessa tecnologia. A viabilidade de uso de software livre em projetos críticos, com rígidas exigências de desempenho, escalabilidade, recuperabilidade e disponibilidade já é fato para inúmeros sistemas em operação. Contudo, é importante salientar que uma visão radical nesta questão pode determinar o fracasso de um projeto. Apregoar a eliminação de software pago/proprietário e adoção indiscriminada de software livre pode ser um equívoco, pelo menos no cenário atual. Cada sistema tem suas peculiaridades, necessidades, público alvo, dentre outros requisitos. O SL deve ser considerado como uma possível solução, sem obviamente ignorar suas casuais limitações e dificuldades, como tipos de licença, funcionalidades existentes, nível de suporte técnico e maturidade do produto.
4 2.1. Definições Relacionadas a SL, alguns termos são bastante utilizados, como código fonte, código executável, pacote, licença e distribuição, que serão definidos a seguir Código fonte: código em uma determinada linguagem de programação de alto nível, que pode ser entendida por serem humanos. Código executável: gerado em formato binário para ser executado em um computador. Pacote: programa ou um conjunto de programas/softwares Licença: grau de liberdade que quem adquiriu um produto possui com relação ao seu código. Distribuição: conjunto de pacotes (customizados) disponíveis em meio físico ou para download (baixer localmente) de forma que seja possível a sua instalação em computadores Categoria de softwares Existem diversas categorias de software, seja este livre ou não, que são apresentadas da Tabela 1. Software Livre Software de código aberto Software de domínio público Tabela 1 Definição das categorias de software [16] Permite que qualquer pessoa use, copie e distribua o código original ou com modificações, gratuitamente ou através de uma taxa. Para tal, o código fonte do software deve estar disponível. Deve-se entender livre como liberdade de expressão e não a preço. Programa distribuído com seu respectivo código, de forma que seja possível estudar, entender e alterar este código, dependendo da licença do software. Softwares não associados a nenhum direito autoral (copyright), mas não são necessariamente softwares livres. Se um software é de domínio público e o respectivo código fonte está disponível, trata-se então de um caso especial chamado de software livre non-copylefted.
5 Software Livre Software livre com Copyleft Software livre sem Copyleft Software GPL Sistema GNU Software semi-livre Software particular Permite que qualquer pessoa use, copie e distribua o código original ou com modificações, gratuitamente ou através de uma taxa. Para tal, o código fonte do software deve estar disponível. Deve-se entender livre como liberdade de expressão e não a preço. Método para fazer com que um programa seja considerado livre e garantir que todas suas cópias e redistribuições sejam livres também. Os termos de distribuição de um software copylefted não permitem que pessoas que redistribuam cópias (originais ou modificadas) do software adicionem restrições ao uso. Permite que se distribua e copie o software, possibilitando adicionar restrições ao seu uso. Assim sendo, se um software livre não possui copyleft pode ser que versões modificadas do software tornem-se proprietárias. Licença pública que possui um conjunto de termos de distribuição pra tornar um programa copylefted. Sistema operacional Unix completo e livre. Software que não é considerado livre, mas permite o uso, cópia, distribuição e modificação desde que não haja o propósito de obter lucro. Desenvolvido por um usuário (tipicamente uma empresa), não disponibilizando o código do software para o público. As categorias de software particular são divididas em: software proprietário (precisa comprar licença de uso); freeware (distribuição e uso gratuitos); shareware (livre por um determinado tempo) e software comercial (desenvolvido com o intuito de obter dinheiro). As diferenças entre os termos software livre (free software) e código aberto (open source) tem sido alvo de discussões nos últimos anos. Open Source não é sinônimo para Livre. Software Livre é um termo consagrado, muito bem definido e utilizado. Open Source por outro lado é um termo mercadológico, dando a idéia de que o código fonte está disponível, o que é uma questão muito diferente da "liberdade" defendida pelo software livre. Existem inúmeras formas de utilização de SL dentro dos mais diversos nichos de mercado, englobando ferramentas de desenvolvimento, componente funcional, plataformas, bibliotecas, produtos e fonte de capacitação. Apesar de muitos ainda considerarem SL apenas em sistemas operacionais, dado crescimento da popularidade
6 das distribuições do sistema operacional GNU/Linux, eles não estão restritos a este tipo de software. Dentro de cada uma dessas classificações, os SLs tem características próprias, seja pela licença, seja pela maturidade do software tanto em termos de implementação quanto documentação, seja pelo nicho de mercado que atua ou mesmo pelo suporte informal oferecido pelos usuários através de listas de discussão. Essas características são fundamentais quando da avaliação de um SL, pois produtos com mais funcionalidades podem mostrar-se menos robustos, assim como produtos com licenças menos custosas podem, eventualmente, possuir suporte de pior qualidade. 3. Tecnologias envolvidas no desenvolvimento de software livre 3.1. J2EE A tecnologia J2EE e seu modelo baseado em componente simplificam o desenvolvimento e a distribuição de soluções corporativas. A plataforma J2EE controla a infra-estrutura e suporta os Web Services para permitir o desenvolvimento de aplicações seguras, robustas e interoperante. J2EE prove várias facilidades como: soluções de time do market ; liberdade de escolha de plataforma de execução, pois segue uma especificação implementada por diversos fornecedores; e simplicidade de conectividade, garantindo uma padronização da arquitetura para soluções corporativas através de dois componentes essenciais que são HTTP e XML Arquitetura Uma arquitetura bem pensada e estruturada é essencial para o sucesso de uma aplicação. Os tipos de arquitetura existentes englobam arquitetura centralizada,
7 arquitetura em duas camadas, arquitetura em 3 camadas, arquitetura em 3/4 camadas Web-Based e arquitetura distribuída em n camadas. Atender as pressões do negócio e as pressões tecnológicas é um desafio constante as empresas. Para tanto, requisitos como: melhor flexibilidade, adaptabilidade, manutenabilidade, reusabilidade, aproveitamento do legado, interperabilidade, escalabilidade, robustez e menor tempo de desenvolvimento e risco, são necessários para minimizar as pressões, satisfazendo o que a ISO-9126 caracteriza como qualidade de software. Todas estas características de arquitetura multicamada e modularizada em componentes facilitou o desenvolvimento do movimento de software livre, pois cada pessoa pode se concentrar em fazer uma parte, o que não era muito fácil em uma arquitetura centralizada, e isto se refletiu nos software para SIG. Hoje é possível construir uma solução SIG com componentes livres [17]. 4. Como construir uma solução SIG utilizando componentes livres Conceitualmente, arquiteturas SIG são formadas por vários componentes como sistema de armazenamento de dados espaciais, servidores de mapas e dados e aplicações cliente e Web para visualização e manipulação de dados. Fazendo uma breve análise das arquiteturas SIG existentes, é bem provável que elas difiram entre si na maioria dos seguintes aspectos: representação de estilo, formato dos mapas, representação das geometrias, armazenamento de dados espaciais e formato de imagens raster. Somando a esta série de variáveis as diferentes linguagens de programação, plataformas e interfaces de comunicação, não é difícil compreender porque, na prática, o conceito de reuso de componentes no contexto SIG pareça tão inviável.
8 A definição de padrões abertos para SIG, principalmente pelo OpenGeospatial Consortium (OGC)[1], tem possibilitado não apenas a interoperabilidade entre sistemas, no sentido de comunicação e troca de dados, mas também a definição de arquiteturas SIG baseadas em componentes, conforme ilustrado na Figura 1. Figura 1 Soluções SIG[17] 4.1. Padrões OpenGIS A Figura 2 apresenta os principais padrões definidos pelo OGC, que vem impulsionando o desenvolvimento de componentes de SL para a área de SIG e serão detalhados a seguir. Estes padrões também vem sendo adotado por empresas como Oracle, IBM, Autodesk, ESRI, MapInfo, etc no desenvolvimento de seus produtos, o que torna real a interoperabilidade e a flexibilidade de se combinar diferentes componentes de software que implementam o padrão OpenGIS. Figura 2 Visão geral sobre o uso de padrões OGC em soluções SIG [17]
9 Simple Features (SFS) O objetivo da especificação Simple Features for SQL (SFS) [7][18] é definir um esquema no padrão SQL que suporte o armazenamento, recuperação, consulta e atualização de coleções de objetos (features) geo-espaciais através de uma API ODBC. Um objeto simples (simple feature) possui, segundo a definição da especificação OpenGIS, atributos espaciais e não-espaciais. Atributos espaciais possuem valor geométrico e uma simple feature é baseada em uma geometria bidimensional com interpolação linear entre os vértices Geography Markup Language (GML) GML é uma codificação XML para o transporte e armazenamento de informações geográficas, incluindo tanto as propriedades espaciais quanto as não espaciais de objetos geográficos, também chamados de feições geográficas (geographic features). Feição geográfica é uma representação abstrata dos fenômenos do mundo real e está associada a uma localização relativa à Terra Filter Encoding (Filter) A especificação OGC Filter Encoding define um vocabulário XML para a construção de filtros [4]. Um filtro é uma estrutura utilizada para descrever restrições, formadas por propriedades alfanuméricas e espaciais dos objetos, com o propósito de identificar um subconjunto de um determinado tipo de objeto (feature type) Styled Layer Descriptor (SLD) A especificação Styled Layer Descriptor (SLD) [2][20] considera dois aspectos distintos, que envolvem uma linguagem para representação de estilos e layers e interfaces necessárias para utilização destes conceitos em um servidor de mapas (WMS). O padrão SLD define um esquema XML para representação de layers e estilos.
10 Web Feature Services (WFS) A especificação Web Feature Services [5][19] define interfaces para que dados de um servidor de objetos espaciais (features) possam ser acessados. As requisições e respostas devem ser feitas utilizando-se HTTP. Esquema GML e XML são utilizados para representação de meta-informação e dados, respectivamente. O padrão OGC Filter Encoding é utilizado para representação de consultas. Estes serviços podem ser requisitados por uma aplicação cliente utilizando, respectivamente, as seguintes interfaces definidas pela especificação WFS: GetCapabilities, DescribeFeatureType e GetFeature Transaction WFS (WFS-T) Um servidor de features transacional (WFS-T) implementa todas as interfaces de um servidor Basic WFS e acrescenta suporte a transações, permitindo que features sejam modificadas no servidor Cliente WFS Um cliente WFS é qualquer aplicativo que se comunica com um ou mais servidores WFS utilizando as interfaces definidas no padrão WFS. A partir destas interfaces, é possível criar aplicações para consultar e modificar as features do servidor WFS, conforme ilustrado na Figura 3. Client WFS Request WFS Response Web Feature Server (WFS) Opaque Feature Store Figura 3 Cliente WFS [5][19]
11 Web Map Services (WMS) A especificação Web Map Services [3][19] padroniza interfaces que devem ser utilizadas por clientes para requisitar os mapas aos servidores e o modo como estes servidores devem descrever e retornar estes mapas. É capaz de gerar mapas georreferenciados (como uma imagem ou um conjunto de objetos gráficos), retornar informações sobre objetos apresentados no mapa e descrever quais mapas ele pode produzir e quais podem ou não ter seus objetos consultados, para que um cliente deste servidor saiba quais mapas podem ser solicitados WMS SLD-Enabled O comportamento de um servidor WMS pode ser estendido permitindo que o estilo seja informado na requisição GetMap, dando ao usuário a opção de definir com que aparência os objetos (features) armazenados no servidor devem ser desenhados no mapa. A descrição deste estilo é feita utilizando a linguagem SLD definida pelo OGC na especificação Styled Layer Descriptor, ou seja, um servidor WMS SLD-Enabled recupera as features de um servidor WFS e aplica a definição de estilo, fornecido em formato SLD, gerando um mapa Cliente WMS Um cliente WMS é qualquer aplicação que se comunica com um ou mais servidores de mapas através das interfaces definidas pela especificação WMS. Assim, uma das questões que deve ser tratada por um cliente WMS é organizar as imagens (layers) retornadas pelas requisições GetMap, compondo o mapa, conforme ilustrado na Figura 5. Figura 5 Cliente WMS [3][19]
12 WMS Cascade WMS Cascading é um WMS que disponibiliza acesso a vários outros WMS em um único servidor. Este nível de abstração torna mais simples alterações na configuração dos servidores: sem o conhecimento do cliente, servidores WFS e WMS podem ser adicionados e removidos. Em alguns casos, um WMS Cascading supre algumas deficiências de outros WMS que não podem, por exemplo, publicar dados em determinada projeção ou formato. Um WMS Cascading atua como um cliente para os demais servidores WMS e um servidor para o cliente, conforme ilustrado na Figura 6. Figura 6 WMS Cascade [19] Web Map Context (WMC) A especificação WMS especifica como um determinado servidor de mapas descreve e fornece seus mapas. A especificação OGC Web Map Context (WMC) [12] define como um conjunto de um ou mais mapas provenientes de um ou mais servidores WMS pode ser descrito em um formato independente de plataforma para
13 armazenamento e transmissão. Para isto, é definido um documento XML denominado Context. Um documento Context inclui informações como: servidores que fornecem as layers que compõe o mapa, área geográfica (extent) que deve ser apresentada, sistema de coordenadas de visualização, tamanho do mapa Produtos, componentes e bibliotecas de Software Livre para SIG SGDBs Sistemas Gerenciadores de Banco de Dados MySQL O SGBD MySQL [8][15] surgiu a partir de um grupo de desenvolvedores que havia implementado rotinas de baixo nível (ISAM) e usavam o msql para conectar as tabelas. Após alguns testes, foi verificado a necessidade do desenvolvimento de uma nova interface SQL para o banco de dados a fim de ganhar desempenho e mais flexibilidade, surgindo assim um SGBD com uma arquitetura bem simples e leve, focado no desempenho, no mercado há mais de dez anos. O MySQL disponibiliza um mecanismo de controle de permissões através de máquinas e usuários, além de todo tráfego de dados (senhas, por exemplo) serem criptografados durante a transferência. Em termos de volume dados, há bancos de dados MySQL com mais de tabelas e 5 bilhões de linhas, fato que atesta a capacidade de armazenagem de grande volume de dados. A versão 5.0 do MySQL permite a criação de código armazenado (stored procedures) no servidor de banco de dados, mas a funcionalidade ainda não está madura. O código está sendo desenvolvido de acordo com o SQL:2003. O MySQL possui suporte nativo a tratamento de dados espaciais a partir de versão 4.1, sem a necessidade de nenhuma instalação de módulos adicionais. Contudo,
14 nas versões atuais (5.0 e 4.1) não é possível criar tabelas geo-referenciadas que suportam transação, como tabelas do tipo InnoDB. O MySQL implementa o suporte a dados espaciais seguindo um subconjunto da especificação do OGC SFS [7] PostgreSQL O PostgreSQL [9] é um Sistema de Gerenciamento de Banco de Dados Objeto- Relacional (SGBDOR) baseado no projeto POSTGRES, o qual foi iniciado em 1986 e desenvolvido no departamento de Ciência da Computação da Universidade da Califórnia (Berkeley). O PostgreSQL suporta os padrões SQL92 e SQL99 e funcionalidades importantes, como: chaves estrangeiras, gatilhos, visões, integridade transacional, controle de concorrência com multiversionamento, dentre outras. É possível também criar novos tipos de dados, funções, operadores, funções de agregação, índices e ainda código armazenado (stored procedures) em linguagens como PL/pgSQL, Tcl, Perl e Python. Implementa, também, conceitos de orientação a objetos, como herança, funcionalidade que pode ser usada de forma inteligente e possibilitar a criação de modelos de banco de dados interessantes. Há tipos geométricos nativos, como point, box, lseg, line, path, polygon, e circle, além de inúmeras funções geométricas, operadores para relacionar estes tipos, e funções para conversão de tipos. O PostgreSQL implementa operadores que possibilitam recuperar a distância entre dois objetos, o ponto mais próximo de um objeto dentro de uma região, o centróide de um objeto, verificar se um objeto sobrepõe outro, se são paralelos, está contido, entre outros. Porém, as funcionalidades geométricas podem ser melhoradas se for instalada a
15 extensão PostGIS [10], que adiciona uma série de tipos para manipulação de dados geográficos. Os tipos de dados e funções nativas do PostgreSQL não são suficientes para operações de grande complexidade, além de não contemplarem a especificação do OpenGIS SFS [7]. Sem dúvida, a utilização de PostGIS é a escolha a ser feita quando se pensa em usar o PostgreSQL como SGBD em um ambiente de SIG. A versão 8.0 do PostgreSQL, lançada em abril de 2005, além de estar disponível nativamente para Windows, adiciona savepoints, que permitem que uma transação seja desfeita até determinado checkpoint; point-in-time recovery, que permite backup contínuo do banco de dados e melhora a disponibilidade do sistema; tablespaces, que permitem um melhor gerenciamento dos arquivos de dados e uma grande melhora de desempenho. Estas funcionalidades anteriormente estavam restritas apenas a SGBDs comerciais como o Oracle. Quanto à arquitetura, o PostgreSQL usa o modelo cliente/servidor, de forma que os processos clientes e servidor não precisam necessariamente estar na mesma máquina. Neste caso, eles se comunicam via rede através do protocolo TCP/IP PostGIS Existem alguns tipos e funções para tratamento de dados geográficos já disponíveis no PostgreSQL. Porém, o PostGIS estende o PostgreSQL com funções adicionais, tabelas de metadados e objetos geográficos, tornando o PostgreSQL compatível com a OGC SFS e fazendo-o um SGBD apto para ser utilizado em um SIG [10][15]. É necessário, entretanto, deixar claro que deve-se instalar bibliotecas adicionais para que o PostGIS consiga demonstrar todo o seu potencial, como a biblioteca GEOS, um port C++ da JTS - Java Topology Suit, que oferece suporte às funções definidas no SFS. O PostGIS permite representar objetos em duas e três dimensões, além de poder
16 representá-los nos padrões WKT e WKB, Well-Known Text e Well-Known Binary, respectivamente, ambos padrões especificados pelo OGC. Para carregar dados espaciais para o SGBD, é disponibilizado o aplicativo shp2pgsql, o qual converte ESRI shapefiles para SQL, caso não exista previamente um arquivo SQL com os comandos de inserção (INSERTS). Para recuperar informações geográficas da base de dados pode-se usar comandos SQL ou mesmo o aplicativo pgsql2shp. Em relação à indexação espacial, o PostGIS permite a utilização de índices de árvore R ou índices GiST (Generalized Search Trees). Este último, mais robusto, divide o dado em objetos que estão em um lado, objetos que sobrepõe, objetos que estão contidos e, desta forma, pode ser usado em uma vasta gama de situações. Os dados espaciais podem ser acessados por vários tipos de processos cliente, desde o MapServer até clientes Java (via JDBC). O PostgreSQL/PostGIS, apesar de aceitar tipos de dados espaciais e um conjunto grande de operadores e funções espaciais, ainda não foi certificado como OpenGIS compliant. Agora, com a versão 1.0.0, lançada em 20 de abril de 2005, o PostGIS será submetido aos testes de conformidade à especificação OGC SFS, além de suportar geometrias 4D, novas funções e várias melhorias de desempenho Servidores de Mapas e Dados (WMS e WFS) MapServer O MapServer [11][21] é um ambiente de desenvolvimento open source para aplicações espaciais baseadas em Internet. É baseado em outros sistemas open source como Shapelib, FreeType, Proj.4, GDAL e LibTIFF. Como conseqüência, grande parte das características oferecidas pelo MapServer na verdade são serviços providos por
17 outros sistemas e bibliotecas. Possui uma API em C e uma linguagem chamada MapScript que permite interação com linguagens como TCL, Perl, Python e Java. Há também módulos PHP/MapServer e Perl/MapServer, além da possibilidade de desenvolver aplicações através de JavaScript. A comunidade de software livre também participa ativamente do desenvolvimento do MapServer, além de desenvolver ferramentas para auxiliar na construção de softwares baseados em MapServer A CGI-BIN MapServer, de acordo com as bibliotecas opcionais incorporadas, oferece suporte a: formatos vector como ESRI shapefiles e ESRI ArcSDE; formatos raster como TIFF/GeoTIFF, GIF, PNG, ERDAS, JPEG e EPPL7; indexação espacial através de Quadtree; construção de mapas temáticos utilizando expressões lógicas ou regulares; consultas a bancos de dados como Oracle e sua extensão Oracle Spatial e PostgreSQL com sua extensão PostGis; protocolos OGC WMS (cliente/servidor)[3], WFS (cliente/servidor) não transacional[5], WCS (servidor)[6], WMC[12], SLD[2], GML, Filter Encoding[4], SFS (com PostGIS)[7]; e suporte a dimensão temporal em WMS[3]. Em geral, o MapServer é executado como uma aplicação CGI de um servidor HTTP. Entretanto, em aplicações mais avançadas, pode-se utilizar o MapScript para acessar a API do MapServer diretamente. O seu uso se baseia em uma fonte de dados, em um ou mais arquivos map (mapfile). Os arquivos map possuem uma sintaxe onde se definem as layers, formatação, labels, incorporação de imagens raster, dentre outras características, hierarquicamente organizados. Em resumo, os arquivos map dizem para o MapServer como exibir os dados da fonte.
18 MapServer como Servidor WMS O programa CGI do MapServer pode atuar como servidor WMS. Entretanto isso não é válido para todas as versões ou compilações. Isso pode ser verificado com a chamada ao programa com o parâmetro adequado, que lista as funcionalidades suportadas. Se desta lista existir a expressão SUPPORTS=WMS_SERVER, o programa pode atuar como servidor WMS. Este servidor necessita de um arquivo map da mesma forma que o MapServer convencional, mas com alguns dados e meta-dados obrigatórios MapServer como Servidor WFS Da mesma forma que o servidor WMS, o programa CGI do MapServ pode atuar como servidor WFS. Verificando as funcionalidades suportadas como na seção anterior, a expressão SUPPORTS=WFS_SERVER deve aparecer. Em relação ao mapfile, alguns parâmetros são obrigatórios, principalmente os que definem metadados. A Figura 7 apresenta uma combinação do MapServer WFS e do MarServer WMS. MapServer WFS MapServer WMS Shape Oracle Postgis ArcSDE OGR Raster Internet WMS REMOTE WFS REMOTE Figura 7 - WMS e WMS MapServer[19]
19 Toda a documentação existente é baseada em listas de discussão, HOWTOs e tutoriais existentes na página do MapServer. Embora a documentação seja bem abrangente, está espalhada em vários arquivos distintos, o que dificulta seu uso por um leigo. Os pontos positivos são que o processo de compilação, instalação, e os tutoriais são bem descritos e a comunidade de usuários responde prontamente a quaisquer dúvidas Geoserver Geoserver [23] é uma implementação Java da especificação OGC WFS com suporte completo a transações e um WMS integrado, permitindo que dados sejam recuperados tanto no formato GML (através do WFS) como em imagens (através do WMS). Utiliza a biblioteca Geotools para implementação das interfaces definidas pelo OGC, como por exemplo bibliotecas para representação de features, feature type, filtros, estilo em SLD e acesso a diversas fontes de dados, conforme ilustrado na Figura 8. Geoserver Geotools API Figura 8 - Bibliotecas Getools para acesso aos dados Geoserver WFS Suporta dados do tipo Postgre/PostGIS, Shapefile, Oracle Spatial, ArcSDE, MySQL e WFS Remoto, além de todos os operadores espaciais para base de dados Oracle Spatial e Postgres.
20 Geoserver WMS O Geoserver WMS foi desenvolvido como uma opção para disponibilizar os dados do servidor WFS de forma gráfica. Sua arquitetura é definida e apresentada na Figura 9. Geoserver WFS Geoserver WMS Shape Oracle Postgis MySQL ArcSDE Internet GML WFS REMOTE Figura 9 - Arquitetura de Geoserver e suas fontes de dados Deegree A arquitetura é totalmente baseada nos padrões OGC [17] : dados e metainformação dos objetos representados como feature e feature_type (GML, WFS), geometrias no padrão SFS e estilos no padrão SLD. As bibliotecas externas JTS e Batik são utilizadas, respectivamente, para representação da geometria e processamento de mapas no formato SVG Deegree WFS Trabalha com formatos de dados de entrada: Oracle, Postgres/Postgis, MySQL (com extensão espacial), SDE (ESRI), objetos do tipo ponto armazenados em bancos convencionais (geometria colunas X/Y), objetos com parte espacial representada em GML em bancos convencionais, Shapefiles e MapInfo (MIF). Possui flexibilidade para a definição das features types: as features types são configuradas definindo-se o esquema GML e um arquivo XML de mapeamento entre o
21 esquema GML e esquema de armazenamento. Neste arquivo de mapeamento é possível configurar: nomes das feature types e suas propriedades, feature type com dados em mais de uma tabela Deegree WMS O Deegree WMS utiliza como fonte de dados os serviços dos componentes Deegree WFS e Deegree WCS. O Deegree WMS não acessa a base de dados diretamente. A Figura 10 apresenta a arquitetura do framework. O servidor WMS pode obter dados de WFS e WCS locais, localizados na mesma maquina virtual, ou de WFS, WCS e WMS remotos. Sua arquitetura é detalhada na Figura 10. Deegree WFS Deegree WMS X /Y Oracle Postgis MySQL ArcSDE GML Shape Internet MIF WMS REMOTE WFS REMOTE WCS REMOTE GML Figura 10 - Arquitetura Deegree WMS Clientes MapServer Cliente O MapServer, além de poder ser configurado como servidor WMS e WFS, pode também ser configurado com um cliente WFS e/ou WMS. Por esta razão foi incluído nesta seção, embora não exista uma interface já construída como é o caso do JUMP. Embora várias funcionalidades estejam disponíveis, elas devem ser implementadas, mesmo que em um cliente simples HTML, e previamente configuradas
22 através de um arquivo map. No site do MapServer há um tutorial que explica passo a passo a construção de sistemas simples usando esta abordagem igeoportal igeoportal [26] é um cliente mapas no padrão cliente WMS. O principal ponto positivo do igeoportal é o fato de ele possuir uma arquitetura componentizada, baseada no conceito de módulos, compostos por arquivos HTML e JavaScript. Isso permite que o cliente de mapas seja expandido e adequado de acordo com as necessidades de um projeto específico. A arquitetura foi projetada desde do início utilizando padrões OGC. A configuração do mapa segue o padrão Context. Outro aspecto interessante é o fato dele ter sido projetado desde o início tendo em vista a questão da interoperabilidade (que é alcançada através da adoção dos padrões OGC). Com isso, é possível acessar, através do igeoportal, qualquer servidor de mapas que implemente os protocolos do padrão WMS udig Udig [14], User-friendly Desktop Internet GIS, é um framework Java para desenvolvimento de aplicações SIG desktop. A plataforma do udig é baseada na Eclipse Rich Client Platform (RCP), a qual utiliza conceitos de plug-ins. Desta forma, permite que novos módulos e funcionalidades sejam facilmente incorporados na arquitetura base. A plataforma udig é definida sobre o conceito de plug-ins incorporados a base do Eclipse Rich Client Platform. A arquitetura em três camadas pode é mostrada na Figura 11.
23 Figura 11 - Arquitetura Udig JUMP JUMP [24], Unified Mapping Platform, é um framework Java desenvolvimento de aplicações desktop de visualização e manipulação de dados espaciais. Arquitetura é dividida em duas partes principais JUMP API e JUMP Workbench (GUI), conforme mostrado na Figura 12. Figura 12 - Arquitetura JUMP JUMP API possui um conjunto de APIs para representação de features, entrada e saída de dados e funcionalidades espaciais fundamentais. Geometrias são representados utilizando-se a biblioteca JTS, que implementada modelo espacial OGC SFS. JUMP Workbench fornece interface gráfica de acesso às funcionalidades disponibilizadas pelas APIs. Novos módulos podem implementados utilizando as APIs disponíveis e incorporados à solução utilizando o Plugin Framework.
24 Bibliotecas Geotools Geotools [23] é um conjunto de APIs Java que pode ser utilizado para o desenvolvimento de soluções SIG em conformidade com o padrão OGC. Não é objetivo do projeto Geotools desenvolver aplicações, como por exemplo servidores WMS e WFS ou cliente Mapas, e sim disponibilizar bibliotecas que possam ser utilizadas para este fim. A arquitetura é modularizada o que permite que novas funcionalidades sejam facilmente incorporadas as bibliotecas. Além dessas bibliotecas, também foram desenvolvidos outros componentes que podem ser utilizados em soluções SIG: análise em redes, manipulação de grid e imagens e componentes para criação de uma aplicação SIG (applet) JTS JTS Topology Suite [25] é uma API Java que implementa o modelo geométrico para objetos espaciais definido na especificação Simple Features Specification for SQL e funções espaciais sobre este modelo. Muitas funções espaciais já estão implementas: intersecção, diferença, união, buffer, convex hull, calculo de área e distância, validação topológica. JTS é uma biblioteca robusta que pode ser utilizada no desenvolvimento de outras aplicações espaciais como. Uma série de outros projetos opensource fazem uso desta biblioteca, entre eles estão Geotools, udig, Geoserver, Deegree e JUMP TerraLib O TerraLib [13] é uma biblioteca de classes e funções para SIG, desenvolvidas pelo INPE (Instituto Nacional de Pesquisas Espaciais), PUC-Rio e FUNCATE. Dentre outras características, permite a espacialização de bancos de dados que não suportam nativamente dados espaciais ou a extensão das capacidades espaciais de SGBDs como
25 MySQL, PostgreSQL e Oracle, através da definição de um modelo de dados geográficos e um conjuntos de funções externas ao SGBD. As funções englobam algoritmos de estatística espacial, processamento de imagens, projeções cartográficas, dentre outros. As funções são escritas em ANSI C++ e buscam implementar os últimos avanços da tecnologia de SIG. A compilação pode ser feita em ambiente Windows, usando Microsoft Visual C++ 6 ou.net, ou em Linux, com gcc versão ou superior. A biblioteca e o modelo de dados empregado está passando por um grande esforço de documentação, visando melhorar seu uso por programadores que queiram iniciar no uso da ferramenta. A biblioteca está disponível sob licença LGPL, tanto para fins comerciais quanto para uso comercial. 5. Conclusão Há tempos o software livre deixou de ser uma possibilidade e tornou-se uma realidade. Atualmente ele já é usado em diversos sistemas críticos, e a evolução dos softwares gerados com licenças do tipo open source e free software tem sido notoriamente veloz. Muito mais que uma mudança de paradigma no mundo do software, o SL toca também em aspectos éticos e sociais, alterando, pois, o relacionamento da sociedade com o mundo de TI. A definição de padrões abertos para SIG, principalmente pelo OpenGeospatial Consortium (OGC), tem possibilitado não apenas a interoperabilidade entre sistemas, no sentido de comunicação e troca de dados, mas também a definição de arquiteturas SIG baseadas em componentes. E é neste aspecto que a combinação software livre e padrões abertos se torna muito atraente para toda comunidade SIG. Ela impulsiona o trabalho tanto da comunidade de Software Livre como do
26 OGC: o OGC busca a comprovação prática de suas especificações, a comunidade de Software Livre precisa de padrões que viabilizem o desenvolvimento baseado em componentes. Neste cenário fértil, acrescenta-se ainda a vantagem da portatabilidade, já que Java foi eleita como a linguagem de programação da grande maioria dos desenvolvedores da comunidade de Software Livre. A administração pública tem muito a ganhar com o SL e padrões internacionais abertos pelas várias razões já citadas - como redução de gastos com licenças de software - e possível aplicação do recurso em áreas prioritárias, não-aprisionamento a um único fornecedor, interrupção da obsolescência programada, dentre outros. Empresas de desenvolvimento de soluções SIG ganham agilidade no processo de implementação e flexibilidade para decidirem onde utilizar software livre e quais produtos (proprietários ou não) comporão sua solução. Em suma, o software livre e os padrões abertos internacionais tem conseguido atingir seu objetivo e cidadãos de todo mundo têm se beneficiado com a liberdade de escolha e compartilhamento da informação promovidos por eles. 6. Referências [1] Open Geospatial Consortium Inc. Disponível em Acessado em 22 de abril de [2] Styled Layer Descriptor Implementation Specification - versão Documento n o : OGC Open Geospatial Consortium Inc. [3] Web Map Service Implementation Specification - Documento n o : OGC Open Geospatial Consortium Inc. [4] Filter Encoding Implementation Specification - Documento n o : OGC Open Geospatial Consortium Inc. [5] Web Feature Service Implementation Specification - Documento n o : OGC Open
27 Geospatial Consortium Inc. Acessado em 24 de abril de 2005 [6] Web Coverage Service - Documento n o : OGC r6. Open Geospatial Consortium Inc. Acessado em 24 de abril de [7] Simple Features SQL (SFS) Documento n o OGC Open Geospatial Consortium Inc. Acessado em 24 de abril de [8] MySQL. Disponível em: Acessado em 24 de abril de [9] PostgreSQL. Disponível em: Acessado em 24 de abril de [10] PostGIS. Disponível em: Acessado em 24 de abril de [11] MapServer. Disponível em: Acessado em 24 de abril de [12] Web Map Context Documents Implementation Specification versão Documento no: OGC 0-036r2. Open Geospatial Consortium Inc. Acessado em 24 de abril de 2005 [13] TerraLib. Disponível em: Acessado em 24 de abril de [14] udig. Disponível em: Acessado em 24 de abril de [15] Daher, Alex Martins; Estudo de Infra-Estrutura de Software Livre Básico: SGBDS Com Suporte a Informações Espaciais. PD301168A0025A-RT03AA. Campinas, CPqD, 12/04/04. [16] Daher, Alex Martins. Estudo de Software Livre e suas Licenças. PD301168A0025A- RT16AA. Campinas, CPqD, Novembro/2004. [17] Teixeira, Marta Duarte; Gatti, Sandro Danilo; Mandolesi, Gustavo Henrique; Inagaki, Nelson; Estudo de Infra-Estrutura de Software Livre Básico: Proposta de uma Arquitetura GIS. PD301168A0025A-RT10AA. Campinas, CPqD, maio/04. [18] Daher, Alex Martins. Estudo da especificação OGC Simple Feature for SQL. Novembro/2004. [19] Mandolesi, Gustavo. WFS e WMS Aspectos técnicos. PD301168A0036A-RT02AA. Campinas, CPqD, Dezembro/2004.
28 [20] Oliveira, Carlos Machado. Padrão OGC: SLD Styled Layer Descriptor. PD301168A0036A-RT04AA. Campinas, CPqD, Março/2005. [21] Oliveira, Carlos Machado; Gatti, Sandro Danilo. Estudo de SIG para Web: MapServer. Campinas, CPqD, Janeiro/2005. [22] Oliveros, Dário Luís Coneglian; Estudo de Infra-Estrutura de Software Livre Básico, PD301168A0025A-RT02AA, Campinas, CPqD, Abril/04. [23] Teixeira, Marta Duarte; Estudo de SIG para Web - Geotools, Geoserver, Geoclient, Deegree Client. PD301168A0025A-RT04AA, Campinas, CPqD, Abril/04. [24] JUMP Unified Mapping Platform. Disponível em: Acessado em 01 de junho de [25] JTS Topology Suite. Disponível em: Acessado em 01 de junho de [26] deegree igeoportal. Disponível em: Acessado em 01 de junho de 2005.
Cenário atual de uso e das ferramentas de software livre em Geoprocessamento
Cenário atual de uso e das ferramentas de software livre em Geoprocessamento Tiago Eugenio de Melo tiago@comunidadesol.org 1 Sumário Conceitos GIS e Software Livre Ferramentas: Jump Qgis Thuban MapServer
Leia maisGeoprocessamento com Software Livre. Anderson Maciel Lima de Medeiros Consultor em Geotecnologias
Geoprocessamento com Software Livre Anderson Maciel Lima de Medeiros Consultor em Geotecnologias SUMÁRIO O que é Software Livre? A GLP GNU Geoprocessamento Algumas Geotecnologias Geotecnologias Livres
Leia maisArquiteturas, Padrões e Serviços para Geoprocessamento. Lúbia Vinhas 13/05/2008
Arquiteturas, Padrões e Serviços para Geoprocessamento Lúbia Vinhas 13/05/2008 Desejo saber estatísticas sobre áreas queimadas. Desejo fazer análises por localização, por classes de uso ou ainda por seleção
Leia maisPalavras-chave: i3geo, gvsig, Mapserver, integração, plugin. Contato: edmar.moretti@terra.com.br ou edmar.moretti@gmail.com
III Jornada Latinoamericana e do Caribe do gvsig Artigo: Integração do software i3geo com o gvsig Autor: Edmar Moretti Resumo: O i3geo é um software para a criação de mapas interativos para internet qu
Leia maisSOFTWARES DE GEOPROCESSAMENTO
SOFTWARES DE GEOPROCESSAMENTO Ferramentas Proprietário para SIG É um conjunto de aplicativos computacionais de Sistemas de Informações Geográficas (SIGs) desenvolvido pela empresa norte americana Esri
Leia maisOpenJUMP. Pontos fracos do OpenJUMP
OpenJUMP No início foi chamado apenas de JUMP (JAVA Unified Mapping Platform), e se tornou popular no mundo livre de SIG(Sistema de informação Geográfica), desenhado por Vivid Solutions. Atualmente é desenvolvido
Leia maisSoftware Livre e GIS: Quais são as alternativas?
Software Livre e GIS: Quais são as alternativas? Tiago Eugenio de Melo tiago@comunidadesol.org 1 Sumário Conceitos GIS e Software Livre Ferramentas: Thuban Qgis Jump MapServer O Futuro das Tecnologias
Leia maisServiço de visualização (INSPIRE View Service) Como implementar um serviço de visualização utilizando tecnologia Open Source: MapServer
Serviço de visualização (INSPIRE View Service) Como implementar um serviço de visualização utilizando tecnologia Open Source: MapServer Danilo Furtado dfurtado@igeo.pt myesig2010 Lisboa 2010 1 Agenda 1.
Leia maisIntrodução Padrões OGC Instalação Configuração Formatos de Saída Aplicação AGENDA
Introdução ao Introdução Padrões OGC Instalação Configuração Formatos de Saída Aplicação AGENDA INTRODUÇÃO GeoServer GeoTools INTRODUÇÃO GeoServer Servidor de informação geoespacial OGC; Utilizado para
Leia maisServiço de visualização (INSPIRE View Service) Como implementar um servidor WMS utilizando tecnologia Open Source: MapServer
Serviço de visualização (INSPIRE View Service) Como implementar um servidor WMS utilizando tecnologia Open Source: MapServer Danilo Furtado dfurtado@igeo.pt 2 as Jornadas SASIG Évora 2009 1 Agenda 1. Serviço
Leia maisO Termo SIG é aplicado para sistemas que realizam o tratamento computacional de dados geográficos
Prof. Herondino O Termo SIG é aplicado para sistemas que realizam o tratamento computacional de dados geográficos Inserir e integrar, numa única base de dados informações espaciais provenientes de: meio
Leia maisSoftware Livre na Implantação do CTM Integrado a um Banco de Dados Geográfico
Software Livre na Implantação do CTM Integrado a um Banco de Dados Geográfico Helton Nogueira Uchoa (1) Luiz Carlos Teixeira Coelho Filho (1) Paulo Roberto Ferreira (2) (1) Opengeo Consultoria de Informática
Leia maisOFICINA USO DO I3GEO. Levindo Cardoso Medeiros. levindocm@gmail.com
OFICINA USO DO I3GEO Levindo Cardoso Medeiros levindocm@gmail.com ESTRUTURA INTRODUÇÃO UTILIZANDO O I3GEO Aprendendo a navegar pelo I3Geo Propriedades do mapa ADICIONANDO E MANIPULANDO CAMADAS Adicionando
Leia maisProgramação Orientada a Objetos com PHP & MySQL Sistema Gerenciador de Banco de Dados: Introdução e configuração de bases de dados com Postgre e MySQL
Programação Orientada a Objetos com PHP & MySQL Sistema Gerenciador de Banco de Dados: Introdução e configuração de bases de dados com Postgre e MySQL Prof. MSc. Hugo Souza Iniciando nossas aulas sobre
Leia maisArcGIS for INSPIRE. ArcGIS. ArcGIS for INSPIRE. Discovery. Download. View
ArcGIS for INSPIRE Discovery View Download ArcGIS for INSPIRE ArcGIS Agenda ArcGIS for INSPIRE O que está incluído Template de Geodatabase Componentes Desktop Componentes Servidor Outras Novidades Evolução
Leia maisMapserver Servidor de Mapas. João Araujo
Mapserver Servidor de Mapas João Araujo Por que fazer mapas? Mapas têm tido papel prepoderante nas atividades humanas por milhares de anos. Desde o início, mapas eram usados para mostrar onde as coisas
Leia maisDado: Fatos conhecidos que podem ser registrados e têm um significado implícito. Banco de Dados:
MC536 Introdução Sumário Conceitos preliminares Funcionalidades Características principais Usuários Vantagens do uso de BDs Tendências mais recentes em SGBDs Algumas desvantagens Modelos de dados Classificação
Leia maisGERAÇÃO DE RELATÓRIOS
UNIOESTE Universidade Estadual do Oeste do Paraná CCET - CENTRO DE CIÊNCIAS EXATAS E TECNOLÓGICAS Colegiado de Ciência da Computação Curso de Bacharelado em Ciência da Computação GERAÇÃO DE RELATÓRIOS
Leia maisProf. Marcelo Machado Cunha www.marcelomachado.com mcelobr@yahoo.com.br
Prof. Marcelo Machado Cunha www.marcelomachado.com mcelobr@yahoo.com.br Ementa Introdução a Banco de Dados (Conceito, propriedades), Arquivos de dados x Bancos de dados, Profissionais de Banco de dados,
Leia mais5 Framework para coordenação e mediação de Web Services para ambientes de aprendizado à distância
5 Framework para coordenação e mediação de Web Services para ambientes de aprendizado à distância O capítulo anterior apresentou uma discussão sobre a inclusão dos chamados learning services no processo
Leia maisMetadados. 1. Introdução. 2. O que são Metadados? 3. O Valor dos Metadados
1. Introdução O governo é um dos maiores detentores de recursos da informação. Consequentemente, tem sido o responsável por assegurar que tais recursos estejam agregando valor para os cidadãos, as empresas,
Leia maisRoteiro 2 Conceitos Gerais
Roteiro 2 Conceitos Gerais Objetivos: UC Projeto de Banco de Dados Explorar conceitos gerais de bancos de dados; o Arquitetura de bancos de dados: esquemas, categorias de modelos de dados, linguagens e
Leia maisHoje é inegável que a sobrevivência das organizações depende de dados precisos e atualizados.
BANCO DE DADOS Universidade do Estado de Santa Catarina Centro de Ciências Tecnológicas Departamento de Ciência da Computação Prof. Alexandre Veloso de Matos alexandre.matos@udesc.br INTRODUÇÃO Hoje é
Leia maisEXPLORANDO TÉCNICAS E RECURSOS DO GERENCIADOR DE DADOS ABERTOS CKAN. TuaneFaria USP tuanefaria@yahoo.com.br
EXPLORANDO TÉCNICAS E RECURSOS DO GERENCIADOR DE DADOS ABERTOS CKAN Prof. Dr. José Eduardo Santarem Segundo USP santarem@usp.br TuaneFaria USP tuanefaria@yahoo.com.br Introdução Disponibilizar Dados Disponibilizar
Leia maisArquitetura de Banco de Dados
Arquitetura de Banco de Dados Daniela Barreiro Claro MAT A60 DCC/IM/UFBA Arquitetura de Banco de dados Final de 1972, ANSI/X3/SPARC estabeleceram o relatório final do STUDY GROUP Objetivos do Study Group
Leia maisNoções de. Microsoft SQL Server. Microsoft SQL Server
Noções de 1 Considerações Iniciais Basicamente existem dois tipos de usuários do SQL Server: Implementadores Administradores 2 1 Implementadores Utilizam o SQL Server para criar e alterar base de dados
Leia maisConceitos Iniciais MARCEL SANTOS SILVA
Conceitos Iniciais MARCEL SANTOS SILVA DPI - INPE Criada em 1984, a Divisão de Processamento de Imagens (DPI) faz parte da Coordenação Geral de Observação da Terra/OBT do Instituto Nacional de Pesquisas
Leia maisSistemas Distribuídos
Sistemas Distribuídos Modelo Cliente-Servidor: Introdução aos tipos de servidores e clientes Prof. MSc. Hugo Souza Iniciando o módulo 03 da primeira unidade, iremos abordar sobre o Modelo Cliente-Servidor
Leia maisANEXO 11. Framework é um conjunto de classes que colaboram para realizar uma responsabilidade para um domínio de um subsistema da aplicação.
ANEXO 11 O MATRIZ Para o desenvolvimento de sites, objeto deste edital, a empresa contratada obrigatoriamente utilizará o framework MATRIZ desenvolvido pela PROCERGS e disponibilizado no início do trabalho.
Leia maisSISTEMA GERENCIADOR DE BANCO DE DADOS
BANCO DE DADOS Universidade do Estado de Santa Catarina Centro de Ciências Tecnológicas Departamento de Ciência da Computação Prof. Alexandre Veloso de Matos alexandre.matos@udesc.br SISTEMA GERENCIADOR
Leia maisConceitos de Banco de Dados
Conceitos de Banco de Dados Autor: Luiz Antonio Junior 1 INTRODUÇÃO Objetivos Introduzir conceitos básicos de Modelo de dados Introduzir conceitos básicos de Banco de dados Capacitar o aluno a construir
Leia maisSistema Gerenciador de Conteúdo OpenCms: um caso de sucesso no CEFET-MG
Sistema Gerenciador de Conteúdo OpenCms: um caso de sucesso no CEFET-MG Marco T. A. Rodrigues*, Paulo E. M. de Almeida* *Departamento de Recursos em Informática Centro Federal de Educação Tecnológica de
Leia maisINSTALAÇÃO DE SOFTWARES ÚTEIS EM ENGENHARIA CARTOGRÁFICA
INSTALAÇÃO DE SOFTWARES ÚTEIS EM ENGENHARIA CARTOGRÁFICA Primeiramente é importante observar a importância do desenvolvimento de softwares específicos para agilizar o trabalho do Engenheiro Cartógrafo.
Leia maisDesenvolvendo Websites com PHP
Desenvolvendo Websites com PHP Aprenda a criar Websites dinâmicos e interativos com PHP e bancos de dados Juliano Niederauer 19 Capítulo 1 O que é o PHP? O PHP é uma das linguagens mais utilizadas na Web.
Leia maisGovernança de TI. ITIL v.2&3. parte 1
Governança de TI ITIL v.2&3 parte 1 Prof. Luís Fernando Garcia LUIS@GARCIA.PRO.BR ITIL 1 1 ITIL Gerenciamento de Serviços 2 2 Gerenciamento de Serviços Gerenciamento de Serviços 3 3 Gerenciamento de Serviços
Leia maisABORDAGEM DE FRAMEWORKS PARA JSF QUE AUXILIAM O DESENVOLVIMENTO DE SOFTWARE
ABORDAGEM DE FRAMEWORKS PARA JSF QUE AUXILIAM O DESENVOLVIMENTO DE SOFTWARE Amarildo Aparecido Ferreira Junior 1, Ricardo Ribeiro Rufino 1 ¹Universidade Paranaense (Unipar) Paranavaí PR Brasil aapfjr@gmail.com
Leia maisIntrodução a Banco de Dados Aula 03. Prof. Silvestri www.eduardosilvestri.com.br
Introdução a Banco de Dados Aula 03 Prof. Silvestri www.eduardosilvestri.com.br Arquiteturas de Banco de Dados Arquiteturas de BD - Introdução Atualmente, devem-se considerar alguns aspectos relevantes
Leia maisFigura 1 - Arquitetura multi-camadas do SIE
Um estudo sobre os aspectos de desenvolvimento e distribuição do SIE Fernando Pires Barbosa¹, Equipe Técnica do SIE¹ ¹Centro de Processamento de Dados, Universidade Federal de Santa Maria fernando.barbosa@cpd.ufsm.br
Leia maisProgramação com acesso a BD. Prof.: Clayton Maciel Costa clayton.maciel@ifrn.edu.br
Programação com acesso a BD Prof.: Clayton Maciel Costa clayton.maciel@ifrn.edu.br 1 Introdução BD desempenha papel crítico em todas as áreas em que computadores são utilizados: Banco: Depositar ou retirar
Leia maisDisseminação e Compartilhamento de Dados Geoespaciais na Web
Disseminação e Compartilhamento de Dados Geoespaciais na Web Clique para editar o estilo do subtítulo mestre Diego Mendes Rodrigues Gerente Serviços e Soluções ERDAS diego.rodrigues@sccon.com.br Santiago
Leia maisIntranets. FERNANDO ALBUQUERQUE Departamento de Ciência da Computação Universidade de Brasília 1.INTRODUÇÃO
Intranets FERNANDO ALBUQUERQUE Departamento de Ciência da Computação Universidade de Brasília 1.INTRODUÇÃO As intranets são redes internas às organizações que usam as tecnologias utilizadas na rede mundial
Leia mais04/08/2012 MODELAGEM DE DADOS. PROF. RAFAEL DIAS RIBEIRO, M.Sc. @ribeirord MODELAGEM DE DADOS. Aula 2. Prof. Rafael Dias Ribeiro. M.Sc.
MODELAGEM DE DADOS PROF. RAFAEL DIAS RIBEIRO, M.Sc. @ribeirord MODELAGEM DE DADOS Aula 2 Prof. Rafael Dias Ribeiro. M.Sc. @ribeirord 1 Objetivos: Revisão sobre Banco de Dados e SGBDs Aprender as principais
Leia maisTerraView. O TerraView está estruturado da seguinte forma: - Modelo de dados
TerraView O TerraView é um aplicativo desenvolvido pelo DPI/INPE e construído sobre a biblioteca de geoprocessamento TerraLib, tendo como principais objetivos: - Apresentar à comunidade um fácil visualizador
Leia maisBANCO DE DADOS GEOGRÁFICOS
BANCO DE DADOS GEOGRÁFICOS E WEBMAPPING - I 3 GEO Prof. Angelo Augusto Frozza, M.Sc. http://about.me/tilfrozza ROTEIRO Apresentação Instalação do i 3 Geo Visão geral do i3geo Características e funcionalidades
Leia maisIntrodução. à Linguagem JAVA. Prof. Dr. Jesus, Edison O. Instituto de Matemática e Computação. Laboratório de Visão Computacional
Introdução à Linguagem JAVA Prof. Dr. Jesus, Edison O. Instituto de Matemática e Computação Laboratório de Visão Computacional Vantagens do Java Independência de plataforma; Sintaxe semelhante às linguagens
Leia maisSoftware livre e interoperabilidade na área de SIG: ficção ou realidade?
Software livre e interoperabilidade na área de SIG: ficção ou realidade? Claudia de Andrade Tambascia, Lin Tzy Li *, Marta Duarte Teixeira, Rafael de Melo Cuba, Sandro Danilo Gatti Este artigo apresenta
Leia maisPersistência e Banco de Dados em Jogos Digitais
Persistência e Banco de Dados em Jogos Digitais Prof. Marcos Francisco Pereira da Silva Especialista em Engenharia de Software Jogos Digitais - Computação Gráfica 1 Agenda Vantagens de usar a abordagem
Leia maisServiços de rede INSPIRE: visualização e descarregamento
Serviços de rede INSPIRE: visualização e descarregamento Implementação utilizando o MapServer Danilo Furtado Laboratório Nacional de Engenharia Civil Agenda 1. Serviço de visualização INSPIRE View Service
Leia maisBancos de Dados. Conceitos F undamentais em S is temas de B ancos de Dados e s uas Aplicações
Conceitos F undamentais em S is temas de B ancos de Dados e s uas Aplicações Tópicos Conceitos Básicos Bancos de Dados Sistemas de Bancos de Dados Sistemas de Gerenciamento de Bancos de Dados Abstração
Leia maisMAPAS E BASES DE DADOS EM SIG. QUANTUM GIS E POSTGRE SQL Operar e programar em tecnologia SIG com software open source
MAPAS E BASES DE DADOS EM SIG QUANTUM GIS E POSTGRE SQL Operar e programar em tecnologia SIG com software open source 1 02 DESTINATÁRIOS Todos os que trabalhando ou que virão a trabalhar com tecnologia
Leia maisSQL APOSTILA INTRODUÇÃO A LINGUAGEM SQL
SQL APOSTILA INTRODUÇÃO Uma linguagem de consulta é a linguagem por meio da qual os usuários obtêm informações do banco de dados. Essas linguagens são, tipicamente, de nível mais alto que as linguagens
Leia mais1 http://www.google.com
1 Introdução A computação em grade se caracteriza pelo uso de recursos computacionais distribuídos em várias redes. Os diversos nós contribuem com capacidade de processamento, armazenamento de dados ou
Leia mais4 Um Exemplo de Implementação
4 Um Exemplo de Implementação Neste capítulo será discutida uma implementação baseada na arquitetura proposta. Para tanto, será explicado como a arquitetura proposta se casa com as necessidades da aplicação
Leia maisCAPITULO 4 A ARQUITETURA LÓGICA PARA O AMBIENTE
CAPITULO 4 A ARQUITETURA LÓGICA PARA O AMBIENTE A proposta para o ambiente apresentada neste trabalho é baseada no conjunto de requisitos levantados no capítulo anterior. Este levantamento, sugere uma
Leia maisQUESTINAMENTOS AO EDITAL DE CONCORRÊNCIA 01/2013
QUESTINAMENTOS AO EDITAL DE CONCORRÊNCIA 01/2013 Prezados Senhores da comissão de licitação da UENF, seguem alguns questionamentos acerca do edital de concorrência 01/2013 para esclarecimentos: 1. ANEXO
Leia maisPRODUÇÃO CARTOGRÁFICA SERVIÇOS WEB
SERVIÇOS WEB World Wide Web Evolução de simples páginas com conteúdo estático para páginas com conteúdos dinâmicos (extraídos, principalmente, de Sistemas Gerenciadores de Bancos de Dados SGBD) Tecnologias
Leia maisA HARMONIZAÇÃO DE DADOS ALTIMÉTRICOS SEGUNDO A DIRETIVA INSPIRE Edgar Barreira [Direção-Geral do Território]
A HARMONIZAÇÃO DE DADOS ALTIMÉTRICOS SEGUNDO A DIRETIVA INSPIRE Edgar Barreira [Direção-Geral do Território] Objetivo Apresentar o trabalho que tem vindo a ser desenvolvido no domínio da harmonização de
Leia maisA computação na nuvem é um novo modelo de computação que permite ao usuário final acessar uma grande quantidade de aplicações e serviços em qualquer
A computação na nuvem é um novo modelo de computação que permite ao usuário final acessar uma grande quantidade de aplicações e serviços em qualquer lugar e independente da plataforma, bastando para isso
Leia maisPara construção dos modelos físicos, será estudado o modelo Relacional como originalmente proposto por Codd.
Apresentação Este curso tem como objetivo, oferecer uma noção geral sobre a construção de sistemas de banco de dados. Para isto, é necessário estudar modelos para a construção de projetos lógicos de bancos
Leia maisBanco de Dados. Uma coleção de dados relacionados [ELMASRI/NAVATHE]
1/6 Banco de Dados O que é um Banco de Dados? Uma coleção de dados relacionados [ELMASRI/NAVATHE] Conjunto de dados integrados que tem por objetivo atender a uma comunidade específica [HEUSER] Um conjunto
Leia maisIntrodução ao Mapserver
Introdução ao Mapserver SigWeb by João Araujo 2/28 Mapserver Ambiente de desenvolvimento para construção de aplicações espaciais voltadas para WEB; Não é um GIS completo, nem tem este objetivo; Criado
Leia maisINTERNET HOST CONNECTOR
INTERNET HOST CONNECTOR INTERNET HOST CONNECTOR IHC: INTEGRAÇÃO TOTAL COM PRESERVAÇÃO DE INVESTIMENTOS Ao longo das últimas décadas, as organizações investiram milhões de reais em sistemas e aplicativos
Leia maisMEDRAL Geotecnologias 2011. Apresentação UNESP
Apresentação UNESP Julho de 2012 MEDRAL Geotecnologias Nossa História A Medral nasceu em 25 de abril de 1961, em Dracena (SP), oferecendo soluções de engenharia para o setor energético Aos poucos, a empresa
Leia maisFerramenta de apoio a gerência de configuração de software. Aluno: Rodrigo Furlaneto Orientador: Everaldo Artur Grahl
Ferramenta de apoio a gerência de configuração de software Aluno: Rodrigo Furlaneto Orientador: Everaldo Artur Grahl Roteiro de apresentação Introdução Objetivos Fundamentação Teórica Gerência de Configuração
Leia maisO que é o Virto ERP? Onde sua empresa quer chegar? Apresentação. Modelo de funcionamento
HOME O QUE É TOUR MÓDULOS POR QUE SOMOS DIFERENTES METODOLOGIA CLIENTES DÚVIDAS PREÇOS FALE CONOSCO Suporte Sou Cliente Onde sua empresa quer chegar? Sistemas de gestão precisam ajudar sua empresa a atingir
Leia maisComo é o desenvolvimento de Software?
Como é o desenvolvimento de Software? Fases do Desenvolvimento Modelo Cascata Define atividades seqüenciais Outras abordagens são baseadas nesta idéia Especificação de Requisitos Projeto Implementação
Leia maisDIMENSIONANDO PROJETOS DE WEB-ENABLING. Uma aplicação da Análise de Pontos de Função. Dimensionando projetos de Web- Enabling
DIMENSIONANDO PROJETOS DE WEB-ENABLING Uma aplicação da Análise de Pontos de Função Dimensionando projetos de Web- Enabling Índice INTRODUÇÃO...3 FRONTEIRA DA APLICAÇÃO E TIPO DE CONTAGEM...3 ESCOPO DA
Leia maisGoverno Federal / Governo Estadual. Imagem suportando a Infraestrutura Nacional de Dados Espaciais INDE Carlos Toledo
Governo Federal / Governo Estadual Imagem suportando a Infraestrutura Nacional de Dados Espaciais INDE Carlos Toledo Plenária Desafios comuns Governança de dados espaciais; Informação geográfica é um ativo
Leia maisFACULDADE DE TECNOLOGIA SENAC PELOTAS CURSO TÉCNICO EM INFORMÁTICA PRONATEC PROFESSOR: NATANIEL VIEIRA ALUNOS: ANA CAROLINA, ROMÁRIO, WAGNER.
1 FACULDADE DE TECNOLOGIA SENAC PELOTAS CURSO TÉCNICO EM INFORMÁTICA PRONATEC PROFESSOR: NATANIEL VIEIRA ALUNOS: ANA CAROLINA, ROMÁRIO, WAGNER. TURMA: 2 TERMOS TÉCNICOS PELOTAS, 2012 ANA CAROLINA, ROMÁRIO,
Leia maisSistemas de Informação I
+ Sistemas de Informação I Dimensões de análise dos SI Ricardo de Sousa Britto rbritto@ufpi.edu.br + Introdução n Os sistemas de informação são combinações das formas de trabalho, informações, pessoas
Leia mais04/08/2012 MODELAGEM DE DADOS. PROF. RAFAEL DIAS RIBEIRO, M.Sc. @ribeirord MODELAGEM DE DADOS. Aula 1. Prof. Rafael Dias Ribeiro. M.Sc.
MODELAGEM DE DADOS PROF. RAFAEL DIAS RIBEIRO, M.Sc. @ribeirord MODELAGEM DE DADOS Aula 1 Prof. Rafael Dias Ribeiro. M.Sc. @ribeirord 1 Objetivos: Apresenta a diferença entre dado e informação e a importância
Leia maisPrevayler. Perola. André Luís Sales de Moraes Juliana Keiko Yamaguchi Tatiana Yuka Takaki
Prevayler Perola André Luís Sales de Moraes Juliana Keiko Yamaguchi Tatiana Yuka Takaki Prevayler Prevayler é a implementação em Java do conceito de Prevalência. É um framework que prega uma JVM invulnerável
Leia maisUniversidade Federal de Santa Maria Curso de Arquivologia. Disciplina de Banco de Dados Aplicados à Arquivística. Versao 1.
Universidade Federal de Santa Maria Curso de Arquivologia Disciplina de Banco de Dados Aplicados à Arquivística Prof. Andre Zanki Cordenonsi Versao 1.0 Março de 2008 Tópicos Abordados Conceitos sobre Banco
Leia maisEvolução. Tópicos. Bancos de Dados - Introdução. Melissa Lemos. Evolução dos Sistemas de Informação Esquemas Modelos. Características de SGBDs
1 Bancos de Dados - Introdução Melissa Lemos melissa@inf.puc-rio.br Tópicos Evolução dos Sistemas de Informação Esquemas Modelos Conceitual Lógico Características de SGBDs 2 Evolução tempo Programas e
Leia maisArquitetura de Redes: Camadas de Protocolos (Parte I) Prof. Eduardo
Arquitetura de Redes: Camadas de Protocolos (Parte I) Prof. Eduardo Introdução O que é Protocolo? - Para que os pacotes de dados trafeguem de uma origem até um destino, através de uma rede, é importante
Leia maisJonathan J. Campos, Jefferson de Faria, William de O. Sant Ana
APLICAÇÕES GEOGRÁFICAS NA WEB PARA INTEGRACÃO DE DADOS DO MONITORAMENTO AMBIENTAL DE ÁREAS DEGRADADAS PELA MINERAÇÃO DE CARVÃO NA BACIA CARBONÍFERA DO SUL DO ESTADO DE SANTA CATARINA Jonathan J. Campos,
Leia maisDesenvolvendo uma Arquitetura de Componentes Orientada a Serviço SCA
Desenvolvendo uma Arquitetura de Componentes Orientada a Serviço SCA RESUMO Ricardo Della Libera Marzochi A introdução ao Service Component Architecture (SCA) diz respeito ao estudo dos principais fundamentos
Leia maisgerenciamento de portais e websites corporativos interface simples e amigável, ágil e funcional não dependendo mais de um profissional especializado
O NetPublisher é um sistema de gerenciamento de portais e websites corporativos (intranets ou extranets), apropriado para pequenas, médias e grandes empresas. O conteúdo do website pode ser atualizado
Leia maisDisciplina de Banco de Dados Introdução
Disciplina de Banco de Dados Introdução Prof. Elisa Maria Pivetta CAFW - UFSM Banco de Dados: Conceitos A empresa JJ. Gomes tem uma lista com mais ou menos 4.000 nomes de clientes bem como seus dados pessoais.
Leia maisMAPAS URBANOS INTELIGENTES CAPÍTULO 04 RESULTADOS E ANÁLISES
CAPÍTULO 04 RESULTADOS E ANÁLISES Neste capítulo serão abordados os resultados e as análises decorrentes da aplicação do método proposto no desenvolvimento deste trabalho. a) Integração dos Dados Raster/Vector
Leia maisUFG - Instituto de Informática
UFG - Instituto de Informática Especialização em Desenvolvimento de Aplicações Web com Interfaces Ricas EJB 3.0 Prof.: Fabrízzio A A M N Soares professor.fabrizzio@gmail.com Aula 10 Persistência de Dados
Leia maisDESENVOLVIMENTO DE SOFTWARE DE VOTAÇÃO WEB UTILIZANDO TECNOLOGIA TOUCHSCREEN
DESENVOLVIMENTO DE SOFTWARE DE VOTAÇÃO WEB UTILIZANDO TECNOLOGIA TOUCHSCREEN José Agostinho Petry Filho 1 ; Rodrigo de Moraes 2 ; Silvio Regis da Silva Junior 3 ; Yuri Jean Fabris 4 ; Fernando Augusto
Leia maisIntrodução à Computação
Aspectos Importantes - Desenvolvimento de Software Motivação A economia de todos países dependem do uso de software. Cada vez mais, o controle dos processos tem sido feito por software. Atualmente, os
Leia maisAplicativo web para definição do modelo lógico no projeto de banco de dados relacional
Aplicativo web para definição do modelo lógico no projeto de banco de dados relacional Juarez Bachmann Orientador: Alexander Roberto Valdameri Roteiro Introdução Objetivos Fundamentação teórica Desenvolvimento
Leia maisPROJETO NOVAS FRONTEIRAS. Descrição dos processos de gerenciamento da qualidade
PROJETO NOVAS FRONTEIRAS PLANO DE GERENCIAMENTO DA QUALIDADE QUALITY MANAGEMENT PLAN Preparado por Mara Lúcia Menezes Membro do Time Versão 3 Aprovado por Rodrigo Mendes Lemos Gerente do Projeto 15/11/2010
Leia maisSistemas de Informação Geográfica Prof. Tiago Eugenio de Melo, MSc.
Sistemas de Informação Geográfica Prof. Tiago Eugenio de Melo, MSc. SUMÁRIO Apresentação da ementa Introdução Conceitos Básicos de Geoinformação Arquitetura de SIGs Referências Bibliográficas APRESENTAÇÃO
Leia maisBancos de dados distribuídos Prof. Tiago Eugenio de Melo tiagodemelo@gmail.com. http://www.tiagodemelo.info
Bancos de dados distribuídos Prof. Tiago Eugenio de Melo tiagodemelo@gmail.com Última atualização: 20.03.2013 Conceitos Banco de dados distribuídos pode ser entendido como uma coleção de múltiplos bds
Leia maisSistemas Distribuídos Arquitetura de Sistemas Distribuídos I. Prof. MSc. Hugo Souza
Sistemas Distribuídos Arquitetura de Sistemas Distribuídos I Prof. MSc. Hugo Souza Como já vimos, os sistemas distribuídos são apresentados considerando um planejamento bem mais complexo relacionado aos
Leia maisADMINISTRAÇÃO DOS RECURSOS DE DADOS
Capítulo 7 ADMINISTRAÇÃO DOS RECURSOS DE DADOS 7.1 2003 by Prentice Hall OBJETIVOS Por que as empresas sentem dificuldades para descobrir que tipo de informação precisam ter em seus sistemas de informação?
Leia maisLINGUAGEM DE BANCO DE DADOS
LINGUAGEM DE BANCO DE DADOS Gabriela Trevisan Bacharel em Sistemas de Informação Universidade Federal do Rio Grande Pós-Graduanda Formação Pedagógica de Professores (FAQI) Conceito de BD Um banco de dados
Leia maisSistema de Bancos de Dados. Conceitos Gerais Sistema Gerenciador de Bancos de Dados
Sistema de Bancos de Dados Conceitos Gerais Sistema Gerenciador de Bancos de Dados # Definições # Motivação # Arquitetura Típica # Vantagens # Desvantagens # Evolução # Classes de Usuários 1 Nível 1 Dados
Leia maisImportação de arquivos Raster e Vetorial no Terraview
MINISTÉRIO DA EDUCAÇÃO MEC Secretaria de Educação Superior - SESu Departamento de Modernização e Programas da Educação Superior DEPEM MINISTÉRIO DAS CIDADES Secretaria Executiva Diretoria de Desenvolvimento
Leia maisFileMaker Pro 13. Utilização de uma Conexão de Área de Trabalho Remota com o FileMaker Pro 13
FileMaker Pro 13 Utilização de uma Conexão de Área de Trabalho Remota com o FileMaker Pro 13 2007-2013 FileMaker Inc. Todos os direitos reservados. FileMaker Inc. 5201 Patrick Henry Drive Santa Clara,
Leia maisIntrodução ao Modelos de Duas Camadas Cliente Servidor
Introdução ao Modelos de Duas Camadas Cliente Servidor Desenvolvimento de Sistemas Cliente Servidor Prof. Esp. MBA Heuber G. F. Lima Aula 1 Ciclo de Vida Clássico Aonde estamos? Page 2 Análise O que fizemos
Leia maisUFG - Instituto de Informática
UFG - Instituto de Informática Especialização em Desenvolvimento de Aplicações Web com Interfaces Ricas EJB 3.0 Prof.: Fabrízzio A A M N Soares professor.fabrizzio@gmail.com Aula 5 Servidores de Aplicação
Leia maisAULA 1 Iniciando o uso do TerraView
1.1 AULA 1 Iniciando o uso do TerraView Essa aula apresenta a interface principal do TerraView e sua utilização básica. Todos os arquivos de dados mencionados nesse documento são disponibilizados junto
Leia maisVirtualização de Sistemas Operacionais
Virtualização de Sistemas Operacionais Felipe Antonio de Sousa 1, Júlio César Pereira 1 1 Universidade Paranaense (Unipar) Paranavaí PR Brasil felipeantoniodesousa@gmail.com, juliocesarp@unipar.br Resumo.
Leia mais3 Serviços na Web (Web services)
3 Serviços na Web (Web services) 3.1. Visão Geral Com base na definição do Word Wide Web Consortium (W3C), web services são aplicações autocontidas, que possuem interface baseadas em XML e que descrevem
Leia mais