• Nenhum resultado encontrado

Definição de Processos de Workflow

N/A
N/A
Protected

Academic year: 2021

Share "Definição de Processos de Workflow"

Copied!
6
0
0

Texto

(1)

Definição de Processos de Workflow

Tiago Telecken

Universidade Federal do Rio Grande do Sul telecken@inf.ufrgs.br

Resumo

Este artigo apresenta uma introdução a tecnologia de workflow informando noções básicas sobre o assunto, classificando o workflow em as suas áreas funcionais e apresentando uma arquitetura padrão para a implementação deste tipo de tecnologia. Após será apresentado mais detalhadamente a arquitetura da fase de definição do workflow.

Abstract

This article presents an introduction the workflow technology informing basic notions about the subject, classifying the workflow in its functional areas and presenting an architecture pattern for the implementation of this technology type. After it will be presented the architecture of the phase of definition of the workflow in more details.

1. Introdução

Em sistemas ou atividades baseadas em processos, onde processo é "um conjunto de um ou mais procedimentos ou atividades relacionadas, os quais coletivamente atingem um objetivo dentro de uma estrutura organizacional que define papéis funcionais e relações", ocorrem problemas como a má distribuição de trabalho, o surgimento de atividades que atrasam as demais ("gargalos"), dificuldade de acompanhamento, sincronização e avaliação de atividades, entre outros. Uma linha de pesquisa que visa solucionar ou minimizar tais problemas e melhorar o fluxo de atividades baseadas em processos é a área que estuda o Workflow.

Segundo o projeto Wide[8] Workflow é “um conjunto coordenado de atividades (seqüenciais ou paralelas) que são interligadas com o objetivo de alcançar uma meta comum”, sendo atividade conceituada como “uma descrição de um fragmento de trabalho que contribui para o cumprimento de um processo” Assim, pode-se assumir que workflow é a divisão de um grande trabalho em várias tarefas menores, com pré-requisitos entre elas, que devem ser respeitados para o avanço da atividade. Já segundo a Workflow Management Coalition [4] Workflow é: "A automação de um processo de negócios, por inteiro ou em parte, durante o qual documentos, informações e tarefas são passadas de um participante para outro por ação respeitando um conjunto de regras procedurais".

Este artigo apresenta na próxima seção uma introdução a tecnologia de workflow informando noções básicas sobre o assunto e apresentando uma arquitetura padrão para a sua implementação, nas seções seguintes será focalizada a "Process Definition" que é a etapa onde o workflow será definido, para tanto serão apresentados o sistema de modelagem de Casati/Ceri[3] e uma ferramenta de auxilio ao processo de definição de workflow (AWE[8]).

(2)

2. Workflow

Do ponto de vista teórico, além do conceito de workflow, já comentado na seção anterior, outros conceitos também são necessários para um melhor entendimento do assunto, são eles:

• Atividade: É o elemento fundamental de trabalho do workflow, é um conjunto de eventos que executam um passo lógico que pode ser realizado por vários atores e esta sob a responsabilidade de um ator.

• Item de trabalho: É a representação do trabalho a ser processado por um ator em uma instância do workflow.

• Processo: É um conjunto de atividades que visam um mesmo objetivo e possuem uma ligação lógica dentro do workflow. Um processo pode ter vários sub-processos sendo que o próprio workflow pode ser considerado um processo.

• Papel: A cada atividade são associados tipos de usuários que podem executa-las ou serem responsáveis pelas mesmas, esta definição de tipo de usuário corresponde a um papel.

• Ator: Participante do workflow que poderá assumir um papel e executar uma atividade durante a execução de uma instância do workflow, pode ser tanto uma pessoa quanto um sistema automatizado.

• Instância: É a representação de uma única ocorrência de um workflow em execução incluindo seus dados.

• Evento: Algum acontecimento observável, difere-se de atividades pelo fato das atividades estarem associadas a um intervalo de tempo enquanto o evento ocorre em um determinado instante de tempo. Um evento pode disparar atividades assim como atividades podem disparar eventos.

• Trigger: Quando o evento A dispara a atividade B pode-se dizer que o evento A é o trigger da atividade B.

Para melhor ilustrar os conceitos informados a figura 1 mostra o modelo de entidades e relacionamentos (ER) dos conceitos vistos:

Figura 1- Modelo ER de conceitos de workflow

Evento trigger pertence Ator Processo Atividade executa responsável contém

(3)

Quanto a implementação, segundo a WFMC [4] a estrutura genérica de uma tecnologia de workflow deve seguir o modelo mostrado na figura 3.

Figura 3 - Arquitetura de uma máquina de workflow

Resumidamente este modelo determina que: Através de uma definition tool (ferramenta que auxilia na definição do modelo) os designers de um workflow podem gerar a definição dos processos do workflow (Process Definition) podendo referenciar nesta definição as aplicações, papéis e estrutura da organização. A Process Definition pode então ser enviada e interpretada por uma máquina de Workflow (AWF Engine) que é um software responsável pelo controle, gerenciamento e execução do workflow definido na Process Definition. A máquina de workflow pode:

• utilizar/referenciar dados da organização, • invocar aplicações externas,

• manter os dados de controle do workflow (Que são os dados necessários para controlar e manter o funcionamento do workflow),

• usar os dados relevantes do Workflow (que são obtidos pela máquina de workflow através de recursos externos) e

• manter uma worklist (um lista de tarefas que são associadas a cada participante do Workflow).

O usuário interage com o Workflow através de sua interface, ele vê as tarefas que deve fazer em sua worklist e as executa invocando ou utilizando sempre que for necessário aplicações externas. Porém o usuário não interfere diretamente com a worklist mantida pela máquina de workflow, entre os dois há um software responsável pela intermediação entre os dois o Worklist Handler, sempre que necessário o Worklist Handler também acessa aplicações externas.

As aplicações externas podem ter suas próprias bases de dados e interagem com o workflow atualizando as workflow relevant data e executando tarefas ao serem invocadas pelos usuários, pela máquina de workflow ou pelo Worlist Handler; são exemplos de aplicações externas: editores de texto, servidores de email, editores gráficos, etc.

Definition Tool

Gera

Process Definition

AWF Engine Workflow

Control Data Workflow Relevant Data Worklist Worklist handler User Interface Applications

Applica

manipula atualiza Interage através usa mantém Workflow Enactment Service Interpretado por Organizational/ Role Model Data

referencia Invoca Workflow application data Applications referencia referencia Invoca

(4)

3. Ferramentas e métodos de modelagem de Workflow

Durante a fase de definição de processos do workflow um fluxo de tarefas é analisado, definido e modelado, embora as técnicas de coleta de dados, análise e definição do workflow sejam muito importantes para uma boa modelagem de workflow, as mesmas estão fora do escopo deste artigo que esta focalizado nos métodos de modelagens de Workflow. Do ponto de vista conceitual os responsáveis pela definição do workflow precisarão seguir/adotar um modelo que possa representar num certo formato (textual e/ou gráfico) um determinado conjunto de elementos relevantes a realidade de um fluxo de trabalho. Ainda não ha uma modelagem de workflow amplamente aceita, consolidada e que formalize de forma clara os principais conceitos de workflow, entretanto alguns modelos já se destacam e serão resumidamente apresentados.

Basicamente existem dois tipos de metodologias de representação de modelos de workflow, as metodologias baseadas em comunicação como o Action Workflow e as metodologias baseadas em atividades como os modelos Modelo de gatilhos, Modelo de Barthelmes/Wainer e o sistema de Modelagem definido por Casati/Ceri. Para uma melhor compreensão do processo de modelagem neste artigo será resumidamente mostrada a modelagem de Casati/Ceri, entretanto uma análise mais aprofundada sobre os demais sistemas de modelagem de workflow pode ser visto em[1][5][6].

