desenvolvimento de sigs baseados em modelos de processos o analista de negócio cria a...
TRANSCRIPT
![Page 1: Desenvolvimento de SIGs Baseados em Modelos de Processos O analista de negócio cria a especificação do processo utilizando a notação BPMN Utiliza uma ferramenta de modelagem](https://reader036.vdocuments.site/reader036/viewer/2022062911/5c02d77909d3f2a20a8b4889/html5/thumbnails/1.jpg)
Desenvolvimento de SIGs Baseados em Modelos de
Processos Um framework de Desenvolvimento Orientado a Business Process
![Page 2: Desenvolvimento de SIGs Baseados em Modelos de Processos O analista de negócio cria a especificação do processo utilizando a notação BPMN Utiliza uma ferramenta de modelagem](https://reader036.vdocuments.site/reader036/viewer/2022062911/5c02d77909d3f2a20a8b4889/html5/thumbnails/2.jpg)
Equipe Gustavo Sizílio Nery [email protected]
Heitor Mariano de Aquino [email protected]
Eduardo Aranha [email protected]
![Page 3: Desenvolvimento de SIGs Baseados em Modelos de Processos O analista de negócio cria a especificação do processo utilizando a notação BPMN Utiliza uma ferramenta de modelagem](https://reader036.vdocuments.site/reader036/viewer/2022062911/5c02d77909d3f2a20a8b4889/html5/thumbnails/3.jpg)
Roteiro O problema
A solução proposta
O estado atual da implementação (API)
Exemplo de uso / Aplicação na SINFO
![Page 4: Desenvolvimento de SIGs Baseados em Modelos de Processos O analista de negócio cria a especificação do processo utilizando a notação BPMN Utiliza uma ferramenta de modelagem](https://reader036.vdocuments.site/reader036/viewer/2022062911/5c02d77909d3f2a20a8b4889/html5/thumbnails/4.jpg)
O problema Dificuldade:
Desenvolver e alterar implementações dos processos nos SIGs
Manter rodando diferentes versões de modelos de processos
Acesso à informações sobre a definição, andamento e gargalos de processos
Manter a sincronia e rastreabilidade entre modelagem de processos e código dos SIGs
![Page 5: Desenvolvimento de SIGs Baseados em Modelos de Processos O analista de negócio cria a especificação do processo utilizando a notação BPMN Utiliza uma ferramenta de modelagem](https://reader036.vdocuments.site/reader036/viewer/2022062911/5c02d77909d3f2a20a8b4889/html5/thumbnails/5.jpg)
Solução Modelar explicitamente os fluxos de atividades dos processos
Orientar as funcionalidades dos SIGs de acordo com modelos de processos especificados
![Page 6: Desenvolvimento de SIGs Baseados em Modelos de Processos O analista de negócio cria a especificação do processo utilizando a notação BPMN Utiliza uma ferramenta de modelagem](https://reader036.vdocuments.site/reader036/viewer/2022062911/5c02d77909d3f2a20a8b4889/html5/thumbnails/6.jpg)
Solução
![Page 7: Desenvolvimento de SIGs Baseados em Modelos de Processos O analista de negócio cria a especificação do processo utilizando a notação BPMN Utiliza uma ferramenta de modelagem](https://reader036.vdocuments.site/reader036/viewer/2022062911/5c02d77909d3f2a20a8b4889/html5/thumbnails/7.jpg)
Exemplo de Uso
![Page 8: Desenvolvimento de SIGs Baseados em Modelos de Processos O analista de negócio cria a especificação do processo utilizando a notação BPMN Utiliza uma ferramenta de modelagem](https://reader036.vdocuments.site/reader036/viewer/2022062911/5c02d77909d3f2a20a8b4889/html5/thumbnails/8.jpg)
Modelagem & Deploy
![Page 9: Desenvolvimento de SIGs Baseados em Modelos de Processos O analista de negócio cria a especificação do processo utilizando a notação BPMN Utiliza uma ferramenta de modelagem](https://reader036.vdocuments.site/reader036/viewer/2022062911/5c02d77909d3f2a20a8b4889/html5/thumbnails/9.jpg)
Modelagem do processo (Analista de Negócio) O analista de negócio cria a especificação do processo utilizando a notação BPMN
Utiliza uma ferramenta de modelagem (Bizagi, Camunda Modeler, BPMN.io, etc...)
Salva o processo na notação BPMN (XML)
Compartilha o modelo especificado com a equipe de desenvolvimento
Utilizando Git, Dropbox, etc...
O modelo especificado pelo analista contém apenas aspectos de negócio, não possui detalhes de implementação
![Page 10: Desenvolvimento de SIGs Baseados em Modelos de Processos O analista de negócio cria a especificação do processo utilizando a notação BPMN Utiliza uma ferramenta de modelagem](https://reader036.vdocuments.site/reader036/viewer/2022062911/5c02d77909d3f2a20a8b4889/html5/thumbnails/10.jpg)
Modelagem do processo (Analista de Negócio)
![Page 11: Desenvolvimento de SIGs Baseados em Modelos de Processos O analista de negócio cria a especificação do processo utilizando a notação BPMN Utiliza uma ferramenta de modelagem](https://reader036.vdocuments.site/reader036/viewer/2022062911/5c02d77909d3f2a20a8b4889/html5/thumbnails/11.jpg)
Modelagem do processo (Desenvolvedor) Recupera a versão do modelo especificada pelo Analista de Negócio
Utilizando Git, Dropbox, etc…
Altera o modelo, especificando detalhes de implementação
Regras de fluxo de controle
Registro de classes delegate
Registro de classes de listeners
Salva o modelo contendo aspectos de negócio e aspectos de implementação
![Page 12: Desenvolvimento de SIGs Baseados em Modelos de Processos O analista de negócio cria a especificação do processo utilizando a notação BPMN Utiliza uma ferramenta de modelagem](https://reader036.vdocuments.site/reader036/viewer/2022062911/5c02d77909d3f2a20a8b4889/html5/thumbnails/12.jpg)
Modelagem do processo (Desenvolvedor)
![Page 13: Desenvolvimento de SIGs Baseados em Modelos de Processos O analista de negócio cria a especificação do processo utilizando a notação BPMN Utiliza uma ferramenta de modelagem](https://reader036.vdocuments.site/reader036/viewer/2022062911/5c02d77909d3f2a20a8b4889/html5/thumbnails/13.jpg)
Deploy do Modelo Utiliza a ferramenta BPM Tools
Seleciona o arquivo do modelo e confirma o deploy
A ferramenta lê o modelo e salva no repositório de definição de processos (banco de dados relacional)
Gera um número de versão para o modelo implantado
No código
Define classe de constantes
Nome e Identificador do processo
Nome e Identificadores das atividades
![Page 14: Desenvolvimento de SIGs Baseados em Modelos de Processos O analista de negócio cria a especificação do processo utilizando a notação BPMN Utiliza uma ferramenta de modelagem](https://reader036.vdocuments.site/reader036/viewer/2022062911/5c02d77909d3f2a20a8b4889/html5/thumbnails/14.jpg)
Implementação & Integração
![Page 15: Desenvolvimento de SIGs Baseados em Modelos de Processos O analista de negócio cria a especificação do processo utilizando a notação BPMN Utiliza uma ferramenta de modelagem](https://reader036.vdocuments.site/reader036/viewer/2022062911/5c02d77909d3f2a20a8b4889/html5/thumbnails/15.jpg)
Iniciando um processo
![Page 16: Desenvolvimento de SIGs Baseados em Modelos de Processos O analista de negócio cria a especificação do processo utilizando a notação BPMN Utiliza uma ferramenta de modelagem](https://reader036.vdocuments.site/reader036/viewer/2022062911/5c02d77909d3f2a20a8b4889/html5/thumbnails/16.jpg)
Iniciando um processo Ao iniciar o processo, é preciso informar o ID da entidade no SIG
Este ID faz o vínculo da entidade do SIG com a instância do processo
Projeto ID 01 → Processo ID 1001
Projeto ID 02 → Processo ID 2103
É possível informar um mapa de variáveis que serão armazenadas como dados no processo
![Page 17: Desenvolvimento de SIGs Baseados em Modelos de Processos O analista de negócio cria a especificação do processo utilizando a notação BPMN Utiliza uma ferramenta de modelagem](https://reader036.vdocuments.site/reader036/viewer/2022062911/5c02d77909d3f2a20a8b4889/html5/thumbnails/17.jpg)
Visualizando um processo
![Page 18: Desenvolvimento de SIGs Baseados em Modelos de Processos O analista de negócio cria a especificação do processo utilizando a notação BPMN Utiliza uma ferramenta de modelagem](https://reader036.vdocuments.site/reader036/viewer/2022062911/5c02d77909d3f2a20a8b4889/html5/thumbnails/18.jpg)
Visualizando um processo
![Page 19: Desenvolvimento de SIGs Baseados em Modelos de Processos O analista de negócio cria a especificação do processo utilizando a notação BPMN Utiliza uma ferramenta de modelagem](https://reader036.vdocuments.site/reader036/viewer/2022062911/5c02d77909d3f2a20a8b4889/html5/thumbnails/19.jpg)
Listando Processos É possível buscar processos por atividade atual ou por valor de variáveis informadas
para o processo
Processos que estão na atividade Delegar Para Avaliadores (caixa verde)
![Page 20: Desenvolvimento de SIGs Baseados em Modelos de Processos O analista de negócio cria a especificação do processo utilizando a notação BPMN Utiliza uma ferramenta de modelagem](https://reader036.vdocuments.site/reader036/viewer/2022062911/5c02d77909d3f2a20a8b4889/html5/thumbnails/20.jpg)
Completando atividade
Delegar Para Avaliadores
![Page 21: Desenvolvimento de SIGs Baseados em Modelos de Processos O analista de negócio cria a especificação do processo utilizando a notação BPMN Utiliza uma ferramenta de modelagem](https://reader036.vdocuments.site/reader036/viewer/2022062911/5c02d77909d3f2a20a8b4889/html5/thumbnails/21.jpg)
Completando atividade
![Page 22: Desenvolvimento de SIGs Baseados em Modelos de Processos O analista de negócio cria a especificação do processo utilizando a notação BPMN Utiliza uma ferramenta de modelagem](https://reader036.vdocuments.site/reader036/viewer/2022062911/5c02d77909d3f2a20a8b4889/html5/thumbnails/22.jpg)
Dados de Execução Durante a execução a engine armazena automaticamente alguns dados
Data de início/fim do ciclo de vida da atividade
Data em que a atividade começou a ser executada
Usuário que executou a atividade
Além disto, a engine também armazena os parâmetros informados durante a execução
![Page 23: Desenvolvimento de SIGs Baseados em Modelos de Processos O analista de negócio cria a especificação do processo utilizando a notação BPMN Utiliza uma ferramenta de modelagem](https://reader036.vdocuments.site/reader036/viewer/2022062911/5c02d77909d3f2a20a8b4889/html5/thumbnails/23.jpg)
Desvio da especificação A API lança uma excessão caso seja completada uma atividade que não esteja em
execução (não esteja verde)
A API prevê um método que permite forçar o desvio do fluxo para outra atividade que não esteja prevista
Usado para contemplar casos que não foram previstos pelo analista durante o processo de especificação do processo de negócio
Ao efetuar um desvio, é obrigatório informar um motivo (utilizado para melhoria de processos)
![Page 24: Desenvolvimento de SIGs Baseados em Modelos de Processos O analista de negócio cria a especificação do processo utilizando a notação BPMN Utiliza uma ferramenta de modelagem](https://reader036.vdocuments.site/reader036/viewer/2022062911/5c02d77909d3f2a20a8b4889/html5/thumbnails/24.jpg)
Discussão
Aplicações imediatas
Protocolo
Novas Funcionalidades
Adaptação de alguma funcionalidade existente
Refinar para especificidades da SINFO
Integrar membros da equipe da SINFO
Avaliação pelos arquitetos
Fedback
Duvidas?
![Page 25: Desenvolvimento de SIGs Baseados em Modelos de Processos O analista de negócio cria a especificação do processo utilizando a notação BPMN Utiliza uma ferramenta de modelagem](https://reader036.vdocuments.site/reader036/viewer/2022062911/5c02d77909d3f2a20a8b4889/html5/thumbnails/25.jpg)
![Page 26: Desenvolvimento de SIGs Baseados em Modelos de Processos O analista de negócio cria a especificação do processo utilizando a notação BPMN Utiliza uma ferramenta de modelagem](https://reader036.vdocuments.site/reader036/viewer/2022062911/5c02d77909d3f2a20a8b4889/html5/thumbnails/26.jpg)
Slides Backup (Fundamentação Teórica)
![Page 27: Desenvolvimento de SIGs Baseados em Modelos de Processos O analista de negócio cria a especificação do processo utilizando a notação BPMN Utiliza uma ferramenta de modelagem](https://reader036.vdocuments.site/reader036/viewer/2022062911/5c02d77909d3f2a20a8b4889/html5/thumbnails/27.jpg)
Referências Van Der Aalst, Wil MP, Arthur HM Ter Hofstede, and Mathias Weske. "Business
process management: A survey." Business process management. Springer Berlin Heidelberg, 2003. 1-12.
White, Stephen A. "Introduction to BPMN." IBM Cooperation 2.0 (2004): 0.
Poelmans, Stephan, Hajo A. Reijers, and Jan Recker. "Investigating the success of operational business process management systems." Information Technology and Management 14.4 (2013): 295-314.
![Page 28: Desenvolvimento de SIGs Baseados em Modelos de Processos O analista de negócio cria a especificação do processo utilizando a notação BPMN Utiliza uma ferramenta de modelagem](https://reader036.vdocuments.site/reader036/viewer/2022062911/5c02d77909d3f2a20a8b4889/html5/thumbnails/28.jpg)
Introdução O que é Business Process Management (BPM)?
Existem muitas definições de BPM
Nos anos 90, O mundo vivia um “Workflow Wave”
BPM foi considerado por muitos como o “próximo passo” depois do Workflow Wave
Muitos termos utilizados nos 90s evoluiram e alteraram de significado
Muitos artigos se dedicam a definir BPM e siglas relacionadas
Apesar das discussões, nitidamente o BPM surgiu como uma evolução de Workflow Management System (WFMS)
O que é um Workflow e o que é um Workflow Management System?
![Page 29: Desenvolvimento de SIGs Baseados em Modelos de Processos O analista de negócio cria a especificação do processo utilizando a notação BPMN Utiliza uma ferramenta de modelagem](https://reader036.vdocuments.site/reader036/viewer/2022062911/5c02d77909d3f2a20a8b4889/html5/thumbnails/29.jpg)
BPM vs WFMS Workflow:
“The automation of a business process, in whole or part, during which documents, information or tasks are passed from one participant to another for action, according to a set of procedural rules.” - Workflow Management Coalition (WfMC)
Workflow Management System (WFMS):
“A system that defines, creates and manages the execution of workflows through the use of software, running on one or more workflow engines, which is able to interpret the process definition, interact with workflow participants and, where required, invoke the use of IT tools and applications.”
Perceba o foco em software e execução...
![Page 30: Desenvolvimento de SIGs Baseados em Modelos de Processos O analista de negócio cria a especificação do processo utilizando a notação BPMN Utiliza uma ferramenta de modelagem](https://reader036.vdocuments.site/reader036/viewer/2022062911/5c02d77909d3f2a20a8b4889/html5/thumbnails/30.jpg)
BPM vs WFMS Com o passar dos anos, pesquisadores perceberam o foco em software muito
restritivo
Alguns termos foram evoluindo e muitos termos foram criados, incluindo BPM
BPM:
“Supporting business processes using methods, techniques, and software to design, enact, control, and analyze operational processes involving humans, organizations, applications, documents and other sources of information.” - Van Der Aalst et al.
Perceba o foco também em métodos, no nível operacional
![Page 31: Desenvolvimento de SIGs Baseados em Modelos de Processos O analista de negócio cria a especificação do processo utilizando a notação BPMN Utiliza uma ferramenta de modelagem](https://reader036.vdocuments.site/reader036/viewer/2022062911/5c02d77909d3f2a20a8b4889/html5/thumbnails/31.jpg)
BPMN Processos de Negócio precisam ter uma base formal
Não pode deixar margem para ambiguidade
É importante a existência de modelos que sejam entendidos por vários stakeholders (gerentes, analistas, devs, dev-ops, etc...)
Petri nets
UML
BPEL (web service composition)
BPMN
![Page 32: Desenvolvimento de SIGs Baseados em Modelos de Processos O analista de negócio cria a especificação do processo utilizando a notação BPMN Utiliza uma ferramenta de modelagem](https://reader036.vdocuments.site/reader036/viewer/2022062911/5c02d77909d3f2a20a8b4889/html5/thumbnails/32.jpg)
BPMN Business Process Modeling Notation
Linguagem visual
Baseado em flowcharting diagram
Foco no entendimento do processo por vários stakeholders
Criado por BPMI Notation Working Group para padronizar definições de processo
Padrão OMG
![Page 33: Desenvolvimento de SIGs Baseados em Modelos de Processos O analista de negócio cria a especificação do processo utilizando a notação BPMN Utiliza uma ferramenta de modelagem](https://reader036.vdocuments.site/reader036/viewer/2022062911/5c02d77909d3f2a20a8b4889/html5/thumbnails/33.jpg)
BPMN
![Page 34: Desenvolvimento de SIGs Baseados em Modelos de Processos O analista de negócio cria a especificação do processo utilizando a notação BPMN Utiliza uma ferramenta de modelagem](https://reader036.vdocuments.site/reader036/viewer/2022062911/5c02d77909d3f2a20a8b4889/html5/thumbnails/34.jpg)
BPMS As empresas evoluiram os WFMS para BPMS, agregando funcionalidades de
gerência, monitoramento e análise de processos
“A business process management system (BPMS) is generic software that supports the modeling, analysis and enactment of business processes.” - Poelmans et al.
Plataforma de suporte ao BPM
jBPM
Red Hat JBoss BPM Suite
Bizagi BPM Suite
Oracle BPM
![Page 35: Desenvolvimento de SIGs Baseados em Modelos de Processos O analista de negócio cria a especificação do processo utilizando a notação BPMN Utiliza uma ferramenta de modelagem](https://reader036.vdocuments.site/reader036/viewer/2022062911/5c02d77909d3f2a20a8b4889/html5/thumbnails/35.jpg)
Alguns Benefísios do BPM Melhora a comunicação (base comum de conhecimento de processos)
Incluindo comunicação interempresarial
Identificar problemas de processo antes da implementação
Inclui possibilidade de simulação
Análise de modelos pode ser utilizada para melhoria de processos
Identificar gargalos ou atividades desnecessárias
Melhoria de roteamento e alocação de atividades
Workflow
Alinhamento da implementação com expectativas da gerência
![Page 36: Desenvolvimento de SIGs Baseados em Modelos de Processos O analista de negócio cria a especificação do processo utilizando a notação BPMN Utiliza uma ferramenta de modelagem](https://reader036.vdocuments.site/reader036/viewer/2022062911/5c02d77909d3f2a20a8b4889/html5/thumbnails/36.jpg)
Contexto Atual Alguns autores dizem que a utilização de BPMS não “bombou” como deveria, porém
grandes empresas fazem uso
É visível os benefícios de inserir BPM na arquitetura das empresas
Entretanto, aplicar BPM não é uma questão apenas de TI, mas uma mudança de cultura na empresa!
Requer uma adaptação arquitetural, devido a existência de sistemas legados
Migrar os dados para um ambiente BPM, muitas vezes, é uma tarefa muito complicada
“There is no free lunch”