Acessibilidade / Reportar erro

O potencial das redes de Petri em modelagem e análise de processos de negócio

The potencial of Petri nets in modeling and analysis of workflow

Resumos

A tecnologia de gerenciamento workflow procura oferecer uma solução flexível em apoio aos processos de negócios, por meio da facilitação de modificações e da criação de novos processos. Entretanto, a falta de definição bem formalizada no que se refere à sintaxe e à semântica de tais técnicas dificulta análises mais complexas dos modelos. Nesse caso, redes de Petri atuam com excelente potencial, uma vez que possuem representação gráfica, são de fácil aprendizado, funcionam como linguagem de comunicação entre especialistas de diversas áreas, possibilitam descrever aspectos estáticos e dinâmicos do sistema a ser representado e ainda possuem o formalismo matemático necessário para métodos de análise já consagrados. O presente trabalho tem por objetivo, primeiramente, oferecer uma visão atualizada do estado da arte na área de modelagem de workflow baseada em redes de Petri e expor um exemplo de modelo de workflow com parâmetros de tempo e custo associados às transições da rede. O objetivo secundário é apresentar conceitos importantes de redes de Petri, workflow e rotas de processos.

redes de Petri; sistema de gerenciamento de workflow; modelagem organizacional; workflow


Unfortunately these systems and techniques do not have well-defined syntax and semantic, which makes harder the complex analysis of models. In this case, Petri nets have excellent potential to solve the problem, once they present graphic representation and easy understanding. They are used as a communication language among expert people in different areas, and may allow the description of static and dynamic aspects of the systems that have to be represented. Also, they have mathematic formalism, which make possibly the use of the analysis methods. The objective of this work is to present the potential of Petri nets in studies of Enterprise Modelling and Workflow, showing an example of application, with time and cost parameters.

modelling enterprise; Petri nets; workflow; workflow management systems


O potencial das redes de Petri em modelagem e análise de processos de negócio

The potencial of Petri nets in modeling and analysis of workflow

Sílvia Inês Dallavalle de PáduaI; Andrea Ribari Yoshizawa da SilvaI; Arthur José Vieira PortoI; Ricardo Yassushi InamasuII

ILaboratório de Simulação, Departamento de Engenharia Mecânica, Escola de Engenharia de São Carlos, Universidade de São Paulo, Avenida Trabalhador Sancarlense, 400, CEP 13566-590, São Carlos, SP, e-mails: arys@sc.usp.br, dallaval@sc.usp.br e ajvporto@sc.usp.br

IIEMBRAPA, Centro Nacional de Pesquisa e Desenvolvimento de Instrumentação Agropecuária, Rua 15 de Novembro, 1452, CEP 13560-970, São Carlos, SP, e-mail: ricardo@cnpdia.embrapa.br

RESUMO

A tecnologia de gerenciamento workflow procura oferecer uma solução flexível em apoio aos processos de negócios, por meio da facilitação de modificações e da criação de novos processos. Entretanto, a falta de definição bem formalizada no que se refere à sintaxe e à semântica de tais técnicas dificulta análises mais complexas dos modelos. Nesse caso, redes de Petri atuam com excelente potencial, uma vez que possuem representação gráfica, são de fácil aprendizado, funcionam como linguagem de comunicação entre especialistas de diversas áreas, possibilitam descrever aspectos estáticos e dinâmicos do sistema a ser representado e ainda possuem o formalismo matemático necessário para métodos de análise já consagrados. O presente trabalho tem por objetivo, primeiramente, oferecer uma visão atualizada do estado da arte na área de modelagem de workflow baseada em redes de Petri e expor um exemplo de modelo de workflow com parâmetros de tempo e custo associados às transições da rede. O objetivo secundário é apresentar conceitos importantes de redes de Petri, workflow e rotas de processos.

Palavras-chave: redes de Petri, sistema de gerenciamento de workflow, modelagem organizacional, workflow.

ABSTRACT

Unfortunately these systems and techniques do not have well-defined syntax and semantic, which makes harder the complex analysis of models. In this case, Petri nets have excellent potential to solve the problem, once they present graphic representation and easy understanding. They are used as a communication language among expert people in different areas, and may allow the description of static and dynamic aspects of the systems that have to be represented. Also, they have mathematic formalism, which make possibly the use of the analysis methods. The objective of this work is to present the potential of Petri nets in studies of Enterprise Modelling and Workflow, showing an example of application, with time and cost parameters.

Key words: modelling enterprise, Petri nets, workflow, workflow management systems.

1. Introdução

Os processos de negócios e seus projetos ganharam importância desde o início dos anos 90. A habilidade em simplificar um processo desse tipo, de forma eficiente e flexível, é o fator de sucesso mais difícil de ser alcançado pelas companhias atualmente. Tal dificuldade criou a necessidade de desenvolver e lidar com técnicas e ferramentas adequadas para identificar, analisar e simular processos de negócios (Desel & Erwin, 2000).

De acordo com Aalst & Hee (2002), o termo workflow é utilizado na bibliografia com o significado de "processos de negócio". Leymann & Roller (1997) definem workflow como conjunto de atividades que podem, ou não, ser executadas simultaneamente e possuem, entre as atividades do negócio, fluxo de dados e alguma especificação de controle. Um workflow cujos componentes são modelagem e representação do sistema pode representar vários processos e seus relacionamentos.

