Padrões de Workflow para Reuso em Modelagem de Processos de Negócio



Documentos relacionados
Padrões de Workflow para Reuso em Modelagem de Processos de Negócio

Engenharia de Requisitos Estudo de Caso

Gerenciamento de Riscos do Projeto Eventos Adversos

Um Simulador para Avaliação da Antecipação de Tarefas em Sistemas Gerenciadores de Workflow

BPMN (Business Process. George Valença

2 Diagrama de Caso de Uso

FACULDADE DE ENGENHARIA DE COMPUTAÇÃO. PROJETO FINAL I e II PLANO DE TRABALHO <NOME DO TRABALHO> <Nome do Aluno> <Nome do Orientador>

Modelos de Sistema by Pearson Education. Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 8 Slide 1.

IMPLEMENTAÇÃO DAS CAMADAS Inference Machine e Message Service Element PARA UM SERVIDOR DE SISTEMA DE GERENCIAMENTO DE Workflow HOSPITALAR

Workflow: Adicionando Coordenação das Atividades. Fábio Bezerra

Conteúdo. Disciplina: INF Engenharia de Software. Monalessa Perini Barcellos. Centro Tecnológico. Universidade Federal do Espírito Santo

INTRODUÇÃO A MODELAGEM DE PROCESSOS UTILIZANDO BPMN 1 FÁBIO RODRIGUES CRUZ CONCEITO DE MODELAGEM DE PROCESSOS UTILIZANDO BPMN

ESTENDENDO A UML PARA REPRESENTAR RESTRIÇÕES DE INTEGRIDADE

Análise e Projeto Orientados por Objetos

O que é a UML? Introdução a UML. Objetivos da Modelagem. Modelos. A UML não é. Princípios da Modelagem. O que é um modelo?

Glossário Apresenta a definição dos termos, siglas e abreviações utilizadas no contexto do projeto Citsmart.

CHECK - LIST - ISO 9001:2000

Universidade Federal de Pernambuco

Sistemas de Informação I

Engenharia de Software III

Gerenciamento de Problemas

MRP II. Planejamento e Controle da Produção 3 professor Muris Lage Junior

TRABALHO DE DIPLOMAÇÃO Regime Modular ORIENTAÇÕES SOBRE O ROTEIRO DO PROJETO FINAL DE SISTEMAS DE INFORMAÇÕES

5 Estudo de caso: utilizando o sistema para requisição de material

Sistema de Controle de Solicitação de Desenvolvimento

A Linguagem de Modelagem Unificada (UML)

DECLARAÇÃO DE POSICIONAMENTO DO IIA: O PAPEL DA AUDITORIA INTERNA

Diagrama de Classes. Um diagrama de classes descreve a visão estática do sistema em termos de classes e relacionamentos entre as classes.

2 Conceitos relativos a Web services e sua composição

UML - Unified Modeling Language

ARCO - Associação Recreativa dos Correios. Sistema para Gerenciamento de Associações Recreativas Plano de Desenvolvimento de Software Versão <1.

21/03/2012. WorkFlow. Gestão Eletrônica de Documentos. Workflow HISTÓRICO

Resolução da lista de exercícios de casos de uso

Pós-Graduação em Gerenciamento de Projetos práticas do PMI

UML 2. Guia Prático. Gilleanes T.A. Guedes. Novatec. Obra revisada e ampliada a partir do título Guia de Consulta Rápida UML 2

Instituto de Computação, Universidade Federal do Amazonas (UFAM) Manaus-AM, Brasil

UNIVERSIDADE FEDERAL DO PARANÁ UFPR Bacharelado em Ciência da Computação

Requisitos de Software

Seção 2/E Monitoramento, Avaliação e Aprendizagem

F.1 Gerenciamento da integração do projeto

ISO/IEC 12207: Gerência de Configuração

Material de Apoio. Sistema de Informação Gerencial (SIG)

Prof. Raul Sidnei Wazlawick UFSC-CTC-INE. Fonte: Análise e Projeto de Sistemas de Informação Orientados a Objetos, 2ª Edição, Elsevier, 2010.

Tópicos em Engenharia de Software (Optativa III) AULA 2. Prof. Andrêza Leite (81 )

PLANEJAMENTO E PROJETOS. Lílian Simão Oliveira

1.6. Tratamento de Exceções

Universidade Federal de Santa Maria Curso de Arquivologia. Disciplina de Banco de Dados Aplicados à Arquivística. Versao 1.

Definição de Processos de Workflow

Quadro de consulta (solicitação do mestre)

Gestão inteligente de documentos eletrônicos

BPMN Business Process Modeling Notation

ADMINISTRAÇÃO GERAL GESTÃO DE PROCESSOS

Para construção dos modelos físicos, será estudado o modelo Relacional como originalmente proposto por Codd.

Gestão de Projetos. Introdução ao PMBOK. Hermano Perrelli de Moura

Engenharia de Requisitos

CÓPIA NÃO CONTROLADA. DOCUMENTO CONTROLADO APENAS EM FORMATO ELETRÔNICO. PSQ PROCEDIMENTO DO SISTEMA DA QUALIDADE

Notas de Aula 04: Casos de uso de um sistema

Processos de gerenciamento de projetos em um projeto

ENGENHARIA DE SOFTWARE I

Fase 1: Engenharia de Produto

AUTOR: DAVID DE MIRANDA RODRIGUES CONTATO: CURSO FIC DE PROGRAMADOR WEB VERSÃO: 1.0

Desenvolvendo uma Arquitetura de Componentes Orientada a Serviço SCA

UNIVERSIDADE FEDERAL DE SANTA CATARINA

PMI-SP PMI-SC PMI-RS PMI PMI-PR PMI-PE

Módulo 4: Gerenciamento de Dados

Sistema de Help Desk e Controle de Chamados Baseado em Workflow. Cristian Paulo Prigol Marcel Hugo

Resumo das Interpretações Oficiais do TC 176 / ISO

Planejamento da disciplina: Modelagem de processos de negócio

Banco de Dados I. Apresentação (mini-currículo) Conceitos. Disciplina Banco de Dados. Cont... Cont... Edson Thizon

Engenharia de Software: Introdução. Mestrado em Ciência da Computação 2008 Profa. Itana Gimenes

Roteiro 2 Conceitos Gerais

Mapeamento de Processos

O Processo de Engenharia de Requisitos

PRINCÍPIOS DE SISTEMAS DE INFORMAÇÃO MÓDULO 17

Análise qualitativa do processo de workflow da ouvidoria do IFMG campus Bambuí: um estudo de caso

Metodologia e Gerenciamento do Projeto na Fábrica de Software v.2

PMI-SP PMI-SC PMI-RS PMI PMI-PR PMI-PE

pacotes de software na forma em que são É importante salientar que não é objetivo do software, suas atividades e produtos

MASTER IN PROJECT MANAGEMENT

SE Incident Gestão de Incidentes e Não Conformidades Visão Geral Incidentes de TI Não conformidade da Qualidade

Introdução à Engenharia de Software

Desenvolvimento de uma Etapa

Universidade Federal do Espírito Santo Centro Tecnológico Departamento de Informática Programa de Pós-Graduação em Informática

Análise e Projeto Orientado a Objetos. Modelagem de Domínio

norma técnica Padrão de Segurança e Saúde: avaliação do desempenho em segurança e saúde das empresas colaboradoras Código: NT GN-SP.

Introdução a UML. Hélder Antero Amaral Nunes haanunes@gmail.com

SUMÁRIO Acesso ao sistema... 2 Atendente... 3

Guia de utilização da notação BPMN

Manual Geral do OASIS

Histórico da Revisão. Data Versão Descrição Autor

Service Desk. IT Management Software. Certified Partner

Ricardo Roberto de Lima UNIPÊ APS-I. Históricos e Modelagem Orientada a Objetos

INSTRUÇÃO DE TRABALHO PARA INFORMAÇÕES GERENCIAIS

Universidade Paulista

Requisitos de Software

Projeto de Sistemas I

Transcrição:

THOM, L.H.; CHIAO, C.; IOCHPE, C. Padrões de Workflow para Reuso em Modelagem de Processos de Negócio. Em: Conferência Latino Americana em Linguagens de Programação, SugarloafPlop, Porto de Galinhas (Brasil): v.6 (aceito para publicação to appear). Padrões de Workflow para Reuso em Modelagem de Processos de Negócio Lucinéia Heloisa Thom 1, Cirano Iochpe 1,2, Carolina Chiao 1 1 Instituto de Informática Universidade Federal do Rio Grande do Sul (UFRGS) Caixa Postal 15.064 91.501-970 Porto Alegre RS Brasil 2 Empresa de Tecnologia da Informação e Comunicação de Porto Alegre (PROCEMPA) Av. Ipiranga, 1200 Porto Alegre CEP 90160-091 RS Brasil {lucineia,cchiao,ciochpe}@inf.ufrgs.br Abstract. For its reuse advantages, workflow s are increasingly attracting the interest of both researchers and vendors. However, s based on recurrent functions frequently found in business processes have not been extensively explored. This paper presents and classifies a set of workflow s where each represents a recurrent business function. The mining of 190 workflow processes of more than 10 different organizations has evidenced the existence of most of the workflow s with high support in the workflow processes analyzed. Moreover, it became clear through this study that the set of s is both necessary and enough to design all 190 processes that were investigated. Resumo. Devido às suas potenciais vantagens, padrões de workflow têm atraído a atenção de pesquisadores e da indústria de software. Porém, padrões com base em funções lógicas recorrentes em processos de negócio têm sido pouco explorados. Neste artigo são apresentados e classificados um conjunto de padrões de workflow para modelagem de processos. Cada padrão representa uma função recorrente em processos de negócio. Através da mineração de 190 processos de workflow de mais de 10 organizações diferentes pode-se constatar que a maioria dos padrões existem com alta probabilidade de reuso nos processos de workflow analisados. Além disso, o estudo mostrou que o conjunto de padrões é suficiente e necessário para modelar todos os 190 processos investigados. 1. Introdução Um processo de negócio compreende o conjunto de um ou mais procedimentos ou atividades relacionadas, as quais, coletivamente, realizam um objetivo de negócio no contexto de uma estrutura organizacional [WfMC 1999]. Portanto, é através da execução dos processos de negócio que as organizações realizam seus propósitos. Nos últimos anos, para se manterem competitivas, muitas organizações têm explorado técnicas da abordagem de gestão por processos. Tal abordagem recebeu impulso adicional através da norma ISO 9001:2000, a qual define que a organização deve ser retratada por

seus processos de negócio principais e não pelo seu organograma [ISO 2007]. A gestão por processos associada à tecnologia de workflow pode trazer diversos benefícios à organização, tais como: (a) descrição precisa e não ambígua dos processos de negócio existentes; (b) melhoria na definição de novos processos; (c) maior eficácia na coordenação do trabalho entre diferentes agentes; (d) obtenção, em tempo real, de informações precisas sobre o andamento dos processos e; (e) padronização dos processos executados, de forma manual ou automatizada, pela organização. A tecnologia de workflow, através da automatização dos processos de negócio executados na organização, proporciona não apenas a redução de custos, tempo, erros e redundância na execução dos processos, mas também maior controle sobre eles, o que leva ao incremento da qualidade dos processos, de seus resultados e da organização como um todo. Devido a estes e outros fatores é crescente o interesse acadêmico e científico por sistemas de workflow e pelo gerenciamento de processos de negócio (BPM) [Aalst 2002], [Thom 2006a], [WMC 2005]. Processos de negócio e respectivos modelos de workflow freqüentemente incluem uma variedade de fragmentos, os quais podem ser entendidos como atividades de bloco com semântica específica e bem definida. Em particular, um fragmento (ou função recorrente em processo de negócio) pode ocorrer diversas vezes em uma mesma definição de processo [Thom 2006a], [Thom 2006b]. Durante a execução do processo, por sua vez, diferentes cópias de um mesmo fragmento podem apresentar tanto os mesmos valores de parâmetros como valores diferentes. Como exemplo, considere o processo de aprovação de empenho de verbas de uma organização do setor varejista na Figura 1. O processo inclui a seguinte ordem parcial de atividades: a) necessita aprovação complementar; b) avalia empenho de verbas e; c) avisa administrador sobre atraso. Este processo contém fragmentos relacionados a funções recorrentes de processos (ou padrões) tais como decisão (atividades a), aprovação (atividade b) e notificação (atividade c). Figura 1. Exemplo de processo de aprovação Embora estes fragmentos possam ser semanticamente caracterizados de maneira precisa, existem poucos estudos relacionando-os com padrões de workflow [Bradshaw 2005]. Geralmente, eles são redesenhados para todas as aplicações de workflow. Tal procedimento pode ser considerado ineficiente, passível de erros sob a perspectiva de manutenção. Também não foram encontradas pesquisas evidenciando a existência destes padrões em aplicações reais de workflow, assim como a necessidade e completude destes para a etapa

