sexta-feira, 28 de março de 2008

BPMN: o Modelo E-R dos Processos

Neste artigo, buscaremos apresentar a motivação para o nascimento do BPMN, suas principais características e seus possíveis impactos na modelagem de sistemas de TI.

A Torre de Babel dos Processos
Até muito recentemente, qualquer trabalho de modelagem ou redesenho de processos precisava, logo em seu início, tomar uma difícil decisão – definir qual técnica de modelagem de processos seria utilizada. Opções não faltavam – técnicas como Swimlanes, IDEF0, Event-Process Chain, Diagramas de Atividade UML e Redes de Petri eram apenas algumas delas.

Apesar de muito úteis e poderosas, estas técnicas compartilhavam alguns problemas: ou eram proprietárias, ou eram incompletas, ou eram incompatíveis com outros modelos, especialmente modelos de TI. E muitas vezes, elas eram tudo isso ao mesmo tempo. Mais: nenhuma delas era claramente um padrão para modelagem de processos, nem padrão de direito nem de mercado.

Além disso, (ou talvez por isso mesmo) a maioria dos processos eram (e ainda são) modelados usando notações “ad hoc”, inventadas sob demanda para cada projeto ou para cada empresa, em geral utilizando ferramentas de diagramação como o Microsoft Visio. Ou seja, modelavam-se processos que praticamente só conseguiam ser entendidos completamente por quem os havia modelado.

Evidentemente, é absolutamente impossível, em um cenário como esse, tentar fazer avançar o BPM. Pois, se não há uma uniformidade básica sobre como modelar processos de negócios, como poderá haver um entendimento claro sobre o funcionamento deste processo? Como ele poderá ser discutido com outras pessoas, redesenhado e automatizado, se ele utiliza uma notação que não é padronizada?

Para termos a correta dimensão deste paradoxo, podemos fazer uma simples analogia com a área, muito bem estabelecida, de banco de dados. Será que esta disciplina conseguiria ter alcançado o sucesso que tem se não existisse uma notação universalmente aceita como o Modelo Entidade-Relacionamento? Como seria o mundo da TI se, cada vez que fôssemos modelar um banco de dados, tivéssemos que primeiro definir qual técnica de modelagem iríamos usar (ou pior, se inventássemos nossa própria notação para cada projeto!).

Absurdo? Bem, esse era o ambiente que, até bem pouco tempo atrás, aguardava quem precisava modelar e automatizar processos de negócio.

BPMN: A Resposta Certa ao Desafio
O BPMN (Business Process Modeling Notation) é um padrão para modelagem de processos. Criado inicialmente pelo BPMI (Business Process Management Initiative), foi incorporado pela OMG (Object Management Group) após a fusão entre estas entidades, ocorrida em 2005.

O enorme sucesso do BPMN em se estabelecer como padrão para o BPM vem de três razões principais. A primeira é que foi sempre um objetivo fundamental seu oferecer uma notação de fácil entendimento por todos os envolvidos com processos. Assim, tanto usuários de negócios quanto profissionais de TI conseguirão facilmente ler um modelo de processos em BPMN. Desta forma, o BPMN torna-se, na prática, uma ferramenta que cria uma língua comum entre as áreas de negócios e TI, reduzindo a distância existente entre elas.

A segunda razão é que o BPMN foi dotado de uma série de recursos que tornam possível a modelagem de processos extremamente complexos. O uso de tais recursos é opcional e, assim, o modelo pode ser construído apenas com os elementos mais simples, para facilitar a leitura. Ao utilizar estes recursos, pode-se chegar a um nível bastante refinado do comportamento do processo, agregando várias informações técnicas, e permitindo o mapeamento automático para padrões de execução de processos, como o BPEL. Assim, se consegue uma transição natural da modelagem para a execução dos processos.

A terceira razão para o sucesso do BPMN é que ele possui uma sólida fundamentação matemática. O BPMN foi construído sobre os conceitos do Pi-Calculus, uma derivação do Cálculo de Processos para a representação de processos dinâmicos e móveis. Mais uma vez, a analogia com banco de dados é pertinente, pois uma das grandes razões do sucesso dos bancos de dados relacionais foi seu embasamento na teoria relacional.

Primeiros Passos em BPMN

O BPMN define um único tipo de diagrama, chamado de Business Process Diagram (BPD). Neste diagrama, como ilustrado na figura, são dispostos os diversos elementos que formam o BPMN.

O BPMN possui diversos elementos, sendo que os básicos são apenas 4: atividades, eventos, gateways (decisões) e sequence flows (rotas). Com apenas estes 4 elementos, é possível construir modelos bastante expressivos de processos, fazendo com que o BPMN seja efetivamente fácil de aprender e simples de utilizar.

À medida que coletamos mais dados sobre o processo a ser modelado, podemos utilizar as diversas variações destes elementos, cada uma com uma semântica precisa (por exemplo, eventos baseados em tempo). Podemos também adicionar novos elementos que enriquecem a semântica do processo.

Assim, de forma geral, um modelo BPMN nos permite representar os seguintes conceitos:

  • Processos, sub-processos e atividades
  • Loops, instanciação múltipla de atividades e transações de compensação
  • Eventos de início, de fim e intermediários no processo (ex: um processo pode iniciar a partir do evento “Email vindo do cliente”)
  • Decisões, paralelismo e sincronização de processos
  • Organizações, departamentos e papéis que participam do processo
  • Trocas de mensagens entre organizações participantes do processo (essencial para representar cenários B2B)
  • Objetos de dados que tramitam ao longo do processo

Com estes recursos, o BPMN permite a criação de modelos excepcionalmente sofisticados – com a vantagem adicional de poderem ser facilmente compreendidos.

O Caminho Adiante
Hoje, não há mais nenhuma dúvida que o BPMN é a técnica de modelagem preferencial para qualquer projeto de BPM. O uso de outras técnicas deveria ser considerado apenas em casos excepcionais, tais como aqueles em que há um grande legado de processos modelados em outras técnicas. Caso contrário, não há boa razão para não usar o BPMN.

Nós, da iProcess, já pudemos experimentar na prática os benefícios da facilidade de uso do BPMN. Já temos utilizado a técnica para discutir modelos de processos com usuários de negócio de clientes, com excelentes resultados. Na visão dos usuários, a notação é clara e intuitiva, sendo compreendida de forma praticamente instantânea. O que mais podemos querer de uma técnica de modelagem?

Além disso, não podemos deixar de analisar o significado da fusão entre o BPMI (criador do BPMN) com a OMG (mantenedora de diversos padrões, como UML e CORBA). A verdadeira questão está no desejo de ambas organizações de incorporar o BPMN na UML. Como se sabe hoje, a UML não conta com técnicas apropriadas para a modelagem de processos, e o BPMN virá justamente cobrir esta lacuna. Assim, muito em breve, teremos o BPMN como parte da mais difundida técnica de modelagem de sistemas do mundo. Se alguém ainda tinha dúvidas sobre a importância da modelagem de processos para a concepção de sistemas, este fato deve eliminá-las.

Por tudo isso, demos a este artigo o título acima. Acreditamos que a relevância do BPMN para o BPM será a mesma do Modelo Entidade-Relacionamento para banco de dados. O BPMN será a técnica que permitirá que a modelagem de processos seja ensinada, divulgada e promovida em massa, no mercado e nas universidades. Em outras palavras, que deixe de ser uma atividade secundária, quase um nicho, para se tornar uma ferramenta indispensável para profissionais de negócios e de TI.

Extraído de http://www.iprocess.com.br/newsletter/2/index.htm

 

Nenhum comentário: