Você está na página 1de 73

Automao de Processos de Negcio em Dispositivos Mveis

Gonalo Filipe da Silva Batista

Dissertao para obteno de Grau Mestre em

Engenharia Informtica e de Computadores

Jri
Presidente: Professor Doutor Antnio Manuel Ferreira Rito da Silva Orientador: Professor Doutor Pedro Manuel Moreira Vaz Antunes de Sousa Vogais: Professor Doutor Artur Miguel Pereira Alves Caetano

Outubro 2010

I. Agradecimentos
Ao apresentar esta dissertao quero agradecer a todos aqueles que de alguma forma contriburam para a sua concretizao, em particular: Ao meu orientador Professor Pedro Sousa pelo acompanhamento, encorajamento e crtica constantes que me permitiram levar a cabo esta dissertao. Ao Eng. Manuel Fonseca pela orientao e ajuda. A Eng. Alexandra Marques e ao Prof. Jos Borges pela participao no Paper e ajuda em alguns temas da sua rea nomeadamente a floresta. Aos meus pais pelo apoio incondicional durante todo o processo de realizao desta dissertao.

II. Resumo
Devido ao forte crescimento das tecnologias de informao e dos dispositivos mveis, de extrema importncia desenvolver mecanismos de automao de trabalho com vista a maximizar a eficcia dos processos de uma empresa. Os sistemas de gesto de workflows foram criados nesse sentido, no entanto, nenhum suporta a realizao de tarefas com utilizao recursos que estejam em ambientes desconectados, sendo o caso da explorao florestal um exemplo forte. O Objectivo desta dissertao era encontrar uma soluo para contornar o problema da falta de conexo, utilizando o armazenamento persistente e ferramentas de sincronizao. A soluo consiste em disponibilizar uma worklist aos clientes num PDA com armazenamento persistente e, realizar a sincronizao posteriormente. Esta soluo foi implementada num projecto em curso na empresa Link Consulting designado CAMTec, que define a viso tecnolgica para a gesto de toda a cadeia de abastecimento de produtos florestais, onde vo ser realizados os testes e a respectiva validao atravs de utilizadores do sector.

Palavras-chave
Workflow Base Dados Sincronizao Floresta Dispositivos Mveis

III. Abstract
Due to the strong growth of information technologies and mobile devices, it is extremely important to develop mechanisms for automation of work to maximize the effectiveness and efficiency from processes of a company. The workflow management systems was something created in this sense, the problem is that doesnt supports the accomplishment of tasks to resources that are in disconnected environments, and the case of logging is a strong example. The objective of this dissertation was to find a solution to overcome the lack of connection, using persistent storage and synchronization tools. The solution is to provide a worklist to customers on a PDA with persistent storage, and then perform the synchronization. This solution was implemented in an ongoing project at Link Consulting company named CAMTec that sets the technology vision for managing the entire supply chain of forest products, where will be performed testing and validation by users in the sector.

Keywords
Workflow Data Base Sync Forest Mobiles

ndice
I. II. Agradecimentos ...................................................................................................... 2 Resumo ................................................................................................................... 3

III. Abstract ................................................................................................................... 4 ndice ............................................................................................................................... 5 IV. Lista de Figuras ........................................................................................................ 8 Introduo ..................................................................................................................... 10
1.1 1.2 1.3 1.4 Estrutura do relatrio ........................................................................... 10 Enquadramento da Tese ....................................................................... 11 Enquadramento Terico ....................................................................... 12 Planeamento ......................................................................................... 12

2. 3.

Problema ............................................................................................................... 13 Conceitos............................................................................................................... 15


3.1 3.2 3.3 3.4 3.5 3.6 Computao mvel ............................................................................... 15 Processo Negcio .................................................................................. 15 Sistemas Mveis ................................................................................... 15 Sistemas de informao empresariais .................................................. 16 Workflow .............................................................................................. 16 Sistema de gesto workflows ............................................................... 16

4.

Objectivos ............................................................................................................. 17
4.1 4.2 4.3 Requisitos ............................................................................................. 17 Objectivos pessoais............................................................................... 17 Benefcios esperados ............................................................................ 18

5.

Estado da Arte ....................................................................................................... 19


5.1 Documentos Cientficos ........................................................................ 20

5.1.1

Extica ................................................................................................... 20

5.1.2 5.1.3 5.1.4

INCAs .................................................................................................... 21 MAGI ..................................................................................................... 23 CosmoBiz ............................................................................................... 24

5.1.5 Processos desconectados, mecanismos e arquitecturas para Mobile EBusiness (14) ......................................................................................................... 25 5.1.6 Experincia em operaes desconectadas em ambientes de computao mvel (15) ....................................................................................... 27 5.1.7 WHAM: supporting mobile workforce and applications in workflow environments (17) ................................................................................................. 28
5.2 Solues comerciais .............................................................................. 28

5.2.1 5.2.2 5.2.3


5.3

Teasing Mobile workflow ...................................................................... 28 WonderWare ......................................................................................... 29 Apacheta ............................................................................................... 30


Avaliao de solues ........................................................................... 31

6.

Soluo .................................................................................................................. 34
6.1 6.2 6.3 Vista Geral............................................................................................. 34 Reviso de processos de negcio ......................................................... 35 Arquitectura .......................................................................................... 36

6.3.1 6.3.2 6.3.3


6.4 6.5 6.6 6.7

Estaes mveis .................................................................................... 37 Estao fixa ........................................................................................... 40 Comunicao para o exterior ................................................................ 40
Linguagens de Programao ................................................................. 40 Persistncia de dados ........................................................................... 41 Mapeamento Objecto-Relacional ......................................................... 42 Sincronizao ........................................................................................ 43

6.7.1 6.7.2 6.7.3 6.7.4

Provedores ............................................................................................ 43 Participantes ......................................................................................... 44 Componentes da plataforma ................................................................ 46 Gesto verses ...................................................................................... 48

6.7.5 6.7.6 6.7.7 6.7.8 6.7.9


6.8 6.9

Fluxo sincronizao ............................................................................... 49 Gesto conflitos .................................................................................... 51 Cdigo Gerado....................................................................................... 51 Filtros Sincronizao ............................................................................. 53 Web service ........................................................................................... 54
Segurana ............................................................................................. 54 Ferramentas utilizadas.......................................................................... 55

7.

Actividades no percurso de desenvolvimento da dissertao.............................. 56


7.1 7.2 Participao em workshops .................................................................. 58 Participao na Realizao de um Paper .............................................. 60

8. 9.

Validao da Soluo ............................................................................................ 61 Concluses ............................................................................................................ 63

10. Trabalho Futuro .................................................................................................... 65 11. Referncias ............................................................................................................ 67 12. Anexos ................................................................................................................... 70
12.1 12.2 12.3 12.4 Glossrio ............................................................................................... 70 Acrnimos ............................................................................................. 70 Anexo 1 ................................................................................................. 72 Anexo 2 ................................................................................................. 73

IV. Lista de Figuras


Fig. 1 Arquitectura Extica ..................................................................................................... 20 Fig. 2 Arquitectura INCAs ...................................................................................................... 22 Fig. 3 Arquitectura MAGI ....................................................................................................... 23 Fig. 4 Arquitectura camadas CosmoBiz .................................................................................. 24 Fig. 5 Maquina de estados para suportar desconexo .......................................................... 26 Fig. 6 Arquitectura Coda ........................................................................................................ 27 Fig. 7 Arquitectura WHAM ..................................................................................................... 28 Fig. 8 Arquitectura Teasing Mobile WorkFlow ....................................................................... 29 Fig. 9 Arquitectura wonderware ............................................................................................ 30 Fig. 10 Arquitectura Apacheta Service ACE ............................................................................ 31 Fig. 11 Vista geral do sistema mvel ...................................................................................... 35 Fig. 12 Workflow exemplo ..................................................................................................... 36 Fig. 13 Decomposio em mdulos ....................................................................................... 37 Fig. 14 Vista de ecrs .............................................................................................................. 38 Fig. 15 Menu Tarefa ............................................................................................................... 39 Fig. 16 Esquema Base Dados .................................................................................................. 41 Fig. 17 Arquitecturas da Sync Framework .............................................................................. 43 Fig. 18 Provedores Framework .............................................................................................. 44 Fig. 19 Participante completo ................................................................................................ 44 Fig. 20 Participante Parcial ..................................................................................................... 45 Fig. 21 Participante Simples ................................................................................................... 45 Fig. 22 Componentes da Sync Framework ............................................................................. 46 Fig. 23 Colunas Informao de verses .................................................................................. 47 Fig. 24 Tabelas de Tombstones .............................................................................................. 47

Fig. 25 Esquema da tabela TASK_Tombstone ........................................................................ 48 Fig. 26 Triggers para Gesto Verses ..................................................................................... 49 Fig. 27 Fluxo sincronizao..................................................................................................... 50 Fig. 28 Excerto cdigo funes sincronizao ........................................................................ 52 Fig. 29 Cdigo de chamada sincronizao ........................................................................... 53 Fig. 30 Arquitectura 3-tier de Sincronizao .......................................................................... 54 Fig. 31 Diagrama de Processos da CAPF ................................................................................. 57 Fig. 32 Tipos de soluo ......................................................................................................... 66 Fig. 33 Diagrama da cadeia de abastecimento ...................................................................... 72 Fig. 34 Diagrama da rede procurement.................................................................................. 73

Introduo
Nos dias de hoje, com a competitividade que se tem vindo a sentir por parte das empresas, de extrema importncia e factor decisivo incluir e incorporar toda a tecnologia e metodologia inovadora, de modo a melhorar tempos de resposta e minimizar os tempos de operao, conseguindo assim uma reduo nos custos, um aumento da satisfao do cliente e maior competitividade no mercado. Um estudo realizado pelo Internacional Data Corporation (Portugal) sobre as pequenas e mdias empresas, revela que o investimento em tecnologias de informao vai continuar a aumentar a uma taxa mdia de 7.8% ao ano entre 2005 e 2010 (1). As principais razes apontadas so o aumento de produtividade, maior eficcia de processos e a garantia da continuidade do negcio. Hoje e cada vez mais surgem novos paradigmas procedentes da mutao permanente do mercado das tecnologias de informao e comunicao. Diariamente somos confrontados com novos produtos e servios de mobilizao do negcio, que alteram a prpria maneira de ser e estar das pessoas, sendo algo cada vez mais importante tendo em conta a constante evoluo dos equipamentos mveis como os PDA, a abrangncia e velocidade das ligaes, nomeadamente as 3G oferecidas pelas operadoras mveis, e os sistemas de base dados mveis introduzidos. Outro factor motivador o crescente nmero de utilizadores mveis por todo o mundo, como mostra o estudo de cinco anos realizado pelo IDC (2), tendo em conta as ferramentas por estes disponibilizadas, pequenos aparelhos de elevado suporte realizao de um grande leque de actividades. Nestes dispositivos so encontradas vantagens competitivas para as empresas, nomeadamente na reduo de custos, qualidade e rapidez dos servios prestados bem como agilizar os seus processos de negcio.

1.1 Estrutura do relatrio

Introduo: Neste captulo feita a descrio do contexto onde se insere a indicao da motivao e descrio do problema. Problema: Aqui descrito o principal problema abordado nesta tese.

10

Conceitos: Breve descrio de alguns conceitos para melhor compreenso do contedo desta dissertao. Objectivos: No presente captulo so descritos e relacionados objectivos pessoais e objectivos associados ao projecto. Estado Arte: Este captulo alberga todo o trabalho de pesquisa e investigao realizado referente ao problema em questo, resultantes de todas as perspectivas pertinentes para o desenvolvimento da soluo. Soluo: Neste captulo apresentada uma breve descrio da proposta de soluo, bem como uma presentao do modo de funcionamento e respectiva arquitectura. Actividades no percurso de desenvolvimento da dissertao: Descrio das actividades realizadas, participao em workshops e co-produo de um paper. Concluses: Descrio da relao dos objectivos com uma investigao relacionada e com a proposta de soluo. Trabalho Futuro: Direces a tomar de forma a acrescentar valor ao trabalho realizado nesta dissertao Referencias: Referencias Bibliogrficas Anexos: Contm diagramas, glossrio e acrnimos.