de modelagem [Flores 1988], [Medina-Mora 1992], [Malone 2004], (Muehlen 2002], [Bradshaw 2005]. Mais ainda, as ferramentas contemporâneas para modelagem de workflow não provêm funcionalidades para definição, consulta e reuso de padrões. Este artigo propõe um conjunto de padrões de workflow. Cada padrão representa uma função recorrente em processo de negócio (tais como as ilustradas na Figura 1). Além disso, são apresentados os principais resultados de um estudo de caso, onde 190 processos de workflow executados em diferentes organizações foram minerados. O principal objetivo da mineração foi medir a freqüência com que cada padrão de workflow ocorre no conjunto de processos investigados. Isso foi feito para evidenciar a existência e a probabilidade de reuso dos padrões em processos de workflow reais. O restante deste artigo está organizado como segue: A Seção 2 revisa os principais trabalhos existentes na área de padrões de workflow, comparando-os com a abordagem sendo proposta neste artigo. A Seção 3 descreve os principais tipos de processos de negócio encontrados na literatura. Com base nesta descrição, a Seção 4 apresenta um conjunto de padrões de workflow para modelagem de processos de negócio e workflow. Na Seção 5 são os principais resultados do estudo de caso realizado com o objetivo de evidenciar a existência e completude dos padrões de workflow para modelagem de processos. Nesta Seção, ainda são ilustrados usos conhecidos dos padrões. A Seção 6 conclui o artigo e apresenta perspectivas de trabalhos futuros. 2. Trabalhos Correlatos Devido as suas potenciais vantagens, padrões de workflow têm atraído a atenção de pesquisadores e da indústria de software. Nós últimos anos, diversas abordagens têm sido propostas. Em [Aalst 2002] são descritos 21 padrões de workflow para controle de fluxo (e.g., seqüencial, paralelo, condicional). Tais padrões são úteis tanto para a definição de workflows, como para validar o poder de expressão das linguagens e ferramentas de workflow [Aalst 2003]. Recentemente, um conjunto de 39 padrões de dados foi proposto em [Russell 2004a]. Os padrões descrevem diversas maneiras, através das quais, dados podem ser representados em definições de workflow. Em outro trabalho, o autor propõe um conjunto de padrões de recursos, onde cada padrão descreve a representação e utilização de um recurso específico em workflow [Russell 2004b]. Russell (2006) propõe, ainda, uma framework para classificação de padrões com base em tratamento de exceções em sistemas de workflow. O framework vem sendo utilizado para verificar a habilidade de sistemas de workflow para o tratamento de exceções. Em [Bradshaw 2005] são propostos padrões de interação entre um processo BPEL (Business Process Execution Language) e outra aplicação. Exemplos destes padrões são One-Way Message e Asynchronous Interaction with Timeout. Estes padrões são similares a alguns dos padrões sendo propostos neste artigo (ex.: unidireional e bi-direcional performativo). A Oracle BPEL Process Manager propõe uma biblioteca de padrões de workflow. Com base em requisitos específicos do negócio, o usuário escolhe o melhor padrão disponível na biblioteca.