De acordo com Janssens et al. (2000), a estrutura do modelo organizacional é extremamente volátil em razão das constantes mudanças nas regras dos negócios. A evolução dos sistemas torna-se inevitável, uma vez que os processos do negócio modificam-se por causa de reformas organizacionais e mudanças no ambiente externo. Assim, os modelos de negócios influenciam dois fatores responsáveis por mudanças: dados sobre o sistema do negócio e regras do sistema.

Desel & Erwin (2000) elevam a importância dos sistemas de gerenciamento de workflow (SGWF), no atual mercado competitivo, por oferecerem apoio às decisões importantes. Entretanto, para que o sistema seja capaz de conduzir algumas avaliações, deve-se empregar requisitos de formalismo na construção dos modelos, o que reduz significantemente o risco de decisões errôneas em relação ao projeto do modelo de negócios. Os cenários podem ser executados imediatamente para discussão e análise.

Nesse sentido, de acordo com Samilifard & Wright (2000), as redes de Petri têm sido amplamente estudadas e aplicadas com sucesso na área de sistemas dinâmicos de eventos discretos, que são caracterizados por paralelismo e sincronização. Os incentivos que levam a pesquisas nessa área são a forte fundamentação matemática e a disponibilidade de ferramentas de análise.

Modelagem e análise de workflow baseadas em redes de Petri é uma área de pesquisa ativa. Desde que Zisman (1977) usou redes de Petri para modelar workflow pela primeira vez, muitos autores publicaram trabalhos que procuravam integrar os dois assuntos. Entre eles pode-se citar: Cindio et al. (1988), Li et al. (1993), Ferscha (1994), Merz et al. (1995), Schömig & Rau (1995), Ellis & Nutt (1996), Nutt (1996), Wikarski (1996), Oberweis (1997), Aalst (1998), Adam et al. (1998), Badouel & Oliver (1998) e Verbeek et al. (2000).

A ausência de técnicas mais complexas para análise do gerenciamento do workflow, principalmente dos modelos organizacionais, é a principal barreira enfrentada nas pesquisas desenvolvidas até o presente momento. As redes de Petri têm excelente potencial na minimização desses problemas, uma vez que possuem representação gráfica, são de fácil aprendizado, funcionam como linguagem de comunicação entre especialistas de diversas áreas, permitem a descrição dos aspectos estáticos e dinâmicos do sistema a ser representado e ainda usufruem de um formalismo matemático que permite a utilização de diversos métodos de análise.

O presente trabalho tem por objetivos primários oferecer uma visão atualizada do estado da arte na área de modelagem de workflow baseada em redes de Petri e expor um exemplo de modelo de workflow com parâmetros de tempo e custo associados às transições da rede. Como objetivos secundários serão apresentados os conceitos importantes de redes de Petri, workflow e rotas de processos.

O trabalho está estruturado em oito seções, incluindo esta introdução. Na seção 2, apresentam-se conceitos importantes relacionados a redes de Petri. A seção 3 é voltada à apresentação de workflow. Na seção 4, faz-se uma exposição de redes de Petri no contexto de workflow e do estado da arte nessa área de pesquisa. As seções 5 e 6 apresentam, respectivamente, workflow-net e mapeamento dos conceitos de processos de negócio em redes de Petri. A seção 7 apresenta um exemplo da modelagem de workflow utilizando redes de Petri (com parâmetros de tempo de custo). As considerações finais são apresentadas na seção 8.

2. Redes de Petri

A teoria inicial das redes de Petri foi apresentada em 1962, na tese de doutorado Kommunikatin mit Automaten defendida por Carl Adam Petri na Faculdade de Matemática e Física da Universidade de Darmstadt, Alemanha. Como já mencionado neste trabalho, para Peterson (1981), a aplicabilidade das redes de Petri como ferramenta para estudo de sistemas é importante por permitir representação matemática, análise dos modelos e fornecer informações úteis sobre a estrutura e o comportamento dinâmico dos sistemas modelados. Como admitem a introdução de alterações, as aplicações das redes de Petri podem se dar em muitas áreas diferentes (sistemas de manufatura, desenvolvimento de software, sistemas administrativos, etc.).

De acordo com Murata (1989), as redes de Petri são formadas por dois tipos de componentes: a transição, componente ativo correspondente a alguma ação realizada dentro do sistema, e o lugar, passivo e relacionado a alguma variável de estado do sistema. A realização das ações está associada a pré-condições ou condições das variáveis de estado do sistema, isto é, há uma relação entre lugares e transições, a qual possibilita realizar determinada ação. Da mesma forma, após realizar uma ação, as informações de alguns lugares (pós-condições) são alteradas. Graficamente, lugares são representados por círculos e transições, por traços ou barras (Figura 1).


Lugares e transições são vértices do grafo associado às redes de Petri e interligam-se por arcos direcionados. Arcos que ligam lugares a transições representam relações entre condições verdadeiras e possibilitam que, em algum momento, ações sejam executadas dentro do sistema. Arcos que ligam transições a lugares representam relações entre ações e condições que se tornam verdadeiras com a execução das ações.