1.2 Enquadramento da Tese


Esta Dissertao foi realizada com vista obteno de Grau mestre em Engenharia Informtica e de Computadores, curso frequentado no Instituto Superior Tcnico pertencente Universidade Tcnica de Lisboa. O trabalho foi realizado na Empresa Link Consulting SA sob orientao do Professor Pedro Manuel Moreira Vaz Antunes de Sousa, do departamento de Engenharia Informtica do IST, e coordenao do Engenheiros Manuel Jos Rolo da Fonseca.

11

1.3 Enquadramento Terico


Neste subcaptulo irei enquadrar a dissertao no mundo real, mostrando a motivao e casos de uso associados. Como enquadramento podem referir-se diversos exemplos em que funcionrios de vrias empresas necessitam de informaes actualizadas no local, informaes estas que passam por dados de clientes necessrios a um vendedor, tarefas a executar por um operrio, dados recolhidos no local atravs de um responsvel de fiscalizao, bem como a juno das trs em casos mais complexos. Este tipo de ligao normalmente feito por ferramentas tradicionais de baixa eficincia, como o telefone e os relatrios em papel. Para alm disto pelo facto de as tarefas de recolha de informao e da posterior insero da mesma no sistema, serem feitas por indivduos/pessoas diferentes existe uma maior probabilidade de erros de transcrio. Um exemplo disso, o caso no qual vou focar a ateno da minha dissertao, trata-se das operaes realizadas na explorao florestal, onde apenas so usadas ferramentas tradicionais sem qualquer automao ou tecnologia, neste exemplo especialmente evidente a ausncia de conexo de rede, sendo este o problema fundamental encontrado.

1.4 Planeamento
Esta seco enquadra temporalmente a realizao desta tese, no segundo semestre do ano lectivo 2009/2010. A pesquisa do trabalho relacionado decorreu no primeiro semestre do ano lectivo 2009/2010, onde a pesquisa se baseou no suporte a utilizadores desconectados em sistemas de gesto de workflows, indicada pelo orientador Professor Pedro Sousa e pela pessoa que me auxiliava dentro da Link, o Eng. Manuel Fonseca. No final dessa surgiu a especificao do problema e a proposta de soluo. Toda essa informao foi escrita e entregue num relatrio de projecto de dissertao, sendo posteriormente avaliada num workshop realizado no Tagus Park no dia 2 de Fevereiro de 2010.

12

2. Problema
O problema que abordado nesta dissertao : Falta de suporte a realizao de tarefas de um workflow com dispositivos mveis e em ambientes desconectados Este problema enfrentando nomeadamente na explorao florestal, onde a cobertura de rede no meio dos talhes da madeira escassa e muitas das vezes inexistente. Privando a utilizao de ferramentas automticas para recolha de dados e controlo das operaes, fazendo com que tudo isso seja feito com ferramentas tradicionais de baixa eficiencia e alto nmero de erros. Para que exista um sistema em que a mobilidade no seja uma condicionante, permitindo a atribuio de tarefas e execuo das mesmas a recursos apenas conectados parte do tempo, so encontrados vrios problemas ligados ao hardware bem como aos softwares existentes. Os factores apresentados de seguida so as principais condicionantes e que por sua vez geram este problema. Ecrs pequenos para aplicaes complexas, assim como os mecanismos de insero de dados tendem a ser mais pequenos e de menor facilidade de utilizao que num computador de secretaria. Por norma todos estes dispositivos mveis tm um poder de processamento e armazenamento notavelmente mais fraco que um servidor ou computador de mesa, impossibilitando a instalao de aplicaes mais pesadas, nomeadamente um motor de gesto de workflows, de forma a permitir ter a lgica num PDA. No caso da floresta so dados como factores importantes a robustez dos equipamentos bem como a sua autonomia em penalizao do poder de processamento e do armazenamento. Existe uma grande variedade de dispositivos PDAs, heterogeneidade nos sistemas operativos, suporte para linguagens de programao, respectivos mecanismos de insero de dados e visualizao dos mesmos. Os sistemas gesto de workflows bem como outros sistemas aplicacionais restringem, por norma, o acesso a recursos que se encontram fora das instalaes da organizao. Quando existe suporte, exigem que os dispositivos mveis estejam conectados todo o tempo em que

13

se est a realizar a tarefa, impossibilitando do ponto de vista de software uma interaco com recursos em ambientes desconectados ou com quebras de conexo.

14

3. Conceitos
Neste captulo so apresentadas breves descries de diversos conceitos chave relacionados com a dissertao, de forma a facilitar a compreenso da mesma.

3.1 Computao mvel


Cada vez menos se vm as pessoas que operam fora das organizaes a utilizarem ferramentas tradicionais, como relatrios em papel e chamadas telefnicas para as trocas de informao. O mtodo mais empregado actualmente o uso de um equipamento mvel de apoio tarefa que consiste em levar para o terreno um computador porttil, PDA ou Smartphones, o respectivo software e todos os ficheiros necessrios realizao de tarefas.

3.2 Processo Negcio


Os processos de negcio so actividades previamente estabelecidas que tm como objectivo determinar a forma como o trabalho realizado numa organizao. Constituem um conjunto de aces relacionadas entre si de forma lgica e coerente, a fim de promover um resultado favorvel organizao, tanto a nvel interno como externo (3).

3.3 Sistemas Mveis


Os sistemas mveis so conhecidos por ter um determinado nmero de estaes fixas, com localizao fixa e esttica e um conjunto de estaes mveis. Todas as comunicaes entre estes dois tipos de estaes fazem-se normalmente atravs de ligaes sem fios, nomeadamente o WIFI, GPRS e 3G. Neste tipo de sistemas a estao mvel no se encontra sempre conectada, e portanto, em momentos de desconexo as tarefas so realizadas com os dados guardados persistentemente. As desconexes podem ser voluntrias, para poupar nos preos das comunicaes ou para aumentar a autonomia, ou involuntrios, ao passar por um local sem cobertura de rede ou em caso de falha nas estaes fixas.

15

Um caso particular de sistemas mveis relevantes para este trabalho, so os sistemas de base dados mveis (SBDM), que so uma extenso aos sistemas de base dados distribudos (SBDD). Os SBDM tm estaes mveis com persistncia e caractersticas diferentes e mais limitadas que as estaes fixas.

3.4 Sistemas de informao empresariais


Expresso utilizada para descrever um sistema que permite colectar, processar, transmitir e disseminar dados que representam informao para a empresa. A informao um recurso de extrema importncia nas organizaes, quanto mais fivel, oportuna e exaustiva for, mais coesa ser a empresa e maior ser o seu potencial de resposta s solicitaes da concorrncia (4).

3.5 Workflow
Trata-se de uma sequncia de passos necessrios para que se possa atingir a automao de processos de negcio, de acordo com um conjunto de regras definidas, envolvendo a noo de processos, permitindo que estes possam ser transmitidos de uma pessoa para outra de acordo com algumas regras (5).

3.6 Sistema de gesto workflows


Sistema que cria, gere e controla workflows com o uso de software. Este sistema trata da automao dos processos de negcio, atravs de interaces com os recursos (responsveis pela realizao de tarefas), bem como da invocao de outros sistemas de informao. Estes sistemas dispem de ferramentas de superviso e controlo, para permitir no s o rearranjo das tarefas mas tambm a verificao do estado de cada processo. (6) So exemplos ou parte de sistemas de informao empresariais nos quais foquei mais a minha Framework.

16

4. Objectivos
Neste sentido proponho-me encontrar uma soluo que permita integrar os recursos que realizam o seu trabalho em ambientes sem rede com os sistemas do backoffice, nomeadamente sistemas de gesto de workflows. Vou focar a minha soluo no caso da floresta, e focar o suporte a tarefas de Recolha de dados, e controlo de operaes. O foco nestas tarefas visa encontrar uma soluo para este nicho de mercado.

4.1 Requisitos
Tendo em conta o problema e as necessidades pretendidas pelos utilizadores desconectados de um sistema de gesto de workflows no ambiente florestal, sumarizaram-se e redigiram-se os requisitos mais importantes de forma a servir de guia. Foram identificados os seguintes requisitos funcionais: Automatizar a distribuio das actividades pelos vrios recursos no campo; Disponibilizar indicao e descrio do local para cada tarefa; Recolha de dados no momento da realizao de tarefas; Disponibilizar servios para actualizao do sistema backoffice; Interface adequada a PDAs; Possibilidade de trabalhar em modo desconectado; Disponibilizar armazenamento persistente localmente; Disponibilizar autonomia aos clientes de forma a evitar conflitos entre os mesmos no momento da sincronizao com o backoffice; Mecanismos de envio e de recepo apropriados para manter a integridade da informao.

4.2 Objectivos pessoais


Posteriormente so apresentados os objectivos pessoais que se pretendem alcanar com a realizao desta tese de mestrado:

17

Estudar o que existe no Mercado associado ao problema de suporte a clientes em ambientes desconectados; Propor e formalizar uma soluo; Validar esta soluo atravs de uma implementao. Redigir e apresentar a Dissertao para alcanar o Grau Mestre;

4.3 Benefcios esperados


Neste subcaptulo so enunciados alguns dos benefcios que se esperam conseguir com a soluo encontrada em casos reais de utilizao. Menor risco de erro nos dados recolhidos; Reduo de papel envolvido nos processos; Eliminar tempo necessrio insero de dados no sistema; Informao actualizada com maior rapidez; Maior quantidade e qualidade de informao disponvel nas tomadas de deciso por parte de todos os agentes do CAPF; Aumento da eficincia dos recursos nas interaces no terreno; Distribuio automtica das actividades pelos recursos no campo;

18

5. Estado da Arte
Todo o trabalho de investigao relacionado com esta temtica para a realizao do relatrio de projecto de dissertao, foi recolhido no sentido de suportar clientes desconectados para sistemas de gesto de workflows. Assim este captulo composto no s por um resumo do trabalho relacionado j recolhido e considerado importante na iterao anterior, mas tambm por um novo encontrado nesta iterao. Todos os trabalhos encontrados que incluem suporte para utilizadores fora das instalaes da organizao dividem-se em duas metodologias diferentes de funcionamento: as solues online e algumas solues com sincronizao. As solues online so aquelas que normalmente so acedidas nos dispositivos mveis atravs de um simples browser. Este tipo de solues no tem qualquer lgica do lado do cliente, impossibilitando-o de realizar qualquer operao na ausncia de rede. Sendo que as solues online no resolvem o problema inerente a esta tese, estas sero descartadas e no ser feita qualquer referncia s mesmas. As solues que interessam so aquelas que tm alguma lgica negcio lado do cliente e permitem ao mesmo realizar o trabalho independentemente das condies de rede, trabalho este que sincronizado posteriormente com as aplicaes de backoffice nomeadamente sistemas de gesto de workflows. Ser criticada uma hiptese de enquadramento das possveis solues existentes ou do conhecimento importante que podemos retirar destas, segundo os objectivos anteriormente referidos no sub-capitulo 5.3. Estas crticas so importantes para saber de que forma que as solues se adequam ou no a este trabalho e de que forma podem ajudar. Todas as solues online enunciadas no relatrio de projecto da dissertao sero agora descartadas pois no introduzem qualquer valor para a direco final levada a cabo por esta tese. A pesquisa de documentos cientficos baseou-se em sites indicados pelo coordenador Professor Pedro Sousa: CiteSeer, b-on, IEEE Xplore, ACM Digital Library, Science Direct e tambm SpringerLink. As solues comerciais foram encontradas atravs de motores de pesquisa nomeadamente o Google assim como algumas indicadas pelo Eng. Manuel Fonseca.

19

5.1 Documentos Cientficos


Aqui sero resumidos alguns aspectos interessantes encontrados em documentos cientficos assim como resumo de algumas das solues apresentadas para enderear este problema ao longo do tempo.

5.1.1 Extica
O Extica (7) um projecto de desenvolvimento, que mesmo sendo antigo foi importante no seu tempo, realizado pelo centro de pesquisa da IBM. Trata-se de um upgrade ao FlowMark, conhecido como o sistema de gesto de workflows da IBM, para suportar clientes Offline. De seguida apresentada de forma sinttica a arquitectura do sistema FlowMark (Fig.1). O sistema FlowMark composto por um Cliente para os recursos onde so vistas as suas tarefas associadas (runtime client), um cliente para controlo do processo (program execution client), um servidor (FlowMark Server) e uma base de dados orientada por objectos (Object Store Server). A comunicao dos workflows suportada essencialmente pela troca de mensagens entre os componentes descritos, mensagens estas que indicam que uma tarefa est pronta para execuo, o incio da execuo e indicao de fecho que a d como completa.

Fig. 1 Arquitectura Extica

Dentro desta arquitectura foram pensados dois caminhos a seguir para suportar clientes Off-line, todos com o intuito de alterar apenas o cliente, deixando o servidor e a base de dados intactos. A primeira pressupe a atribuio de um conjunto de tarefas a cada recurso, o qual ir fazer download de toda a informao relevante para a realizao das mesmas antes do momento de desconexo. A segunda permite aos clientes fazer navegao prpria nos

20

processos atravs do download de parte dos processos. A primeira soluo foi mais explorada, pelo facto de ser mais simples e de no adicionar tanta complexidade ao cliente. A verso existente do FlowMark j contem algumas potencialidades em modo Off-line, tal como, permitir realizar a tarefa corrente sem conexo. A sua nica limitao era apenas o facto de no ser possvel passar para uma tarefa subsequente sem que, a informao resultante da finalizao da tarefa corrente, fosse enviada ao servidor. As alteraes vo ser feitas essencialmente ao Program Execution Client, ao qual vai ser adicionado armazenamento persistente para guardar a informao necessria s tarefas a correr no Runtime Client e os resultados da finalizao das mesmas. A funcionalidade foi pensada da seguinte forma: para que se d inicio ao funcionamento desconectado necessrio passar por uma fase de preparao onde feito o download de toda a informao necessria e onde o cliente selecciona e tranca as tarefas que tem por inteno realizar, permitindo assim, ao servidor, evitar que dois recursos iniciem a mesma tarefa. O servidor passa ento a ter dois tipos de tarefas a realizar, as que esto reservadas por recursos Off-line e as On-line. Em modo desconectado o cliente apenas pode realizar as tarefas que previamente trancou. Quando o Cliente novamente conectado envia toda a informao sobre as tarefas que completou, passando-as j completas do lado do servidor, sincronizando a sua lista de tarefas com a do servidor. Esta soluo tem como contrapartida a instalao possvel apenas em desktops ou laptops, deixando de fora os PDAs.

5.1.2 INCAs
Da Universidade de Houston provm outro desenvolvimento denominado INCAs (8). INCA um pacote de informao no qual se baseia toda a arquitectura deste sistema e tem por objectivo resolver problemas de workflows dinmicos em ambientes distribudos. O funcionamento baseia-se numa arquitectura P2P pelo facto de no existir um cliente nem um servidor e de todos os ns se comportarem da mesma forma. A esses ns, dado o nome de Estaes de Processamento. Pode ser visto o esquema da arquitectura na figura seguinte.

21

Fig. 2 Arquitectura INCAs

Cada INCA contm todos os dados privados do workflow, o Log do mesmo para garantir atomicidade e um conjunto de regras que definem o controlo e o Fluxo de informao entre os vrios passos. Cada estao de processamento tm toda a potencialidade de um motor de workflow e tem a funo de receber as INCAs, realizar a actividade associada e enviar ao prximo destinatrio por um canal adequado. Ao realizar o seu servio, cada estao de processamento pode adicionar, apagar ou modificar regras da INCA assim como as suas. Esta arquitectura resolve o factor de distribuio e da realizao das tarefas em ambientes diferentes. Para que ocorra um funcionamento semelhante ao representado, as estaes de processamento so dotadas de uma camada, denominada INCA shell, composta por dois mdulos: o agente e o sistema de gesto de regras. O Agente ao receber uma INCA tem como funes: Guardar os Dados e Regras da INCA de forma persistente; Fazer a chamada ao servio da Estao de processamento, passando-lhe o contexto, aguarda que este execute a actividade de retorne os resultados; Guardar os resultados da execuo persistentemente; Executar as regras presentes no mdulo de gesto de regras da INCA e envia-las para os destinos apropriados; O Sistema de gesto de regras tem como funcionalidade instalar as regras na chegada da INCA e proceder sua execuo quando feita a chamada pelo Agente.

22

5.1.3 MAGI
Baseado no http e no Apache Project surge o MAGI (9) (Micro-Apache Generic Interface) que uma Framework arquitectural que suporta a coordenao do negcio electrnico e permite a instalao em vrias plataformas. O http tem a propriedade de ser escalvel desde dispositivos mveis a desktops e permite o uso com qualquer contedo. Permite, portanto, que o WAP (wireless Application protocols) possa ser usado com o MAGI mantendo a interoperabilidade com a WEB. A WEB a infra-estrutura perfeita escala da internet, mas falha na falta de algumas primitivas necessrias para o suporte de colaborao e coordenao. Para contornar isto e permitir a utilizao de workflows pela Web so normalmente usados sistemas de workflow centralizados, que limitam o acesso e a interaco a clientes desconectados. O MAGI resolve isto, disponibilizando uma Framework para facilitar a construo de aplicaes distribudas em XML e Java e promovendo o envio de eventos para qualquer dispositivo que contenha um servidor MAGI a correr. A arquitectura composta por dois componentes chave: um microApache http server e uma interface genrica e extensvel, dispondo-se da forma apresentada na figura seguinte.

Fig. 3 Arquitectura MAGI

Os servidores MAGI podem ser configurados para IPs dinmicos ou estticos, sendo que os dinmicos requerem um servidor de DNS intermedirio, desenhado essencialmente para realizar os workflows que incluem troca de documentos.

23

5.1.4 CosmoBiz
O CosmoBiz (10), outro projecto de desenvolvimento a decorrer desde Janeiro de 2007 por parte do departamento de IT da universidade de Copenhaga, tem como objectivo atingir uma plataforma para suporte da evoluo dos processos de negcio, de forma distribuda e com execuo em ambientes mobile. Para alcanar esse objectivo foram reunidas trs reas de pesquisa: a Computer Supported Cooperative Work (CSCW), a rea de formalizao da evoluo dos processos de negcio para mobile e a implementao de sistemas distribudos e Peer-to-Peer (P2P). O CSCW tem vindo a desenvolver sistemas de informao complexos que permitem coordenao e integrao de actividades distribudas. Foi feito um desenvolvimento importante para perceber a utilidade e as vantagens do alinhamento das tarefas entre os recursos e a partilha da informao. Este teve como ponto de partida a falha de tecnologia no que toca mobilidade de recursos e actores. Na evoluo da formalizao dos processos de negcio mveis adoptado um formalismo bigraphical reactive systems (11), pelo facto de toda a flexibilidade oferecida pelas evolues, tanto as distribudas como as de mobilidade, complicar a construo de descries correctas de processos. Mais importante a parte da implementao que passa por criar um motor de gesto de processos de negcio que suporte clientes mveis mesmo com possveis desconexes.

Fig. 4 Arquitectura camadas CosmoBiz

A soluo apresentada para o sistema de gesto de workfows composta por trs camadas. De baixo para cima temos XML Store (12) para o armazenamento, Distributed Reactive XML (13) como linguagem de programao onde se encontra alguma da lgica de negcio, e por ltimo, o BPEL como linguagem de execuo dos processos de negcio, tudo isto representado na figura acima. O Distributed Reactive XML guarda documentos XML com o estado de

24

execuo dos processos na XML Store. Estes tm uma arquitectura P2P, permitindo assim uma distribuio e suportando a mobilidade. Os Peers podem ser estticos (quase sempre conectados) ou dinmicos (conectividade instvel), dotando assim os dispositivos de recursos limitados, apenas com contedo essencial aos processos que o actor est a realizar. Aps o funcionamento desconectado a sincronizao depois feita com um controlo optimista e seguindo estratgias ainda a serem investigadas. Relativamente a dispositivos mveis, um motor de workflow leve est ainda em progresso de implementao.

5.1.5 Processos desconectados, mecanismos e arquitecturas para Mobile EBusiness (14) Neste documento, so apresentadas algumas solues para o suporte a clientes para integrar processos de negcio, nomeadamente acesso a contedos E-Commerce. Assim so enunciados alguns mecanismos de suporte desconexo dos clientes durante as transaces entre os clientes (estaes mveis) e os servidores (estaes fixas). Toda esta soluo, visto ser desenvolvida nos centros IBM, usa base de dados e aplicaes produtos da mesma, os clientes so dispositivos mveis e os servidores Web-application servers de E-Commerce ou Servidores de contedos. Para suportar a desconexo, falhas na rede e entraves do cliente so utilizadas mquinas de estados. Na figura seguinte est uma mquina exemplo, na qual possvel observar os estados pelos quais passa um pedido de compra.

25

Fig. 5 Maquina de estados para suportar desconexo

No caso de se desenrolar uma operao sem desconexes apenas so percorridos cinco estados possveis que correspondem aos estados representados a azul. Os estados a laranja servem para suportar situaes de desconexo e outras falhas, nomeadamente excepes por falta de memria. Este sistema permite ao utilizador processar vrias encomendas ao mesmo tempo, mesmo em caso de desconexo, podendo estas estar em qualquer um dos estados. No momento da desconexo, cada estado tem uma transio para um estado desconectado respectivo. Sendo que os processos de negcio podem ser projectados em mquinas de estados, maquinas estas que foram apresentadas anteriormente, onde podem ser injectados estados utilizados no momento de desconexo e erros, de forma a suportar estes de forma transparente.

26

A arquitectura baseada num middleware de suporte entre o cliente e o servidor, cuja arquitectura ser aprofundada, mas que pode ser consultada no documento indicado nas referncias.

5.1.6 Experincia em operaes desconectadas em ambientes de computao


mvel (15) O objectivo principal o desenvolvimento de um sistema que torne transparente a portabilidade e conexo dos dispositivos mveis que interagem uns com os outros. Este documento foca o acesso informao partilhada atravs de dispositivos mveis, informao esta fundamental aos recursos nas respectivas operaes. Todo o acesso informao se baseia num sistema designado de Coda (16). O Coda tem um funcionamento simples, baseado em caches, desenhado para suportar desconexes e replicao de servidores. Suponha-se a existncia de vrios clientes com um respectivo armazenamento persistente, um gestor de caches (Vnus) e vrios servidores replicados com um gestor de verses (Volume Storage Group). A figura seguinte demonstra a arquitectura de uma forma simples.

Fig. 6 Arquitectura Coda

O autor conclui que o uso do Coda em situaes de desconexo tem alguns inconvenientes mas nenhum considerado fatal. De qualquer modo para que houvesse uma evoluo por parte do sistema era necessria uma refinao do mesmo. O uso de Unix levou a que esta tecnologia fosse posta de parte.

27

5.1.7 WHAM: supporting mobile workforce and applications in workflow


environments (17) Este documento relata a prototipagem de um sistema denominado WHAM cuja designao workflow enhancements for mobility, cujo objectivo suportar a fora de trabalho mvel bem como as aplicaes usadas por estas. Os principais problemas a enderear so as restries da conectividade, desconexes e o funcionamento desconectado. A arquitectura do WHAM consiste em duas aplicaes principais: o IBMs MQSeries Workflow e um gestor de tarefas medida, desenvolvido em Java, uma no servidor (estao fixa) e outra no cliente (estao mvel) respectivamente. As funes chave disponibilizadas no cliente so: localizao das tarefas sobre um mapa; atribuio dinmica de actividades e operaes de workflow desconectado. O diagrama seguinte ilustra brevemente a referida arquitectura.

Fig. 7 Arquitectura WHAM

5.2 Solues comerciais


Para alm de documentos cientificos que endeream o problema, existe tambm algumas ferramentas comerciais que visam resolver este.

5.2.1 Teasing Mobile workflow