Além destas abordagens, existem diversas outras tais como o Handbook de Processos do Massachusetts Institute of Technology (MIT) [Malone 2004], a biblioteca de processos desenvolvida no contexto do projeto ECOMOD [Frank 2004], as linguagens de padrões propostas em [Cooplien 2004], assim como os padrões de negócio propostos por Eriksson (2001). A maioria das abordagens revisadas nesta Seção são relevantes tanto para a implementação de sistemas de workflow, como para a definição de linguagens de modelagem de workflow. No entanto, elas respondem parcialmente à questão sobre quais funções (tais como as ilustradas na Figura 1) o projetista deve considerar repetidamente em vários modelos de processos. Mais ainda, tais abordagens não exploram a completude e necessidade dos padrões para a modelagem de processos de negócio e workflow. 3. Tipos de Processos de Negócio Processos de negócio são prevalentes em praticamente todos os domínios de aplicação. Exemplos proeminentes incluem processos financeiro e informativo, respectivamente. Os processos financeiros são executados quando valores monetários são trocados entre duas partes. Cada um destes processos é acompanhado de um processo informativo, o qual representa o fluxo de dados causado pelo processo financeiro [Muehlen 2002]. Processos organizacionais, dificilmente são entidades homogêneas executados por indivíduos em sua totalidade. Geralmente, diferentes partes são envolvidas em um processo. A comunicação entre os participantes de um processo é feita através da troca de mensagens (processo comunicativo) [Flores 1998], [Geurts 2004], [Muehlen 2002]. Basicamente, uma troca de mensagem envolve duas partes: um solicitante ou produtor (envia a mensagem) e um receptor ou consumidor (recebe a mensagem). Neste contexto, zur Muehlen (2002) classifica mensagens em unidirecional e bidirecional. Mensagens unidirecionais são utilizadas tanto por um solicitante para solicitar a execução de uma atividade a um receptor (também chamada de mensagem ou comunicação performativa unidirecional), ou por um receptor para notificar um solicitante (mensagem notificativa). Mensagens bi-direcionais formam um par solicita/responde, onde o solicitante solicita a um receptor que este execute uma atividade e o responda subsequentemente (comunicação ou mensagem bi-direcional performativa) ou um receptor solicita uma informação ao solicitante (mensagem informativa). No contexto deste artigo, as atividades de um processo informativo são as mensagens, as quais implementam o fluxo de dados da organização gerado pelos processos financeiros nesta executados. Por exemplo, em um processo de aprovação a atividade que solicita a revisão de um documento gera uma mensagem performativa bi-direcional (um solicitante solicita que um revisor execute a atividade). É importante observar que cada processo informativo ou aplicativo pode estar relacionado a um processo decisório, ou seja, um processo cognitivo a partir do qual um curso de atividades é selecionado com base em um conjunto de alternativas. Em nível de aplicação, este se refere a uma tomada de decisão, tal como uma aprovação ou reprovação