O disparo das transições (execução das ações) é controlado tanto pelo número de marcas quanto pela distribuição destas nos lugares. Uma transição t está habilitada se, e somente se, todos os lugares de entrada (piÎ P) de t são tais que M (pi) > e I (pi, t); essa regra habilita o disparo de uma transição, mas não o obriga.

Formalmente, a rede de Petri é dada por uma quíntupla, RP = (P, T, F, W, M0), em que (Murata, 1989):

• P = {p1, p2, ..., pm} conjunto finito de lugares;

• T = {t1, t2, ..., tm} conjunto finito de transições;

• F Í (P x T) È (T x P) conjunto de arcos;

• W : F {1, 2, 3, ...} função de pesos;

• Mo : P ® {0,1, 2, 3, ...} marcação inicial;

• P Ç T = Æ e P È T ¹ Æ.

Denota-se por (N, M0) uma rede de Petri com marcação inicial. Atualmente, há muitas extensões de rede de Petri, como: colorida, temporizada, estocástica, virtual (Ferraz et al., 2001; Inamasu, 1995), modular (Inamasu, 1995), entre outras, com finalidade de cobrir algumas deficiências e limitações existentes em tipos de redes inferiores. Uma das grandes vantagens das redes de Petri é a sua flexibilidade e o alto poder de abstração, possibilitando introduzir e adaptar elementos gráficos e/ou matemáticos com a finalidade de aproximar usuários de sistemas mais específicos.

Existe uma série de métodos que permitem analisar um grande número de propriedades de sistemas. As propriedades das redes de Petri podem ser divididas em dois grandes grupos: as comportamentais, que dependem da marcação inicial, e as estruturais, que não dependem.

3. Workflow

Vários trabalhos sobre sistemas de gerenciamento de workflow (SGWF – Workflow Management Systems) estão sendo desenvolvidos. Esse fato trará grande impacto na próxima geração de sistemas de informação (Aalst & Hee, 2002). Na década de 1960, um sistema de informação era composto de certo número de aplicações stand-alone, e para cada uma desenvolvia-se um sistema de base de dados e uma interface. Cada aplicação tinha suas próprias rotinas de interação com o usuário, de armazenamento e de retorno de dados. Nos anos 70, os dados representavam o centro da aplicação, o que levou à criação dos sistemas de gerenciamento de dados (SGD). Nos anos 80, fato similar ocorreu com o gerenciamento da interface para o usuário. O surgimento dos sistemas de gerenciamento de interface do usuário (SGIU) habilitou os criadores de aplicações a melhorar a interação entre elas e os usuários. Os anos 90 foram marcados pelo surgimento de softwares de workflow, o que permitiu incorporar procedimentos de negócio diretamente nas aplicações.

A Figura 2 descreve a composição de um SGWF dividindo-o em duas partes: modelo de negócios (definição dos processos) e módulo de execução dos negócios (representação de serviços do negócio). A primeira é utilizada durante a construção para gerar uma definição computacional de um processo de negócio e fornecer ferramentas gráficas de modelagem, auxiliando o criador durante o projeto, teste e validação do processo. O módulo de execução é composto por um conjunto de programas responsáveis pela criação e controle de exemplos de processos durante a execução e fornece a interface necessária ao cumprimento de passos específicos do processo (Salimifard & Wright, 2001).


Janssens et al. (2000) afirmam que, comparados aos modelos de base de dados, os modelos de workflow têm muito a amadurecer, uma vez que estes necessitam de padrões de modelagem. Há grande necessidade de padrões para modelagem de processos de negócio. Ao investigar sobre o melhor formalismo para servir como possível padrão, é bem provável que o formalismo das redes de Petri, que é o mais bem suportado por ferramentas computacionais, se torne um padrão.

De acordo com Oberweis (1996), processos em aplicações de negócio são coleções de atividades associadas a uma função de negócio particular, na qual as atividades são relacionadas aos objetos, pessoas ou recursos envolvidos. Modelos de processos deveriam incluir uma especificação dos seguintes aspectos:

1. atividades e suas sincronizações;

2. tarefas e recursos determinados para atividades;

3. regras do negócio;

4. tratamento de exceções;

5. aspectos temporais (deadline, durações, etc.).

Os modelos de processos podem ser simulados e analisados para reconhecer e melhorar o processo descrito. Eles podem ser usados, ainda, como base para o planejamento de alocação de recursos. Um sistema de gerenciamento de processos de negócio pode utilizar um modelo para monitorar e controlar o andamento do negócio.

4. Redes de Petri no contexto de workflow

Na modelagem de workflow utilizando redes de Petri, cada tarefa é representada por uma transição correspondente. Lugares representam as pré e pós-condições, ou, ainda, os recursos requeridos para executar determinada tarefa. Os arcos representam relações lógicas entre as tarefas e o próprio fluxo de trabalho (Salimifard & Wright, 2001). A representação gráfica das redes de Petri tem se mostrado muito útil, pois permite a visualização dos processos e a comunicação entre eles. As marcas dos lugares podem ser abstraídas, representando um estado de determinado evento, por exemplo, documento disponível (lugar com marca) ou documento indisponível (lugar sem marca).