O modelo proposto por Casati/Ceri no projeto Wide, é considerado como um dos modelos mais eficientes para a modelagem de workflows[1][5][6]. Através deste modelo pode-se projetar o fluxo de execução de várias tarefas por vários atores diferentes. Para isso o modelo utiliza gráficos, símbolos e textos para descrever as tarefas envolvidas e especificar os mecanismos de disparo e término das ações previstas. Para que esta proposta fosse possível, alguns elementos foram definidos pelo modelo. Tem-se assim como elementos principais o início e o fim das execuções, as tarefas em si, as conexões entre os elementos, modularização das tarefas, construções em paralelo, elementos de junção e elementos de separação, este elementos são representados no modelo conforme a figura abaixo.

Figura 4 - Símbolos da Modelagem de Casati/Ceri

A atividade de modelar um workflow é complexa e muitas vezes realizada por um grupo de pessoas que necessitará de ferramentas que os auxiliem na definição de um

K

K Tarefa supertarefa multitarefa

Direct connection fork total/ join total join interativo join parcial fork não-determinístico fork condicional beginning/end

(5)

workflow conforme uma metodologia de modelagem. A fim de mostrar algumas funcionalidades de ferramentas de definição de workflow serão apresentadas nesta seção algumas características de um software deste tipo o AWE (Amaya Workflow Editor)[8].

O AWE (Amaya Workflow Editor) é um editor desenvolvido na UFRGS que permite a edição gráfica de documentos que expressam um workflow conforme a simbologia e semântica da técnica de modelagem de Casati/Ceri.

O usuário poderá editar o documento utilizando uma ferramenta gráfica adicionada ao software Amaya, esta ferramenta gráfica consiste de uma paleta com símbolos da modelagem de Casati/Ceri conforme a figura 6.

Figura 6- Tela do Amaya Workflow

O usuário utiliza-se da paleta com símbolos de Casati para adiciona-los ao documento, conforme os símbolos são adicionados o workflow vai sendo estruturado com suas tarefas, super tarefas, forks, joins e ligações, gerando desta maneira os arquivos que descrevem graficamente o fluxo lógico das atividades e no formato xml a estrutura lógica do workflow, ao ser finalizada a definição do workflow este arquivo XML conterá a Process Definition do processo modelado, será este o arquivo que devera ser enviado a máquina de workflow para que ela o interprete e execute.

Cada símbolo de Casati colocado no documento torna-se um elemento do workflow e cada elemento possui uma lista de atributos onde são armazenadas informações sobre o workflow que esta sendo modelado estes atributos podem ser alterados automaticamente pelo sistema ou manualmente pelo usuário. Assim através de uma interface gráfica e amigável aos usuários pode-se gerar uma process definition que pode ser interpretada por uma máquina de workflow ou reeditada na própria ferramenta para a realização de ajustes e criação de novos workflows.

7. Tendências

Uma das grandes tendências da área é a questão da interoperabilidade que trata da integração de tecnologias de workflow. Atualmente existem várias ferramentas e máquinas de workflow feitas por diferentes empresas ou instituições entretanto é muito comum cada empresa ter a sua máquina de workflow, os seus softwares de apoio e o seu método de modelagem, desta forma a sua ferramenta de apoio só é entendida pela sua própria máquina de workflow do mesmo modo que a sua máquina só aceita uma "process definition" definida

Paleta

(6)

pela sua ferramenta de apoio, uma máquina de workflow geralmente também não consegue se comunicar ou trabalhar cooperativamente com máquinas de workflow desenvolvidas por outras empresas.

Este problema esta sendo abordado pela WFMC através da construção e definição de interfaces, APIs e linguagens padronizadas para a comunicação de uma máquina de workflow com ferramentas de definição, monitoração, controle, interfaces com usuários, aplicações e outras máquinas de workflow seja feita entre produtos desenvolvidos por empresas e instituições diferentes, sendo portanto promissoras as pesquisas na área de interoperabilidade e definição de padrões.