em um processo de aprovação. Em nível do sistema de informação este se refere a um controle de fluxo (roteamento do workflow) [Aalst 2002]. 3.1 Classificação dos Padrões de Workflow Esta Seção apresenta os processos descritos na Seção 3, os quais neste artigo são apresentados como padrões de workflow organizados em 3 categorias de padrões. Esta classificação foi realizada com base em características específicas dos processos (ex.: dependência de aspectos da estrutura organizacional, nível de abstração, dependência do domínio da aplicação). 1. Padrões com base em aspectos da estrutura organizacional. Esta categoria inclui padrões relacionados a aspectos estruturais específicos (ex.: centralização da tomada de decisão, padronização de habilidades, supervisão direta). Exemplos destes padrões são aprovação e retirada de dúvidas. 2. Padrões com base no domínio de aplicação. Esta categoria inclui um padrão relacionado a um domínio de aplicação específico. O padrão financeiro (com base no processo financeiro) é exemplo de um padrão desta categoria. 3. Padrões com base em funções recorrentes em processos de negócio. Esta categoria inclui padrões relacionados a funções genéricas e recorrentes, isto é, qualquer processo de negócio ou workflow pode incluir tais padrões, independentemente do domínio de aplicação. Exemplos de padrões desta categoria são o padrão performativo unidirecional e bi-direcional, padrão informativo, padrão notificativo e padrão decisório. 4. Exemplos dos Padrões de Workflow No contexto deste artigo um padrão de workflow é a descrição de uma função recorrente encontrada com freqüência em processos de negócio (ex.: notificação, aprovação, decisão, solicitação de execução de tarefa) [Thom 2006a], [Thom 2006b]. O conjunto de padrões de workflow proposto neste artigo foi derivado de um estudo extensivo com base na literatura e em um estudo sobre as relações entre aspectos da estrutura organizacional e (sub-)processos de workflow [Thom 2003], [Thom 2005]. Conforme os padrões de definição de workflow da Workflow Management Coalition, cada padrão de workflow sendo proposto neste artigo pode ser representado como uma atividade de bloco [WfMC 2005]. O conceito de atividade de bloco é apropriado para representar os padrões, pois garante que todas as atividades definidas dentro de um bloco serão executadas por completo para que o workflow continue a execução. No entanto, como os padrões requerem a representação de parâmetros de entrada e saída e o conceito de atividade de bloco não suporta parâmetros, a perspectiva de transação da teoria de seriabilização é aplicada [Bernstein 1987]. Assim, parâmetros de entrada são representados como operações de leitura em base de dados (one-time-only) e parâmetros de saída como operações de gravação em base de dados (one-time-only). As próximas Seções apresentam exemplos de padrões como diagramas de atividade UML (utilizando a notação 2.0). O Visual Paradigm para a UML Community Edition, o