Esta uma das solues comerciais encontradas. Foi desenvolvida e vendida pela empresa Teasing sediada na Holanda. Esta soluo denominada Teasing Mobile Workflow (18) disponibiliza software do lado do dispositivo mvel bem como do lado do backoffice.

28

Do lado do dispositivo mvel oferecido um sistema de gesto de workflows com um funcionamento independente da rede de acesso informao proveniente do backoffice, para alm de muitas outras funcionalidades no relevantes para o contexto do projecto. No backoffice so oferecidas ferramentas para despacho, controlo e planeamento dos trabalhos a serem realizados pelos recursos no campo, produo de relatrios e anlise dos dados. No que diz respeito arquitectura, a informao a que se tem acesso escassa. Sabe-se apenas que existe uma aplicao para instalar em Windows mobile, e um mdulo que faz a integrao entre a mesma e o sistema do backoffice.

Fig. 8 Arquitectura Teasing Mobile WorkFlow

A integrao feita por XML permitindo assim a integrao com variadssimos sistemas de backoffice, sendo que os mais recomendados pela empresa responsvel pela venda do produto so a SAP e Microsoft Dynamics. Esta integrao feita atravs de um mdulo instalado do lado do backoffice, o backoffice integration, assegurando uma comunicao e uma sincronizao seguras.

5.2.2 WonderWare
Outro caso de Soluo comercial a disponibilizada pela empresa WonderWare sediada nos Estados Unidos da Amrica. Esta atribui o nome de IntelaTrac (19) ao seu produto, que no pode ser directamente associado a workflows, pelo facto de a sua funcionalidade estar mais ligada recolha e uso de boas prticas por parte dos utilizadores, com o intuito de controlar os recursos e disponibilizar um software mvel de apoio deciso. As suas tarefas so assim controladas pelo conhecimento j adquirido anteriormente.

29

Na figura seguinte apresentada, do lado do dispositivo mvel, uma arquitectura composta por uma aplicao Mobile IntelaTrac e uma de gesto de tarefas e recursos, instalada no backoffice designada IntelaTrac Management Center.

Fig. 9 Arquitectura wonderware

Relativamente interaco entre os recursos, a informao ser recolhida usando um questionrio com regras associadas, que incluem as boas prticas e que consequentemente vo receber mensagens de aviso no decorrer das tarefas para reagir a problemas j conhecidos, sem que seja necessrio o contacto com o sistema central. Os questionrios para alm de recolherem a informao, ajudam a tomar decises por parte dos recursos ou mesmo a medir a performance destes. Os gestores tm a aplicao de backoffice que lhes permite monitorizar os estados das tarefas atribudas aos recursos e verificar a performance de cada recurso na execuo das suas respectivas tarefas. Assim, tal como o produto Teasing, este tambm tem a vantagem de permitir a escolha do ERP ou outro sistema backoffice a utilizar, devido ao facto de na parte backoffice do pacote (IntelaTrac Management Center) estar embutida uma camada de integrao que serve de interface para o mesmo. Existem casos de sucesso detalhadamente descritos, como o exemplo de uma grande refinaria a Chevron nos Estados Unidos da Amrica.

5.2.3 Apacheta
Continuando com as solues comerciais, igualmente proveniente de uma empresa sediada nos Estados Unidos da Amrica, este produto denominado ServiceACE
TM

e faz parte das

Mobile Business Solutions oferecidas pela Apacheta. Disponibiliza uma aplicao Mobile com um motor de workflow, uma aplicao interactiva de criao de workflows para o backoffice, o

30

respectivo servidor e portais de acesso e gesto no backoffice, como pode ser observado ver na figura seguinte.

Fig. 10 Arquitectura Apacheta Service ACE

A aplicao que est instalada no dispositivo mvel tem a propriedade de ser rapidamente adaptada a cada caso de negcio e dispe de vrios workflows predefinidos que traduzem boas prticas conhecidas e a possibilidade de criar novos workflows, de forma interactiva no respectivo editor fornecido. Nesta soluo possvel que a qualquer altura possam ser enviados novos workflows para a aplicao mobile, desde que haja conexo. Alm disso, este produto suporta ainda ligaes com GPS e RFID, permitindo assim integrar outras funcionalidades, como guiar o trabalhador ao local da tarefa atravs do GPS ou permitir a leitura de tags RFID, facilitando a identificao de objectos e um sistema de troca de mensagens em tempo real, facultando o envio e recepo de avisos importantes. Assim, tal como outras solues comerciais, esta afirma tambm a facilidade de integrao com os produtos ERP (20).

5.3 Avaliao de solues


Neste subcaptulo vou fazer uma breve crtica sobre o estado de arte encontrado e as nuances retiradas para a realizao da soluo. Um dos documentos mais referenciados em todos os documentos cientficos que envolvam suporte a clientes desconectados do Extica, e percebi esse facto, pois uma soluo simples com boas ideias tericas, com trs detalhes que a fazem dela m na prtica e pouco utilizada. Esses detalhes so a tecnologia IBM cara e antiga, a falta de suporte a dispositivos

31

mveis e finalmente a necessidade de uma fase de preparao antes da desconexo, tornando intil a soluo numa desconexo inesperada, mas as ideias boas esto l, as alteraes simples feitas para suportar desconexes apenas do lado do cliente, ao adicionar persistncia a este, bem como os mecanismos para iniciar o processo de desconexo e mecanismos para sincronizar dados posteriormente. No que toca as INCAs penso ser uma soluo demasiado complexa, e o facto de ter uma arquitectura P2P aumenta o problema de controlo, e ao contrrio do que se possa pensar no aumenta a colaborao entre utilizadores, j que no podem ser realizadas duas tarefas do mesmo workflow em paralelo, por fim e como ponto fundamental suporta dispositivos mveis logo descartada, ficando apenas a viso de uma possvel ligao entre cliente P2P para colaborao de utilizadores. Na soluo vista com a utilizao do Magi, temos outro sistema complexo, com uma utilizao minuciosa dos servidores Apache, eu achei muito difcil de aplicar. O uso de bookmarks (marcadores) com cache alm do simples ponteiro no intuitivo, sendo essa a maneira usada para suportar a desconexo. Desenhado para tarefas que evolvam apenas troca de documentos, todas as outras funcionalidades mais ligadas a workflows e gesto de tarefas no so implicitamente suportadas, apenas com uma extenso que teria de ser desenvolvida. O CosmoBiz outro documento cientfico com uma soluo semelhante s Incas apresentando o mesmos problemas, no existe controlo centralizado, impossibilita a realizao de tarefas paralelamente do mesmo workflow, e no suporta dispositivos mveis, o que levam tambm a descartar sua utilizao. No ponto 5.1.5 descrito um documento que apresenta uma soluo interessante, controlada por mquinas de estados. Todo o processo de realizar uma tarefa passa por vrios estados, no caso de desconexo todas as tarefas em realizao e as que se realizam em modo desconectado tm uma mquina de estados pendente que necessita ser guardada persistentemente at nova conexo, com o realizar de muita tarefa, isto vai aumentar o consumo de memria linearmente. Fazendo o dispositivo lento, nomeadamente dispositivos mveis, no caso de longos perodos na ausncia de rede. Esta soluo tambm baseada em produtos IBM, o que faz o seu preo elevado e de difcil acesso para testes e futura aplicao.

32

De seguida no ponto 4.1.6 trata-se de uma referencia tambm antiga, cujo uso no praticvel trata-se de uma soluo de UNIX desactualizada. O nico ponto de interesse as nuances que se podiam tirar do sistema de Caches presente no Coda, do tipo cliente servidor, com dados centralizados e um gestor de caches em cada cliente. A soluo denominada WHAM relatada, diz suportar desconexo no documento, mas no est explicado a forma como este suporte realizado, da eu suponha que seja alguma persistncia do lado do cliente de alguma forma gerida por proxys referidos no documento. outro dos desenvolvimentos da IBM, cujo qual no tive acesso para testar. As solues comerciais encontradas ambas diziam na sua documentao, a qual podemos retirar do site de cada uma respectivamente, que resolviam de certa forma o problema apresentado. Mas todas estas tinham preos de licena elevados, e apesar do esforo a minha tentativa de conseguir verses de avaliao no foi bem-sucedida, mesmo com os vrios contactos por correio electrnico e insistncia em nome da Link Consulting para obter as mesmas. Com isto no me foi possvel avaliar as mesmas. De qualquer das formas penso que nenhuma seja a mais adequada e orientada ao problema encontrado na explorao florestal. As mesmas no possuem grandes ferramentas de sincronizao e cooperao, so mais indicadas para trabalho autnomo e conter a pouca lgica de negocio necessria no dispositivo mvel.

33

6. Soluo
O Capitulo seguinte tem por objectivo explicar ao leitor a soluo encontrada para enfrentar o problema, bem como a arquitectura e funcionamento da framework desenvolvida. Nenhuma das solues de estado de arte parece portanto ideal, finda a procura do estado de arte, e tendo em conta os problemas das solues criticados anteriormente, conclu que a criao de uma Framework verstil e extensvel, usando tecnologias recentes, com um funcionamento simples, e que permita uma fcil integrao com sistemas de informao, nomeadamente sistema de gesto de workflow, seria o passo a realizar a seguir. A soluo simples e passa por disponibilizar uma worklist persistente no PDA. Cada utilizador recebe assim as suas tarefas nos momentos em que se encontra conectado a uma rede 3G ou com redes Wi-Fi, com essas tarefas guardadas persistentemente pode deslocar-se para os ambientes desconectados onde se desenrola a explorao florestal. No local as tarefas so realizadas e guardados os dados recolhidos, esta informao guardada na base dados mvel, esta que posteriormente ser sincronizada. No momento de re-conexo as tarefas completas so sincronizadas para o servidor de middleware e posteriormente apagadas do dispositivo mvel, libertando espao na base dados mvel, alm disso so recebidas novas tarefas que tenham sido associadas posteriormente a esse utilizador. A soluo na projeco e implementao de um sistema mvel, constitudo por uma estao fixa e vrias estaes mveis. A estao fixa serve de Middleware entre o sistema de gesto de workflows, localizado no backoffice, e a estao mvel. Para alm da implementao de um sistema mvel que liga com o sistema de gesto de workflows, vamos ter tambm alguma restruturao por parte dos processos de negcio corridos neste, de forma a suportar um maior nmero de actividades por parte do utilizador.

6.1 Vista Geral


No diagrama seguinte pode observar-se o funcionamento geral da aplicao, onde podem ser identificados os tipos de estaes existentes a as trocas de informao realizadas.

34

Fig. 11 Vista geral do sistema mvel

Este sistema desenvolvido, possu uma estao fixa onde est todo o Middleware de ligao entre o sistema de gesto workflow e a estao mvel, sendo este responsvel pela gesto de tarefas. observvel tambm a presena de vrias estaes mveis que dispem da aplicao para realizao de tarefas e respectiva worklist. As comunicaes fazem-se, por norma, entre a estao fixa e a estao mvel, por meio de WCF services, as comunicaes entre o sistema de gesto workflows e o middleware feito atravs de um adaptador especfico.

6.2 Reviso de processos de negcio


A necessidade de alguma manipulao dos processos de negcio subsiste, de forma a promover um maior suporte no caso da desconexo. Alm disso, aqui sero tambm identificados alguns casos de processos de negcio a evitar. Em primeira instncia isto possvel visto que no existe grande complexidade nas actividades que so realizadas na explorao florestal. As actividades resumem-se recolha de dados sobre os talhes para inventrio florestal e a valores registados nas cargas aquando do controlo de operaes, em que as tarefas podem ser vistas como questionrios dinmicos, diferentes para cada tarefa.

35

Fig. 12 Workflow exemplo

Todas as actividades sequncias que sejam da responsabilidade do mesmo recurso, devem ser fundidas numa macro actividade devido ao facto de a segunda tarefa de uma sequncia s ficar disponvel na worklist do utilizador aps a execuo da primeira e, da sincronizao da mesma com o sistema de gesto de workflows. Um exemplo disso as actividades A e B do diagrama seguinte, que caso sejam da responsabilidade do mesmo recurso devem ser fundidas numa nica mais complexa. Existem alguns princpios para simplificao das mesmas, mas neste caso o contrrio favorvel. Referenciando agora casos a evitar, importante destacar aqueles em que existem vrias tarefas da responsabilidade do mesmo utilizador espalhadas num workflow, intercaladas com outras de outros utilizadores, devido ao aumento da espera por sincronizaes. Exemplo disso a existncia de um utilizador mvel alocado s tarefas A e C. Deste modo, o utilizador da B vai ter de esperar uma sincronizao de A que pode s acontecer ao final do dia. As tarefas s devem ficar misturadas caso exista necessidade de dados, caso contrrio devem ficar em ramos diferentes.

6.3 Arquitectura
De seguida apresentado ao leitor os mdulos pelos quais cada componente software se subdivide, nomeadamente a estaes fixa e as estaes mveis, de forma a perceber mais

36

detalhadamente o desenvolvimento e o funcionamento das mesmas. O diagrama seguinte mostra os mdulos e as ligaes entre os mesmos.

Fig. 13 Decomposio em mdulos

A arquitectura implementada nesta Framework trata-se de uma arquitectura clienteservidor, entre a estao mvel e a estao fixa. O servidor (estao fixa) comunica com o sistema de gesto de workflows atravs de um adaptador. A comunicao entre estas aplicaes ser feita essencialmente pelas redes 3G e Wi-Fi, usando Web services disponibilizados no mdulo de integrao. Numa aplicao local, uma arquitectura 2-tier (Client-Server) seria a ideal para fazer a sincronizao, mas visto tratar-se de clientes em dispositivos mveis, necessria a criao de uma arquitectura 3-tier sendo uma WCF Service Library o middleware utilizado.

6.3.1 Estaes mveis


A aplicao realizada para o dispositivo mvel vai ser a mesma que foi usada pelos recursos no campo. Foi desenvolvida para correr em PDAs e ter o papel essencial de disponibilizar aos recursos no campo a sua lista de tarefas (worklist) e um editor de relatrios dinmico para recolha de dados. Esta permite o funcionamento autnomo na ausncia de rede e realiza sincronizaes na presena da mesma.

37

A estao mvel pode ser decomposta em trs mdulos essenciais, essen um mdulo dulo de interface (GUI), um gestor de tarefas (disponibliza a worklist) e o mdulo de sincronizao (Sync service). nterface disponvel visvel ao utilizador atravs do O mdulo GUI responsvel por toda a interface dispositivo mvel. composto por vrios vr menus de navegao e um gerador de relatrios dinmico a preencher. Alguns lguns dos ecrs podem ser vistos nas imagens seguintes, seguintes onde est o menu de login, o menu principal e o menu de tarefas (worklist) respectivamente, respectivamente estes com valores exemplo sem significado. significado

Fig. 14 Vista de ecrs

O gerador de relatrios dinmico e composto por trs tipos genricos de recolha de dados, aquando o da realizao da tarefa. De seguida sero explicados separadamente cada um destes tipos. O mais simples denominado deciso consiste numa pergunta cujas opes de resposta so sim sim e no. O seguinte composto pela pergunta e um campo de resposta livre, de tamanho varivel. varivel Finalmente o ltimo, o campo opes contm uma pergunta e um conjunto de hipteses das quais quai podemos seleccionar apenas uma. Na figura seguinte seguint pode visualizar-se um exemplo muito simples de uma tarefa modelo com quatro campos para recolha de dados, cada um correspondente aos tipos indicados nas perguntas.

38

Fig. 15 Menu Tarefa

O mdulo Sync Service o nico elemento presente na aplicao mvel que tem comunicao com o exterior. Este responsvel pela sincronizao da estao mvel com a estao fixa e contm todo o cdigo responsvel pelo consumo dos servios criados pela ferramenta da Microsoft Sync Framework, que so providenciados atravs de um Web service da estao fixa. A estao mvel dispe tambm de uma base de dados para persistncia dos dados, cujo esquema criado automaticamente atravs da ferramenta da sync Framework, tendo em conta o esquema definido na estao fixa. Com a presena desta base de dados, localmente a estao mvel j permite um funcionamento independentemente do estado da rede, visto existir a possibilidade de guardar o trabalho persistentemente. Dentro deste mdulo existe tambm uma rotina de sincronizao automtica que corre numa thread diferente. Esta executada em intervalos de tempo definidos pelo utilizador no menu de configurao para que deste modo, todas as actividades de acumulao de dados, por parte das estaes mveis, e as tarefas de sincronizao, sejam feitas automaticamente. Para alm da possibilidade de executar a sincronizao a pedido. O mdulo gestor de tarefas encarrega-se de colocar as alteraes feitas nas tarefas, com todos os dados recolhidos na realizao das mesmas, no armazenamento persistente,

39

permitindo desta forma que os dados recolhidos e todas as alteraes sejam propagados at estao fixa, assim como tambm carregar as tarefas da base dados local.

6.3.2 Estao fixa


O software da estao fixa existe essencialmente para fazer a ponte entre a aplicao cliente, presente na estao mvel, e o sistema de gesto de workflows. Esta aplicao existe para minimizar a complexidade da aplicao presente na estao mvel bem como para criar uma independncia da relao entre o sistema de gesto de workflows e a aplicao cliente. Para alm disso responsvel por disponibilizar servios para possibilitar a sincronizao dos dispositivos mveis a operar no campo. Nestas, so transferidas novas tarefas para a estao mvel e tarefas completas para a estao fixa, assim como todos os logs associados a estas operaes. O WCF service o mdulo que disponibiliza os Web services para as estaes mveis. aqui tambm que est todo o cdigo que contm as funes de sincronizao a serem chamadas pelos Web services. Estas funes que so geradas automaticamente pela ferramenta da Sync Framework.

6.3.3 Comunicao para o exterior


A comunicao para o exterior fica a cargo de um adaptador, este tem por objectivo informar-se das tarefas e dos dados associados as mesmas e coloca-las na base dados do middleware. O adaptador especifico para casa sistema de gesto de workflows, j que estes tm interfaces e modos de funcionamento diferentes.

6.4 Linguagens de Programao


Nesta seco sero apresentadas as linguagens de programao usadas no

desenvolvimento desta Framework. Na codificao, tanto da estao mvel como da estao fixa, a linguagem predominante o C#. A persistncia de dados fica a responsabilidade do SQL. Para os Web services a tecnologia usada ASP.NET Web services (ASMX) .NET Remoting.

40

6.5 Persistncia de dados


Nesta seco sero identificadas as tecnologias tec utilizadas na a persistncia de dados, dados tanto nas estaes mveis como na estao fixa. Na estao fixa foi utilizado o produto Microsoft SQL 2005 Express, no s pela sua simplicidade mas pela fcil ligao ao cdigo C# e ao uso da mesma na plataforma Sync Framework. Para que a persistncia fosse garantida foi utilizada a ferramenta LinQ, que ser abordada mais detalhadamente no subcaptulo Mapeamento Objecto-Relacional Relacional. Relativamente s estaes mveis foi utilizado o Microsoft SQL compact, um requisito necessrio, visto a forte ligao existente desta base dados plataforma Sync Framework. De seguida apresentado um esquema de base de dados utilizado tanto na estao fixa como na estao mvel para realizar a persistncia de dados.

Fig. 16 Esquema Base Dados

41

Este esquema de base de dados foi desenvolvido tendo em vista a criao de uma Framework para suportar todos os tipos de tarefas e todo tipo de sistemas de informao, para atingir isso, tudo simples e permite expanso. Posteriormente ser explicada sumariamente cada uma das tabelas. A principal tarefa e qual tudo est ligado a TASK, onde so guardadas as tarefas. Esta expansvel pela TASKATTRIBUTES onde so inseridos quaisquer atributos adicionais e campos de dados a preencher ou a recolher na realizao de tarefas. As tabelas ATTPARTLINK e ATTPART so tabelas para expandir os TASKATTRIBUTES. Os aspectos de localizao e de caminhos esto a cargo das tabelas PLACES e SEGMENT que guardam, respectivamente, localizaes e caminhos. A tabela DEVICE guarda informao sobre os dispositivos mveis e os utilizadores so guardados na tabela MOBILEUSER. Finalmente faltam as trs tabelas de registo de logs, em que no GEOLOG so cruzadas informaes entre tarefas, localizaes e dispositivos mveis para registar onde, quando e em que dispositivo so completadas as tarefas. No DEVICELOG so registados os intervalos de tempo em que cada utilizador usa determinado dispositivo mvel.

6.6 Mapeamento Objecto-Relacional


O termo mapeamento Objecto-Relacional refere-se tcnica de mapear uma representao de um determinado dado, de um modelo orientado a objectos para um modelo relacional sob um esquema baseado em SQL. A ferramenta usada para fazer o mapeamento Objecto-Relacional escolhida foi o LINQ (21). Esta faz parte de um conjunto de extenses a .NET Framework. Com esta possvel estender a linguagem C# e o visual studio, adicionando sintaxe para querys e bibliotecas que tiram vantagens disto. Esta ferramenta permite passar classes para tabelas SQL e vice-versa, entre outros mapeamentos possveis. (22) A aplicao desta Framework foi usada para criar as classes na estao fixa atravs do esquema de base dados j definido. O acesso base de dados assim facilitado, sendo que utilizado cdigo C# ao invs de serem escritas as respectivas querys que este vai gerar. No caso da estao mvel, o mapeamento foi feito manualmente, visto no existir ferramenta a utilizar na .NET Compact Framework. So utilizadas querys embebidas no cdigo C# para aceder e para guardar informao, no uma soluo elegante, mas um mal necessrio.

42

6.7 Sincronizao
Na seguinte seco ser detalhado o funcionamento bem como o desenvolvimento do mecanismo de sincronizao usado entre a estao fixa e as estaes mveis. Toda a sincronizao feita atravs da Sync Framework, disponibilizada pela Microsoft. Desta forma ser detalhado o potencial da ferramenta, seguido do caso de utilizao nesta Framework. A ferramenta disponibilizada pela Microsoft apresenta como principais objectivos permitir o acesso a aplicaes ou servios na ausncia de conexo de rede, possibilitar a colaborao entre utilizadores em ambientes cliente-servidor, bem como P2P, representados na imagem seguinte esquerda e direita respectivamente, e finalmente suportar todo o tipo de ligaes, tipos de dados e protocolos de transferncia.

Fig. 17 Arquitecturas da Sync Framework

De seguida so apresentados alguns dos conceitos relativos Sync Framework, nomeadamente o tipo de provedores e participantes possveis, as componentes da plataforma de sincronizao, os mtodos de gesto de verses, o fluxo pelo qual se processa a sincronizao e como so tratados os conflitos.

6.7.1 Provedores
Uma das caractersticas chave da Sync Framework a existncia de provedores. Existem alguns predefinidos para suportar algumas das fontes de dados mais comuns, assim como tambm possvel criar novos tipos personalizados. Os tipos predefinidos existentes separamse essencialmente em trs grupos distintos: os provedores de bases de dados, os provedores de ficheiros e finalmente os provedores de servios de consulta (ex: RSS feeds).

43

No caso da aplicao na qual se centra esta tese, ambos os provedores, a estao fixa e as estaes mveis so do tipo Base Dados, tratando-se de um tipo comum usado um tipo predefinido.

Fig. 18 Provedores Framework

6.7.2 Participantes
Outro conceito que convm realar a classificao do tipo de participantes de uma sincronizao e as caractersticas que estes reflectem para a sua caracterizao. A forma de integrao por parte do provedor varia consoante as capacidades do dispositivo onde os dados esto alojados. As caractersticas pelas quais feita a classificao so: a possibilidade de manipular e guardar dados no dispositivo; permisso de inserir e executar aplicaes no dispositivo. Existem trs tipos de participantes, que sero apresentados, de seguida, individualmente. Primeiro tem-se o participante completo, que como o nome sugere, permite a criao e execuo de aplicaes no prprio dispositivo, para alm da criao e gesto de dados. Como exemplo disto tm-se dispositivos como os computadores portteis, PDAs ou telemveis.

Fig. 19 Participante completo

44

Em segundo lugar o participante parcial. Este est presente em dispositivos que no correm aplicaes como por exemplo: pen drives, discos externos, cmaras fotogrficas, entre outros. Comporta-se como um disco rgido, manejando os dados efectuando apenas as operaes CRUD, ficando dependentes de um participante completo para executar a sincronizao.

Fig. 20 Participante Parcial

Por fim tm-se os participantes simples, que apenas permitem a busca e download de informao quando solicitada. No permitem a criao e manipulao de dados ou a criao de aplicaes a correr nos dispositivos, onde esto contidos os dados. Exemplos disto so RSS feeds assim como alguns Web services. Estes permitem a sua execuo e colecta de informao, mas no permitem a criao e instalao de aplicaes nossas nos servidores Web.

Fig. 21 Participante Simples

Ambos os participantes presentes na Framework da estao fixa e da estao mvel so participantes completos, correm aplicaes e tm presente uma base dados SQL.

45

6.7.3 Componentes da plataforma


Para que a sincronizao se d entre provedores estes tm de ter alguns componentes importantes, nomeadamente os representados na figura seguinte.

Fig. 22 Componentes da Sync Framework

De seguida passo a explicar cada um dos componentes, indicando o seu papel na sincronizao. A Data Source ou Fonte de dados o elemento fundamental pois representa os dados a serem sincronizados. Pode representar-se por uma base dados, de ficheiros ou por um web service. Outra componente a Metadata. Nesta est toda a informao pela qual se rege o controlo de verses, que ser explicado mais detalhadamente no subcaptulo posterior. Por norma esta informao guardada num ficheiro no caso de sincronizao de ficheiros ou injectada nas tabelas, no caso da sincronizao de base de dados, existindo ainda outras possibilidades. Esta informao pode ser decomposta em vrios campos: as verses, o conhecimento, o Tick Count, Replica ID e por fim, os TombStones. Nas verses so guardadas as datas de criao da ltima actualizao. O conhecimento representa as alteraes nas quais a rplica em questo est ocorrente, e que permite enumerar alteraes e detectar conflitos. O Tick Count o contador de alteraes de todos os elementos sincronizados. A Replica ID um nmero nico que identifica uma data store. Por fim, os Tombstones so a informao que as rplicas guardam sobre os elementos eliminados, o ID, a verso de criao e a verso eliminada. Isto importante no momento da sincronizao, pois na ausncia do elemento a fonte no consegue propagar uma alterao.

46

Na aplicao prtica da presente tese, observvel a presena de novas colunas nas tabelas: coluna CreationDate e LastEditDate, que indicam a data da criao e da ltima actualizao respectivamente, como se pode verificar na figura seguinte, assinalado com um crculo vermelho.

Fig. 23 Colunas Informao de verses

Quanto informao dos Tombstones so criadas novas tabelas pelo wizard com como visvel na figura seguinte assinalado com setas vermelhas.

Fig. 24 Tabelas de Tombstones

47

Estas tabelas de Tombstones so muito simples e apenas guardam o ID da linha apagada e a data em que esta foi removida. Pode ver-se a estrutura das tabelas na imagem seguinte, onde est representada a tabela TASK_Tombstone.

Fig. 25 Esquema da tabela TASK_Tombstone

A outra informao da metadata, o Tick Count e a Replica ID, guardada em cdigo injectado pela ferramenta nas aplicaes das estaes. Toda esta informao foi obtida atravs da inspeco da base de dados, atravs da ferramenta SQL Management Studio, e do cdigo gerado atravs do Visual Studio 2008.

6.7.4 Gesto verses


Existem dois mtodos para o controlo de verses. A necessidade das duas possibilidades passa pela natureza dos dispositivos onde se encontram os dados a sincronizar. As verses esto associadas aos elementos que so ficheiros ou linhas de uma tabela para sincronizao de ficheiros ou base de dados respectivamente O primeiro mtodo denominado Inline Tracking, pressupe que as verses so actualizadas no momento em que so alterados os elementos e para isso injectado um cdigo que actualiza automaticamente a metadata, mais propriamente o conhecimento da rplica. Um exemplo disso a aplicao em bases de dados, onde so inseridos triggers nas tabelas, que actualizam a metadata automaticamente no momento da alterao. O outro mtodo, Asynchrronous Tracking implica que hajam processos externos de procura de alteraes. Estes podem ser executados no momento da sincronizao fazendo parte desta ou serem processos parte executados previamente. Este mtodo usado normalmente em participantes parciais ou simples onde no possvel correr aplicaes prprias. Na aplicao da Sync Framework presente tese, o mtodo de gesto de verses utilizado foi o Inline Tracking. Este processo decorre a partir da injeco de trigger associados s tabelas

48

da base dados a serem sincronizadas. A figura seguinte mostra a presena dos triggers nas tabelas atravs de uma inspeco s mesmas com a ferramenta SQL Management Studio.

Fig. 26 Triggers para Gesto Verses

Estes triggers so inseridos automaticamente atravs do wizard de criao de DataBase Cache no Visual Studio 2008.

6.7.5 Fluxo sincronizao


De seguida so identificados os passos gerais que seguem um fluxo de sincronizao. Em cada sincronizao existe uma fonte, rplica que inicia a sincronizao, e o destino, a rplica a quem se conecta. A figura seguinte apresenta um diagrama com todos os passos necessrios sincronizao com indicao da respectiva fonte e destino.

49

Fig. 27 Fluxo sincronizao

Quando se trata de uma sincronizao bidireccional o fluxo que se encontra no diagrama percorrido duas vezes, na qual na segunda iterao pelo fluxo a fonte troca de papel com o destino. Na aplicao da Framework nesta tese, o inicio da sincronizao sempre executado por parte da estao mvel, por vrios motivos. Um deles a dificuldade de saber o endereo das estaes mveis. Outro, a obrigatoriedade do Web service estar alojado na estao fixa.

50

Deste modo, a sincronizao feita sempre com a estao fixa como fonte e a estao mvel como cliente inicialmente, e depois invertem-se os papis.

6.7.6 Gesto conflitos


As rplicas so livres de escolher a poltica de resoluo de conflitos. De seguida so apresentadas algumas das polticas mais comuns. No caso da aplicao na tese, nos conflitos so utilizados diferentes tipos de polticas consoante o tipo de dados. No caso das tarefas, os conflitos so evitados partida, pois cada tarefa atribuda a apenas um utilizador, e caso seja uma tarefa colectiva esta dividida em N tarefas consoante os N utilizadores a que atribuda. Nos restantes dados, a poltica utilizada Last-Writer wins, em que a actualizao mais recente a que prevalece. Esta deciso deve-se natureza de utilizao desta Framework, que a recolha de dados, logo, os dados mais recentes tm maior valor.

6.7.7 Cdigo Gerado


Para alm da metadata, o wizard da Sync Framework gera tambm todo o cdigo das funes chamadas para realizar a sincronizao. A figura seguinte mostra parte deste cdigo relativa sincronizao da tabela das tarefas.

51

Fig. 28 Excerto cdigo funes sincronizao

O cdigo para a chamada da sincronizao tem de ser criado e inserido manualmente. Na figura seguinte apresentado o cdigo exemplo de chamada ao Web service que disponibiliza os servios de sincronizao. A necessidade da existncia de um servio explicada posteriormente.

52

Fig. 29 Cdigo de chamada sincronizao

6.7.8 Filtros Sincronizao


Por questes de espao e performance importante aplicar filtros sincronizao entre a estao fixa e as estaes mveis. Um exemplo disso o tempo perdido e o espao desperdiado sincronizarem todas as tarefas relativas a todos os utilizadores para uma estao mvel, a qual s est a ser utilizada pelo utilizador X, da a necessidade de filtrar as tarefas por utilizador. A sync Framework no disponibiliza directamente nenhum mecanismo para filtrar linhas de uma tabela, mas aps anlise do cdigo das funes de sincronizao, rapidamente se depreende que este feito com base em querys base dados logo, no momento de efectuar a sincronizao os dados so obtidos atravs de uma query SELECT * FROM [nome_tabela]. Ao ser aplicada uma condio no SELECT estar a filtrar-se por esta, sendo que apenas os dados que cumpram esta condio sero sincronizados, deixando os outros de fora. Uma opo que a sync framework disponibliza permitir que a sincronizao seja apenas unidireccional. Na Framework desenvolvida isto usado para duas das tabelas de logs, onde a informao toda criada na estao mvel, logo a sincronizao apenas necessita de ser feita

53

da estao mvel para a estao fixa, ou seja, as tabelas efectuam todas uma sincronizao bidireccional excepo de duas, o DEVICELOG e o GEOLOG.

6.7.9 Web service


A presena de um Web service para disponibilizar as funes de sincronizao uma necessidade pelo facto de se estar a lidar com dispositivos mveis, que por norma se encontram em redes pblicas ligados atravs de WIFI, GPRS e 3G e no suportam uma arquitectura 2-tier, e da necessitarem de um middleware (23).

Fig. 30 Arquitectura 3-tier de Sincronizao

6.8 Segurana
Em empresas cada vez mais baseadas em sistemas de informao, o problema da segurana aumenta medida que cresce a sofisticao das ameaas s redes e que se torna mais urgente evitar ataques que coloquem em causa os processos de negcio e a credibilidade das organizaes. A segurana da informao que circula nas empresas , por isso, uma preocupao e um desafio constante. Posto isto, no foram esquecidos alguns cuidados simples ao nvel da segurana da Framework, desde a comunicao maneira como so guardados alguns dados delicados.

54

Relativamente comunicao, a segurana assegurada pelo transporte via SSL. O acesso assegurado por tokens, feito um login inicial onde devolvido um token, que vai permitir aceder funo de sincronizao disponibilizada pela estao fixa. Quanto segurana dos dados guardados, foi aplicado um algoritmo de criptografia no armazenamento das palavras-chave dos utilizadores, de forma a que estas no possam ser alteradas ou copiadas atravs do simples acesso base dados. A funo usada tem o nome de Cryptographic Hash Function (24), funo esta que aplicada em muitos casos onde necessrio proteger informao. Trata-se de um processo determinista que leva um bloco arbitrrio de dados e devolve uma cadeia de bits de tamanho fixo, o valor encriptado. A funo utilizada para encriptar o valor das palavras-chave quando estas so guardadas na estao fixa e, posteriormente usada nas palavras-chave inseridas para login nas estaes mveis. A validao do login feita atravs da comparao das duas cadeias de bits dos valores encriptados.

6.9 Ferramentas utilizadas


Para apoio ao desenvolvimento desta Framework foram usadas vrias ferramentas, produtos da Microsoft, as quais foram bastante teis. A primeira foi quase essencial para se conseguir criar e organizar o projecto em C# o Visual Studio 2008. A outra, no to importante, disponibiliza uma boa interface para lidar com as bases de dados SQL o SQL Management Studio.

55

7. Actividades no percurso de desenvolvimento da dissertao


O percurso pelo qual passei com elementos da Link, nomeadamente o Eng. Jos Pires e o Eng. Manuel Fonseca e tambm a Eng. Alexandra Marques, aluna de doutoramento do ISA, para alm de me permitir avaliar a Framework desenvolvida nesta dissertao, foi tambm importante para estar a par de um problema real integrado num grande projecto denominado CAMTEC, que ser explicado de seguida. O projecto proposto define a viso tecnolgica para a gesto de toda a cadeia de abastecimento dos produtos florestais (CAPF) e implementa-a atravs de um prottipo validado por agentes do sector florestal. A gesto da CAPF integra actividades de planeamento das funes logsticas de produo florestal (obteno de matria-prima), distribuio, transporte, recepo fabril e transformao industrial para produo de produtos acabados, como o papel. Todas estas actividades e a sua viso tecnolgica por parte do CAMTEC podem ser vista no diagrama que se encontra e anexo no ponto 12.3. Na CAPF, escasseiam as ferramentas de planeamento optimizado dos recursos disponveis e para alm disso, nenhuma delas contm uma viso integrada sobre toda a cadeia. Esta falha de mtodo e tecnologia no permite previses a curto prazo o que faz com que os custos de transporte e armazenamento sejam elevados (25). As actividades do CAPF estruturam-se em: Rede de procurement: assegura a produo e abastecimento de material lenhoso adequado s diferentes finalidades. Inclui: produo florestal, armazenamento e transporte (logstica) e recepo fabril (abastecimento). Rede de produo: assegura a transformao do material lenhoso nos diversos produtos intermdios e finais, tais como, pasta, papel, pranchas de madeira, paineis, produtos derivados de madeira, carpintaria e mobilirio. Inclui ainda os resduos de explorao para produo de biomassa. Rede de distribuio: garante a disponibilizao dos produtos nos mercados. Rede de vendas: gere o contacto com o cliente e o seu acesso aos diferentes tipos de produtos florestais.

