Skip to content

BRMS: Aplicações dinâmicas com formulários do Guvnor

Setembro 3, 2013

No mundo de BPM, existem duas formas de utilizarmos os processos definidos em tempo de execução. A primeira delas é utilizar o motor de execução dos processos existente na própria central de governança da solução, ou seja, na mesma plataforma onde se cria os processos.

Porém, existe uma segunda opção, bastante utilizada, que refere-se ao uso do motor de execução embarcado em aplicações. Ou seja, o processo BPM é criado na central de governança da plataforma BPM, entretanto, a execução do processo em si ocorre dentro das aplicações que possuem as API’s do motor BPM embarcadas.

Um exemplo dessa segunda abordagem pode ser visualizado na utilização da solução jBPM, incorporada na solução entreprise da Red Hat denominada BRMS. Neste cenário, temos a central de governança representada pelo Drools Guvnor, onde podemos criar nossos processos BPM, e a figura da nossa aplicação Java, que possui as bibliotecas do jBPM para o gerenciamento do motor de processos. Abaixo segue um ilustrativo desse cenário.

Imagem

 

 

Utilizando a abordagem supramencionada temos prós e contras, como quase tudo no mundo de tecnologia. Entre os pontos contras que normalmente são mencionados temos o seguinte aspecto: Com a aplicação sendo responsável pela execução do processo, temos que a mesma normalmente fica também responsável pelo gerenciamento das tarefas humanas do processo. Ou seja, a aplicação é responsável por prover as interfaces gráficas (“telinhas”) para que os usuários possam tratar as tarefas humanas. Assim, a questão é a seguinte: E se o processo for redefinido no Guvnor (central de governança)? Vou ter de mexer também na minha aplicação (desenvolvimento, teste, deploy, etc)?

 

Pois é, a priori a resposta é sim. Entretanto, podemos aproveitar de uma das features do Guvnor para amenizar esse problema. O Guvnor possui a uma funcionalidade para geração de formulários HTML para as tarefas humanas existentes no processo. Com isso, o console jBPM, também conhecido como jbpm-console, pode tirar proveito disso para prover os formulários quando deseja-se utilizar no console o motor de execução dos processos.

Entretanto, da mesma forma como o jbpm-console consome os formulários gerados pelo Guvnor, nós podemos também consumi-los em nossa aplicação, visto que os mesmos são expostos através de uma interface REST.

Com isso, a ideia é criar na aplicação uma interface gráfica única para manipular as tarefas humanas, injetando código HTML vindo dos fomulários do Guvnor de forma dinâmica. Nesse screencast do vimeo http://vimeo.com/70797537 tem uma visão geral da solução. Qualquer dúvida que tiverem entrem em contato que esclareço o que for necessário.

Abraços,

 

From → Uncategorized

Deixe um Comentário

Deixe uma Resposta

Preencha os seus detalhes abaixo ou clique num ícone para iniciar sessão:

Logótipo da WordPress.com

Está a comentar usando a sua conta WordPress.com Terminar Sessão / Alterar )

Imagem do Twitter

Está a comentar usando a sua conta Twitter Terminar Sessão / Alterar )

Facebook photo

Está a comentar usando a sua conta Facebook Terminar Sessão / Alterar )

Google+ photo

Está a comentar usando a sua conta Google+ Terminar Sessão / Alterar )

Connecting to %s

Coding Horror

Um prato de informações tecnológicas com uma pitada de conhecimento aleatório.

InfoQ

Um prato de informações tecnológicas com uma pitada de conhecimento aleatório.

JBoss Developer Recent Posts

Um prato de informações tecnológicas com uma pitada de conhecimento aleatório.

JBossDivers

Mergulhando no Mundo JBoss

%d bloggers like this: