2010
CELESTINO LOPES
DE BARROS
SISTEMAS
DE
WORKFLOW
XML:
ANLISE
CELESTINO LOPES
DE BARROS
Universidade de Aveiro
2010
Departamento
SISTEMAS
WORKFLOW
DE
Electrnica,
Telecomunicaes
ANLISE
Informtica
XML:
Dedico este trabalho aos meus pais, pois gostava de um dia amar algum como
eles amam os seus filhos.
O jri
Presidente:
Agradecimentos
Aos meus pais, Venncio Barros e Maria Tereza Barros, aos meus irmos
Lucindo, Felismino, Auriza, Edmilson, Jlio e Sandra, a minha namorada Eloisa
pela fora, confiana amor e incentivo e por suportarem meu mau humor em
certos momentos.
Gostaria tambm de agradecer ao professor Emanuel de Pina por ter lido com
pacincia a minha dissertao e ter corrigido os erros de linguagem em todo o
texto.
Finalmente, resta agradecer aos meus colegas de curso e a todos aqueles que,
directamente ou indirectamente, contriburam para a realizao deste trabalho.
Palavras-chave
Resumo
keywords
abstract
This work aims at presenting a study on Work flow management system focusing
on its advantages, inconveniences and the difficulties found in its acceptance and
use.
We also studied the main technologies of workflow XML are also studied and the
Windows Workflow Foundation enhanced as the tool used for the creation of the
archetype of the case study.
The creation of this archetype involved the analysis of the operating system of the
Technical Service at Uni-CV, which provided the conception of an application that
takes care of the specific and real necessities of this institution. Several
approaches had been conceptually argued in a theoretical framework for the
elaboration of the system which resulted in enhancing the knowledge
apprehended during the course namely in the disciplines of Systems Modeling;
Systems of Information Guided to the Text; Programming and Accessing
Information and Distributed Systems.
The analysis of the system was carried out by using the Visual Paradigm tool. For
the development of the system the Visual Studio 2008 platform and Microsoft
SQL Server 2005 were chosen because both are modern technologies and
provide the system with great reliability.
NDICE GERAL
1
INTRODUO............................................................................................................................... 1
1.1
1.2
1.3
Originalidade ............................................................................................................... 2
1.4
Objectivos .................................................................................................................... 2
1.5
Hipteses ..................................................................................................................... 3
1.6
Metodologia ................................................................................................................. 3
1.7
2.1
2.1.1
2.2
2.2.1
2.2.2
Processo ..........................................................................................................................13
2.2.3
Actividade ......................................................................................................................14
2.2.4
Agente ............................................................................................................................14
2.2.5
Papel ...............................................................................................................................14
2.2.6
2.2.7
2.2.8
Vistas ..............................................................................................................................15
2.3
2.4
2.4.2
2.5
2.5.1
2.5.2
2.5.3
2.5.4
2.5.5
2.5.6
BIZTALK ........................................................................................................................25
2.6
2.6.1
Funcionalidade ...............................................................................................................27
2.6.2
2.6.3
2.6.4
2.6.5
2.6.6
3.1
Introduo .................................................................................................................. 36
3.2
3.3
3.4
3.5
Sistema proposto........................................................................................................ 42
3.6
3.6.1
3.6.2
3.7
3.8
3.9
4.1
4.2
Contribuies ............................................................................................................. 50
4.3
Anexos ........................................................................................................................................... 56
II
NDICE DE FIGURAS
Figura 1.1: Estrutura da dissertao ........................................................................................... 4
Figura 2.1: Classificao dos sistemas workflow segundo Koulopoulos ................................... 8
Figura 2.2: Categoria workflow conforme natureza do trabalho e a abrangncia do processo 10
Figura 2.3: Arquitectura do Workflow Management Coalition................................................ 13
Figura 2.4: Smbolos utilizados no DTD nas construes Petri-net ........................................ 16
Figura 2.5: A tarefa em Petri-net ............................................................................................. 16
Figura 2.6: Arquitectura do XRL/flower .................................................................................. 24
Figura 2.7: Arquitectura do BizTalk ......................................................................................... 25
Figura 2.8: Funcionalidades do workflow no Windows Workflow Foundation ....................... 27
Figura 2.9: Relao das actividades com o workflow no WWF............................................... 28
Figura 2.10: Workflow Designer no Visual Studio 2008 ......................................................... 29
Figura 2.11: Componentes do Windows Workflow Foundation .............................................. 30
Figura 2.12: Objectos de construo no Windows Workflow Foundation ............................... 31
Figura 2.13: Sequencial Workflow ........................................................................................... 33
Figura 2.14: State Machine Workflow ...................................................................................... 34
Figura 3.1: Fluxo de trabalho do Sistema Actual ..................................................................... 39
Figura 3.2: Diagrama de actividade do sistema proposto ........................................................ 41
Figura 3.3: Diagrama de workflow ........................................................................................... 47
Figura 6.1: Diagrama de casos de uso ...................................................................................... 56
Figura 6.2: Diagrama de Classes .............................................................................................. 57
Figura 6.3: Modelo Entidade Relacionamento ......................................................................... 58
III
NDICE DE TABELAS
Tabela 2.1: Caractersticas das diferentes categorias de sistemas workflow ............................ 11
Tabela 2.2: Sntese dos principais benefcios da instalao de sistemas workflow.................. 18
Tabela 2.3: Blocos estruturais do Windows Workflow Foundation ......................................... 31
Tabela 2.4: Actividades utilizadas em workflows sequenciais ................................................. 33
Tabela 2.5: Actividades utilizadas em workflows sequenciais ................................................. 34
Tabela 2.6: Actividades que permitem comunicar com outros objectos.................................. 35
Tabela 2.7: Actividade que permite comunicar com web services .......................................... 35
Tabela 3.1: Requisitos funcionais ............................................................................................ 43
Tabela 3.2: Requisitos no funcionais...................................................................................... 44
IV
NDICE DE ANEXOS
Descrio
ASP
ASP.Net
B2B
Business to Business
BizTalk
Business Talk
BPEL
BPM
BPMI
C#
C Sharp
DTD
EAI
HTTP
IDC
MER
SGBD
Uni-CV
URL
VB.Net
Visual Basic.Net
W3C
WfMC
WinFX
WWF
XML
VI
XPDL
XRL
XSL
VII
1 INTRODUO
1.3 Originalidade
Embora a utilizao de sistemas de workflow em aplicaes de HelpDesk no se possa
considerar como um tema absolutamente original, no contexto de Cabo Verde, consideramos
que este estudo tem relevncia e acaba por ser um produto indito, j que das mltiplas
pesquisas e reviso bibliogrfica que efectumos e pelo conhecimento dos servios em
funcionamento nas instituies nacionais h cerca de trs dcadas no encontrmos nenhum
estudo sistemtico sobre workflow ou sistema que faa gesto automatizada de HelpDesk.
Outros aspectos que tambm podemos ressaltar tm que ver com o facto de este estudo
culminar com o desenvolvimento de um prottipo.
1.4 Objectivos
Este trabalho tem como objectivos principais:
1. a anlise e estudo das principais tecnologias de workflow baseadas em XML
e
2. o desenvolvimento de um prottipo de gesto de HelpDesk para a Uni-CV, que entre
outras coisas permite: registar e manter um histrico de ocorrncias, equipamentos e
funcionrios.
2
1.5 Hipteses
As hipteses a seguir indicadas resultam, por um lado, dos objectivos anteriormente definidos
e, por outro lado, da nossa vivncia profissional ao longo de anos de trabalho com pessoas
ligadas a este servio:
Hiptese 1: As linguagens XML existentes para a especificao de workflow facilitam
o processo de criao de workflow.
Hiptese 2: A instalao de um sistema de gesto de HelpDesk contribui para uma
melhor organizao e gesto dos Servios Tcnicos da Uni-CV.
1.6 Metodologia
As motivaes e os contextos referidos anteriormente acabaram por influenciar
profundamente as opes metodolgicas usadas neste trabalho e so as que a seguir
enunciamos:
Aps a definio do objecto de estudo, definimos os objectivos e as hipteses do
estudo (projecto da dissertao), com apoio do orientador.
Para a reviso bibliogrfica, utilizmos, em primeiro lugar, os documentos indicados
pelos docentes durante o curso de Mestrado em Engenharia Electrnica e
Telecomunicaes.
Observmos e estudmos vrios documentos existentes no pas e pesquismos outros
na Internet. O Regulamento da Elaborao de Dissertao foi outro instrumento que
nos orientou na elaborao desta dissertao.
Relativamente ao captulo sistemas de workflow alm dos documentos existentes na
instituio, consultmos vrios outros em outras instituies e atravs da internet.
2 SISTEMAS DE WORKFLOW
Nesta definio ressalta-se a ideia de que as actividades desenvolvidas por workflows podem
ser desempenhadas por pessoas e/ou recursos tecnolgicos.
(Rosenberg 1997) define sistemas workflow como sistemas que permitem capturar no s a
informao, mas tambm o processo, as regras que governam a sua execuo. Estas regras
incluem planos de trabalho, prioridades, encaminhamentos, autorizaes, segurana, bem
como o papel a desempenhar por cada um dos elementos envolvido no processo.
(Lachal 1997) acrescenta que os sistemas workflow conduzem a uma uniformizao e
melhoria no processo de gesto, mas tambm a uma entrega eficiente das tarefas s pessoas e
a uma explicitao do desenho do processo.
O enfoque deste sistema est na automatizao dos processos de negcio, em detrimento dos
dados nele contidos (Simon 1996). E esta orientao para o processo significa um repensar
radical na forma como o trabalho executado (Vlachantonis 1997).
Segundo (Stark 1997), o apoio dos sistemas de workflow aos processos de negcio faz-se
atravs de dois pontos:
Suporte s tarefas individuais num processo, ou seja, junta os recursos humanos e a
informao necessrios para a sua realizao;
Reforo da lgica que rege as transies entre tarefas num processo, o que permite que
todas as tarefas de um caso ou instncia sejam desempenhados;
2.1.1 Tipos de sistema de workflow
De acordo com (Khoshafian 1995), existem vrias classificaes de sistemas workflow. Uma
delas, com base na sua arquitectura, distingue os produtos que se baseiam em formulrios e as
mensagens. Distingue ainda os produtos que se baseiam em mecanismos centralizados
(servidores) dos produtos baseados na internet. Uma outra, com base na quantidade de
programao necessria, distingue os sistemas rgidos dos flexveis.
(Abbott 1994) distingue os sistemas baseados no desenho dos baseados no tempo de
execuo; e os orientados para o documento dos orientados para o processo.
Para (Koulopoulos 1995), a classificao dos sistemas de workflow combina mtodos de
desenvolvimento (sistemas Ad hoc, baseados em transaces, orientados por objectos e
baseados em conhecimento) com modelos de processo (centrado em correio, em documentos
ou no processo em si) conforme se ilustra na Figura 2.1.
Segundo (Marshak 1995), estas categorias devem ser vistas como um continuum da
automatizao dos processos e no como reas mutuamente exclusivas onde os sistemas Ad
hoc e os sistemas de produo representam os extremos das solues deste tipo de sistemas. A
maior ou menor complexidade do sistema vai depender do processo a ser automatizado.
Existem autores entre os quais (Ultimus 1998) que defendem a inexistncia da categoria Ad
hoc, uma vez que o facto de ser, ou no Ad hoc , por si s, um atributo ou caracterstica do
sistema. Acrescenta ainda que os sistemas workflow de produo colaborativos e
administrativos podem, todos eles, ter a capacidade de encaminhar o trabalho numa forma Ad
hoc.
(Koulopoulos 1995) refere aos sistemas workflow colaborativos como aqueles que possuem as
caractersticas dos sistemas Ad hoc, uma vez que as funcionalidades e caractersticas dos
sistemas workflow colaborativos se aproximam dos sistemas Ad hoc.
Assim, num extremo, situam-se os sistemas workflow de produo (Production Workflow
Systems), que ajudam a suportar as regras do processo pr-definido e executa-os de uma
forma muito rgida e rigorosa. Este tipo de sistemas adequado para o suporte de misses
crticas dos processos de negcio, onde nada pode falhar e tudo deve ser executado de acordo
com os modelos dos processos pr-definidos. No outro, surgem os sistemas workflow
colaborativos (Collaborative Workflow Systems), cujo enfoque no tanto o processo em si,
mas sim a partilha de informao entre as pessoas (agentes) envolvidas no processo.
Entre as categorias Produo e Colaborativa existe a Administrativa (Administrative
Workflow Systems). Estes sistemas envolvem, essencialmente, processos administrativos e so
baseados, principalmente, em sistemas de correio electrnico. Caracterizam-se pelo
encaminhamento de relatrios regulares em que a maior parte do processo baseada em
formulrios (Rosenberg 1997)
A Figura 2.2, abaixo, integra as vrias categorias de sistemas workflow, de acordo com a
natureza do trabalho e a abrangncia do processo.
Para Marshak (1995), estas categorias, mais do que fronteiras, funcionam como orientaes,
para que as pessoas possam observar os processos utilizados nos seus negcios e analisar qual
a soluo tecnolgica mais adequada para os automatizar.
De acordo com Swenson (1995), todos os sistemas workflow podem ser caracterizados pelo
suporte de trs reas:
Funes de controlo (run-time) que se centram na gesto dos processos de fluxo de
trabalho num ambiente operacional e com a sequncia das vrias actividades a serem
realizadas como parte de cada processo;
Funes temporais (build-time) que se centram na definio e possvel modelao do
fluxo de trabalho e das actividades que os constituem;
Interaco (run-time) com utilizao e aplicao de tecnologias de informao para o
processamento dos vrios passos das actividades.
Na Tabela 2.1, procura-se resumir algumas das caractersticas destes sistemas, de acordo com
a categoria da aplicao.
10
Categorias
Caractersticas
Produo
Colaborativo
Administrativo
a entidade responsvel por fornecer servios para a definio, criao e simulao dos
processos. Possui a lgica de um determinado processo. Nela, esto especificadas quais as
tarefas que constituem o processo, as dependncias entre elas, as condies para activ-las e
as funes que realiza.
Define ainda o comportamento da mquina de workflow no momento da sua execuo. Desta
forma, basta alter-la para que a mquina de workflow se comporte de uma forma diferente
(Sheth 1994).
Ainda para Sheth (1994), o servio de execuo de workflow a entidade que fornece os
servios de gesto e a superviso da execuo automtica de workflows para os clientes.
Executa workflows para diferentes clientes. Cada workflow em execuo uma instncia de
workflow e manipulada por uma mquina de workflow que a entidade que controla a
execuo de uma instncia de workflow para um cliente.
2.2.1 Workflow Managment Coalition
A Workflow Managment Coalition (WfMC) uma organizao internacional sem fins
lucrativos fundada em 1993.
Esta organizao pblica contm diversos documentos que especificam, entre outros, as
interfaces entre os principais componentes de um sistema de gesto de workflows (WfMC
2006). Engloba programadores, utilizadores, analistas, vendedores e grupos de pesquisas na
rea de workflow. A sua misso promover, desenvolver e estabelecer padres entre produtos
workflow (Hollingsworth 1995).
A Figura 2.3 ilustra a arquitectura do Workflow Management Coalition que contm diversas
interfaces e est centralizada em torno do workflow engine. Algumas semnticas destas
interfaces no foram disponibilizadas e algumas equipas de desenvolvimento criaram as suas
prprias especificaes.
O acesso das aplicaes clientes ao workflow engine feito atravs da rede. Para especificar
os processos, utilizam-se as ferramentas de definio de processos. Para se aceder a outros
servios do workflow, utiliza-se a interface 4 e para fazer a gesto do workflow engine, utilizase as ferramentas de administrao.
12
Para Andrade (2005), o Workflow engine realiza o controlo em tempo real de todo processo
do workflow e disponibiliza primitivas que permitem tratar:
A interpretao da definio do processo;
O controlo de instncias de processos - criao, activao, suspenso;
A navegao entre as vrias actividades do processo e envolve operaes sequenciais
ou paralelas, bem como imposio de prazos;
A entrada e sada dos participantes;
A identificao de itens que requerem ateno do utilizador e uma interface para a
interveno deste;
A manuteno dos dados relativos ao workflow e o encaminhamento destes entre os
vrios participantes;
Uma interface com capacidade de invocar aplicaes externas e passagem de dados
importantes;
As aces de superviso para controlo, administrao e auditorias.
2.2.2 Processo
Um processo um conjunto de um ou mais procedimentos interdependentes que,
colectivamente, cumprem um objectivo dentro do contexto de uma estrutura organizacional.
(WfMC 2006).
13
2.2.3 Actividade
Actividades so elementos bsicos da construo de workflows. Uma actividade uma
descrio de uma parte do trabalho a ser realizada dentro de um processo. Pode ser bsica (ou
atmica). Representa uma aco indivisvel para o sistema de gesto de workflow ou pode ser
um sub-fluxo composto de outras actividades (Wechner 2003). Ela pode ser automtica ou
manual (depende de interveno humana).
Segundo WfMC (2006), uma actividade ou tarefa a etapa de um processo, normalmente,
executada individualmente por um agente.
2.2.4 Agente
Chen (1999) define agentes como pessoas ou componentes de software capazes de executar
uma ou mais tarefas. Enumeram e diferenciam tipos de intervenientes e as suas caractersticas
no processo de workflow ou num fluxo de tarefas.
2.2.5 Papel
um mecanismo de descrio que representa um determinado agente de acordo com um
conjunto pr-estabelecido de habilidades ou conhecimento de contexto necessrios execuo
de uma tarefa (Wechner 2003).
2.2.6 Workflow Framework
Um Workflow Framework uma plataforma que facilita a criao e visualizao grfica de
workflows. Possui modelos ou passos predefinidos de workflow para facilitar as tarefas do
utilizador, sistemas de monitorizao de processos e passos em tempo real.
Para Sheth (1994), um Workflow Framework dever:
Ter a habilidade de monitorizar workflows em execuo - dever ser capaz de
examinar os passos do workflow em tempo real.
Oferecer ferramentas que permitam criar, alterar e manipular graficamente os
workflows.
Ter a capacidade de criar passos predefinidos de workflows que so utilizados num
determinado domnio sem escrever cdigo para declarar alguns comportamentos.
Permitir alterar instncias de um workflow em execuo, como por exemplo, a
necessidade de adicionar uma nova actividade ou passo no workflow.
14
15
2.2.8.3 Petri-net
Nas perspectivas de Kumar (2003), Petri-net representa matematicamente sistemas
distribudos discretos. Tem a estrutura de sistemas distribudos e definido graficamente
atravs de rectngulos e crculos. Os rectngulos representam transitions (transies), isto ,
tarefas a serem executadas. Os crculos representam o state (estado) do workflow, ou seja,
places (locais). As setas entre places e transitions so utilizadas para especificar relaes.
As Figura 2.4 e Figura 2.5 ilustram os smbolos utilizados nas construes e nas tarefas em
Petri-net.
16
17
Colaborao
Comunicao
Vantagens
Coordenao
Conhecimento
Produtividade
Descentralizao;
Reduo de tempos e dos atrasos;
Reduo de erros, custos e de utilizao do papel;
Melhor qualidade no produto;
Contribuio para o aumento da memria institucional;
Armazenamento das regras e procedimentos (informao) subjacentes
aos processos e tarefas;
Maior qualidade na informao ao cliente;
18
19
Tratamento de excepes
O workflow deve ponderar a ocorrncia e o tratamento de erros. As excepes ocorrem
quando as actividades no so executadas nem planeados ou no apresentam os resultados
desejados, devido a erros no sistema, circunstncias do ambiente ou inadequao de algum
processo a uma determinada situao (Eder 1998). O tratamento das excepes pode ser feito
na fase de execuo do workflow, ou mesmo, previsto na fase de modelao do processo.
Interoperabilidade
Um dos grandes problemas dos workflows actuais que elas no possuem interface com
outros produtos de workflow (Schneider 1996). Geralmente, as representaes e as
interpretaes dos processos so proprietrias.
O WfMC est a trabalhar na de criao dos padres bsicos de interfaces e de servios para
possibilitar a interoperabilidade entre workflows, conforme apresentado. A interoperabilidade
possibilita que depois de definidos os fluxos de trabalho num workflow estes possam ser
executados por qualquer mquina de workflow.
2.4.2 Dificuldades informais
Segundo Pedro (1995), a diferena entre os aspectos formais e os informais que coabitam
numa organizao pode ser uma das causas da ineficincia dos sistemas de workflow. As
dificuldades informais manifestam-se quando no so considerados os aspectos informais e
sociais no processo e na instalao de um workflow.
Para Kevin (1997), os fluxos de trabalho muitas vezes so analisados apenas do ponto de
vista da organizao e so modelados como um conjunto de tarefas que so associadas a
pessoas que desempenham determinadas funes. Contudo, as pessoas para realizarem os
seus trabalhos utilizam qualidades, que vo alm das tarefas visveis. necessrio o
desenvolvimento de habilidades pessoais (Sachs 1995).
Representao do trabalho
Para interpretar e executar os procedimentos correctamente, o workflow precisa de uma
representao do processo. Representaes so artifcios criados a partir de locais sociais e
dentro de uma determinada prtica (Suchman 1995). extremamente complicado apreender,
compreender e representar o que as pessoas realizam quando trabalham (Bannon 1995).
20
Obstculo mudana
Segundo Qiming (2000), Situaes novas criam desconforto e insegurana. Vrios motivos
levam as pessoas a resistirem a instalao de workflow. Segundo Sachs (1995) algumas
causas para a resistncia ao workflow, entre outras, so:
O workflow pode implementar um fluxo que defrauda as expectativas das pessoas;
As pessoas podem entender que a utilizao de workflow no traz qualquer mais-valia
aos seus trabalhos;
O sistema de workflow pode substituir o trabalho antes feito pelas pessoas;
O workflow pode controlar rigidamente o trabalho, sobretudo quanto ao desempenho e
maneira de solucionar solicitaes;
Cultura da organizao
Para John (1997), Os processos que o sistema de workflow executa esto inseridos num
ambiente social. As aces e as prticas no trabalho s fazem sentido quando interpretadas
dentro de um contexto. Mohan (1996) acrescenta que a escolha de um sistema de workflow
implica estar preparado para mudana cultural, que atinge a forma como a organizao vai
realizar o seu negcio. Esta mudana exige consenso do grupo de trabalho e formao das
pessoas.
Mudana nos relacionamentos pessoais
A automatizao de processos muda o relacionamento entre os funcionrios. Pode, entre
outras razes, reduzir a necessidade de convvio entre os funcionrios e mudar as relaes de
poder.
Comunicao entre utilizadores e programadores
O trabalho tende a desaparecer com a distncia (Suchman 1995). Quanto mais longe se est
do trabalho de outra pessoa, menos se sabe sobre ela. Muitas vezes, o trabalho alheio visto
como uma caixa preta. Preocupamo-nos apenas com o resultado. Por isso, existe a tendncia
de simplificar e de aplicar uma viso pessoal sobre ele. Destas diferentes vises sobre o
trabalho, surgem as tenses comuns entre utilizadores e programadores. Os utilizadores tm
uma perspectiva orientada ao seu trabalho real, enquanto os programadores tendem a ficar
direccionados por interesses tcnicos (Kyng 1995).
21
22
Como Van (op. cit.) evidencia, a linguagem XPDL possui algumas limitaes: e o mais grave
a impreciso na definio das condies de juno (sobretudo AND e XOR) atravs das
restries de transio aplicadas as actividades.
No possvel, a partir das definies de Workflow Management Coalition determinar a
interpretao correcta para esses operadores. Com isso, a representao fica comprometida
indirectamente, j que sistemas de gesto de workflows diferentes podem implementar os
operadores com interpretaes dbias.
Tambm se aponta como outras inconvenincias ao XPDL a impossibilidade de determinar
dinamicamente o nmero de instncias de uma actividade; a impotncia de delegar uma
escolha para o ambiente de execuo fora de uma actividade e a inexistncia de formas de
cancelar uma actividade ou mesmo um workflow, a no ser atravs do elemento deadline.
2.5.3 Business Process Management Notation (BPMN)
BPMN a notao padro para desenho de fluxogramas de processos de negcios (Coalition
2002). Trata-se de um conjunto de regras e convenes que determinam como os fluxogramas
devem ser desenhados. Foi desenvolvida pela Business Process Management Initiative
(BPMI) e tem como objectivo principal ser uma notao simples e de fcil compreenso para
todos os intervenientes, desde os analistas de negcios que criam o rascunho inicial dos
processos, os programadores (tcnicos) responsveis pela instalao da tecnologia que iro
executar estes processos, at as pessoas de negcios que faro a gesto e monitorizao dos
mesmos.
2.5.4 Exchangeable Routing Language (XRL)
O XRL um ambiente que permite a definio de workflows e o posterior intercmbio dos
processos e documentos em servios internet de comrcio electrnico (Kumar 2003). A XRL
baseada na linguagem XML. Possui estruturas especficas para a definio de roteamentos
com semntica prpria. Tais construes so de seguintes tipos:
Tarefas: Relaciona-se com uma aco a ser realizada. Esse elemento possui um
conjunto de atributos como o nome, funo, documentos necessrios, tempos de inicio
e fim, entre outros.
Sequncia: Os elementos dentro de uma sequncia devem ser executados na ordem
em que esto dispostos
23
24
25
O BizTalk Server da Microsoft uma ferramenta que implementa o Framework BizTalk, que
uma iniciativa aberta para padronizar trocas de informaes entre empresas. Porm, mais do
que implementar esse framework homnimo, o BizTalk integra aplicaes, ou seja, ele
distribui informaes. Se executarmos essa tarefa dentro de uma organizao, conectando
duas ou mais aplicaes distintas, estamos a fazer o chamado EAI e se estas aplicaes
estiverem em duas ou mais empresas distintas estaremos a desenvolver o chamado B2B,
conforme ilustrado na Figura 2.7.
O BizTalk funciona como "meio de campo" entre aplicaes, ou seja, o middleware (Article
2004).
O funcionamento do BizTalk est dividido em dois produtos: um que faz o que chamamos de
"troca de mensagens" e outro que faz automatizao de processos. A troca de mensagens
feita pelo BizTalk Messaging e a automatizao de processos realizada pelo BizTalk
Orchestration (Article 2003).
27
Motor (Engine)
O motor, Transition Handlers, podem ser plataformas desenvolvidas numa linguagem (C#,
ASP.Net, VB.Net, entre outras) que tratam das transaces entre estados (states) que podero
tambm incluir validaes (invariantes) nas transaces. Pode-se desta forma optimizar o
processo de criao das actividades dentro das exigncias estipuladas, tambm conhecido por
Business Rule Manager conjunto de regras de validao de dados
Workflow
Para Wechner (2003), o componente workflow da WWF a configurao dos dados utilizados
pelo motor para processar flow (passagem de transaces). Pode existir a passagem de estados
at finalizao do processo/actividade (End-Point) atravs de um Store Forward Message
Receive.
2.6.2 Framework Windows Workflow Foundation
Segundo Esposito (2005), WWF mais do que uma linguagem e uma ferramenta nica.
uma plataforma que permite criar e executar workflows. Nesta filosofia, um workflow consiste
num conjunto de actividades em que cada um executa uma aco no workflow, conforme
ilustrada na Figura 2.9.
28
services. Permite programar workflows atravs de cdigo e incluir novas actividades para
resolver casos particulares.
Para facilitar a construo de workflows, o WWF possui um workflow designer que permite
definir e alterar graficamente passos e actividades de um workflow.
Seguidamente, apresenta-se na Figura 2.10 um exemplo de um workflow visto no designer do
Visual Studio 2008.
29
Veja-se, a seguir, a definio dos diversos componentes que compem o sistema de Windows
Workflow Foundation.
Actividade Uma unidade de trabalho. Esta unidade pode ser simples ou complexa.
Workflow Grupo de actividades que descreve parte ou a totalidade de um processo de
negcio.
Windows Workflow Foundation Designers Ferramentas grficas que podem ser utilizadas
para criar ou modificar workflows e actividades.
Windows Workflow Foundation Base Activity Library (biblioteca) Um conjunto de
actividades fundamentais que os programadores podem utilizar na criao de workflows.
Windows Workflow Foundation Runtime Engine (motor) Uma biblioteca que executa os
workflows. Contm tambm mecanismos de comunicao com outras aplicaes externas ao
workflow.
Host Process Uma aplicao Windows que serve de host ao Windows Workflow Foundation
runtime engine e a qualquer workflow que este execute. Permite servios de suporte em tempo
real como a monitorizao de estados (state), transaces e outras funes.
30
Compensate
ConditionedActivityGroup
(CAG)
Delay
EventDriven
EventSink
ExceptionHandler
IfElse
InvokeMethod
InvokeWebService
InvokeWorkflow
Listen
Descrio
Executa um conjunto de cdigo em Microsoft Visual
Basic.NET ou C#.
Permite chamar cdigo para inverter ou compensar operaes
que j foram realizadas pelo workflow, quando um erro
ocorre. Por exemplo, cancelar uma operao que foi dada
como realizada com sucesso.
Permite que um workflow execute um conjunto de subactividades at que uma condio seja completada.
Suspende a execuo de um workflow durante um certo
tempo.
Define uma transaco que contm uma ou mais actividades
que devem ser executadas, quando um evento especfico
recebido enquanto estiver num determinado estado.
a actividade que permite receber pedidos de um objecto
externo ao workflow.
Permite tratar excepes de um determinado tipo.
Executa as actividades contidas em duas ou mais ramificaes
possveis baseadas na deciso de uma condio.
a actividade que permite invocar um mtodo de um objecto
externo ao workflow.
a actividade que permite chamar um web service e
sincronizar a sua resposta.
Invoca o incio de outro workflow.
Espera por um evento especfico e depois executa uma ou
mais actividades, quando esse evento recebido.
31
Parallel
Policy
Replicator
SelectData
Sequence
SetState
State
StateInitialization
Suspend
Terminate
Throw
TransactionalContext
UpdateData
WaitForData
WaitForQuery
WebServiceReceive
WebServiceResponse
While
2.6.5
Segundo WfMC (2006), podemos distinguir dois principais tipos de workflow: o sequencial
workflow e o state machine workflow.
Sequencial Workflows cria workflow em que as actividades so executadas numa ordem ou
padro predefinidos. Utilizado normalmente quando as actividades so executadas passo a
passo ou um aps o outro.
State Machine Workflows cria workflow capazes de responder a eventos e solicitaes
externas assim que ocorrem. utilizado em actividades no sequenciais.
32
Sequencial workflows
Este tipo de workflows utilizado em aplicaes em que as actividades so executadas em
sequncia. Pode incluir ciclos, estruturas de deciso tipo IF/ELSE como mostra a Figura 2.13,
abaixo.
Descrio
Repete uma ou mais actividades enquanto uma condio for verdadeira.
Sequence
InvokeMethod
Parallel
IfElse
Code
Executa cdigo
Listen
Delay
EventSink
33
externa ao workflow.
InvokeWorkflow
InvokeWebService
Terminate
Este tipo de workflow utilizado quando no sabemos, partida, o nmero exacto de eventos
ou quando o nmero de probabilidades impossibilita definir caminhos possveis no workflow
e permite definir workflows que demonstram o fluxo de trabalho e documentao de uma
organizao.
A Tabela 2.5 reala as principais actividades utilizadas em workflows sequenciais
Tabela 2.5: Actividades utilizadas em workflows sequenciais
Actividade
Descrio
StateInitialization
Define uma ou mais actividades que devem ser executadas por defeito,
quando se entra num determinado estado.
State
SetState
34
Define uma transaco que contm uma ou mais actividades que devem
ser executadas, quando um evento especfico recebido enquanto estiver
num determinado estado.
EventDriven
O Windows Workflow Foundation permite comunicar com outros objectos dentro do mesmo
processo Windows. O workflow pode utilizar dois tipos de actividades:
Tabela 2.6: Actividades que permitem comunicar com outros objectos
Actividade
Descrio
InvokeMethod
EventSink
Descrio
InvokeWebService
WebServiceReceive
WebServiceResponse
35
3.1 Introduo
Depois de ter sido realizado um estudo sobre tecnologias de workflow onde foram destacadas
as vantagens, as inconvenientes das mesmas e exploradas as principais tecnologias XML para
especificao de sistemas de workflow, de todo conveniente enriquecer esta anlise e
verificar na prtica atravs da criao de um prottipo para um caso de estudo.
A Universidade de Cabo Verde uma instituio jovem com vrios plos, alguns situados na
cidade da Praia e outros localizados noutras ilhas. Como neste momento exero o cargo de
director dos Servios Tcnicos da Uni-CV, sou obrigado a ter um profundo conhecimento da
realidade da instituio onde trabalho. A assistncia a esse conjunto de plos uma
dificuldade mas simultaneamente um desafio. Assim, decidi realizar um prottipo para o caso
de estudos num cenrio real: um sistema de gesto de HelpDesk para a Uni-CV. Pretende-se
com este prottipo criar os fluxos e as tarefas associadas com os processos interveno nos
sistemas informticos e ainda modelar as interaces entre os intervenientes no processo de
controlo dos servios de HelpDesk nos Servios Tcnicos.
Primeiramente, e de acordo com o referido na literatura, analismos o sistema actual para,
posteriormente, identificarmos os processos e os intervenientes no servio de HelpDesk desde
a criao da solicitao at a sua resoluo, propondo um sistema que supra as
inconvenincias do sistema actual.
36
38
39
40
41
Caso de Uso
UC01
UC02
UC02
UC03
43
UC09
UC03
UC04
UC05
UC06
UC07
UC08
UC06
UC03
uma solicitao.
RF14. O sistema deve emitir relatrios de atendimentos por hardwares.
UC05
UC02
atendimento.
3.6.2 Requisitos no funcionais
A Tabela 3.2 ilustra os requisitos no funcionais do sistema.
Tabela 3.2: Requisitos no funcionais
RNF01. O sistema deve ser desenvolvido utilizando a Visual Studio 2008.
RNF02. O sistema deve utilizar o Windows Workflow Foundation para a criao de
workflow.
RNF03. A Base de Dados utilizada para suporte ao sistema deve ser Microsoft SQL
Server.
Para o sistema proposto, definimos seis actores. E todas as interaces do sistema so feitas
atravs deles conforme a Figura 6.1:
Agente HelpDesk: Responsvel pelo atendimento do telefone e registo de solicitaes;
Coordenador: Chefe mximo dos Servios Tcnicos: coordena todos os tcnicos;
Administrador: Responsvel pela administrao do sistema;
Utilizador: Funcionrios da Uni-CV: fazem solicitaes;
44
46
47
48
4.2 Contribuies
Alm do prottipo desenvolvido, so contribuies desta dissertao as pesquisas
bibliogrficas e documentais realizadas, uma vez que estas podem servir como fonte de
pesquisa sobre: workflow, vantagens e desvantagens de workflow e tecnologias workflow
XML.
Acumulando as tarefas de responsvel pelos Servios Tcnicos com as de docente, os
resultados desta dissertao serviro certamente para a realizao de trabalhos com alunos e
para o ensino na rea da informtica.
comunicao com dispositivos mveis (Telemveis, PDAs, IPods, entre outros). Isso
permitiria uma actualizao das intervenes mais prximas do problema, evitando o
inconveniente de ter de voltar ao fim do dia ao laboratrio para fazer os relatrios de
interveno do dia.
A incorporao do sistema de HelpDesk com sistemas como a contabilidade e o patrimnio
so outros dos desafios que se nos apresentam pela frente.
51
5 Referncias bibliogrficas
Abbott, K. e. S. S. (1994). Experiences with Workflow Management: Issues for the Next
Generation, Chapel Hill. New York.
Andrade, R. R., M. Wangenheim, (2005). Uma proposta para um modelo de um servidor de
fluxo de actividades mdico-hospitalar. Workshop de Informtica Mdica. Pontifcia
Universidade Catlica do Rio Grande do Sul - PUCRS, 2005.
Article, B. S. T. (2003). "BizTalk Server 2004 Architecture."
Article, B. S. T. (2004). "Understanding BizTalk Server 2004." BizTalk Server 2004 Technical
Article.
Attinger, M. (1997) "Is Quality an Art Form?" in Lawrence, P. (Ed.) Workflow Handbook
1997, Volume, 69-74 DOI:
Bannon, L. (1995). The politics of design: representing work. Communications of the ACM.
Casati, C., Pernici, and Pozzi (1996) "Workflow Evolution." Proceedings of the 15th ER
lnternational Conference Volume, DOI:
Chappell, D. (2005). Introducing Microsoft Windows Workflow Foundation: An Early Look.
Chen, M. H., Umeshwar Dayal and Martin Griss (1999). Multi-Agent Cooperation, Dynamic
Workflow and XML for E-Commerce Automation.
Coalition, T. W. M. (2002) "Workflow Standard, Workflow Process Definition Interface XML Process Definition language." Volume, DOI:
Cruz, T. (1998). Workflow: a tecnologia que vai revolucionar processos, So Paulo: Atlas.
Eder, L. (1998). Contributions to Exception Handling in Workflow Management. Proceedings
EDBT Workshop on Workflow Management Systems.
Esposito, D. (2005). Getting Started with Microsoft Windows Workflow Foundation: A
Developer Walkthrough.
Florijn, G. (1994) "Workflow Management - A Limited View on Office Processes." CSCW'94
Workshop on Workflow Systems and Office Information Systems Volume, DOI:
Francesconi, M. (2002). Padres XML para Gerenciamento de Processos de Negcio.
G. Schneider, H. M., C. Dietel, A. Scheller-Houry, and J. Schweitzer (1996). Concepts for a
Flexibilisation of Workflow Management Systems with Respect to Task Adaptable
Solutions. Proceedings AAAI Conference.
52
54
55
6 Anexos
Nesta seco incluiremos alguns diagramas que auxiliaram a implementao do prottipo bem como alguns print screens do prottipo
desenvolvido
56
57
58
59
Interface 1
A.1.1.1 Calendrio
A Interface 2 Possibilita aceder a um conjunto de funcionalidades (Calendrio, calculadora).
Interface 2
60
Interface 3
Interface 4
61
Interface 5
Interface 6
62
Interface 7
Interface 8
63
Interface 9
Interface 10
64
Interface 11
Interface 12
65
Interface 13
Interface 14
66
Interface 15
Interface 16
67
Interface 17
Interface 18
68
Interface 19
69