56

Sendo que o projecto CAMTEC apenas se baseia na rede de procurement, esta representada no diagrama presente no anexo 12.4. De seguida passo a apresentar a Framework de processos que um referencial genrico para a classificao dos processos de suporte produo florestal, logstica florestal e abastecimento fabril, estabelecido atendendo s actividades comuns executadas por vrios agentes da CAPF e s boas prticas de planeamento e controlo da CAPF. Os processos so os representados na figura seguinte:
1.1.Gesto

do patrimnio florestal
1.1.2.Monitor. 1.1.3. 1.1.4 .Angaria

1.3.Gesto

de operaes no terreno
1.3.2.Seguim

1.1.1.Cadastro

1.3.1. Vistoria

de propriedades
1.2.Planeamento 1.2.1.Plan.

pragas/doen as, fogos

Inventrio florestal

o de propriedades

de UGs

ento de operaes

da gesto florestal
1.2.2.Plan. 1.2.3.Plan. 1.2.4 .Gesto

1.4.Gesto

da Rede Viria
1.4.1. 1.4.2.Gesto

Florestal Estratgico

Florestal Tctico

Florestal Operacional

de obras

Planeamento RV
Guia de transporte

operaes na RV
Nveis de (auto)abastecimento

Plano de entregas (matas prprias e arrendadas)


2.1.Gesto 2.1.1.

Previses de chegada/sada

frota

2.2.Planeamento 2.2.1.Plan.

do transporte
2.2.2.Plan. 2.2.3 .Plan. 2.2.4.

2.3.Acompanhamento 2.3.1.

transp.

2.3.2.Cont

Gesto frota
2.4.Planeamento 2.4.1.Plan.

Estratgico dos transp.

Tctico dos transp.


2.5.Recepo

Operacional dos transp.

Gesto fretes
2.6.

Carga/de scarga

rolo em trnsito

do parque ML
2.4.2.Plan.

de madeira

Monitorizao do parque ML
2.6.1. 2.6.2.

2.5.1.Recepo

entradas/ sadas

do Layout

da madeira (em parque)

Controlo movimentos

Controlo stocks

Plano de entregas (mercado internacional)


3.1.Planeamento 3.1.1.Plan. Estratgico do abastec.

Guia de transporte

Previses de chegada/sada
3.2.Recepo

do abastecimento
3.1.2.Plan. Tctico do abastec. 3.1.3.Plan. Operacional do abastec. 3.1.4 .Gesto 3.1.5 .Gesto

madeira

3.2.1.Recepo

entregas nacionais

entregas internac.

de madeira (na fbrica)

Fig. 31 Diagrama de Processos da CAPF

Dentro destes processos as tarefas relevantes para a aplicao da Framework desenvolvida so a realizao de inventrio florestal e o seguimento das operaes, includos no processo de gesto de patrimnio florestal e no processo de gesto de operaes no terreno respectivamente. O processo de gesto de patrimnio florestal pressupe a gesto de toda a informao de caracterizao das propriedades bem como as operaes silvcolas realizadas, dados de inventrio e a monitorizao do estado dos povoamentos (pragas, doenas, fogos). Enquanto que o processo de gesto de operaes no terreno responsvel pelas vistorias de Unidades

57

de Gesto e o seguimento em tempo real das operaes florestais, que se destina a verificar o cumprimento dos planos e realizar o controlo quantitativo e qualitativo das operaes e controlo dos fluxos de volume, realizados atravs da guia de transporte que acompanha as cargas at ao destino final. Tarefas estas que esto a cargo de recursos destacados no campo, com a localizao dos talhes em reas de cobertura inserta, surge a importncia da aplicao da Framework desenvolvida a este caso. Outro das razes passa pela baixa urgncia dos dados recolhidos atravs do inventrio florestal permitindo aos mesmos ser s sincronizados em redes WIFI, minimizando custos com as portadoras de redes mveis. Finda a introduo ao projecto CAMTEC ser agora detalhado o percurso onde se podem destacar a participao em vrios workshops, a realizao conjunta de um Paper e o prottipo de aplicao da framework no projecto CAMTEC.

7.1 Participao em workshops


Desde que me foi apresentada a proposta de tese, foi ao mesmo tempo apresentado pelo Eng. Joo Assuno e Eng. Manuel Fonseca o projecto CAMTEC o qual tenho vindo a acompanhar de perto, projecto que vai servir de validao da Framework. Da a minha participao em vrios workshops relacionados com o tema, outros com clientes, e ainda aqueles com pessoal acadmico nomeadamente do ISA, os quais passo a apresentar resumidamente. A primeira reunio ocorreu no dia 17 dezembro 2009 nas instalaes da link os presentes eram o Eng. Manuel Fonseca, a Eng. Alexandra Marques e o Ruben Garcia. Esta teve por objectivos dar a conhecer termos relacionados com a floresta, e melhor perceber os processos realizados no corte, transporte, armazenamento e produo de papel. Termos como talho, rolaria, toia por exemplo, so descritos nos acrnimos em anexo 12.2. Posteriormente houve a primeira reunio com os Agentes Florestais organizada pela Eng. Alexandra Marques, esta decorreu na sala de reunies do Departamento florestal Engenharia Florestal do ISA, e teve presente a Eng. Cassilda Pinho no lugar do Eng. Manuel Fonseca, Ruben Garcia e alguns dos representantes do sector florestal da Celpa, Floresta Atlntica e

58

Portucel-Viana. Decorreu na manh do dia 22 de Janeiro 2010 com a seguinte agenda de trabalhos. 9h30-10h: breve apresentao do projecto 10h-11h30: Produo florestal: Inventrio, Planeamento e controlo das operaes florestais. 11h30-12h30: Incio da Logstica: Planeamento e controlo do transporte e armazenamento 12h30-13h: encerramento e prximos passos.

Esta reunio foi importante para perceber as necessidades dos Agentes Florestais, bem como as ideias de optimizao da Eng. Alexandra Marques e perceber onde a tecnologia e os sistemas de informao podem encaixar e ajudar. Numa deslocao ao norte nomeadamente Viana do Castelo e Figueira da Foz no dia 16 de Maro 2010, eu, Ruben Garcia, Eng. Manuel Fonseca e Eng. Alexandra Marques fomos ao encontro do Eng. Joo Gonalves nas instalaes da Portucel-Viana, onde foi discutido alguns detalhes relativos ao corte e aos restos de pilha, bem como a informao que era importante recolher no local e chegar as instalaes rapidamente. Posteriormente, e no mesmo dia tivemos uma reunio na empresa Transactor sediada na figueira da foz, uma das principais transportadores de rolaria, a conseguimos perceber como feito os pedidos de transporte, os transportes, as tonelagens de cada camio, os sistemas de navegao e tempos de carga e descarga. Posteriormente a todas as reunies com os agentes da floresta bem como a transportadora, eu o Ruben Garcia o Eng. Manuel Fonseca e o Eng. Jos Pires participamos num seminrio cujo titulo era Servios de Rastreabilidade para a indstria Florestal, realizado no dia 6 de Maio de 2010 no hotel dos templrios. A empresa era a TIETO e teve o apoio da Tecnicelpa. Neste foram apresentadas vrias solues de como marcar a madeira e permitir o rastreio desta desde a floresta at moblia ou lote papel. Solues estas que no suportavam o objectivo que esta Framework pretende atingir.

59

7.2 Participao na Realizao de um Paper


No envolvimento neste projecto ocorreu a oportunidade de escrever um paper em conjunto com o Prof. Jos Borges do ISA, com a Eng. Alexandra Marques, investigadora no ISA e o Ruben Garcia, aluno de Mestrado do Instituto Superior Tcnico. O ttulo do paper Applying enterprise architecture to the design of the integrated forest products supply chain management system e o mesmo vai ser publicado na conferncia da Centeris 2010 (Conference on ENTERprise Information Systems) (26).

60

8. Validao da Soluo
Neste captulo descrita a validao da soluo aplicando a mesma a um caso concreto, com vista verificao do cumprimento dos seus benefcios. No mbito de todo o projecto a realizar na Link Consulting, para se conseguir uma avaliao do trabalho est a ser desenvolvido um prottipo com as solues tecnolgicas adaptadas a cada actividade do CAPF, que ser avaliado por agentes do sector florestal, o trabalho desenvolvido na minha dissertao parte deste. A fase de testes de o todo Projecto CAMtec ter uma durao mnima de um ms e uma rea de estudo que comportar reas florestais (pelo menos uma), com o intuito de contemplar todas as actividades da cadeia. Esta fase de testes ter uma pr-formao dos utilizadores chave e ser sucedida de uma avaliao e quantificao dos benefcios prestados pelo prottipo. Foi implementado um prottipo para demonstrar a funcionalidade pretendida, nomeadamente a soluo ao problema da dissertao no mbito do CAMTec. Sero desenvolvidos workflows e relatrios exemplo para uso no prottipo, prottipo este, que ser instalado nos PDAs e entregue aos utilizadores chave. Toda a utilizao por parte destes ser acompanhada de forma a reter todo o feedback possvel. Aps o perodo experimental de utilizao ser feita uma anlise de custo do benefcio. Assim que forem obtidos os resultados, estes sero discutidos com os agentes do sector florestal no site do projecto em reunies do frum de gesto da CAPF. Devido ao atraso do projecto, toda o uso por parte dos utilizadores chave ser efectuado posteriormente entrega da dissertao, o que impossibilita a apresentao de resultados e feedback por parte dos mesmos neste documento. Para efectuar a validao da framework foram realizados testes na presena e ausncia de rede com um equipamento PDA, fornecido pela Link Consulting, marca Intermec modelo CN3, cujas especificaes se encontram nas referncias (27). Ao nvel da sincronizao foram efectuados testes com vrios tipos de ligao, desde a ligao directa atravs do uso do emulador de Windows Mobile na mesma mquina onde corre o servidor de Middleware, que se veio a revelar a mais lenta, ao uso do equipamento descrito anteriormente na sua Dock e

61

por fim numa rede Wi-Fi e 3G. Os tempos de sincronizao foram entre os dez segundos e um minuto aproximadamente, dependendo do nmero de tarefas a sincronizar. As sincronizaes so mais dispendiosas em necessidade de processamento ao nvel de dados que so transferidos, visto que os tempos de sincronizao para as ligaes USB, Wi-Fi e 3G so semelhantes, independentemente do nmero de tarefas.

62

9. Concluses
No final dos vrios passos realizados para redigir esta dissertao, ser elaborada uma breve concluso, onde consta de forma abreviada toda informao adquirida durante o processo de realizao da mesma. Foi identificado o problema, foram reunidos os requisitos, descritos os objectivos a atingir, analisado o trabalho de investigao relacionado com esta temtica, realizada a implementao da framework e por fim a aplicao da mesma a um caso concreto. Relativamente aos objectivos, pode afirmar-se que em parte foram cumpridos, outros ficaram aqum das expectativas, muito provavelmente por falta de recursos ou mesmo de tempo. De seguida o cumprimento ou no desses mesmos objectivos, ser explicada de forma mais pormenorizada. Automatizar a distribuio das actividades pelos vrios recursos no campo;

A automatizao da distribuio de tarefas no foi feita, ficando por isso a cargo do sistema de gesto de workflow. No existe nenhuma optimizao sobre o contexto da mobilidade interligada com as localizaes. Disponibilizar indicao e descrio do local para cada tarefa;