qual tem como base a UML 2.0 foi utilizado como editor para a modelagem dos padrões. As Figuras de 3 a 10 devem ser interpretadas conforme a legenda apresentada na Figura 2. (a) Nodo inicial indica o início de um processo (b) Ação atividade atômica (c) Decisão (d) Fork (e) Join (f) Controle de Fluxo (g) Swimlane (h) Nodo Final (i) Figura 2. Notação da UML 2.0 4.1 Padrão Aprovação de Documentos Problema: A estrututra de um processo de aprovação de documentos ou o número de vezes em que a atividade de aprovação é repetida no mesmo processo pode variar dependendo do nível de centralização de autoridade (maior ou menor), além da supervisão direta do trabalho (e.g., a atividade de aprovação é executada seguindo a hierarquia de autoridade existente na organização). Solução: Incluir no workflow, em cada ponto de tomada de decisão do sub-produto em questão (e.g. uma requisição de aprovação de documento), a seqüência de atividades exibida na Figura 3. Figura 3. Padrão Aprovação de Documentos Na Figura 3, o papel organizacional revisor realiza a revisão do documento que irá resultar na reprovação ou na aprovação deste. A atividade de revisão do documento (Realiza revisão do documento) é executada repetidas vezes (em paralelo ou em seqüência) conforme o número de papéis organizacionais especificados ou até que uma reprovação ocorra. Geralmente, o número de papéis organizacionais é relativo ao nível de centralização com respeito à tomada de decisão.

4.2 Padrão Retirada de Dúvidas Problema: Dúvidas relacionadas à execução de uma atividade podem ocorrer durante o processo. Solução: Incluir no workflow, em cada ponto, onde há preparação ou revisão de um documento, a sequência de atividades exibida na Figura 4. O padrão para retirada de dúvidas consiste na identificação de determinados atributos (habilidades) para a execução de uma atividade específica. Com base nas habilidades identificadas, um papel organizacional e seu ator correspondente são alocados tanto para a execução da tarefa quanto para responder à solicitação de retirada de dúvidas dentro do contexto de execução da atividade. Figura 4. Padrão Retirada de Dúvidas A Figura 4 traz o padrão de retirada de dúvidas como uma atividade de bloco. Nesta, a dúvida é reportada (pelo solicitante) para o autor do documento ou um especialista que conseqüentemente responde a esta. 4.3 Padrão Financeiro Problema: Existe um valor monetário a ser manipulado dentro de uma atividade no contexto de um processo. Solução: Incluir em cada ponto do processo (atividade), o padrão de workflow representado na Figura 5. Nesta, a atividade financeira manipula e, eventualmente, gera um novo valor monetário (por meio de atributos monetários específicos).

Figure 5. Padrão Financeiro 4.5 Padrão Performativo Unidirecional Problema: Uma solicitação de uma tarefa a ser executada deve ser enviada ao destinatário e este não necessita respondê-la. Solução: Incluir no workflow uma seqüência de atividades que representem uma mensagem performativa unidirecional, isto é, uma seqüência que gera um item na lista de trabalho do destinatário. O processo não ficará aguardando por uma resposta do destinatário. A Figura 6 mostra a descrição de uma requisição para a execução de uma atividade. Após isso, o processo segue seu fluxo normalmente. É preciso salientar que o padrão performativo unidirecional não necessita de uma resposta. As atividades de leitura e escrita podem ser modeladas como parâmetros se estes forem permitidos em uma atividade de bloco. A atividade Escrever descrição da execução da atividade na base de dados tem como parâmetro de saída requisição de descrição, que está modelada na Figura 6 como operação de escrita. Figura 6. Padrão Unidirecional 4.6 Padrão Performativo Bi-direcional Problema: Uma solicitação de uma tarefa é enviada e necessita de resposta da outra parte. Solução: Incluir no workflow uma seqüência de atividades que forme um par de requisição/resposta, onde o remetente solicita ao destinatário executar uma atividade e o destinatário responde ao remetente.

A Figura 7 mostra que a atividade de bloco tem sua execução finalizada somente após o envio da notificação de atividade completada e a gravação do resultado da execução na base de dados (AND-Split). Figura 7. Padrão Performativo Bi-direcional 4.7 Padrão Informativo Problema: Uma mensagem informativa precisa ser enviada. Solução: Incluir no workflow a seqüência de atividades representada pela Figura 8. O padrão informativo é baseado na mensagem informativa, onde o solicitante pede informações ao remetente a qual é suprida subseqüentemente. Como ilustrado na Figura 8, a atividade de bloco inicia com a requisição de informação e termina quando a informação requerida é recebida. Este padrão é diferente do padrão performativo bi-direcional especialmente pelo fato de o workflow aguardar por uma resposta do usuário. Figura 8. Padrão Informativo