6. Conclusão

Foi apresentado neste artigo uma introdução a alguns conceitos da tecnologia de Workflow em especial foi focalizada a fase de definição do workflow onde foram apresentados o sistema de modelagem de workflow definido por Casati/Ceri e a ferramenta de auxilio a definição de workflow AWE. Com isto pode-se ter uma idéia do funcionamento e da complexidade desta área de pesquisa que ainda tem como grandes obstáculos na fase de definição do workflow:

• A falta de uma modelagem amplamente aceita comercial e academicamente, como é o caso do modelo ER em modelos relacionais, neste sentido vem se destacando a modelagem de Casati/Ceri;

• A falta de um padrão de linguagem de definição de workflows que permitiria que "process definitions" desenvolvidas em uma determinada ferramenta/sistema de modelagem pudesse ser executada por qualquer máquina de Workflow que seguisse este padrão. Neste sentido a WFMC vem desenvolvendo a XPDL(Extensible Process Definition Language) que é uma linguagem padrão para a definição de Workflows.

7. Bibliografia

[1] BARROS, R.M. Alocação de atividades em um sistema de gerência de Workflow. Porto Alegre: CPGCC/UFRGS, 1997. Dissertação de Mestrado.

[2] CASATI. F. et al. Conceptual Modeling of Workflows. In: The Object-Oriented and Entity-Relationship Conference, 1995, Gold Coast/Austrália. Proceedings…Austrália: LNCS,1995.

[3] CASATI,F.,PERNICI,B. Amethodology for the Design of WWW Sites and its Application to Distance Education. Proceedings of SEBD`96,Pisa, Italy, 1996

[4] Workflow Management Coalition. The Workflow Reference Model.

http://www.wfmc.org Access: Mai, 2002.

[5] NICOLAO, M. .Um estudo sobre conceituação de Workflow. Trabalho Individual, CPGCC-UFRGS, RS, Brasil. Dezembro,1996.

[6] SIZILIO, G.R.M.A.; EDELWEISS, N. Workflow for the Authoring of Long Distance Learning Courses. In:ICECE´2000 - International Conference on Engineering and Computer Education. 2000, São Paulo, Brasil. Proceedings... Aug. 27-30, 2000.

[7] TELECKEN, T.L.; VALDENI, J.;EDELWEISS, N.; ZEVE, C.D; MACIEL, C.; BORGES, T. ; PINHEIRO, M. Implementação de um editor de Workflow baseado no padrão SVG. Relatório Técnico, CPGCC-UFRGS, RS, Brasil. Jun, 2002.

[8] The WIDE Workflow Modeling Language. Available at:

Referências

Documentos relacionados

Diga aos alunos que precisa de silêncio e que trabalhará com grupos de cinco pessoas (ou com quantas decidir). Mostre- lhes como manter as mãos na posição de oração e diga-lhes

Como eles não são caracteres que possam ser impressos normalmente com a função print(), então utilizamos alguns comandos simples para utilizá-los em modo texto 2.. Outros

O empregador deverá realizar a avaliação ambiental de poeira de asbesto nos locais de trabalho em intervalos não superiores a seis meses.. Os registros das avaliações deverão

Se você vai para o mundo da fantasia e não está consciente de que está lá, você está se alienando da realidade (fugindo da realidade), você não está no aqui e

2. Identifica as personagens do texto.. Indica o tempo da história. Indica o espaço da história. Classifica as palavras quanto ao número de sílabas. Copia do texto três

1- A vida das comunidades recoletoras era muito difícil, devido ao frio intenso e aos animais ferozes, mas também porque era difícil encontrar comida e lugares onde se abrigarem.. 2-

A seqüência analítica • Definição do problema • Escolha do método • Amostragem • Pré-tratamento da amostra • Medida • Calibração • Avaliação •

O desenvolvimento das interações entre os próprios alunos e entre estes e as professoras, juntamente com o reconhecimento da singularidade dos conhecimentos