A indicao e descrio dos locais aparece como parmetro de uma tarefa, sendo posteriormente possvel de utilizar para georeferenciao e optimizao de rotas e tarefas em trabalho futuro. Recolha de dados no momento da realizao de tarefas;

possvel fazer uma recolha dos dados no momento da realizao de tarefas, atravs da aplicao cliente, esta gera questionrios dinmicos para casa tarefa, a informao preenchida nestes guardada. Independentemente do estado da rede, essa recolha sempre feita persistentemente em base de dados local e posteriormente sincronizada. Disponibilizar servios para actualizao do sistema backoffice;

Quanto actualizao do backoffice, que fica a cargo da ferramenta da Microsoft, a Sync Framework, a qual faz a sincronizao entre a base dados do middleware e a base dados mvel.

63

Interface adequada a PDAs;

A interface adequada a PDA, produzida especificamente para Windows Mobile tendo em conta a resoluo do equipamento que posteriormente ser utilizado no projecto CAMTec. Possibilidade de trabalhar em modo desconectado;

Como j referido anteriormente, a realizao de tarefas disponvel na worklist pode ser efectuada na presena ou ausncia de rede, ou seja, independente desta, graas ao armazenamento persistente. Disponibilizar armazenamento persistente localmente;

O armazenamento persistente ficou a cargo de uma base de dados Microsoft SQL compact. Disponibilizar autonomia aos clientes de forma a evitar conflitos entre os mesmos no momento da sincronizao com o backoffice; Cada tarefa disponibilizada a um nico utilizador. Quando este a sincroniza ela passa a ser da sua responsabilidade, no existindo conflitos a partir deste ponto. Mecanismos de envio e de recepo apropriados para manter a integridade da informao. Toda a informao sincronizada pela Sync Framework e esta garante a integridade dos dados. Para alm disso, as tarefas completas s so apagadas do dispositivo mvel aps uma sincronizao bem-sucedida. Por fim, pode concluir-se que a soluo se aplica bem ao problema relativamente explorao florestal. No caso de necessitar de mais lgica de negcio do lado do cliente, o procedimento mais adequado seria necessariamente diferente, o que implicaria uma soluo mais complexa, com regras associadas, ou decomposio de tarefas em mini workflows dentro do dispositivo mvel, com vista a conseguir feedback imediato do utilizador sobre os passos tomados e indicao dos passos a tomar.

64

10. Trabalho Futuro


Como trabalho futuro e de continuao desta dissertao, existem algumas direces que podem ser seguidas de forma a dar mais valor soluo desenvolvida. Uma delas seria aumentar o potencial de sincronizao, permitindo a partilha de dados entre os vrios dispositivos mveis, de forma a maximizar a utilizao da framework em ambientes desconectados e minimizar, desse modo, a carga no servidor, possibilitando a partilha de novos dados criados por utilizadores, bem como a sincronizao de dados vindos do servidor, aproveitando o potencial das ligaes de curta distncia como o Bluetooth e de redes locais Wi-Fi. Alm disto, seria possvel executar tarefas sequenciais na ausncia de rede caso os utilizadores tivessem conexo entre si, o que por sua vez iria aumentar a colaborao entre os utilizadores. Numa viso mais complexa, podiam exportar-se para o dispositivo mvel parte da lgica de negcio para que na aplicao cliente fossem perceptveis os processos de negcio em que se inserem as tarefas, conseguindo uma viso abrangente de onde a actividade se intercala, possibilitando assim, a realizao de tarefas sequenciais dentro de um workflow, ou de tarefas sem precedncias. Outro caminho a seguir seria uma das solues descritas no relatrio de projecto, ao ser feita a sincronizao, so descarregadas as tarefas atribudas ao recurso e a diferena est ao serem recebidas. Quando a tarefa recebida na soluo criada nesta dissertao visvel uma tarefa na worklist da aplicao cliente, a outra direco e possvel trabalho futuro seria existir na aplicao cliente um workflow associado a cada tarefa recebida. Automaticamente ao ser recebida uma tarefa era lanado um evento que fazia iniciar uma instncia de um subworkflow. Aps a concluso do sub-workflow os resultados guardados ao longo do processo so usados para completar os dados da tarefa a enviar de volta aplicao do BackOffice.

65

Fig. 32 Tipos de soluo

A figura 32 um esquema ilustrativo onde representada uma viso geral de ambas as solues. A tarefa B passada para o PDA por intermdio do Mdulo de integrao. Na Soluo com workflow, a tarefa origina um workflow com as tarefas B1, B2 e B3 por exemplo, enquanto que na soluo simples apresentada a mesma tarefa B na worklist. Depois de ser executado o workflow ou a tarefa nos PDAs, a informao guardada e passada para o mdulo de integrao na prxima sincronizao. Por ultimo e com vista integrao de mais tecnologia, seria de grande interesse capacitar a aplicao cliente de georeferenciao atravs de um receptor GPS integrado no dispositivo mvel. Com isto seria possvel indicar o local de realizao das actividades bem como integrar um sistema de navegao que indicasse a rota a tomar para a localizao da mesma.

66

11. Referncias
1. Taveira, Carlos. IDC Notcias. IDC. [Online] 18 de Setembro de 2008.

http://www.idc.pt/press/pr_2008-09-18.jsp. 2. Sean Ryan, Justin Jaffe, Stephen D. Drake, Raymond Boggs. Worldwide Mobile Worker Population 20092013 Forecast. s.l. : IDC Analise the Future, 2009. 3. Processos de Negcio. wikipedia. [Online] Outubro de 2009.

http://pt.wikipedia.org/wiki/Processos_de_neg%C3%B3cio. 4. Sistema de Informao. Wikipedia. [Online] Maio de 2010.

http://pt.wikipedia.org/wiki/Sistema_de_informa%C3%A7%C3%A3o. 5. WorkFlow. Wikipedia. [Online] 2010 de Abril de 17.

http://en.wikipedia.org/wiki/Workflow. 6. Hollingsworth, David. WFMC - Terminology & Glossary. s.l. : Workflow Management Coalition, 1999. 7. G. Alonso, R. Gnthr, M.Kamath, D.Agrawal, A.EL Abbadi, C.Mohan. Extica/FMDC: Handling Disconnected Clients in a Workflow Management System. Databases and Mobile Computing. s.l. : Kluwer Academic Publishers, 1996, pp. 27-45. 8. INCAs : Managing Dynamic Workflows in Distributed Environments. Barbra D., Mehrotra S. , Rusinkiewicz M. Princeton, USA : Matsushita Information Technology Laboratory, Dezembro de 1996, Journal of Database Management. Vol. 7, no. 1, pp. 5-5. 9. Bolser, Gregory Alan. Magi : An Arcuitecture for Mobile and Disconnected Workflow. s.l. : Endeavors Technology, 2000. 10. Hildebrandt T., Niss H.,Bundgaard M., Schmidt K., Jensen T. Computer Supported Mobile Adaptive Business Processes for 3g ERP Systems. Denmark : IT University of Copenhagen , 2007. 11. Jensen, O.H., Milner, R. Bigraphs and mobile processes (revised). s.l. : University of Cambridge, 2004. 12. Plan-X. XML Store. [Online] 2007. http://www.plan-x.org/i.

67

13. Hildebrandt, T., Niss, H., Olsen, M., Winther, J.W. Distributed Reactive XML. Amesterdam : Elsevier Science Publishers, 2006. pp. 61-80. 14. J.SAIRAMESH, S.GOH, I.STANOI, S.PADMANABHAN e C.S.LI. Disconnected Processes, Mechanisms and Architecture for Mobile E-Business. Hawthorne, NY 10532, USA : s.n., 2004. pp. 651-662. 15. M. Satyanarayanan, James J. Kistler, Lily B. Mummert, Maria R. Ebling, Puneet Kumar, Qi Lu. Experience with Disconnected Operation in a Mobile Computing Environment , Mobile Computing. The Kluwer International Series in Engineering and Computer Science. Pittsburgh : Springer US, 1996, Vol. 353, pp. 537-570. 16. Kistler, J.J., Satyanarayanan, M. Disconnected Operation in the Coda File System. s.l. : ACM Transactions on Computer Systems, 1992. pp. 3-25. 17. Jin Jing, Karen Huff, Ben Hurwitz, Himanshu Sinha, Bill Robinson, Mark Feblowitz. WHAM: Supporting Mobile Workforce and Applications in Workflow Environments. Waltham : IEEE Computer Society, 2000. p. 31. 18. Teasing. Mobile Workflow. [Online] Outubro de 2009.

http://www.tensing.com/en/products/mobile-workflow.html. 19. IntelaTrac. Wonderware. [Online] Outubro de 2009.

http://global.wonderware.com/EN/Pages/WonderwareIntelaTrac.aspx. 20. Service ACE. Apacheta. [Online] Outubro de 2009.

http://www.apacheta.com/_downloads/collateral/ServiceACE_White_Paper_Jan_2007.pdf. 21. LINQ Query Expressions (C# Programming Guide). MSDN. [Online] 2010. http://msdn.microsoft.com/en-us/library/bb397676.aspx. 22. Data Access in Client and Middle-Tier Programming. MSDN. [Online]

http://msdn.microsoft.com/en-us/library/bb384429.aspx. 23. Walkthrough: Creating an Occasionally Connected Smart Device Application. MSDN. [Online] Janeiro de 2010. http://msdn.microsoft.com/en-

us/library/cc488004%28v=VS.90%29.aspx. 24. Cryptographic hash function. Wikipedia. [Online]

http://en.wikipedia.org/wiki/Cryptographic_hash_function.

68

25. Marques, Alexandra. Novas tecnologias ao servio da cadeia de abastecimento de Produtos Florestais. s.l. : Link Consulting, 2009. 26. Marques A.F., Borges J. G. , Sousa P. , Fonseca M. , Garcia R. , Batista G. Applying enterprise architecture to the design of the integrated forest products supply chain management system. s.l. : Centeris 2010, 2010. 27. Intermec. Mobile Computer CN3 Specs. [Online] Intermec, 2010.

http://www.intermec.com/products/cmptrcn3/specs.aspx. 28. Back_Office. Wikipedia. [Online] http://en.wikipedia.org/wiki/Back_office.

69

12. Anexos
12.1 Glossrio
backoffice departamentos administrativos de uma empresa, departamentos que mantm nenhum ou muito pouco contacto com os clientes. (28) Middleware trata-se de um software de apoio, com o intuito de conectar componentes de software ou aplicaes. D suporte a aplicaes distribudas. Worklist conjunto de tarefas associadas a um recurso e sobre as quais este est responsvel pela sua execuo.

12.2 Acrnimos
IST Instituto Superior Tcnico CAMTec Novas tecnologias ao servio da cadeia de gesto de abastecimento de produtos florestais CAPF Cadeia de Abastecimento de Produtos Florestais BPMN Business Process Model Notation CAPF Cadeia de Alimentao de Produtos Florestais IDC International Data Corporation (Empresa lder mundial na rea de "market intelligence", servios de consultoria e organizao de eventos para os mercados das Tecnologias de Informao, Telecomunicaes e Electrnica de Consumo.) QREN Quadro de Referncia Estratgico Nacional BPEL Business Process Execution Language PDA Personal digital assistant (Assistente Pessoal Digital) CSCW Computer Supported Cooperative Work P2P Peer-to-Peer XML eXtensible Markup Language, uma recomendao da W3C para gerar linguagens de marcao para necessidades especiais.

70

WFMS Workflow Management Systems SBDM Sistema de Base Dados Mvel SBDD Sistema de Base Dados Distribudo RSS Rich Site Summary (RSS 0.91) ,RDF Site Summary (RSS 0.9 e 1.0) ,Really Simple Syndication (RSS 2.0). CRUD Create, Read, Update and Delete. ERP Enterprise Resource Planning WCF windows communication foundation SSL Secure Sockets Layer CAMTEC - Novas tecnologias ao servio da gesto da cadeia de abastecimento de produtos florestais

71

12.3 Anexo 1

Fig. 33 Diagrama da cadeia de abastecimento

12.4 Anexo 2

Fig. 34 Diagrama da rede procurement

73