4.8 Padrão Notificativo Problema: Informar a algum participante do workflow sobre um evento específico do processo. Solução: Adicionar ao workflow um padrão baseado na mensagem de notificação. Como mostrado na Figura 9, este padrão é baseado na mensagem de notificação. O padrão inclui atividades de notificação que informam sobre a finalização de uma atividade ou que divulgam novidades inerentes à respectiva aplicação de workflow (e.g., uma notificação sobre o resultado de um processo de aprovação). Devido ao fato de uma notificação informar sobre o status da execução de uma atividade, este pode ser considerado uma parte de uma mensagem performativa bi-direcional. Nesta abordagem a atividade de notificação está sendo tratada como uma atividade auto-contida; assume-se que uma notificação contendo o status de uma atividade pode eventualmente ser requerida. Figura 9. Padrão Notificativo 4.9 Padrão Decisório Problema: Precisa-se decidir por que rota do fluxo o processo irá seguir. Solução: Incluir no workflow a seqüência de atividades representada pela Figura 10. O padrão decisório é similar ao padrão de controle de fluxo de decisão proposto em (AALST 2003). Entretanto, neste trabalho o padrão decisório é formado por um padrão performativo bi-direcional seguido por um padrão XOR-Split ou, com menos freqüência, um OR-Split. A saída terá como base o resultado da execução de uma atividade, onde um ou mais caminhos no fluxo serão seguidos para dar continuidade à execução do workflow.

Figura 10. Padrão Decisório 5. Evidenciando a Existência, Necessidade e Completude dos Padrões de Workflow através da Mineração de Processos de Workflow Reais Sistemas de workflow, em execução, registram os participantes responsáveis pela execução das atividades, assim como quando estas são executadas. Tais registros são conhecidos como logs de eventos. A mineração de workflow, através do uso de softwares computacionais, analisa estes logs, provendo um conjunto de dados estruturados. Em [Ellis 2006] é observado que a mineração de workflow tem como objetivo principal obter o modelo de workflow atual com base em logs de processos em execução. Com o objetivo de pesquisar a existência dos padrões de workflow em processos de workflow de aplicações reais e mostrar exemplos de uso foram minerados 190 processos de workflow modelados na ferramenta Oracle Builder. Tais processos são executados por diferentes organizações e referem-se a diferentes aplicações. Mais precisamente, 17 processos referem-se ao gerenciamento de atividades internas de uma empresa de pequeno porte, descentralizada, cujo principal ramo de atividade é o desenvolvimento de software. Outros 11 processos definem o controle de qualidade total de uma empresa de pequeno porte, descentralizada. Aproximadamente 133 processos referem-se ao controle de acessos a software e gerenciamento de documentos de 6 empresas de grande porte, altamente centralizadas. O restante dos processos (29) são processos de Help Desk, Feedback de usuários e aprovações de 4 empresas de grande porte. Por razões confidenciais, não foi possível obter informações sobre as características estruturais destas empresas. Os principais resultados da mineração foram: a. constatação da existência dos padrões em workflow reais com alta probabilidade; b. constatação de que o conjunto de padrões é necessário e suficiente para modelar os 190 processos de workflow analisados. Isso demonstra que o conjunto de padrões é adequado para modelar uma variedade significativa de processos de workflow. Para verificar a freqüência com que cada padrão ocorre no conjunto de processos de workflow analisados identificamos, manualmente, os padrões nos processos. A Figura 11 traz um exemplo de como a identificação foi realizada.

Padrão Notificativo Padrão Aprovação Padrão Performativo Unidirecional Figure 11. Processo real que inclui os padrões de workflow Após, para cada padrão de workflow foi calculado o valor de suporte [Agrawal 1988]. No contexto deste artigo, o suporte significa o número de ocorrências de cada padrão de workflow nos 190 processos de workflow analisados. Observe que para aqueles processos incluindo mais de uma ocorrência de um mesmo padrão, considerou-se apenas uma ocorrência deste. Além disso, em alguns casos, os padrões foram identificados em ordens parciais de atividades. A seguinte fórmula foi considerada para o cálculo do suporte: S = F (A C) ; T T Onde: F(A C) = freqüência de A e C juntos, sendo (A e C) equivalentes a um padrão de workflow T T = número de processos analisados 5.2 Análise dos Principais Resultados da Mineração Esta Seção apresenta os resultados da mineração de 190 processos de workflow, a qual foi realizada com o objetivo de verificar se os tipos de processos descritos na Seção 3 podem ser, de fato, considerados padrões com alta probabilidade de reuso na modelagem de processos de negócio e workflow. A Figura 12 traz a freqüência com que cada padrão de workflow foi identificado no conjunto de processos investigados. O gráfico mostra que o padrão aprovação foi identificado com alta freqüência nos processos investigados (i.e., 60%). Tal fato justifica-se pela alta centralização na tomada de decisão existente nas unidades organizacionais envolvidas na execução dos processos. Além disso, muitos dos processos pertencem a aplicações com contextos de aprovação. O padrão de retirada de dúvidas foi identificado com menor freqüência (i.e., 2%), pois poucos processos incluem atividades de retirada de dúvidas. O padrão financeiro foi identificado em atividades, onde valores monetários são utilizados ou produzidos. Ainda que tal padrão tenha sido identificado em apenas 6% dos processos, todas as atividades financeiras analizadas o incluem. A baixa freqüência do padrão financeiro se dá pelo fato de poucos processos incluírem atividades financeiras.

