domingo, 15 de setembro de 2013

Processos de negócio com Inteligência Geográfica

Nestes últimos anos, experimentamos uma grande revolução relacionada às tecnologias geoespaciais. Vários dispositivos pessoais e corporativos incorporaram algum tipo de processamento envolvendo dados espaciais. Apesar desta revolução, o verdadeiro potencial continua inexplorado pois as empresas continuam raciocinando os processos de negócio sem inteligência geográfica. Esta evolução não é tão simples pois envolve uma grande mudança de paradigma. Vou dar um exemplo desta dificuldade com uma situação que ocorreu quando eu participava do processo de análise do projeto OPUS do Exército. Quando se discutia como entrar com a solicitação do pedido de obra, a primeira abordagem dos analistas de requisitos foi propor uma ficha eletrônica. Esta é uma abordagem bem comum no processo de análise da maioria dos sistemas corporativos desenvolvidos atualmente. Depois desta abordagem "tradicional" dos analistas, eu fiz a minha intervenção para construir um novo processo pensado com a inteligência geográfica. Desta forma, a primeira entrada passou a ser a seleção da entidade geográfica a qual estaria atrelado todo o processo de gestão de obras do Exército. Como a obra é uma estrutura física que existe numa determina posição geográfica, este novo processo era bastante lógico para quem já tinha experiência em análise de processos com inteligência geográfica, porém para um analista sem esta experiência, esta dedução não é nada trivial. Este projeto foi o primeiro grande sistema do governo federal, no qual trabalhei, a ter o processo de modelagem e desenvolvimento totalmente orientado à inteligência geográfica.

Figura 1 - Interface inicial do OPUS para solicitação de obras (resultado de uma análise com inteligência geográfica).

Figura 2 - Interface com a ficha cadastral que é apresentada após a seleção da entidade geográfica ao qual a obra será associada.

A parte mais complexa que envolve a modelagem orientada à entidade geográfica não é percebida pela maioria dos usuários. Muitos analisam o resultado final e acabam achando que o sistema se trata de um SIG (Sistema de Informação Geográfica), quando na realidade estamos falando de um outro conceito que eu denomino de Sistema de Gestão com Inteligência Geográfica (SGIG). Após a etapa de modelagem de processos com base na inteligência geográfica, é preciso que todo o processo de análise e desenvolvimento também sejam adequados a este novo conceito. Isto implica em ter artefatos repensados para refletir as regras de negócios neste novo paradigma orientado ao espaço geográfico. As figuras a seguir exemplificam um modelo de Caso de Uso que foi construído dentro desta concepção mais moderna de desenvolvimento de sistemas com inteligência geográfica.

Figura 3 - Exemplo de Caso de Uso com especificações para um Sistema de Gestão com Inteligência Geográfica.

Figura 4 - Exemplo de Caso de Uso com especificações para um Sistema de Gestão com Inteligência Geográfica.

Figura 5 - Exemplo de Caso de Uso com especificações para um Sistema de Gestão com Inteligência Geográfica.

Destaquei alguns pontos importantes sobre a análise de processos de negócio envolvendo a inteligência geográfica. Existe uma grande demanda adormecida em várias empresas e esta situação continuará assim pois o mercado enfrenta um falta de profissionais especializados com conhecimentos sólidos na área de análise de projetos envolvendo tecnologias geoespaciais. Ao longo dos projetos que coordenei, eu tive que formar os profissionais que integraram as minhas equipes. Sempre evitei depender de profissionais já formados pelo mercado brasileiro, pois existe uma carência muito grande neste sentido. Quem desejar se especializar nesta área, também encontrará dificuldade em encontrar tal formação no meio acadêmico. Enfim, a internet continua sendo a fonte principal de conhecimento nesta área para quem deseja iniciar os estudos. A experiência prática é o que realmente irá formar um bom profissional.

Imagem cortesia de Stuart Miles / FreeDigitalPhotos.net

terça-feira, 10 de setembro de 2013

A evolução das tecnologias geoespaciais livres no Brasil

Para comemorar os dez anos do grupo MapServer Brasil, vou fazer um post especial sobre a evolução das tecnologias geoespaciais livres (open source) no Brasil. Eu particularmente iniciei meus primeiros estudos envolvendo software livre para Sistemas de Informação Geográfica (SIG) em 2001. Nesta mesma época, talvez um pouco antes, uma equipe da Univali já trabalhava no desenvolvimento do módulo de conexão do MapServer com o Oracle Spatial. Neste período, também já se ouvia falar do projeto TerraLib conduzido pelo INPE.
Em 2002, eu e uma pequena equipe da 5ª Divisão de Levantamento colocamos no ar um servidor com MapServer e PostGIS para dar acesso ao público externo à Cartografia produzida pelo próprio Exército Brasileiro. Este projeto foi apresentado no Congresso de Cartografia com o título de SERVIDOR DE PRODUTOS CARTOGRÁFICOS DIGITAIS. Dentro do Exército, eu pude conviver com pessoas favoráveis ao software livre, porém, também lidei com pessoas que investiam bastante tempo na depreciação das tecnologias abertas. Tenho acompanhado que a nova geração de Engenheiros Cartógrafos tem ajudado a Diretoria de Serviço Geográfico (DSG) a investir no software livre.
Após a apresentação do projeto SePCaD, várias pessoas começaram a me procurar com dúvidas sobre as melhores opções em software livre para soluções envolvendo inteligência geográfica, eu resolvi criar o Grupo MapServer Brasil que completou 10 anos ontem (09/09/2013). Neste período, eu ainda era oficial do Exército e trabalhava na 5ª DL. Este grupo cresceu e hoje conta com mais de 1.300 associados.


O cenário atual das geotecnologias livres no Brasil merece destaque quando comparado a outros países. Temos grandes casos de sucesso passando pelas 3 esferas governamentais (Federal, Estadual e Municipal), inclusive na iniciativa privada. Eu tive o privilégio de participar ativamente para que o software livre estivesse numa situação de destaque com casos de sucessos premiados.
Para concluir este post, indico o vídeo do projeto GIGFER que recebeu 2 prêmios ao longo do seu desenvolvimento. Este foi o projeto mais recente que participei e um dos mais complexos que já trabalhei.


Quem desejar contribuir com comentários sobre fatos relevantes na história do software livre para área de geotecnologias no Brasil, pode ficar à vontade para fazer comentários neste post. Eu agradeço todas as colaborações.

Imagem cortesia de Stuart MilesFreeDigitalPhotos.net

terça-feira, 3 de setembro de 2013

Os desafios dos projetos envolvendo inovação e tecnologias geoespaciais

Já estou há mais de 6 anos envolvido com projetos que conjugam simultaneamente 3 características:  inovação (as funcionalidades que envolvem o projeto não são encontradas em outras outras soluções, nem mesmo em outros países), escopo muito grande (cronograma físico de alguns anos e orçamento na faixa de milhões de reais) e tecnologias geoespaciais (o coração da solução se baseia num banco de dados espacial).

Ao longo destes projetos, uma das minhas principais preocupações estava relacionada à equipe técnica. Além da seleção e da formação, a garantia da contínua motivação da equipe estava sempre me "tirando o sono". A motivação influencia diretamente a produtividade e confesso que tive dificuldades em garantir esta motivação com um mercado de TI cuja rotatividade de profissional é muito alta.

No decorrer da minha carreira, eu tive a oportunidade de coordenar alguns projetos que me permitiram fazer algumas análises sobre a motivação da equipe de analistas de requisitos e desenvolvedores. Neste ponto, posso afirmar que as tecnologias geoespaciais trouxeram inovação e, consequentemente, desafios que se converteram numa excelente "engrenagem de motivação". Quanto maior o desafio, maior era o comprometimento da equipe. Apesar da inovação ter introduzido esta "engrenagem" nos projetos, o fato negativo é: quanto maior a inovação, maiores são as incertezas com relação ao cronograma físico e, consequentemente, o financeiro do projeto também entra numa área de incertezas.

Dos meus trabalhos mais recentes, um projeto que colocou à prova toda a equipe envolvida foi na área de agronegócios. Neste projeto, na parte referente à Engenharia, eu tive que criar modelos matemáticos a partir das medidas relativas a cada máquina agrícola para poder gerar mapas temáticos de forma automática. A estratégia definida foi organizar o processamento em 2 passos, através de uma arquitetura  capaz de processar, em tempo real, um grande volume de dados. Esta arquitetura foi o primeiro grande desafio que envolveu toda a equipe na concepção e refinamento da mesma. No primeiro passo, os dados brutos do protocolo de cada máquina eram processados para gerar um conjunto de tabelas no banco de dados espacial com feições geográficas mais simples que serviriam como base para o processamento final de cada tipo de mapa. No segundo passo, o servidor de mapas (MapServer, mapserver.org) executava uma query para gerar o modelo final dos mapas temáticos em tempo real.

Outro grande desafio foi a implementação dos algoritmos dos modelos matemáticos integrados com o MapServer, mais especificamente foi utilizado o PHP/MapScript, a interface PHP para acesso aos recursos (API) do MapServer. Neste ponto, trabalhei integrado com os programadores para avaliar continuamente os resultados gerados em cada algoritmo. Era necessário ter a certeza da qualidade final dos mapas gerados, afinal de contas, é por isso que eu assino o Atestado Responsabilidade Técnica (ART, registrado junto ao CREA) de cada projeto que sou responsável. Nos gráficos a seguir, eu apresento as etapas da criação dos mapas temáticos automatizados.

A primeira etapa do processo é o rascunho do modelo matemático. Normalmente faço isso no papel. Isso pode soar estranho vindo de alguém que trabalha para "eliminar o papel" dos processos de negócios dos clientes, mas ainda considero o papel o ambiente mais livre para rascunhar as primeiras ideias (peço que perdoem os meus "garranchos"). 


A segunda etapa do processo é um relatório técnico contendo todas as fórmulas a serem aplicadas, bem como o detalhamento de cada uma delas visando a implementação dos algoritmos por parte dos desenvolvedores.


O resultado final desta "matemágica" é um lindo mapa gerado automaticamente. Se uma pessoa fosse fazer este mapa de forma manual usando um Desktop GIS, por exemplo, levaria semanas. Para a equipe que participou do projeto (desenvolvedores e analistas de requisitos), a cada novo mapa gerado era um motivo de orgulho e motivação. A título de curiosidade, a arquitetura da solução que possibilitou a geração do mapa abaixo foi composta pelos seguintes componentes: PHP, PostgreSQL/PostGIS, OpenLayers e MapServer.


Em cada projeto, é preciso avaliar bem os riscos envolvidos e buscar a melhor forma de como lidar com cada um deles. Em alguns casos, os desafios promovidos pela inovação podem se converter em uma dedicação e comprometimento maior da equipe. Num projeto envolvendo desenvolvimento de sistemas, boa parte dos riscos normalmente terá uma relação direta ou indireta com a equipe técnica, pois o processo produtivo depende basicamente da capacidade criativa das mentes das pessoas envolvidas. Este processo é diretamente afetado pela forma na qual o coordenador do projeto (que pode exercer também o papel de gerente de projeto) lida com os desafios e com a equipe técnica envolvida.

Imagem cortesia de sheelamohan / FreeDigitalPhotos.net