De acordo com Holt (2000), as redes de Petri permitem desenhar planos de sistemas gerais caracterizados por alto nível de concorrência. Na estrutura de workflow, tais planos são esboços globais ou parciais da forma específica de realizar alguns tipos de atividades complexas e, principalmente, distribuídas. Essas atividades serão focadas como específicas (planejamento de recursos de vários tipos) ou como controladoras de falhas, custos ou carga de trabalho. Desde que todo o negócio possa ser considerado como sistema que envolve operações complexas e concorrentes (produção, marketing, contabilidade, procedimentos financeiros, negociações, etc.), o uso das redes de Petri em seu planejamento ou análise parece uma idéia natural. Um modelo em rede de Petri da estrutura causal e operacional do workflow pode fornecer forte fundamentação lógica e contexto realístico nas questões de gerenciamento do negócio, o que permite a aplicação de algoritmos provenientes da matemática aplicada, teoria da decisão, teoria de jogos, pesquisa de operação, estatística, etc. A chave do sucesso para implantar esses algoritmos dentro de redes de Petri é a flexibilidade da modelagem de redes do tipo Predicado/Transição.

Aalst & Hee (2002) identificam três razões principais para aplicar redes de Petri na modelagem de workflow: 1. as redes de Petri possuem tanto semântica formal quanto natureza gráfica; 2. elas podem modelar explicitamente estados do sistema; e 3. há variedade e disponibilidade de técnicas de análise.

Oberweis et al. (1997) identificam outros motivos para optar pelo uso de redes de Petri nesse contexto: 1. integração de dados e aspectos comportamentais; 2. apoio concorrente e corporativo; 3. níveis diferentes de formalidade; 4. disponibilidade de técnicas de análise; e 5. flexibilidade.

Resumindo, a principal vantagem de empregar redes de Petri na modelagem de workflow é a combinação de fundamentação matemática, representação gráfica compreensiva e possibilidade de simulações e verificações (Merz et al., 1995).

Não há unanimidade sobre quais classes de redes de Petri, entre as de alto e baixo nível, adaptam-se melhor às necessidades específicas da modelagem de workflow. Entretanto, um comentário interessante é que, caso inexista algum sistema de gerenciamento (ou alguma ferramenta computacional baseada neste sistema), o bom formalismo das redes de Petri torna-se desvalorizado neste tipo de modelagem. A utilidade de ferramentas computacionais adequadas é um fator importante no uso prático das redes de alto nível e métodos de análise relacionados (Janssens et al., 2000).

De acordo com Voorhoeve (2000), processos simples de workflow podem ser modelados diretamente como sistemas de transição. Entretanto, modelar processos mais avançados (com muitos paralelismos) torna-se difícil em razão do grande número de estados. Redes de Petri permitem representação mais concisa e natural dos processos. A idéia básica é que a tarefa pode ocorrer quando estão presentes certos objetos como materiais, recursos ou permissões. Quando a tarefa inicia, esses objetos são consumidos e, no final, novos objetos são produzidos para possibilitar que novas tarefas iniciem. Em Voorhoeve (2000), são tratadas algumas combinações de redes de Petri e álgebra de processo.

5. Workflow-net

Workflow-net é uma rede de Petri que representa um processo de workflow. A workflow-net tem apenas um lugar fonte (source) e um absorção (sink). Todo nodo é um caminho do lugar fonte para o lugar absorção. Soundness é um critério de verificação de correção definido para workflow-nets. Uma workflow-net é sound se, em qualquer caso, o procedimento termina com uma marca no lugar absorção e com todos os outros lugares vazios. Além disso, não deve haver nenhuma transição dead (morta) e todas as tarefas devem ser passíveis de serem executadas por meio de rota apropriada (Aalst & Hee, 2002).

As características de processos de negócio baseados em redes de Petri são mais proeminentes nas fases de projeto e análise. Seis tipos primitivos de processos de negócio identificados pela Workflow Management Coalition podem ser mapeados dentro de redes de Petri (Figura 3), em que:

• Tarefas são mapeadas em transições e relações causais são representadas no modelo por lugares.

• A transição t1 representa, no modelo, a sincronização de dois subfluxos (AND-join).

• Transições t21 e t22 representam um OR-join: dois subfluxos unidos em um subfluxo.

• A transição t3 representa um AND-split: um subfluxo dividido em dois subfluxos paralelos.

• Transições t41 e t42 representam um OR-split: uma seleção apresentada entre duas alternativas branches.

• A iteração pode ser representada pela adição de uma transição de feedback (t52).

• A conecção de duas transições (t61 e t62) por meio de um lugar intermediário resulta em duas tarefas seqüenciais.


A tarefa primária do sistema de gerenciamento de processos de negócio é representar tais processos direcionados a determinados casos por meio da junção de várias perspectivas. Na modelagem e execução de processos de negócio são relevantes as seguintes perspectivas:

• Fluxo de controle ou processo: perspectivas na qual são criadas as definições dos processos para especificar quais tarefas precisam ser executadas e em que ordem.

