Na quarta-feira dia 25 de julho de 2012, estive no FISL13(13ª edição do Fórum Internacional de Software Livre), palestrando sobre os conceitos de BPM e ECM usando as plataformas Alfresco e Bonita.
Apresentei os conceitos aplicando um caso prático de processo de aprovação com a publicação de um documento. Em 50 minutos não havia espaço para fazer ao vivo algo mais complexo, partindo do básico.
As plataformas utilizadas foram Alfresco ECM versão 4.0.0d community e Bonita BPM 5.7.2 community.
Conforme prometido, estou publicando o roteiro que utilizei na palestra, com o passo-a-passo para atingir o mesmo exemplo.
Aproveitem os comentários do post para se apresentarem e deixar seus contatos, trocar experiências acelera o aprendizado.
======================
Roteiro apresentação ECM – BPM FISL 13
Data: 25/07/2012
Mauro do Valle – maurov@gmail.com
mauro-valle@procergs.rs.gov.br
@maurovalle
Analista de Sistemas – PROCERGS desde 1998
Explicar Objetivo da Palestra
Demonstrar na prática os principais conceitos de Gerencia de Documentos – ECM – e
Gerencia de Processos de Negocio – BPM
Exemplo Simples e prático:
Processo de aprovação de um projeto.
Ferramentas utilizadas – Java – Open Source:
BPM – Bonita
ECM – Alfresco
DESENHO PROCESSO
1 – abrir bonita studio e criar novo processo
2 – renomear o diagrama e pool para Avaliar_Projeto
3 – clicar no diagrama e na aba aplicação escolher ignorar no fluxo de entrada de dados
4 – clicar na atividade e renomear para “Envio de Projeto”
5 – adicionar nova atividade humana, nomear como “Avaliar Projeto”
6 – adicionar um gateway XOR
7 – adicionar uma tarefa automatica de nome “Iniciar Projeto”
8 – adicionar uma tarefa automatica de nome “Arquivar Projeto”
9 – adicionar um gateway XOR
10 – adicionar um final de processo
ATORES DO PROCESSO
11 – selecionar o diagrama, adicionar novo Lane, nomear como Solicitante
12 – selecionar o diagrama, adicionar novo Lane, nomear como Sistema
13 – selecionar o diagrama, adicionar novo Lane, nomear como Aprovador
14 – Ajustar tarefa de “Avaliar Projeto” no Lane Aprovador
15 – Ajustar tarefa de “Iniciar Projeto” no Lane Sistema
16 – Ajustar tarefa de “Arquivar Projeto” no Lane Sistema
17 – Selecionar Lane Solicitante e adicionar Atores “Inicializador”
18 – Selecionar Lane Avaliador e criar Atores como grupo “/Plataforma”, nomear “Aprovadores”
19 – Selecionar Lane Sistema e adicionar Atores “Inicializador”
ADICIONAR DADOS DO PROCESSO
20 – Selecionar o Pool, escolher dados
21 – Adicionar uma variavel Boolean chamada aprovado, com valor padrão false
Adicionar a variavel projeto do tipo Anexo.
Adicionar a variavel arquivo do tipo Texto
Adicionar a variavel descricao do tipo texto
22 – Selecionar as saidas do Gateway de entrada, adicionar o dado “aprovado”
23 – Selecionar a outra saida do Gateway e deixar como valor default
FORMULARIOS DE ENVIO E APROVACAO
24 – Selecionar a tarefa “Envio de Projeto”, adicionar um formulário
25 – Desmarcar a variavel aprovado. Adicionar um campo obrigatorio “Projeto” para upload de arquivo.
26 – Adicionar um campo area de texto “Descricao”, adicionar campo “Nome do Arquivo” salvar Form
27 – Na tarefa “Iniciar Projeto”, colocar conector “Envia Arquivo” CMIS Upload File
28 – Usar no conector a url : http://localhost:8080/alfresco/cmisatom e usar repositorio “Repository” na pasta /Bonita/ e as variaveis de processo arquivo e projeto
29 – Salvar configuracao como “Enviar Projeto”
30 – Copiar o conector para a tarefa Arquivar Projeto, alterando a pasta destino para /Bonita/Arquivados
ALFRESCO – ECM
31 – Acessar Alfresco na url: http://localhost:8080/share como admin/admin
32 – Criar a pasta Bonita e a subpasta Arquivados
33 – Criar uma regra na pasta Bonita para a cada update de arquivo, verificar se tem a TAG “Arquivados” e mover para a subpasta Arquivados
34 – editar as properties do arquivo do projeto e colocar a tag “Arquivados”
35 – mostrar que o arquivo foi movido da pasta Bonita para a subpasta Arquivados
Oct 27, 2012 @ 20:03:01
Prezado Mauro, boa noite.
Estou começando agora com BPM, Bonita e Alfresco.
Você poderia enviar um arquivo de exemplo do Bonita com o fluxo mencionado?
Desde já agradeço.
Cordialmente,
Anderson R. Sousa.
Oct 27, 2012 @ 20:03:55
Que falta de educação a minha!
Parabéns pelo artigo!
Grande abraço.
Att.
Anderson R. Sousa.
Dec 27, 2012 @ 20:22:35
Neste exemplo vc está usando o Alfresco como repostório. O Bonita executa o processo e acessa o repositório.
Entretanto o Alfresco pode ser visto com a interface que chama o processo. É este , por exemplo, o relacionamento entre alfresco e activiti. Vc já tentou fazer um exemplo assim? Com o Alfresco servindo de interface para iniciar e controlar o processo em substituição a interface do Bonita.
Jul 14, 2014 @ 11:23:24
Olá, desculpe a demora na resposta. Meu cenário de uso era ilustrar a integração entre o Bonita e Alfresco, mas concordo que seja possível usar Activity dentro do Alfresco para controlar o fluxo BPM. Escolhi o cenário de integração com Bonita porque é o utilizado na empresa que trabalho. Activity BPM não atingia todos os requisitos que a empresa buscava, e Bonita sim.
Jul 12, 2014 @ 16:40:01
Na versão do Bonita 6.3.1 não contem o tipo de variável Anexo qual devo utilizar?
Jul 14, 2014 @ 11:30:03
Olá João, realmente após a versão 6.0 houveram mudanças nos tipos de dados do processo no Bonita BPM. Para trabalhar com anexos o recomendado na versão 6.x é utilizar a aba Documents. Selecione o pool ou lane e na aba Documents defina a variável que vai receber seu anexo (Add Document). Na tarefa ou passo do teu processo BPM onde vai atualizar o anexo, é preciso usar um script para fazer update ou replace de um document. Em breve a equipe do Bonita deve documentar melhor com algum exemplo desta mudança. Ainda usamos Bonita 5.7 aqui na empresa.
Jul 14, 2014 @ 19:26:41
Muito obrigado pelo esclarecimento! Estou estudando o BPMS Bonita, caso possa recomendar algum material para estudo eu agradeceria muito.
Aug 05, 2014 @ 08:18:07
Mauro, gostaria de saber se é possível redirecionar uma página de formulário para uma URL externa?
Dec 29, 2014 @ 10:23:44
Olá Mauro, eu gostaria de saber como posso inserir dados em um banco de dados Mysql a partir de um formulário no bonita, caso possa me ajudar ficarei grato. Aguardo resposta!
Feb 11, 2015 @ 06:23:36
Mauro, muito bom seu roteiro. Parabéns.
Gostaria de saber se você já teve alguma experiência de implementação de um search no case list (filtro) no Bonita Open Solution Community. Estou precisando implementar tal funcionalidade, bem como restrição de inicializador, porém sem sucesso.