WORKFLOW: Conceitos, Abrangência e Sistemas de Suporte - PDF
WORKFLOW: Conceitos, Abrangência e Sistemas de Suporte
Download "WORKFLOW: Conceitos, Abrangência e Sistemas de Suporte"
Edison Angelim Carvalhal
1 WORKFLOW: Conceitos, Abrangência e Sistemas de Suporte Mariano Nicolao Duncan Dubugras Alcoba Ruiz Universidade Luterana do Brasil Pontifícia Universidade Católica do RS Ulbra Guaíba Instituto de Informática Fone: Av. Ipiranga, 6681, Caixa Postal CEP Porto Alegre - RS RESUMO O trabalho apresenta um estudo sobre workflow, um conceito que é empregado na representação dos aspectos de coordenação, cooperação e gerenciamento do fluxo de trabalho realizado, principalmente em escritórios. São apresentados diferentes pontos de vista sobre o significado de workflow, o relacionamento com groupware e CSCW, e é apresentado um referencial conceitual onde workflow se insere. É apresentada, por fim, uma caracterização do que sejam sistemas de suporte ao gerenciamento de workflow e uma classificação para estes sistemas, do ponto de vista de complexidade e grau de estruturação das tarefas, e grau de interação com os profissionais responsáveis pelas mesmas. Palavras-chave: Workflow, modelagem de dados, aplicações avançadas. 1. Introdução Os avanços tecnológicos ocorridos na área da informática têm tornado possível o apoio ao tratamento da informação nas organizações. Considerando o atual patamar tecnológico dos microcomputadores, das estações de trabalho e das redes de comunicação, é permitido, hoje, operar eletronicamente sobre tipos de dados, tais como textos, imagens e sons. Com essa tecnologia pode-se armazenar fotografias, faturas, rascunhos e outros documentos como arquivos em mídia eletrônica. A consistência e a acessibilidade a esses dados podem ser controladas automaticamente de forma mais adequada do que com os procedimentos manuais no escritório. Como conseqüência, um maior nível de simplificação e de controle pode ser obtido nos procedimentos do escritório executados pelos profissionais. Em muitos escritórios, essas tendências têm levado a sistemas computacionais sofisticados. Estas organizações estão bem conscientes do potencial destes sistemas para o suporte automatizado de processos. Estações de trabalho, estão conectadas entre si e a servidores através das redes. Com estes sistemas, é possível acessar informações de qualquer lugar da organização, o que possibilita atingir uma grande integração do trabalho. Considera-se que, a
2 um custo relativamente baixo, é possível construir uma plataforma que ofereça distribuição, recursos multimídia para interface homem-máquina e capacidade computacional, tanto em termos de processamento como em termos de armazenamento, comparável, ou até superior, à oferecida por equipamentos de grande porte, e compatível com os tipos de informações presentes nos ambientes de processamento de documentos. O bom funcionamento de uma empresa depende, essencialmente, das possibilidades de acesso a informações e do processo decisório baseado sobre as mesmas. Escritórios são ambientes de trabalho das empresas que concentram o suporte administrativo necessário para organizar, planejar e controlar o trabalho realizado, para satisfazer as obrigações legais e para administrar o relacionamento, de cada empresa, com o mundo externo. O trabalho realizado em escritórios é um trabalho em equipe, onde cada membro dessa equipe, um agente de escritório, tem um conjunto próprio de atribuições e responsabilidades, e tem autonomia para a realização de suas atividades. Essas atividades, contudo, não são independentes entre si. Geralmente, há uma interdependência na realização das atividades causada pela manipulação da mesma informação em diferentes momentos. Há, portanto, uma estreita cooperação no trabalho realizado pelos agentes do escritório. Para realizar esta integração, é importante a existência de modelos com capacidade descrição e suporte computacional do fluxo de trabalho realizado. Sistemas de workflow propõem-se manipular e monitorar a informação relativa ao fluxo de trabalho em um ambiente cliente-servidor para gerenciar, coordenar e controlar o trabalho realizado em escritórios mais eficientemente. Este tipo de suporte é chamado automação de workflow [DUI 94]. Este artigo está organizado da seguinte forma: Na seção 2 são apresentadas definições de diferentes autores para workflow na seção 3 são apresentados os conceitos básicos envolvidos na modelagem de workflow. As características necessárias para sistemas de gerência de workflow são discutidas na seção 4. Na seção 5 são apresentadas as classes de workflow e discutidos na seção 6 é descrita a modelagem de workflow bem como os relacionamentos de workflow com outras áreas. Finalmente, na seção 7, são apresentadas algumas reflexões sobre o tema. 2. O que é workflow Workflow não é um conceito novo pois informações sobre o trabalho realizado estão sendo armazenadas e manipuladas há muito tempo. O termo workflow coloca uma nova perspectiva, na qual o trabalho é o conceito central, diferentemente da visão orientada a dados.
3 O enfoque principal no trabalho realizado e na disponibilidade da informação, melhora a prática do gerenciamento de workflow. As primeiras aplicações de workflow foram sistemas de digitalização, gerenciamento e armazenamento de documentos (Digitalyzed Imaging Systems - DIS) projetados para suportar altos volumes de transações e para armazenar uma variedade de tipos de documentos [BUR 93]. O processamento de transações financeiras, de pagamento de seguros e o processamento de documentos legais são bons exemplos de aplicações que podem se beneficiar da utilização de workflow, pois requerem uma grande capacidade de processamento de imagens digitalizadas e sistemas que gerenciem documentos. São exemplos de documentos utilizados nessas transações: fotografias de imóveis, imagens de contratos e escrituras legais incluindo as assinaturas dos envolvidos (para o caso de locações e vendas) e fotografias de carros com sinistro (como provas no caso de pagamento de seguro). Estes documentos necessitam ser organizados, manipulados e armazenados e, com a tecnologia atual, podem ser incorporadas aos sistemas 1. Estes sistemas devem proporcionar um alto grau de segurança, um eficiente controle de versões, o controle de versões é vital para que as informações mantenham-se sincronizadas e consistentes em todos os locais, e rastreamento de documentos, e são tipicamente baseados em uma arquitetura de banco de dados centralizada. Workflow, nestes ambientes, incluem, comumente, tarefas de processamento de documentos através de escalonamento, roteamento e acompanhamento dos estados do processo. Vários conceitos são utilizados para caracterizar workflow, tanto a nível acadêmico como a nível comercial. Nos itens a seguir (2.1 a 2.8) são apresentadas algumas definições propostas a nível acadêmico, a seguir são apresentadas as definições propostas por vendedores de softwares que produzem produtos incluídos na categoria de workflow (2.9) 2.1 Duitshof, Matthijs Workflow é um sistema cujos elementos são atividades, relacionadas como outras por triggers (gatilhos), e disparadas por eventos externos [DUI 95]. 2.2 Georgakopoulos, Dimitrios Workflow é um conceito fechado relacionado com reengenharia e automação de negócios e processos de informação em uma organização [GEO 95]. Workflow pode descrever tarefas de processos de negócios em um nível conceitual necessário para compreensão, 1 um exemplo de sistema que incorpora tal característica é o File Magic! Plus 4.1 que tem como função principal armazenar e gerenciar banco de dados formados por imagens digitalizadas [NIC 96]
4 avaliação e (re)projeto de processos de negócios. Por outro lado, workflow pode capturar tarefas de processos de negócios em um nível que descreve requisitos dos processos integrando as funcionalidades de sistemas de informação e as habilidades humanas. Georgakopoulos define um workflow como uma coleção de tarefas organizadas para realizar alguns processos de negócio (por exemplo: processamento de ordens de compra por telefone; processamento da venda de serviços telefônicos; processamento de indenização de danos por uma companhia de seguros) [GEO 95]. Uma tarefa pode ser executada por um ou mais sistemas de software, um ou mais grupos de pessoas, ou uma combinação dos dois. 2.3 Joosten, M. M. Stef Segundo este autor, um workflow é um sistema em que elementos são atividades relacionadas com outras atividades através de triggers e disparadas por eventos externos, que representam um processo de negócio iniciado com uma incumbência e finalizado com o término desta incumbência. Nesta definição, um workflow representa um processo de negócio particular, tal como processos de tratamento de indenizações de danos solicitadas a uma companhia de seguros. O conceito de workflow refere-se a uma coleção de atividades (processo) que permanecem juntas porque são executadas como conseqüência de um evento específico [JOO 95a]. Esta definição não menciona a área de aplicação de workflow, pois o conceito de fluxo de trabalho é aplicado em muitas situações. A definição se refere a relacionamentos entre atividades, sem considerar de onde ou por quem as mesmas são realizadas. Um exemplo de um workflow é o tratamento de um sinistro exigido a uma companhia de seguros. Este tratamento é um workflow, porque todas atividades no procedimento são conseqüências do evento disparado por um dano. O workflow pode incorporar assessores de danos, pessoas de reparos, especialistas, secretárias, advogados, contadores, participantes estes localizados dentro ou fora da companhia de seguro. O propósito de um workflow é melhorar a coordenação do trabalho. Workflow usualmente é aplicado em situações onde procedimentos administrativos são realizados por diferentes pessoas em diferentes localizações [JOO 95a]. A melhoria da coordenação é permitida pela disponibilidade de uma infra-estrutura de comunicação eletrônica. O desafio dos negócios para uma maior competitividade e rapidez nos processos, é explorar as possibilidades com respeito à coordenação na execução do trabalho. Um workflow é entendido como todo o trabalho executado como conseqüência de um evento particular. Este evento, por
5 exemplo, pode ser uma queixa de um cliente sobre um produto vendido com a data de validade vencida (ação) que dispara um procedimento relacionado a esta ação, tal como a verificação da data de validade e de venda do produto. Diferentes pessoas de diferentes departamentos, ou externos a organização, podem estar envolvidos. Para Joosten, um workflow apresenta as seguintes características: integração - o sistema atravessa limites organizacionais; diferentes partes estão envolvidas; estrutura - o sistema tem uma estrutura segura, tal como controles e autorizações associadas a procedimentos, formulários, etc.; híbrido - o sistema é constituído por participantes pessoas e automatizados. 2.4 Mckie, Stwart Workflow é o processo de automação de negócios onde um conjunto inteligente de ferramentas gerenciadoras de tarefas interpreta e age sobre eventos [MCK 94] 2.5 Miller, John A. Workflow é um conjunto de tarefas que cooperam para implementar um processo de negócios [MIL 95]. Um workflow pode simplesmente ser definido como um conjunto de tarefas (também chamado de atividades ou passos) que cooperam na execução de um processo do negócio. Miller ainda afirma que um workflow é composto de um conjunto de tarefas (também chamado passos ou atividades). Há dois tipos de tarefas, tarefas simples que representam atividades individuais e indivisíveis e tarefas compostas que representam algumas atividades que podem ser divididas em sub-atividades (tarefas simples ou qualquer outra composição de tarefas). Para Miller, tarefas são operações ou seqüência de operações que são submetidas à execução no processamento pelas entidades utilizando suas interfaces. 2.6 Pierre, Saint Workflow são processos que primariamente representam procedimentos de trabalho executado por pessoas de um escritório, mediante documentos ou formulários eletrônicos [SAI 94]. A transferência destes documentos de um lugar para outro é realizada de acordo com uma rota predefinida, permitindo que cada pessoa (agente) manipule os documentos em função de suas atividades na organização. 2.7 Sheth, Amit As definições de Workflow a seguir são referenciadas em [SHE 95]: Workflow refere-se a um novo conjunto de ferramentas e softwares para automação e aperfeiçoamento de processos de negócios. Workflow é um processo pelo qual tarefas individuais agem juntas
6 para completar uma transação (processos de negócios claramente definidos) em uma empresa. Workflow é uma seqüência de ações ou passos usados em processos de negócios. Workflow automatizados aplica tecnologia para processos, embora não necessário para todo tipo de ação. Workflows são modelos computadorizados de processos de negócios. 2.8 Workflow Management Coalition A Workflow Management Coalition é uma entidade que tem como objetivo aumentar a utilização das tecnologias de workflow através do desenvolvimento de terminologias comuns e padrões. Como esta organização tem apresentado participações de diferentes grupos que trabalham com workflow na Europa, consideramos a experiência acumulada por estes membros e compartilhada com a Workflow Management Coalition relevante ao nosso trabalho. A Workflow Management Coalition define workflow como a automação de um processo de negócios, na sua totalidade ou parte, durante o qual documentos, informações ou tarefas são passadas de um participante para outro por ações, de acordo com um conjunto de regras procedurais [WFM 96]. 2.9 Visão Comercial A seguir veremos alguns conceitos relacionados a visão comercial de um workflow. Para Burns workflow é a tecnologia que habilita você automatizar processos de negócios [BUR 93]. Um representante da PeopleSoft Inc. diz que: workflow é um mecanismo pelo qual você pode implementar a prática da reengenharia de negócios [GEO 95]. Literatura de produtos da Action Tecnologics Inc. define workflow como um trabalho que é mudado como uma série de transações baseadas em pessoas e declara que Uma série de workflow formam um processo de negócios [GEO 95]. Um representante da Wang Laboratories declara que workflow vai além do roteamento (isto é, movendo informação entre usuários ou sistemas) pela integração da informação de uma variedade de fontes [GEO 95]. Literatura de Produtos da Recognition Internal Inc. informam que workflow é o processo pelo qual tarefas individuais juntam-se para completar uma transação, um processo de negócio claramente definido, com uma empresa [GEO 95] Definição de workflow Para este trabalho definimos workflow como sendo um conjunto de passos processados juntos com alguma especificação de controle e fluxo de dados entre os passos.
7 3. Conceitos Esta seção é constituída por um conjunto de definições relacionadas com a área deste tutorial. Seu objetivo é o de apresentar uma revisão bibliográfica abrangente do tema. 3.1 Evento Evento é definido como algo que acontece, algo que ocorre. Exemplo: a ocorrência da remessa de uma carta. Um outro exemplo de evento é um sinistro ocorrido por um acidente de carro em junho de Um evento ocorre como resultado da execução de uma atividade, por outro lado, atividades podem ser executadas como resultado da ocorrência de eventos. Eventos são observáveis em um certo momento, que é chamado de ocorrência do evento. Cada atividade contém pelo menos um evento, por que o evento determina a execução da atividade. Uma atividade á composta por uma seqüência não nula de eventos. Uma importante distinção entre atividades e eventos é que atividades podem ser associadas com um intervalo de tempo, enquanto que um evento ocorre em um instante de tempo específico. 3.2 Participante do Workflow ou Ator Participante do workflow ou ator é um recurso que executa o trabalho representado por uma instância de atividade de um workflow (é aquele que atua). Este trabalho normalmente manifesta-se como um ou mais itens de trabalho (Work Item) atribuídos ao participante do workflow, via worklist.. Exemplo: pessoa colocando a carta na caixa de correio. 3.3 Item de Trabalho (Work Item) Item de trabalho é a representação do trabalho a ser processado (por um participante do workflow) no contexto de uma atividade em uma instância de processo. 3.4 Lista de Trabalho (Work List) Lista de trabalho é uma lista de itens de trabalho associados com um determinado participante do workflow (ou em alguns casos com um grupo de participantes do workflow que podem compartilhar uma lista de trabalho em comum). A lista de trabalho é formada pela interface entre um workflow e o usuário da lista. 3.5 Objeto Alguma coisa que é capaz de ser vista, tocada, ou sentida. Exemplo: a carta. 3.6 Atividade Atividade é um conjunto de eventos que ocorrem sobre a responsabilidade de um ator. Esta definição permite que uma atividade seja realizada por muitas pessoas, contanto que um ator seja responsável pela atividade. Por exemplo, mandar uma carta pode envolver
8 secretárias, serviços de entrega, etc., mas isto é considerado uma atividade quando estes atos são executados sobre a responsabilidade do remetente. Uma atividade é executada se os eventos na atividade estão habilitados e ocorrem. É necessária a existência de um ou mais atores (atuantes) causando esses eventos. Atores podem ser seres pessoas ou agentes automatizados. Ambos os tipos de atores são tratados em um mesmo nível de abstração de forma a modelar a interação. Esta natureza híbrida, ou seja, aspectos humanos e automatizados é característica de sistemas de workflow. Atividades podem ser consideradas elementos de um caso. Um evento específico é o motivo para um grupo de atividades pertencerem ao mesmo workflow, este evento é o responsável pelo desencadeamento da seqüência de atividades, o workflow. Algumas atividades são descritas como uma parcela do trabalho que executa um passo lógico no processo. A natureza híbrida dos atores é determinada tanto pelos atores quanto pela natureza intrínseca das atividades. Uma atividade pode ser manual (não pode ser automatizada) ou automatizada (passível de descrição algorítmica). Assim, uma atividade de workflow pode requer recursos humanos ou automatizados para suportar a execução do processo. Quando um recurso humano é necessário para a execução de uma atividade esta atividade é atribuída a um participante do workflow. A definição de um processo geralmente consiste de muitas atividades de processo relacionadas logicamente em termos de sua contribuição sobre os processos de negócio. Uma atividade é tipicamente a menor unidade de trabalho escalonada pelo workflow, mesmo que uma atividade possa resultar em muitos itens de trabalho a serem executados por um participante do workflow Atividade Automatizada Atividade automatizada, é uma atividade capaz de ser automatizada usando um sistema de gerenciamento de workflow para supervisionar a atividade durante a execução de um processo de negócios do qual ela faz parte Atividade Manual Atividade manual, é uma atividade em um processo de negócio que não pode ser automatizada e, portanto, está fora do escopo do sistema de gerenciamento do workflow. Tais atividades podem ser incluídas na definição do processo para permitir a coordenação integrada das atividades automáticas e humanas.
9 3.7 Instância Instância, é a representação de uma única ocorrência de um processo ou de uma atividade em um workflow, incluindo os dados associados. Cada instância representa uma forma diferente de execução. Um workflow inclui atividades paralelas, uma instância de um workflow pode incluir muitas linhas diferentes de execução do processo ou atividade, que pode ser controlada independentemente e tem seus estados internos próprios e identidade externamente visível. 3.8 Gatilho (trigger) Como conseqüência da ocorrência de um evento, uma atividade pode ocorrer (um evento x dispara uma atividade y se a ocorrência de x faz com que y seja executada), esta dependência causal é chamada de triggering. Uma atividade é disparada quando algum objeto é recebido (evento), tal como um formulário, um arquivo, uma mensagem eletrônica, uma chamada telefônica. Este objeto é chamado de transportador do evento. 3.9 Processo Um processo é um conjunto de atividades que compartilham um objetivo em comum. Processos são definidos para dar um nome a um conjunto de atividades que estão relacionadas de uma forma tenha sentido em uma determinada situação. Processos podem ser divididos em subprocessos, que correspondem ao subconjunto de relações entre conjuntos. Esta distinção entre processo e atividade é motivada pela diferença nas características essenciais das atividade. Uma atividade está associada a um ator que tem a responsabilidade de realizá-la. Um processo constitui-se em um conjunto de atividades para uma dada situação (específica). Um workflow pode ser considerado um tipo de processo. Processo é a representação conceitual de uma realidade do mundo real denominada um processo de negócio de forma a suportar a manipulação automática, incluindo tanto a modelagem quanto a execução por um sistema de gerenciamento de workflow. A definição (modelagem) de processo, consiste em uma rede de atividades e seus relacionamentos, critérios para indicar o início e término do processo e informação sobre atividades individuais, tais como participantes associados à aplicações, dados associados a atividades, etc Processos de negócios Processos de negócios são um conjunto de um ou mais procedimentos ou atividades relacionados que coletivamente realizam um objetivo de negócios ou uma meta (política) normalmente dentro do contexto de uma estrutura organizacional que define papéis funcionais
10 e relacionamentos. Processos de negócios podem consistir de atividades automatizadas, capazes de serem gerenciadas por um workflow, e atividades manuais que encontram-se fora do escopo da execução automatizada do workflow Modelo E-R de workflow De forma a facilitar a compreensão das definições relacionadas ao conceito de workflow, a seguir será apresentado um diagrama E-R (Figura 1) que representa os relacionamentos entre evento, objeto, atividade, processo, ator usando a notação de [EN 89] Apud [DUI 95]. objeto processo transporta evento atividade executa ator trigger responsável Figura 1: Modelo E-R de Conceitos [DUI 95]. Para ilustrar as interações entre os conceitos definidos é apresentado, na Figura 2, um caso hipotético de atendimento a um sinistro de trânsito por parte de uma seguradora. O objeto é um carro. Um dos sinistros válidos para o carro (evento que o objeto transporta) é um acidente. Quando ocorre o acidente, a atividade Preparação Documentação (do processo Tratamento de Seguro), que reconhece o evento Acidente de Carro, pois o veículo está segurado, é ativada. A atividade é realizada pela Secretária, sob responsabilidade do Chefe, ambos pertencentes ao escritório da Seguradora.
11 C arro T ratam ento de S egu ro sin istro A cidente d e C arro P rep aração D ocum entação ex ecu ta S ecretária S eg uro resp o n sá v el C hefe Figura 2: Instanciação do Modelo E-R de Conceitos para o caso Atendimento a um Sinistro de Trânsito 4. Sistemas de Suporte ao Gerenciamento de Workflow Um complemento ao tema workflow, é o estudo de Sistemas de Suporte ao Gerenciamento de Workflow - SSGW. Não é a intenção deste trabalho aprofundar-se neste tópico, porém, algumas características relacionadas a SSGW permitem que se tenha uma visão mais clara do processo de definição da informação, de como se relacionam os dados de um processo e como eles se organizam em um workflow. dados da a p lica ç ã o dados da org a n iza çã o p ro fissio na l do escritório p rojetista g eren te r e d e d e co m u n ica ç ã o pro ce ssa d o r de interface gerente de e vento s gerente de w o rk flo w dados de defin içã o dados do processo dados de gerenciam ento L E G E N D A : co m p o n en te clien te lig a çã o co m u m c om p on en te d o S S G W co m p o n en te a tiv o co m p o n en te d e a r m a z en a m en to lig a çã o co m u m c om p on en te ex te r n o Figura 3: Arquitetura genérica para um SSGW [JOO 95a]. Sistema de Gerenciamento de Workflow é um sistema que define, cria e gerência a execução de workflows, através do uso de software, executando uma ou mais máquinas de workflow, que está habilitada a disponibilizar a definição do processo, interagindo com os participantes do workflow e, onde for necessário, invocar o uso de ferramentas e aplicações da tecnologia de informação [WFM 96].
12 Um sistema de workflow consiste de componentes de software para armazenar e interpretar definições de processo, criando e gerenciando instâncias do workflow ao mesmo tempo que são executados, e controlando suas interações com participantes e aplicações do workflow. A Figura 3 mostra uma arquitetura genérica de um SSGW [JOO 95a]. Os componentes que, de fato, pertencem ao SSGW estão conectados por setas sombreadas. Os dados das aplicações e os dados da organização pertencem a solução sistêmica da empresa como um todo mas não ao sistema de suporte a workflow em si. De acordo com a arquitetura genérica mostrada na Figura 3, existem três tipos de componentes básicos em um SSGW: componentes ativos, componentes clientes e componentes de armazenamento. 4.1 Componentes Ativos São de três tipos os componentes ativos em SSGW: processadores de interface, gerentes de eventos e gerentes de workflow. O processador de interface é um componente que faz a ligação entre os dados dos sistemas de informação da empresa (dados da aplicação) e o sistema de workflow. Para o caso do acidente de trânsito descrito na seção 3.11, o processador de interface é responsável por efetuar a recuperação dos dados sobre o cliente, o carro de sua propriedade e o plano de seguros contratado pelo cliente. Estas informações podem estar armazenadas em um SGBD relacional, e podem ser acessíveis, por exemplo, pelo protocolo ODBC. O gerente de eventos é o responsável por manter a lista do trabalho a ser realizado, garantindo o cumprimento de prazos de execução e notificando outros atores, caso conveniente. Para a mesma aplicação citada acima, o gerente de eventos é quem ativa o evento que deve ser reconhecido pela atividade seguinte após a documentação de solicitação do valor do seguro estar em condições, assim como avisa os atores envolvidos com as próximas atividades como, por exemplo, o responsável por realizar a perícia no veículo. O gerente de workflow é responsável pela coordenação da execução das atividades de um workflow, pelo monitoramento de outros workflows e pela comunicação com outros gerentes de workflow, quando necessário. A atividade de preparação de documentação demanda um certo tempo para ser realizada: o gerente de workflow é o responsável pela não interferência da execução de outras atividades, de outros casos como, por exemplo, um acidente de trânsito com o carro.
13 4.2 Componentes Clientes São três os tipos de clientes que podem interagir com um SSGW: profissionais, projetistas e gerentes. Convém distinguir os clientes nesses três tipos porque os mesmos requerem diferentes funcionalidades de um SSGW. Não é incomum, na prática, que uma mesma pessoa acumule dois ou os três tipos (ou papéis) acima. Considerando a requisição de seguros discutida anteriormente, o papel de projetista é realizado por aquele que define como o escritório da seguradora vai, de fato, atender uma requisição desse tipo, ou seja, quais serão as atividades, a quais eventos as mesmas devem responder e quais informações são tratadas por cada uma. O gerente é aquele que designa as pessoas como responsáveis ou executoras das atividades, ou seja, executa um procedimento semelhante ao de definir autorizações de acesso a um banco de dados. O papel do profissional é exercido no momento em que uma dada pessoa executa uma atividade de um caso específico como, por exemplo, a preparação da documentação para o pedido de pagamento de seguro. 4.3 Componentes de Armazenamento Os componentes de armazenamento pertencem a dois contextos: externos e internos. Os componentes externos são classificados em dois tipos: dados das aplicações e dados da organização. Os internos, por sua vez, são incluídos em três tipos: dados de definições, dados de processos e dados de gerenciamento Dados das Aplicações Os dados das aplicações correspondem às informações armazenadas nos bancos de dados dos sistemas de informação da empresa. Esses dados não pertencem ao SSGW. De fato, os SSGW é que necessitam, eventualmente, dos dados dos SI para a execução das atividades. Os dados de cadastramento de clientes da seguradora são um caso típico Dados da Organização Os dados da organização dizem respeito à solução organizacional da empresa em termos de estrutura, funções e recursos. Com essas informações, um SSGW tem condições de garantir a política de autorizações de acesso e de qualificações dos profissionais da empresa. No caso da seguradora, a atividade do cálculo da indenização prevista pela apólice do seguro, dadas as circunstâncias do sinistro ocorrido, deve ser de atribuição, por exemplo, de um contador. Estes dados não estão relacionados com um processo de negócio específico, mas contém informação de uma natureza mais geral.
14 4.3.3 Dados de Definições Os dados de definições dizem respeito às informações estáticas da estrutura dos workflows (por exemplo: especificação de workflow e especificação de tarefas). Estes dados correspondem aos modelos de dados dos workflows. A atividade de preparação de documentação necessita para sua realização, além dos dados do cliente, do veículo e do seguro contratado, um conjunto de documentos tais como registro policial de ocorrência de trânsito, laudo da perícia, orçamentos para conserto, etc. É necessária a descrição de, pelo menos, quais tipos de documentos e de dados serão tratados pela atividade. Se um modelo de um processo de negócios é usado para automatizar um workflow então o modelo pode conter pelo menos os dados de definição Dados de Processos Os dados de processos registram a história de execução dos processos e das correspondentes atividades e o estado atual dos diversos processos. A informação dinâmica corrente e o histórico das aplicações de workflow é chamado dados do processo. Estas informações são úteis para decidir qual a ordem efetiva de realização das atividades, atribuição de atividades a atores, (re)escalonamento de atividades, além de permitir, caso conveniente, um posterior rastreamento de como, efetivamente, foi solucionado um caso em especial. Os dados de um workflow podem ser, por exemplo: a atividade de preparação da documentação do pedido de indenização foi realizada, por exemplo, no dia 10/04/96 às 14:30h, com o registro policial de número 12458, de 06/04/96, laudo da perícia técnica de nº 1679, e sem orçamentos para conserto, pois o laudo acusou a perda total do veículo. O ator responsável e executante da atividade foi o Assistente de Administração João da Silva, por atribuição expressa do Gerente. Este dado é importante quando um workflow é processado. Isso faz dos dados do processo um componente essencial para a máquina de workflow. Além disso, trabalhadores podem determinar (definir um fluxo) os dados do processo em ordem direcionando o fluxo de informação no workflow, providenciando aos clientes informações corretas sobre o estado corrente do trabalho, e mostrando quais atividades existem para ser feitas (listas de trabalho) Dados de Gerenciamento Os dados de gerenciamento correspondem às agregações de dados sobre os processos executados, permitindo que os gerentes possam acompanhar e avaliar o trabalho executado e, eventualmente, reescalonar o trabalho para evitar picos de carga e sobrecarga de atividades em
15 atores específicos. Esses dados auxiliam a determinação de métricas de produtividade, tempos de realização dos processos etc. Pode interessar, à seguradora, saber se há uma alta incidência de problemas com documentação na solicitação de pagamento de seguros, quanto tempo, em média, a seguradora gasta para pagar a idenização de um seguro, quais atores têm tido uma taxa de erro acima do aceitável, etc. A estrutura dos dados de definição, dados de processo e dados da organização é vista nas seções a seguir. Joosten [JOO 95] mostra como estes três conjuntos de dados são integrados conceitualmente. 5. Caracterizando Sistemas de Workflow Para cada organização, processos de negócios apresentam características próprias, havendo assim a necessidade de um modelo de workflow que permita representar de forma realística as informações qualitativas e quantitativas da entidade em estudo. O processamento de transações financeiras, o processamento de documentos legais, entre outros, são exemplos de atividades distintas, mas que podem ser representadas por um mesmo modelo de workflow. A caracterização de sistemas de workflow permitirá que a seleção do modelo para sua representação seja facilitada, visto que será possível verificar em qual dessas caracterizações determinado processo se enquadra impedindo, assim, a escolha de um modelo inadequado que proporcione uma modelagem inadequada. Não existe ainda uma forma comum para caracterizar sistemas de workflow. Muitas caracterizações negligenciam a automação de workflow acessando um grande número de sistemas e informação compartilhados. Para melhor modelar processos de negócios, é importante que se identifique em qual das caracterizações existentes este processo se enquadra, visto que alguns modelos podem não ser adequados para uma representação de determinados processos de negócios. Como pode ser lido em [GEO 95] na comparação de Cinco Sistemas de Gerenciamento de Workflow, apenas um deles (Floware) consegue representar as três caracterizações propostas; as outras ferramentas conseguem representar apenas uma. Tendo em vista a tentativa de selecionar um modelo que melhor se adapte ao trabalho futuro, consideramos importante a identificação dos tipos de workflow. A identificação dos tipos de workflow permitirá maior segurança na escolha de modelos e de ferramentas de modelagem para representação dos processos de negócios. Existem vários tipos de caracterização de workflow; entre elas estão: apoio ad hoc de grupo de trabalho, automação de tarefas, fluxo de documento e automação de processo, workflow administrativo, workflow
16 de produção, workflow orientado a pessoas e workflow orientado a sistemas e workflow transacional [GEO 95,KOB 95]. [FRYE 94] Apud [GEO 95] divide workflow em três categorias: centrado em correio, centrado em documento e centrado em processo. A seguir procuraremos abordar algumas dessas caracterizações. 5.1 Workflow Orientados a Pessoas e Workflow Orientado a Sistemas Workflow orientado a pessoas, envolve pessoas na execução e coordenação de tarefas (ad hoc workflow) e workflow orientado a sistemas, envolve sistemas de computadores que executam operações computacionais intensas e softwares especializados em tarefas (workflow do tipo produção). Enquanto workflows orientado a pessoas, controlam e coordenam tarefas humanas, workflow orientado a sistemas controlam e coordenam tarefas de softwares (com uma pequena ou nenhuma intervenção humana). Conseqüentemente, implementações de workflow orientado a sistemas precisam incluir softwares para controle de concorrência e técnicas de recuperação para assegurar consistência e segurança. Em um workflow orientado a pessoas, as principais questões a serem analisadas são: interação pessoa-computador; combinar habilidades humanas para suportar as tarefas necessárias; modificar a cultura do escritório (como as pessoas preferem ou necessitam trabalhar). Em um workflow orientado a sistemas, as principais questões a serem analisadas são: combinar as necessidades dos processos de negócios para a funcionalidade do sistema e providenciar dados pelos sistemas de informação existentes e/ou suas aplicações; interoperatibilidade entre sistema do tipo HAD (heterogêneo, assíncrono, distribuído); procurar softwares adequados para executar tarefas de workflow; determinar novas necessidades aos softwares de forma a permitir automação dos processos de negócios; assegurar a execução correta e segura dos sistemas. Torna-se importante observar que questões tais como tratamento de exceções, liberação de usuários, priorização e encerramento podem aparecer de diferentes formas em ambos os tipos de sistemas, e necessitam ser analisadas. 5.2 Ad hoc, Administrativo e Produção As publicações comerciais diferenciam três tipos de workflow [MCC 92, GEO 95, KOB 95]: ad hoc; administrativo, e de produção.
17 5.2.1 Ad hoc Workflows do tipo Ad Hoc suportam definição rápida e execução de modelos de processos menos complexos que podem ser usados para facilitar o fluxo de um único documento em uma única ocasião, ou o fluxo dos documentos de negócios principais em uma base corrente [KOB 95]. Este tipo de workflow executa processos de negócios, tais como documentação de produtos ou pedidos vendidos, onde não há um padrão de movimentação de informação entre pessoas. Tarefas do tipo ad hoc para workflow tipicamente envolvem coordenação humana, elaboração ou co-decisão [Schael 95] Apud [GEO 95]. A ordenação e a coordenação de tarefas em um workflow do tipo ad hoc não são automatizadas mas controladas por pessoas. Workflows Ad hoc tipicamente envolvem pequenos grupos de profissionais que têm a intenção de apoiar atividades que requerem uma solução rápida. A Figura 4, representa um workflow simplificado tipo ad hoc envolvendo o processo de referência de artigos. As tarefas do processo de revisão consistem em Selecionar Revisores, Distribuir os Papéis para os revisores selecionados, ter os revisores executando (fazendo) as revisões (Revisão), e colaborando na produção de Revisão Conjunta (agrupada) de um documento, e finalmente enviando as revisões para os autores (Revisão Enviada). Revisão requisição 1 Revisão 1 Selecionar Revisores Revisão requisição 2 Artigos Distribuídos Revisão 2 P roduz revisões agrup adas Revisão avançada. Revisão requisição n Revisão 3 Figura 4: Ad hoc workflow de revisão de artigos [GEO 95] O processo de referência de artigos é um workflow do tipo ad hoc por apresentar as seguintes características: i. negociação para a seleção de revisores; ii. colaboração entre os revisores para produção de uma revisão agrupada Revisões subsequentes de artios podem não ser executadas pelos mesmos revisores. Estas características são típicas de um workflow do tipo Ad hoc por envolverem coordenação, elaboração ou co-decisão humana.
18 Figura 5:Opção send to documento encontrada no Windows 98 Uma forma de rotear os documentos do workflow de revisões de artigos, pode ser através da utilização da opção send to (vide Figura 5) existente no ambiente Windows 95 da Microsoft Corporation, permitindo que o usuário envie um arquivo (documento eletrônico) para um disquete, fax ou mail. No caso de sistemas de alguns produtos ainda permitem ao usuário enviar formulários de negócios eletrônicos como arquivos com acessórios (attachments).estes exemplos caracterizam situações em que podem ser aplicados um workflow do tipo ad hoc Administrativo Envolve processos repetitivos com regras de coordenação de tarefas simples, tal como roteamento de um relatório de despesa ou requisição de viagem através de um processo de autorização. A ordenação e coordenação de tarefas em workflows administrativo podem ser automatizadas. Workflows administrativo não englobam um processo de informações complexas e não requerem acesso para sistemas de informação múltiplos usados para suportar produção ou serviços de compradores. Exemplo: considerando novamente o processo de revisão de artigos; nesta caracterização, assume-se que os revisores são anteriormente conhecidos (exemplo: os mesmos revisores são usados para revisão dos artigos). Portanto supõe-se que os revisores não colaboram na produção de uma revisão conjunta. Em vez disso, eles produzem revisões individuais que são consideradas pelo editor que toma a decisão final. Sobre esses aspectos, workflow de revisão de artigos torna-se um workflow do tipo administrativo como descrito na Figura 6.
19 Revisão 1 Distribuição Revisão 2 Combina de Artigos Revisões Revisão enviada Revisão 3 Figura 6: Workflow Administrativo de revisão de artigos [GEO 95] Produção Envolve processos de negócios repetitivos e previsíveis, tais como empréstimos e seguros. Diferente de workflows administrativo, workflows de produção englobam um processo de informações complexas envolvendo acesso para múltiplos sistemas de informação. A ordenação e coordenação de tarefas nestes tipo de workflow podem ser automatizadas. Contudo, para automação de workflow de produção, torna-se complicado trabalhar com: processos de informações complexas; acesso para sistemas de informação múltiplos para execução do trabalho e recuperação de dados para tomada de decisão (workflow administrativos confiam em pessoas para a maior parte das decisões e execução dos trabalhos). Considerando o processo de requisição de seguro saúde na Figura 7, um formulário de requisição é primeiro examinado manualmente e armazenado em um banco de dados de objetos, então a requisição é indexada. Esta informação é analisada por um avaliador de requisição automatizado. A tarefa é executada por um sistema especialista que utiliza um banco de dados de habilitação para determinar se o pagamento pode ser feito. Caso a requisição seja rejeitada um representante discute a requisição com o comprador e ambos combinam alguma forma de realizar o pagamento ou o representante rejeita a requisição. Caso o pagamento seja feito, a tarefa de faz pagamento acessa o banco de dados financeiro e registra o pagamento. As diferenças relevantes entre este workflow de produção e o ad hoc ou administrativo são: interação do sistema de informação como os processos de negócio; uso de executores de tarefas automatizados (não pessoas).
20 Faz Pagamento scaneia formulario requisição Indexa formulário requisição Avalia requisição OK rejeita OK concessão da requisição Produz revisões agrupadas BD Imagem de Requisições BD de Requisições Sistema Especialista de Requisições BD de Habilitação Figura 7: Workflow do Processo de Requisição de Seguro [GEO 95] As caracterizações citadas não separam workflows conceituais dos workflows comerciais que os suportam, e nem a infra-estrutura tecnológica que eles estão correntemente usando. Portanto caracterizações do tipo comerciais, tipicamente não distinguem workflows de produção (acessando um pequeno número de sistemas de informação) e workflow automatizados (acessando muitos sistemas de informação HAD (heterogêneo, assíncrono, distribuído) compartilhados. Sistemas de workflow de Produção automatizam processos de negócios complexos que variam pouco de caso para caso, similar a uma linha de montagem. Eles suportam volumes de transações elevados, documentos compartilhados, repositores e documentos sofisticados com acompanhamento de tarefas. Muitas das aplicações de workflows de produção descendem de produtos de workflow baseados em imagens ou do gerenciamento de documentos baseados no gerenciamento de textos e recuperação de produtos [KOB 95]. 5.3 Workflow Transacional Workflow transacional envolve execução coordenação de múltiplas tarefas que (i) podem envolver pessoas, (ii) requerer acesso a sistemas do tipo HAD, e (iii) suportar o uso seletivo de propriedades transacionais ACID (atomicidade, consistência, isolação e durabilidade) para tarefas individuais de workflow. O uso seletivo de propriedades transacionais é necessário para permitir a especialização das funcionalidades necessárias para cada workflow (por exemplo: permitir colaboração de tarefas e suportar estruturas complexas de workflow). 5.4 Inter-relacionamento entre os tipos de Workflow A Figura 8 ilustra o relacionamento entre os tipos de workflow e o grau de estruturação e de complexidade das tarefas realizadas nos escritórios, segundo [GEO 95]. Workflow com pouca estruturação pode significar um conjunto linear de tarefas a serem realizadas; com alta estruturação pode implicar em uma organização de tarefas na forma de um grafo, onde várias tarefas podem ser executadas concorrentemente e a conclusão de várias é necessária para dar início a outras. A complexidade é determinada pelos tipos de regras ou