Os padrões performativo unidirecional e bi-direcional, assim como, os padrões decisório e notificativo foram identificados com alta freqüência nos processos investigados (i.e., 75%, 65%, 54% e 64%, respectivamente). Tais padrões, como já mencionado neste artigo, não estão relacionados a um domínio de aplicação específico ou a aspectos estruturais da organização. Tais padrões representam funções genéricas sendo, portanto, passíveis de serem encontrados em qualquer tipo de processo. O padrão informativo também é um padrão genérico. Este foi identificado com menor freqüência (16%), pois o número de processos incluindo solicitação de informação é reduzido. Freqüência dos Padrões de Workflow nos Processos Analisados Aprovação 60% Retirada de Dúvidas 2% Financeiro 8% Informativo 16% Decisório 64% Notificativo 54% Performativo Bi-direcional 65% Performativo Unidirecional 75% 0% 10% 20% 30% 40% 50% 60% 70% 80% Suporte Figure 12. Freqüência dos padrões em processos de workflow reais 5.3 Completude e Necessidade dos Padrões para Modelagem de Processos O que realmente surprendeu foi o fato de todos os processos de workflow analisados poderem ser definidos como uma composição dos padrões investigados (veja a Figura 14 para um exemplo). Ou seja, o conjunto de padrões de workflow mostrou-se necessário e suficiente para modelar todos os 190 processos analisados na mineração. Em cada processo, um padrão específico aparece zero ou mais vezes combinado com outros padrões de controle de fluxo. Este pode ser considerando um fato importante, o qual deve ser investigado como parte de trabalhos futuros. Por exemplo, como os padrões de workflow podem ser úteis quando integrados em uma ferramenta de modelagem? Poderia ser desenvolvido um módulo de software inteligente, o qual a partir de um repositório de padrões de workflow auxiliasse o projetista a completar a modelagem sendo desenvolvida por este.

Bi-directional Notification Unidirectional Performative Informative Notification Decision Approval Unidirectional Performative Notification Figure 13. Um processo de pagamento construído com base na combinação dos padrões 6 Conclusões Ainda que existam diversos trabalhos na área de padrões de workflow (e.g., padrões de controle de fluxo [Aalst 2003], fluxo de dados [Russell 2004a], recursos de workflow [Russell 2004b] e tratamento de exceção [Russell 2006]), padrões com base em funções recorrentes em processos de negócio têm sido pouco explorados. Em vista disso, este artigo apresentou o levantamento e classificação de um conjunto de padrões de workflow com base em funções recorrentes frequentemente encontradas em processos de negócio. Através da mineração de 190 processos de workflow de diferentes organizações constatou-se, com alta probabilidade, a existência dos padrões nos processos investigados. Através da análise estrutural e do particionamento de cada processo, evidenciou-se que os padrões classificados representam o conjunto necessário e suficiente de construtores para a modelagem de todos os processos analisados. As principais vantagens da abordagem são: Maior eficiência na modelagem: Com poucos padrões é possível modelar uma grande variedade de processos. Tais padrões são mais próximos do vocabulário ou nível de abstração no qual o processo de negócio é usualmente descrito (documentado) pela própria organização. Acredita-se que o (re-)uso destes padrões pode diminuir o tempo de modelagem (eficiência) e garantir maior probabilidade de correção na automatização do processo. Interoperabilidade: o (re-)uso dos padrões pode contribuir para maior interoperabilidade entre sistemas de workflow; Aplicabilidade em diferentes níveis de abstração: Alguns padrões podem ser úteis tanto para a modelagem conceitual dos processos de negócio como em nível de

implementação (ex.: BPEL4WS). Em um trabalho anterior demonstramos o mapeamento entre os níveis conceitual e lógico, permitindo sua automatização [Thom 2005]. Além disso, existe forte indício de que o conjunto de padrões investigado é completo, ou seja, necessário e suficiente para a modelagem de um grande número (senão a totalidade) de processos de negócios distintos. Tais padrões podem, eventualmente, simplificar o processo de modelagem, visto que possuem semântica simples e bem definida. Mais ainda, ferramentas de modelagem podem automatizar a seleção e aplicação dos padrões com base nas características dos processos sendo projetados, considerando-se diferentes aspectos (ex.: organizacionais, dependentes da aplicação). Os padrões de workflow investigados podem, ainda, ser utilizados para teste de completude e na comparação do poder de expressão das ferramentas e linguagens de modelagem de workflow existentes e futuras. Como trabalhos futuros pretende-se investigar a completude do conjunto de padrões estudado para a modelagem de processos de negócio e workflow em geral. Pretendemos, ainda, extender alguma ferramenta de modelagem de processos com os padrões de workflow propostos. Em [Thom 2007] é apresentado uma primeira iniciativa neste contexto. Por fim, verificar a utilidade e da eficiência (ex.: tempo de modelagem e correção) dos padrões, quando integrados à ferramenta de modelagem de processos através de um catálogo. References Aalst, W.M.P. van der; Hee, K. van. (2002) Workflow Management : models, methods, and systems. London: The MIT Press. Aalst, W.M.P. van der. (2003) Patterns and XPDL : A Critical Evaluation of the XML Process Definition Language. Queensland University of Technology, Brisbane. (QUT Technical report, FIT-TR-2003-06). Agrawal, R.; Gunupulos, D.; Leymann, F. (1988) Mining Process Models from Workflow Logs. Disponível em: <http://www.almaden.ibm.com/software/projects/iis/hdb/publications/papers/edbt98_flow mk.pdf>. Último acesso em Nov. 2006. Bernstein, P. A.; Hadzilacos, V.; Goodman, N. (1987) Concurrency Control and Recovery in Database Systems. Reading: Addison-Wesley. 370 p. Bradshaw, D.; Kennedy, M.; West, C. Oracle BPEL Process Manager. (2005) Developer s Guide. Release 2 (10.1.2). Disponível em: <www.oracle.org>. Último acesso em Out.. 2006. Cooplien, H.; Harrison, N. Organizational Patterns of Agile Software Development. (2004) Disponível em: <http://www.easycomp.org/cgi-bin/orgpatterns?bookoutline>. Último acesso Out. 2006. Ellis, C. (2006) Workflow Mining: Definitions, Techniques, and Future Directions. Em: Fischer, L. (Ed.) Workflow Handbook 2006 including business process management: published in association with the workflow management coalition. Lighthouse Point : Future Strategies, p. 213-228.