• Recurso: engloba desde recursos humanos até aparelhos e representa as especificações da estrutura organizacional.

• Dados: trata do controle (introdução de dados com propósito único de gerenciar processos) e produção dos dados; o controle é freqüentemente usado para rotear decisões em OR-split (Figura 3).

• Tarefas: descreve o conteúdo dos passos de um processo (características de cada tarefa); unidade lógica de trabalho com características como conjuntos de operações que precisam ser realizadas, descrição, duração esperada, prioridades, disparador (tempo, recurso, mensagem) e classes de recursos requeridas (tarefas e unidades organizacionais).

• Operação: descreve ações elementares; uma tarefa pode envolver muitas operações, que são executadas por aplicações que empregam desde editores de texto até aplicações construídas para realizar cálculos complexos; tais aplicações criam, lêem ou modificam o controle e a produção de dados na perspectiva destes.

A perspectiva do processo é muito importante, uma vez que o núcleo de qualquer sistema de informação é essencialmente formado por processos. Aalst & Hee (2002) explicam que, na dimensão de fluxo de controle, a construção de blocos AND-split, AND-join, OR-split e OR-join serve para modelar rotas seqüenciais, condicionais, paralelas e interativas. Uma rede de Petri pode ser utilizada para especificar claramente os casos de rotas, assumindo que: 1. um AND-split corresponde a transições com dois ou mais lugares de saída; 2. um AND-join corresponde a lugares com múltiplos arcos de entrada; e 3. OR-split e OR-join correspondem a lugares com múltiplos arcos de entrada e saída.

6. Mapeamento dos conceitos de processos de negócio em redes de Petri

A utilização de um processo em sistema de gerenciamento de processos de negócio indica a necessidade de gerenciamento em alguma categoria particular. Tal processo define quais tarefas precisam ser executadas. A existência de informações sobre as tarefas a serem realizadas e sobre as condições dos processos é importante. Dessa forma, define-se a ordem na qual as tarefas precisam ser executadas. Um grande processo pode consistir em subprocessos, tarefas e condições.

Um determinado estado do sistema pode levar à execução de um processo (disparo de uma transição) que, muitas vezes, depende da disponibilidade de uma pessoa. As condições têm duas funções importantes: assegurar que as tarefas procedam na ordem correta e verificar se o estado do caso pode ser estabelecido.

Aalst & Hee (2002) apresentam um exemplo de especificação do processo de gerenciamento de reclamações usando redes de Petri. A entrada da primeira reclamação é registrada e o cliente que reclamou e o departamento afetado pela reclamação são informados. O departamento, informado da reclamação, pode ser questionado e o cliente é consultado para fornecer mais informações. Essas duas tarefas podem acontecer simultaneamente (em paralelo) ou, ainda, em qualquer ordem. Depois, os dados são reunidos e a decisão, que pode ser um pagamento ou o envio de uma carta, é tomada. A Figura 4 mostra como representar esse processo com redes de Petri.


Cada uma das tarefas (registrar, informar cliente, informar departamento, pagar e arquivar) é modelada utilizando uma transição. A modelagem da avaliação da reclamação utiliza duas transições, positiva e negativa, que correspondem, respectivamente, a uma decisão positiva e outra negativa. Os lugares início e fim correspondem ao início e ao fim do processo. Os outros lugares correspondem às condições. Estas asseguram que as tarefas prossigam na ordem correta e que o estado do caso possa ser estabelecido. O lugar c8, por exemplo, assegura que a reclamação seja arquivada apenas quando estiver completamente resolvida.

Os casos são ilustrados por meio de marcas; um caso pode ser representado por uma ou mais marcas. Na Figura 4, a marca no lugar início mostra a presença de um caso. Assim que a transição Registrar disparar haverá uma marca em c1 e outra em c2, que representam o mesmo caso. O número de marcas que haverá em determinado caso é igual ao número de condições satisfeitas. Quando houver marca no lugar fim, o caso foi finalizado. Em princípio, cada processo deveria obedecer dois requisitos: 1. ser possível de realizar por meio da execução das tarefas; e 2. todas as marcas devem desaparecer para que surja uma marca no fim.

Esses dois requisitos asseguram que cada caso começado no lugar início será corretamente encerrado. Caso haja tarefas a serem terminadas, não é possível que exista uma marca no lugar fim.

O estado de um caso não é determinado somente pelas condições que devem ser satisfeitas, pois esse pode ter um ou mais atributos, o que torna interessante a aplicação da extensão colorida de rede de Petri, em que as marcas podem ser diferenciadas para cada atributo do caso em questão.

Marcas correspondentes a casos particulares são mantidas estritamente separadas pelo sistema. É possível identificar as marcas dentro do modelo em rede de Petri de duas formas: pela produção de cópias separadas da rede para cada caso ou pelo uso de rede de Petri colorida. Na última opção, cada marca possui um valor característico, o que torna possível a identificação do caso ao qual a marca se refere (Figura 5).


A Figura 5 ilustra a existência de cinco casos em progresso no modelo. Para assegurar que as propriedades das marcas de diferentes casos não se confundam, cada transição possui uma pré-condição de que apenas marcas de um mesmo caso podem ser consumidas em qualquer disparo. Se a transição Coletar da Figura 5 disparar, sua pré-condição assegura que duas marcas para o caso 3 serão consumidas.

A construção das rotas dos processos é determinada pela necessidade do negócio. Algumas tarefas podem ser opcionais, logo, a ordem em que estas são realizadas variam de um caso para outro. Há quatro construções básicas, cada uma apresenta uma correspondência em redes de Petri:

I. Seqüencial: referenciada quando as tarefas devem ser executadas uma após a outra; se duas tarefas precisam ser executadas seqüencialmente, elas são interdependentes, ou seja, a realização da primeira é requerida para que a segunda possa ocorrer; em rede de Petri modela-se esta forma de rota com o uso de um lugar para fazer a ligação de duas tarefas.

II. Paralela: quando mais de uma tarefa pode ser executada ao mesmo tempo ou em qualquer ordem; a situação com duas tarefas paralelas pode acontecer de três formas diferentes:

i. ambas podem ser realizadas simultaneamente;

ii. a tarefa 1 pode ser executada primeiro e em seguida a tarefa 2;

iii. a tarefa 2 pode ser executada primeiro que a tarefa 1.

III. Seletiva: o processo determina a rota para um tipo de caso específico, mas pode haver diferenças de rotas entre casos individuais; a escolha entre duas alternativas é não-determinística, isto é, não é possível identificar como a escolha entre a tarefa 1 e a 2 é feita, uma vez que não importa qual tarefa é realizada. Entretanto, em muitos casos, a seleção é feita de acordo com propriedades específicas do caso.

IV. Repetitiva ou iterativa: execução repetida de uma tarefa particular; é preferível que uma tarefa ocorra apenas uma vez por caso, porém, na maioria das vezes é necessário aplicar essa rota.

7. Exemplo da modelagem de workflow utilizando redes de Petri (com parâmetros de tempo e custos)

Salimifard & Wright (2001) apresentam um exemplo da aplicação de redes de Petri na modelagem de workflow. O processo é de uma companhia de seguros e consiste em cinco tarefas: submissão de pedido, checagem do seguro, contato com a garagem, envio de carta (resposta negativa ao pedido) e pagamento do dano (resposta positiva). O modelo em rede de Petri desse processo de negócio é apresentado na Figura 6.


No modelo, cada tarefa do processo está representada por uma transição e assume-se que duas transições (t3 e t4) podem disparar simultaneamente. Em contrapartida, existem duas transições (t2 e t5) que representam execuções de tarefas paralelas.

As tarefas checar seguro e contatar garagem (habilitadas após o disparo de t2) são independentes e podem ocorrer conjuntamente. Por outro lado, as tarefas que vêm a seguir (pagamento do dano e envio de carta) são mutuamente exclusivas.

Partindo da marcação inicial da rede pode-se obter a árvore de alcançabilidade (Figura 7) com todas as possíveis marcações, que pode ser utilizada como base para o estudo das propriedades dependentes de marcação inicial do modelo como, por exemplo, se ele é seguro, livre de travamentos, limitado, etc. A validação, tarefa importante na modelagem, pode ser obtida com embasamento na formalidade matemática da rede de Petri.


A marcação destacada (pontilhada) na Figura 7 refere-se ao disparo de uma transição-atividade, no caso, a transição Checar seguro. O disparo dessa transição provocaria o aparecimento da subárvore de alcançabilidade relacionada a uma sub-rede interna à transição-atividade. O disparo da transição Finalizar verificação resulta na criação de uma marca no lugar Situação de apólice verificada, isto é, resulta na marcação destacada (Figura 6).

Por meio da análise da árvore também é possível verificar algumas propriedades do sistema, importantes na previsão de seu desempenho. Por exemplo, a rede alcança uma marcação final, que é 1-limitada (o número de marcas de cada lugar é limitado em 1) e, conseqüentemente, é segura. A segurança de uma rede de Petri está relacionada a ausências de situações que possam levar ao travamento do sistema. As transições possuem vivacidade do tipo L1, isto é, podem disparar pelo menos uma vez durante a evolução da rede.

No fim do processo temos que tempo total é igual à soma de todos os fatores de tempo e custo total é igual à soma de todos os fatores de custo. Nas transições, os fatores de tempo e custo são apresentados como porcentagens do custo total.

No workflow, o parâmetro de tempo (e, igualmente, o de custo) é consumido entre as transições de disparo. Na abordagem comum, esse consumo ocorre entre os disparos. A diferença ocorre, justamente, por causa da transição da atividade e da utilização de lugares internos. Estudos sobre o parâmetro de custos e redes de Petri podem ser encontrados em Silva (2000).

Por meio da árvore de alcançabilidade é possível verificar vários erros que podem ocorrer na definição de processo, mesmo sem conhecimento específico do processo de negócio. Para saber se o processo corresponde a uma workflow-net é necessário verificar a estrutura do processo checando os três requisitos de soundness (apresentados no item workflow-net) por meio da árvore de alcançabilidade, iniciando com apenas uma marca no lugar início.

Para checar o último requisito, é necessário verificar se para cada tarefa existe um estado correspondente na árvore de alcançabilidade. Os dois primeiros requisitos são checados confirmando se no grafo de alcançabilidade há apenas um estado final e que ao final do caso deve existir apenas uma marca no lugar fim.

8. Considerações finais

8.1 Limitações do trabalho

O foco principal deste trabalho é a análise de uma ferramenta específica, a rede de Petri, na abordagem da análise de processos de negócios. Dentro desse mesmo enfoque, há outras ferramentas estudadas por outros autores, entre elas: Business Process Reengineering (BPR), sistemas Enterprise Resource Planning (ERP) (Langner et al.,1998) e Management Systems Workflow (WFM) (Lawrense, 1997; Aalst & Hee, 2002; Aalst, 1999). Uma análise comparativa do potencial de aplicação para essa abordagem específica, entre as ferramentas citadas, não foi realizada neste artigo nem encontrada na literatura pesquisada. Apenas foram encontradas comparações pontuais entre redes de Petri e UML em Aalst & Hee (2002).

8.2 Conclusões

A tecnologia de gerenciamento de negócios vem ganhando popularidade rapidamente nas atividades de suporte aos SGWF, mas deve-se considerar que a análise compreensiva do processo, antes de sua implementação real, é necessária para garantir sua eficiência. Os modelos de processos de negócios precisam ser corretos, pois os problemas resultantes de erros no projeto, além de serem difíceis de encontrar, apresentam altos custos em sua correção.

A simplicidade da rede de Petri proporciona participação efetiva dos diferentes especialistas envolvidos e possibilita troca de informações padronizadas entre eles nas diferentes fases do projeto. Outra vantagem é o formalismo que torna a rede de Petri uma poderosa técnica de modelagem na representação dos processos, permitindo a exibição de concorrência, paralelismo, sincronização, não-determinismo e exclusão mútua.

A grande conveniência em utilizar redes de Petri na modelagem de processos de negócios, entretanto, é a possibilidade de um rastreamento minucioso e não-ambíguo de cada etapa da operação.

Além disso, redes de Petri possibilitam uma representação matemática formal e disponibilizam mecanismos de análise que tornam possíveis verificar a correção do modelo e checar suas propriedades. A deficiência na apresentação visual, que antes poderia ser considerada uma desvantagem no uso da técnica, atualmente está ultrapassada, uma vez que apresentam ambientes e interfaces amigáveis para criação e edição das redes de Petri.

9. Agradecimentos

Os autores deste trabalho agradecem especialmente à EMBRAPA, CAPES e FIPAI.

Recebido 28/10/2002

Aceito 23/12/2003

  • AALST, W. M. P. van der. The Aplication of petri nets to workflow management. The Journal of Circuits, Systems and Computers, v. 8, n. 1, p. 1-53, 1998.
  • AALST, W. M. P. van der et al. Advanced workflow patterns. In: INTERNATIONAL CONFERENCE ON COOPERATIVE INFORMATION SYSTEMS, 7., Eilat, Israel. Proceedings.. Disponível em: <http://citeseer.nj.nec.com/vanderaalst00advanced.html>. Acesso em: 1 Oct. 2002.
  • AALST, W. V. P. van der; HEE, V. K. Workflow management: models, methods and systems. Cambridge: MIT Press, 2002.
  • ADAM, N. R.; ATLURI, V.; HUANG, W. K. Modeling and analysis of workflows using petri nets. Journal of Intelligent Information Systems, v. 10, n. 2, p. 1-29, 1998. Special Issue on Workflow and Process Management.
  • BADOUEL, E.; OLIVER, J. Reconfigurable nets, a class of high level petri nets supporting dynamic changes within workflow systems Publication Interne IRISA PI 1163, 1998.
  • CINDIO, F. et al. CHAOS: a knowledge-based system for conversing within offices, office knowledge representation, management and utilization. Lamersdorf: W.Elsevier Science/B.V. North-Holland, 1988. p. 257-275.
  • DESEL, J.; ERWIN, T. Modeling simulation and analysis of business process. In: AALST, V. D. W.; DESEL, J.; OBERWEIS, A. Business process management: models, techniques, and empirical studies. Berlin: Springer, 2000. (Lectures Notes in Computer Sciences, 1806).
  • ELLIS, C. A.; NUTT, G. J. Workflow: the process spectrum. In: NSF WORKSHOP ON WORKFLOW AND PROCESS AUTOMATION IN INFORMATION SYSTEM: state-of-the-art and future directions, Athens, Georgia, May. Proceedings.. Georgia, 1996. p. 140-145. Disponível em: <http://lsdis.cs.uga. edu/activities/NSF-workflow/>. Acesso em: 1 Oct. 2002.
  • FERRAZ, P.; INAMASU, R.Y.; PORTO, A. J. V. Modelo de implementação de um template para Rede de Petri Virtual aplicada a sistemas de manufatura automatizados. In: CONGRESSO NACIONAL DE ENGENHARIA MECÂNICA, 16., v. 14, p. 567-574, nov. 2001. CD-ROM.
  • FERSCHA, A. Qualitative and quantitative analysis of business workflows using generalized stochastic petri nets. In: WORKFLOW MANAGEMENT challenges, paradigms and products, Linz, 1994. Proceedings.. Oldenbourg Verlag. p. 222-234.
  • HOLT, A. P. Management-oriented models of business process. In: AALST, V. D. W.; DESEL, J.; OBERWEIS, A. Business process management: models, techniques, and empirical studies. Berlin: Springer-Verlag, 2000. (Lectures Notes in Computer Sciences, 1806).
  • INAMASU, R. Y. Modelo de FMS: uma plataforma para simulação e planejamento. 1995. 134 p. Tese (Doutorado) Escola de Engenharia de São Carlos, Universidade de São Paulo, São Carlos.
  • JANSSENS, G. K.; VERELST, J.; WEYN, B. Techniques for modeling workflows their support of reuse. In: AALST, V. D. W.; DESEL, J.; OBERWEIS, A. Business process management: models, techniques, and empirical studies. Berlin: Springer-Verlag, 2000. (Lectures Notes in Computer Sciences, 1806).
  • LANGNER, P.; SCHNEIDER, C.; WEHLER, J. Petri net based certification of event driven process chains. In: DESEL, J.; SILVA, M. Application and theory of Petri nets, Berlin: Springer-Verlag, 1998 (Lectures Notes in Computer Sciences, 1420).
  • LAWRENCE, P. Workflow handbook 1997. Workflow Management Coalition Wiley, New York, 1997.
  • LEYMANN, F.; ROLLER, D. Workflow-based aplications. IBM Systems Journal, v. 36, n. 1, 1997. Disponível em: http://researchweb.watson.ibm.com/ journal/sj/361/leymann.html Acesso em: 1 Oct. 2002.
  • LI, J. et al. MAS: a declarative formalism for hierarchical representation of procedural knowledge. IEEE Transaction on Knowledge and Data Engineering, v. 6, n. 4, p. 639-643, 1994.
  • MERZ, M. et al. Workflow modeling and execution with coloured petri net in COSM. In: WORKSHOP ON APPLICATIONS OF PETRI NET TO PROTOCOLS WITHIN THE INTERNATIONAL CONFERENCE ON APPLICATION AND THEORY OF PETRI NET, 16., Turin: Italy, June 26-30. Proceedings.. Lecture Notes in Computer Science 935 Springer 1995, ISBN 3-540-60029-9, 1995. p. 1-12.
  • MURATA, T. Petri net: properties, analysis and applications. Proceedings of the IEEE, v. 77, n. 4, p. 541-579, 1989.
  • NUTT, G. J. The evolution towards Flexible Workflow Systems, Distributed Systems Engineering, v. 3, n. 4 , p. 276-294, 1996.
  • OBERWEIS, A. An integrated approach fot the specification of process and related complex structured objects in business application. Decision Support Systems, v. 17, p. 31-53, 1996.
  • OBERWEIS, A. et al. INCOME/WF A Petri-net based aproach to workflow management. In: KRALLMANN, H. (Ed.). Wirtschaftsinformatik'97 Springer-Verlag, 1997. p. 557-580.
  • PETERSON, J. L. Petri nets: theory and modelling of systems. Englewood Cliffs: Prentice-Hall, 1981.
  • SALIMIFARD, S.; WRIGHT, M. Petri net based modelling of workflow systems: an overview. European Journal of Operational Research, v. 134, p. 664-676, 2001.
  • SCHÖMIG, A. K.; RAU, H. A Petri net approach for the performance analysis of business processes University of Würzburg. Report n. 116 Seminar at IBFI, Schloss Dagstuhl, May 22-26, 1995.
  • SILVA, A. R. Y. da. Modelagem de custos em sistemas de manufatura utilizando redes de Petri 2002. 95 p. Dissertação (Mestrado) Escola de Engenharia de São Carlos, Universidade de São Paulo, São Carlos.
  • VERBEEK, H. M. W.; BASTEN, T.; AALST, W. M. P. Diagnosing workflow using woflan Eindhoven: Eindhoven University of Technology, 2000. BETA Working Paper Series, WP 48.
  • VOORHOEVE, M. Compositional modeling and verification of workflow process. In: AALST, V. D. W.; DESEL, J.; OBERWEIS, A. Business process management: models, techniques, and empirical studies. Berlin: Springer-Verlag, 2000. (Lectures Notes in Computer Sciences, 1806).
  • WIKARSKI, D. An Introduction to modular process net Berkeley: International Computer Science Institute. Technical Report TR-96-019, 1996.
  • ZISMAN, M. D. Representation, specification and automation of office procedures. 1977. Tese (Doutorado) University of Pensylvania Wharton School of Business, Pensylvania.

Datas de Publicação

  • Publicação nesta coleção
    02 Ago 2004
  • Data do Fascículo
    Abr 2004

Histórico

  • Aceito
    23 Dez 2003
  • Recebido
    28 Out 2002
Universidade Federal de São Carlos Departamento de Engenharia de Produção , Caixa Postal 676 , 13.565-905 São Carlos SP Brazil, Tel.: +55 16 3351 8471 - São Carlos - SP - Brazil
E-mail: gp@dep.ufscar.br