Eriksson H.E.; Penker, M. Business Modeling with UML. (2001) [S.l.]: John Wiley & Sons. 459p. Flores, F.; et al. (1998) Computer Systems and the Design of Organizational Interaction. Disponível em: <www.acm.og>. Último acesso em Jul. 2006. Frank, U.; Lange; C. (2004) Mapping of Business Process Models to Workflow Schemata - An Example Using MEMO-OrgML and XPDL. Disponível em: <http://www.unikoblenz.de/~ecomod/php/index.php>. Último acesso emjun.. 2006. Geurts, G.; Geelhoed, A. (2004) Business process decomposition and service identification using communication s. Disponível em: <http://msdn.microsoft.com/library/>. Último acesso em Jun. 2005. Inernational Organization for Standardization (ISO). (2006) Disponível em: <http://www.iso.org>. Último acesso em Abril. 2007. Malone, T. W.; Crownston, K.; Herman, G. A. (2004) Organizing Business Knowledge : The MIT Process Handbook. Disponível em: <http://ccs.mit.edu/ph/>. Último acesso em Out. 2006. Medina-Mora, R. (1992) The action workflow approach to workflow management technology. Disponível em: <www.acm.org>. Último acesso em Jun. 2005. Muehlen, M. zur. (2002) Workflow-based process controlling : foundations, design, and application of workflow-driven process information systems. Berlin: Logos Verlang. 299 p. Russell, N.; Hofstede, A. H. M Ter; Edmond, D. (2004a) Workflow Data Patterns. Em: INFORMATIK 2004 - Informatik verbindet (Band 1). Proceedings...[S.l. : s.n.]. p.50. Russell, N. (2004b) Workflow Resource Patterns. Brisbane : Queensland University of Technology (Technical report, FIT-TR-2004-01) Russell, N.; Aalst, W.M.P. van der; HOFSTEDE, A. Ter. (2006) Workflow Exception Patterns. Em: International Conference on Advanced Systems Engineering, CAiSE, 18. Proceedings... [S.l. : s.n.], 2006. p.288-302. Thom, L. H.; Iochpe, C. (2003) Identifying Patterns of Workflow Design Relying on Organizational Structure Aspects. Em: International Conference on Enterprise Information Systems, ICEIS, 5., Angers. Proceedings Angers: ICEIS Press. Thom, L.; Iochpe, C.; Mitschang, B. (2005) Improving the Workflow Project Quality Via Business Process Patterns Based on Organizational Structure Aspects. Em: GI Workshop XML for Business Process Management, 2. XML Interchange Formats for Business Process Management: Proceedings. Karlsruhe : [S.n.], 2005. 1 CD-ROM. Thom, L. H.; Iochpe, C. (2006a) Applying block activity s in workflow modeling. Em: International Conference on Enterprise Information Systems, ICEIS, 8., 2006, Paphos, Chipre. Proceedings Setubal : Institute for Systems and Technologies of Information, Control and Communication. Thom, L. H.; Iochpe, C.; Amaral, V. L. do; Viero, D. M. de. (2006b). Toward block activity s for reuse in workflow design. Em: Fischer, L. (Ed.). Workflow Handbook

2006 including business process management: published in association with the workflow management coalition. Lighthouse Point : Future Strategies. p. 249-260. Thom, L. H.; Lau, J. M.; Iochpe, C.; Mendling, J. (2007) Extending Business Process Modeling Tools With Workflow Patterns Reuse. Submetido para International Conference on Enterprise Information Systems, ICEIS, 9., Angers. Proceedings Madeira: ICEIS Press. Workflow Management Coalition. (1999) Terminology & Glossary. Bruxelas, 65p. Disponível em: <http://www.wfmc.org>. Último acesso em Nov. 2005. Workflow Management Coalition. (2005) Process Definition Interface : XML Process Definition Language. Doc. Number: WFMC-TC-1025. Disponível em: <http://www.wfmc.org>. Último acesso em Out. 2005.