5 fatores de sucesso para enfrentar os problemas de integrações na automação de processos

Tendo participado de vários de projetos de automação de processos, se tem algo que podemos afirmar como sendo um denominador comum a projetos de automação em empresas das mais diferentes áreas, é dos problemas que surgem quando existe necessidade de integração do processo automatizado com outros sistemas/organizações.

O fato é que problemas relacionados a integrações invariavelmente vão ocorrer, apenas variando de acordo com o grau de complexidade do processo e das integrações em si. Por outro lado, existem sim alguns fatores e cuidados que podem evitar problemas ou facilitar a sua resolução.

Ter conhecimento destes fatores no projeto vai prepará-lo melhor para o que vem pela frente.

Vamos a eles?

1. Ter uma boa governança dos serviços/integrações/funcionalidades disponíveis

Durante a automação do processo, é comum detectar uma ou mais necessidades de integração (ex: salvar alguma informação digitada durante a execução do processo num banco de dados).

Em nossa experiência, boa parte dos problemas que ocorrem nestes casos se devem a falta de governança da organização em relação aos serviços, integrações e sistemas existentes, ou seja, não se sabe se aquela necessidade de integração do processo já se encontra disponível (ex: através de um webservice).

A consequência disso é a necessidade de se discutir do zero esta integração, fazer orçamento e incluí-la no escopo, o que leva a aumento do prazo e custo do projeto. Um fator que minimiza bastante estes problemas é se a organização já trabalha numa Arquitetura Orientada a Serviços, ou simplesmente SOA (mais informações aqui, aqui e aqui), bem como dispor de ferramentas de governança/pesquisa de serviços.

2. Prever o modelo de dados do processo adequado as necessidades de integração

Quando um processo será automatizado, deve-se previamente fazer uma análise para definir o “modelo de dados” do processo, ou seja, as informações que serão visualizadas e manipuladas ao longo da execução do processo (veja aqui para mais informações).

A definição deste modelo de dados costuma ser mais transparente quando estamos falando de informações que ficam visíveis no formulário eletrônico do processo, ou seja, as informações que os usuários vão visualizar/editar ao acessar as tarefas. Mas infelizmente não é tão óbvio quando falamos de integrações.

Por exemplo, se é necessário chamar uma integração para atualizar uma informação no ERP a partir do processo automatizado, pode se descobrir que uma das informações obrigatórias para se chamar esta integração é específica daquele sistema (ex: um determinado identificador), e esta informação não foi prevista inicialmente no modelo de dados.

Com frequência, inclusive, ocorre a situação de que para obter a informação que você precisa para chamar uma integração, é necessário chamar outra integração!

Este fator costuma gerar muitas dores de cabeça, em muitos casos não é fácil prever todas as possibilidades.

3. Ter conhecimento das funcionalidades e limitações do framework de integração do BPMS

Mesmo que inicialmente a empresa tenha adquirido uma solução de BPMS para um processo pontual ou para apenas gerenciar fluxo de trabalho sem integrações com outros sistemas, o fato é que as necessidades da organização mudam. Quando chegar o momento em que as iniciativas de automação de processos passarem a demandar mais inteligência, com integração de dados existentes em outros sistemas, é importante conhecer as funcionalidades e limitações de integração do BPMS.

Por exemplo, alguns questionamentos comuns nestes casos:

  • Posso chamar webservices através do BPMS?
  • Consigo conectar diretamente num banco de dados através do BPMS?
  • Existem adaptadores nativos que permitem conexões com sistemas conhecidos no mercado?
  • O BPMS me permite realizar transformações complexas de dados ao chamar ou obter o retorno de um webservice?
  • Existe algum formato específico de assinatura do serviço para poder ser acionado?
  • Com que tecnologias o BPMS permite fazer integração? Soap? Rest? Corba? EJB? .net? Controle de arquivos no filesystem? Outros?

Este conhecimento é importante para detectar eventuais restrições da ferramenta, identificar a necessidade de utilizar outras ferramentas em conjunto ao BPMS, ou no pior dos cenários até a troca do próprio BPMS. Por exemplo: se o BPMS não é capaz de fazer transformações de dados complexas ao chamar um webservice, então possivelmente será necessária outra ferramenta (ex: uma ferramenta de barramento de serviços) que fará esta transformação no lugar do BPMS, expondo para o BPMS uma versão simplificada do serviço. Neste mesmo exemplo, pode ser que esta ferramenta adicional não exista na organização, e precisa ser previsto a sua contratação e implantação, dentro do escopo do projeto de automação.

Entenda a importância de uma avaliação detalhada sobre recursos ​dos produtos ao adquirir uma plataforma ​BPMS com ​esta coleção de artigos sobre Seleção de Plataformas de BPM.

4. Equipes dos sistemas disponíveis para apoiar o projeto

Parece chover no molhado, afinal se um processo automatizado precisa se comunicar com o sistema X, então a equipe de apoio deste sistema tem que estar envolvida, certo? Bem, temos algumas histórias de iniciativas de automação de processos aprovadas em nível executivo, mas que durante o andamento do projeto as equipes dos sistemas estavam em uma das seguintes condições:

  • Não estavam sabendo do projeto – o popular “cair de paraquedas”  (sim, é comum);
  • Sabiam do projeto e que em algum momento iriam se envolver, mas não tinham nenhum contexto dos objetivos do projeto e o seu papel (tem na prática os mesmos efeitos nocivos da situação anterior);
  • Sabiam do projeto e tinham o contexto, mas não tiveram a alocação reservada para apoiar o projeto (“Eu conheço o projeto e entendo o que devo fazer, mas não sei se vou conseguir ajudá-los ainda neste mês…”).

Quando as equipes dos sistemas começam a se envolver no projeto, é comum surgirem problemas e limitações que não se tinha noção, o que pode ocasionar necessidade de se rediscutir a solução. Aqui o apoio da liderança executiva e da gestão de projetos é fundamental para minimizar os problemas, reforçando a alocação das equipes dos sistemas envolvidos, para se envolverem no projeto de automação o quanto antes, preferencialmente ainda durante as fases de análise e projeto.

5. Atenção à  etapa de testes

Se existem integrações no processo, obviamente as mesmas precisam ser bem testadas, envolvendo as equipes responsáveis pelos sistemas de origem/destino das informações.

Ocorre que na automação de processos, assim como no desenvolvimento tradicional de sistemas, pode ocorrer a tendência de dar ênfase maior apenas a “interface” do processo, que no caso do BPMS são os formulários das atividades enviadas para os usuários. Mas obviamente as integrações que são feitas automaticamente pelo processo devem ser testadas com o mesmo cuidado, verificando se estão retornando ou gravando as informações corretamente.

Isto comumente é realizado utilizando os recursos de rastreamento/auditoria presentes das próprias ferramentas de BPMS (verificando o que está recebendo ou enviando de informações), bem como acessando diretamente o sistema com o qual se tem a integração (para verificar se os dados sendo obtidos/atualizados pelo BPMS estão corretos).

Estas verificações normalmente exigem um conhecimento técnico maior (ex: visualizar payloads em XML, acessar as informações diretamente em tabelas do banco de dados do sistema em questão, etc).

 

Sem dúvida existem outros fatores envolvidos, mas acreditamos que os fatores citados acima dão um bom norte para a equipe do projeto se preparar e enfrentar os problemas que podem ocorrer nas integrações durante a automação de processos.

 

Definindo a equipe nos projetos de BPM

Uma das primeiras dúvidas que costumam ocorrer quando uma empresa começa sua iniciativa de BPM é quais pessoas e perfis deveriam ser envolvidos nos trabalhos. Outro fator complicador é o fato de que podem existir variações na equipe envolvida, dependendo de etapa em que o projeto BPM se encontra.

Vamos começar revisitando, brevemente, as principais etapas do ciclo de melhoria de processos:

  • Modelagem de processos: neste momento o objetivo é modelar o processo atual em execução, gerando o modelo AS IS. Não se entra no mérito do quanto eficiente e efetivo o processo está sendo, ou quais são seus problemas/oportunidades de melhoria. As pessoas envolvidas nesta etapa, assim, devem ter conhecimento de como o processo é de fato executado na organização, mas não necessariamente precisam conhecer todos os seus problemas e ter uma visão mais abrangente
  • Análise de Processos: esta etapa tem o objetivo de coletar informações sobre o desempenho do processo, ou seja, fazer um julgamento de valor do quão adequado e eficiente um processo está sendo. Desta forma as pessoas escolhidas para atuar nesta etapa, além de conhecerem o processo, devem ser capazes também de identificar os problemas que ocorrem no processo e ter uma visão mais abrangente
  • Redesenho de Processos: esta etapa tem o objetivo de definir melhorias num processo para torná-lo mais eficiente e alinhado com os objetivos da organização, gerando o modelo TO BE. As pessoas escolhidas para atuar nesta etapa devem ser representativas dos papéis do processo, sendo importante estarem motivadas com a iniciativa BPM e carentes da mudança, de forma a auxiliar de maneira proativa a definição da visão futura do processo
  • Automação de processos: nesta etapa, o processo TO BE definido na etapa de Melhoria de Processos (TO BE) sofrerá melhorias do ponto de vista tecnológico, de forma a deixá-lo mais rápido, eficiente e automatizado onde for possível

Agora que relembramos as etapas, vamos listar os papéis comumente envolvidos em cada uma delas, descrevendo as suas típicas responsabilidades.

MODELAGEM DE PROCESSOS

Analista de Processos: atua como facilitador, coletando, reunindo e organizando informações do processo, criando o modelo do processo no nível de informação mais adequado
Representante Funcional: contribui com informações sobre as atividades que realiza durante a execução do processo
Analista de Sistemas/Negócios: apoia com informações sobre os sistemas de informação utilizados no processo
Especialista no Assunto: contribui com visão especializada sobre algum aspecto do negócio do processo (ex: um médico de alguma especialidade; num processo de venda online, seria um colaborador com profundo conhecimento da venda com cartões de crédito)

ANÁLISE DE PROCESSOS

Dono do Processo: avalia e aprova o resultado da análise, garante que a investigação dos problemas não será utilizada para achar culpados, mas sim como um meio de melhorar o processo e a organização
Analista de Sistemas/Negócios: apoia na identificação de problemas e limitações dos sistemas atuais
Representante/Líder Funcional: indica os pontos fortes, problemas e oportunidades de melhoria na execução das suas atividades do processo
Especialistas no Assunto: apoia no detalhamento de aspectos de uma determinada função do negócio
Analista de processos: facilitador que conduz o levantamento e documentação do diagnóstico atual do processo

REDESENHO DE PROCESSOS

Liderança Executiva: assegura que o processo irá atender as necessidades da organização, dando suporte e concordando com as mudanças
Dono do Processo: ajuda a garantir que o novo desenho se adéqua aos objetivos requeridos da organização
Representante Funcional/Participantes/Partes Interessadas: qualquer um que participe ou tenha atividades que afetem o processo. Em empresas maiores, pode ser a uma pessoa que represente uma classe. São fundamentais e trabalham com o Dono do Processo, para garantir que seus interesses no desempenho do novo processo sejam atendidos
Cliente: quando possível, envolvê-lo nesta fase aumenta as chances de sucesso
Analista de processos: atua como facilitador e lidera a equipe no desenvolvimento do desenho futuro do processo

AUTOMAÇÃO DE PROCESSOS

Dono do Processo: responsável pelos resultados do processo. Envolve-se na aprovação da proposição de melhorias e na apresentação da homologação, realizando a aprovação da solução automatizada
Gerente de Projetos: responsável por planejar e gerenciar as atividades do projeto de automação. Envolve-se na gestão da comunicação, tempo e custos do projeto em todas as etapas
Analista de Processos: apoia na revisão do processo, garantindo a integridade do negócio durante a avaliação das mudanças tecnológicas. Compartilha responsabilidade com o Analista de Sistemas na etapa de Proposição de Melhorias, envolve-se na validação do processo durante a homologação e implantação
Analista de Sistemas/Negócio: deve conhecer as funcionalidades disponíveis pela tecnologia a ser utilizada na automatização do processo. Compartilha responsabilidade com o Analista de Processos na etapa de Proposição de Melhorias. Responsável pelo detalhamento na implementação, apoia nas etapas de homologação e implantação
Arquiteto de Sistemas: profissional conhecedor da arquitetura de sistemas que suportará a automação de processos. Envolve-se na etapa de Implementação apoiando no projeto técnico com definições de infraestrutura de software
Desenvolvedor: profissionais que realizarão a implementação da automatização do processo, desenvolvendo os componentes de software conforme o detalhamento funcional do Analista de Sistemas/Negócio. Participam da etapa de implementação e de homologação através de correções e ajustes antes da implantação
Equipe de testes: profissionais responsáveis pela garantia da qualidade da solução. Verifica a aderência da solução à especificação funcional, sendo responsáveis pelo planejamento, elaboração e aplicação de roteiros de testes. Envolve-se nas etapas de implementação e homologação
Representante Funcional/Participantes do Processo: participam das etapas de Proposição de Melhorias para definir os requisitos e de Implementação para o detalhamento. Responsáveis pela homologação, validando a solução frente às expectativas e necessidades do negócio, através da verificação da aderência aos requisitos

OUTROS PAPÉIS IMPORTANTES NO GERENCIAMENTO POR PROCESSOS

Além disso, temos também papéis que costumam ser transversais, que dependendo do contexto e do papel podem se envolver em uma, algumas ou em todas as etapas:

Patrocinador e Dono do Processo: orientam sobre os objetivos da iniciativa e e asseguram que o resultado de cada uma das etapas estão adequados e alinhados aos objetivos da organização
Cliente: apoiando o levantamento e definições nas etapas
Designer de processos: atuando em conjunto com o Analista de Processos, focado na elaboração da representação gráfica dos processos
Arquiteto de Processos: responsável pela governança e manutenção do repositório de processos

Perceba que as definições acima refletem cenários comuns de ocorrer nas organizações, mas que não precisam ser seguidos à risca. Alguns exemplos em que é natural, e até esperado, existirem diferenças:

  • É muito frequente que algumas pessoas acumulem papéis/funções. Por exemplo:
    • O Dono do Processo também atua como Representante Funcional de alguma parte do processo
    • O Analista de Sistemas também é o responsável pelos testes
    • etc
  • Podemos ter projetos mais simples, em que não será necessária a participação de um ou mais papéis. Por exemplo, numa automação de processos com poucas integrações com sistemas externos, pode não ser necessária a participação de um Arquiteto de Sistemas
  • Se estamos falando de uma organização que está começando sua iniciativa de BPM, alguns papéis podem nem existir ainda, e precisarão ser definidos posteriormente, como costuma ser o caso do Dono do Processo

No final de contas, independente da quantidade de pessoas, nome dos papéis e quais papéis se deseja envolver formalmente na iniciativa, o importante é todas as pessoas chave estarem envolvidas, bem como todas as informações necessárias estarem disponíveis. Da nossa experiência, estes fatores aumentam consideravelmente as chances de um projeto de sucesso. 🙂

 

Problemas comuns na modelagem de processos em BPMN III – Uso de tarefas para sinalizar o resultado de gateways

Continuando a série sobre problemas comuns na modelagem de processos em BPMN (veja os artigos anteriores aqui e aqui), hoje iremos falar de uma situação bastante recorrente que constatamos nos nossos treinamentos, que é o uso de tarefas para sinalizar o resultado de gateways no processo.

Para explicar melhor o que queremos dizer, veja o exemplo abaixo:

Perceba que a pessoa que modelou o processo, para demonstrar os resultados do gateway relativo à atividade “Avaliar Reembolso”, optou por criar duas tarefas em cada um dos fluxos de sequencia ligados ao gateway, nomeando-as como “Aprovado” e “Reprovado”.

O elemento Tarefa (Task) de BPMN se refere a um trabalho que é efetivamente realizado dentro de um processo. Uma tarefa deve, essencialmente, indicar uma ação a ser realizada, que consuma algum recurso (como a tarefa “Avaliar Reembolso” no exemplo acima).

Logo, concluímos que não faz sentido utilizar uma tarefa apenas para indicar uma mudança de status ou sinalizar os resultados de um gateway.

Qual então seria a forma correta de modelar este caso? Veja no exemplo atualizado abaixo:

A abordagem correta (e mais simples!) é simplesmente nomear os fluxos de sequencia ligados ao gateway. No caso acima, cada fluxo de sequência foi nomeado com os resultados possíveis da tarefa de Avaliar reembolso, ou seja, “Aprovado” ou “Reprovado”.

Com isto, o desenho do processo fica mais limpo e fácil de interpretar. Simples e prático! 🙂

Problemas comuns na modelagem de processos em BPMN II – Uso de eventos de mensagens para comunicação dentro do processo

Continuando a série de artigos que falam de erros, problemas e inconsistências básicas de modelagem (veja artigo já publicado aqui), vamos falar hoje de outra situação bem comum, que é a utilização de eventos de mensagem para comunicação entre papéis/raias dentro de um mesmo processo.

Vamos imaginar um processo ponta a ponta de uma organização, como por exemplo um processo de compras, onde em determinado trecho temos uma comunicação entre dois papéis ou áreas diferentes que atuam neste processo, no caso uma comunicação para o solicitante da compra de que a mercadoria foi recebida. Se olharmos apenas uma definição genérica do evento do tipo message, temos que um evento deste tipo trata de “uma comunicação entre 2 participantes do processo”.

Partindo deste pressuposto inicial, alguém poderia imaginar uma modelagem como esta:

Perceba que foram utilizados dois eventos do tipo message, um de envio (throw) na raia de Compras e outro de recebimento (catch) na raia do Solicitante.

Qual o problema desta abordagem? Basta nos aprofundarmos um pouco mais na especificação oficial de BPMN (link), para encontramos o seguinte trecho na seção “10.4.1 Concepts“:

“Messages are triggers, which are generated OUTSIDE of the Pool they are published in. They typically describe B2B communication between different Processes in different Pools.”

Em tradução literal: mensagens são gatilhos gerados fora da pool onde estão publicados, descrevendo tipicamente a comunicação B2B entre diferentes processos em diferentes pools.

Assim, o evento do tipo message só deve ser usado para comunicação com participantes EXTERNOS ao processo, não devendo ser utilizado para comunicar com um participante que já faz parte (ou seja, já é uma raia) do processo.

Partindo deste novo conhecimento adquirido, como ficaria então o processo descrito acima? Para isto, precisaríamos saber um pouco mais sobre de que forma é feita a comunicação entre a área de compras e o solicitante. Supondo, por exemplo, que a comunicação fosse realizada como um email disparado automaticamente pelo sistema (ou pelo processo automatizado), poderíamos ter então este desenho:

Neste caso, em vez do par de eventos do tipo message de envio e recebimento, teríamos apenas uma service task indicando o envio de email de forma automática. Perceba que o recebimento de email pelo solicitante não é uma atividade que envolva trabalho (consumo de recurso) de fato. Assim, receber um email é uma situação passiva e consequência direta do envio do email, portanto não é necessário uma tarefa para receber o email na raia do solicitante.

Problemas comuns na modelagem de processos em BPMN – I – Atividades de transferência do processo

Vamos iniciar hoje uma série de artigos que pretendemos publicar ao longo dos próximos meses, falando especificamente de erros, problemas e inconsistências básicas de modelagem, comuns de ocorrer quando começamos a modelar processos e ainda não conhecemos muito bem a notação BPMN.

Pra começar, vamos falar de uma questão muito frequente, que se refere ao encaminhamento de um papel do processo para outro. Vamos imaginar um processo de Viagens, que foi descrito pela área de negócio da seguinte forma:

  1. Um colaborador solicita a viagem
  2. Solicitação de viagem é encaminhada (atenção especial ao uso desta palavra) para uma área interna chamada “Administrativo”, que tem a responsabilidade de pesquisar e mandar cotações da viagem para o solicitante
  3. Cotações são então encaminhadas de volta para o Solicitante avaliar
  4. Se a cotação for aprovada, processo é direcionado novamente para setor Administrativo comprar os tickets, do contrário processo é direcionado de volta para o setor Administrativo refazer as cotações

Agora veja como o modelador decidiu, inicialmente, representar este processo:

Note que no caso da primeira transferência do processo, do papel “Solicitante” para o papel “Administrativo”, foram criadas 2 atividades:

  • Uma atividade na raia do “Solicitante”, chamada “Encaminhar Viagem para Cotação para Administrativo”
  • Uma atividade na raia do “Administrativo”, chamada “Receber Viagem para Cotação do Solicitante”

O mesmo comportamento foi modelado posteriormente, na transferência do papel “Administrativo” para o papel “Solicitante”, com as atividades “Encaminhar Cotações para Solicitante” e “Receber Cotações do Administrativo”, respectivamente.

Este trecho do processo não está errado do ponto de vista da notação BPMN. Mas o que temos aqui, no entanto, são atividades que na prática não precisariam existir. O modelador optou por explicitar a passagem de bastão de um papel a outro através de atividades de transferência do processo, mas isso não é necessário: em BPMN, o próprio fluxo de sequencia já tem o papel de representar/realizar esta transferência de responsabilidade dentro do processo. Neste caso, como ficaria o desenho do processo ajustado? Veja a seguir:
Perceba que com esta mudança, deixamos o processo mais simples e limpo, ao mesmo tempo mantemos o comportamento esperado.

O conceito de utilizar apenas fluxos de sequência para representar a transferência de atividades dentro do processo costuma se aplicar mesmo que exista, de fato, um encaminhamento físico sendo realizado. Por exemplo, este processo de viagens poderia ser realizado em papel, implicando que o solicitante tivesse que levar fisicamente a solicitação impressa e assinada para o setor Administrativo. Mas mesmo neste caso não seria necessário modelar as atividades de transferência. Caso fosse necessário ressaltar este aspecto de encaminhamento físico de algo, poderiam ser utilizados outros recursos para representar, como adicionar uma anotação ao processo ou documentar esta característica do processo nos procedimentos das atividades.

Um cenário em que poderia ser necessária uma atividade para encaminhar ou receber o processo seria num caso em que as atividades são reconhecidamente manuais, realizadas no plano físico, e que possuem procedimentos adicionais, como protocolar a chamada do documento esperado, carimbar, etc. Por exemplo, num processo logístico poderíamos ter uma atividade da área de “Recebimento” chamada “Enviar material para Estoque”, onde “Estoque” é uma área da organização:

Note que, em linhas gerais, continuamos falando do mesmo exemplo citado no Processo de Viagens: a passagem de bastão de uma área para outra. Se o ato de encaminhamento físico do material de um lugar para outro envolve procedimentos adicionais e tem um tempo de execução relevante (vamos imaginar neste caso uma grande planta industrial, em que seria necessário percorrer a distância entre um setor para outro), ou seja, a atividade consome efetivamente recursos, então neste caso faria mais sentido criar uma atividade de transferência.

Fique ligado para outros artigos desta série no futuro! 😉

BPMS na nuvem – uma visão geral

Por muito tempo as ferramentas de BPMS só poderiam ser utilizadas após serem instaladas no ambiente da organização. Era necessária então a instalação do software em um servidor, após esta instalação era disponibilizada uma URL para os usuários acessarem o ambiente através de um navegador Web (normalmente para execução e acompanhamento dos processos automatizados). Também era comum a necessidade de instalar algum software no computador dos usuários (normalmente para fins de modelagem e automação). Fornecedores de ferramentas costumam referenciar isto como a versão “on premises” (local) da ferramenta de BPMS.

Assim, mesmo que o objetivo fosse apenas realizar testes rápidos de usabilidade e recursos da ferramenta, existia um caminho tortuoso que precisava ser seguido:

  • Fazer o download da ferramenta, onde os arquivos de instalação em muitos casos eram grandes, exigindo uma boa conexão com a internet e um considerável tempo de download;
  • Disponibilizar um servidor em que a ferramenta pudesse ser instalada e configurada, onde normalmente são exigidas máquinas mais parrudas, com múltiplos processadores e grande quantidade de memória;
  • Realizar o  processo de instalação, que por vezes era desafiador, exigindo pessoas com conhecimento técnico (muitas vezes não existente na organização, então um treinamento ou auto-estudo era necessário), incluindo a disponibilização de um banco de dados existente, que a ferramenta possa utilizar para armazenar as informações.

Depois destes passos é que, finalmente, a ferramenta se encontrava disponível para utilização pelos usuários.

Note que os passos acima se referem apenas a disponibilização de um ambiente de desenvolvimento/testes. A situação fica mais complicada se estivermos falando de instalação em ambiente de produção, em que outros fatores devem ser levados em consideração e onde costuma ser necessário:

  • Mensurar o hardware adequado para suportar a utilização atual (e futura) da ferramenta na organização;
  • Avaliar questões relativas a backup/restore;
  • Avaliar estabelecimento de máquinas em cluster e ambiente de pronta disponibilidade;
  • Avaliar regras de acesso ao ambiente de fora da organização;
  • Definir Regras de segurança, SSL;
  • Avaliar critérios e regras para aplicação de patches e novas versões;
  • Etc.

Parece complicado, não? De fato é. E este cenário ainda é uma realidade em várias ferramentas existentes no mercado.

Mas o que acontece então se a organização não tem os recursos (humanos/tecnológicos/financeiros) para viabilizar a instalação local de uma ferramenta? Significa que a adoção de uma ferramenta de BPMS, na prática, só se aplica a grandes organizações, que dispõe de mais recursos e capacidade de investimento?

A boa notícia é que com a popularização de BPM, um novo tipo de ferramenta está sendo oferecido no mercado, como alternativas ao modelo “local” (on premises) tradicional. Estamos falando aqui de soluções de BPMS na nuvem.

Uma solução de BPMS oferecida na nuvem tem como principais características:

  • Nenhuma instalação local é necessária no ambiente da organização e nos computadores dos usuários;
  • O ambiente de BPMS é disponibilizado pelo fabricante em seus próprios servidores, onde normalmente são oferecidos critérios de alta disponibilidade, segurança, redundância e backup;
  • Todo o acesso à ferramenta é feito via internet através de um browser;
  • A configuração de usuários é normalmente feita dentro da área de administração da ferramenta. Dependendo da ferramenta, existem possibilidades de integração com repositórios de usuários da organização;

Mas quais seriam os benefícios que podemos ter com a adoção de uma solução em nuvem? Vejamos alguns dos principais:

  •  Baixo investimento inicial para adquirir a solução, visto que não é necessário disponibilizar uma infraestrutura interna para instalação e manutenção da solução, bem como não existe um produto a ser “comprado” (o que existe é um modelo de subscrição);
  • Patches de correção e melhorias da ferramenta são garantidas e executadas automaticamente pelo fornecedor, enquanto durar o licenciamento;
  • O licenciamento costuma ser por usuário, o que pode ser bastante interessante e gerar economia, dependendo da quantidade de usuários que irão utilizar a ferramenta;
  • Camadas mais claramente separadas da lógica do negócio e dos sistemas de informação, visto que em se tratando de ferramenta disponibilizada em ambiente web, normalmente temos uma solução mais amigável e menos técnica. Isto incentiva um maior envolvimento da área de negócio em todo o ciclo de modelagem e implementação de processos. Podendo chegar, inclusive, na  possibilidade das próprias áreas modelarem e automatizarem processos (veja aqui o post em que discutimos esta questão);
  • Projetos de implementação evolutivos, em que um processo pode ser rapidamente colocado para ser executado, permitindo que ao longo do tempo novas melhorias e integrações sejam disponibilizados;
  • O conceito “Quick wins” (ganhos rápidos) são potencializados na utilização de uma solução em nuvem: como não existe a preocupação com disponibilização e manutenção de infraestrutura, pode-se partir diretamente para os projetos, gerando resultados mais rapidamente.

Parece bom, não? Mas, como nem tudo são flores, achamos importante destacar também algumas das possíveis limitações deste formato:

  •  Com a solução em nuvem, existe a perda de controle em relação ao ambiente e aos dados  informados, podendo levar a questões relacionadas à auditoria e à segurança das informações, e onde os dados serão armazenados. Dependendo das políticas adotadas pela organização, isso pode até inviabilizar a contratação da solução;
  • Normalmente não existe acesso direto aos servidores da solução, então a capacidade de visualizar os logs pode ser limitada, o que leva a mais dificuldades para avaliar e solucionar problemas na execução dos processos, em relação a uma solução instalada localmente;
  • A aplicação automática de patches e evoluções pelo fornecedor pode eventualmente gerar problemas de compatibilidade em processos/projetos existentes;
  • Dependendo da quantidade de usuários que forem utilizar a solução, o licenciamento por usuário poderá elevar o valor da contratação, podendo inclusive a chegar a valores similares a contratação tradicional (on premises);
  • Nos casos das ferramentas de BPMS que também oferecem a versão on premises, a versão em nuvem costuma ser menos robusta e com menos recursos disponíveis (ao menos neste momento). As capacidades de integração dos processos com sistemas existentes também costumam ser mais restritas (normalmente se encontra disponível integração via webservices);
  • Como estamos falando do conceito de subscrição, não existe a opção de ser “dono” da solução e poder assumir totalmente a ferramenta no futuro, algo que pode ser importante para algumas organizações.

Dados os prós e os contras, será que devo adotar uma solução em nuvem? Não existe uma resposta definitiva sobre isto. No final das contas cabe a cada organização fazer uma auto avaliação, pesar os pontos positivos e negativos, e avaliar que tipo de solução atende mais as suas necessidades, seja uma solução em nuvem ou local.

O que podemos afirmar é que a disponibilização de solução de BPMS em nuvem é um caminho sem volta. Grande parte dos fabricantes já oferece ou está procurando oferecer a sua versão da solução em nuvem, justamente pelo apelo e facilidade de utilização.

A tendência é de uma evolução e uma maturidade cada vez maiores das soluções de BPMS ofertadas na nuvem, oferecendo mais opções de escolha para as organizações, e por fim permitindo a um universo maior de organizações poderem desfrutar dos benefícios de BPM!

Usuários de negócio automatizando processos com ferramentas BPMS – será o adeus à TI?

Com múltiplas funcionalidades e novos recursos sendo incluídos periodicamente, as ferramentas de BPMS (Business Process Management Systems) tem se destacado como uma das categorias de software mais abrangentes disponíveis no mercado atualmente. A promessa de juntar num mesmo mundo a área de processos, de negócio e TI, através dos recursos de modelagem, análise, redesenho, automação e monitoramento de processos, certamente vem chamando a atenção de muitas organizações, que buscam melhorar seus processos e ter mais agilidade e competitividade.

Com a intenção de destacar a sua ferramenta das demais, é muito frequente nos depararmos com o discurso de fornecedores das ferramentas de BPM contendo frases de impacto marcantes, mais ou menos nesta linha (obs: nenhuma frase é real):

  • “Ferramenta de código zero! Não precisa de uma linha sequer de programação!”;
  • “Não dependa mais da TI!”;
  • “Coloque todo o poder nas mãos da área de negócio!”
  • “Dê aos usuários a possibilidade de alterar e modificar os processos em tempo real!”

Mas então… o quão próximos estamos da própria área de negócio começar a desenhar e automatizar processos, sem necessitar do envolvimento da TI?

De cara, vamos esclarecer um ponto bem importante: automação de processos ainda é, em grande parte, desenvolvimento de software. O que muda em relação ao desenvolvimento de software convencional é apenas a percepção do usuário final do que estaria pronto ou não. Se temos uma aplicação web sendo desenvolvida e elaboramos um protótipo HTML pra fazer uma apresentação preliminar ao usuário final, não raro o feedback recebido é: “Que legal, está pronto?”. Já num projeto de automação de processos, temos um lindo processo modelado em BPMN na ferramenta, o que com alguma frequência também leva os usuários a mesma conclusão: “Mas o processo já está todo desenhado na ferramenta! O que está faltando?”. Ora, pode estar faltando tudo! 🙂

O fato de termos um processo modelado em BPMN dentro da ferramenta de BPMS, não significa que ele está pronto pra ser executado, ou que qualquer pessoa com conhecimento em BPMN tenha necessariamente condições de automatizá-lo. Isto ocorre por (dentre outros) vários motivos:

  • É necessário definir o modelo de dados do processo, que são todos os atributos/informações necessárias durante a execução do processo. Isto pode a princípio parecer uma tarefa simples de criar os mesmos campos que haveria em um formulário de papel ou numa planilha eletrônica, mas o processo precisará de mais informações do que isso. Desde informações dinâmicas que aparecem na lista de trabalho, a informações que aparecem no detalhamento das atividades ou mesmo atributos puramente técnicos, invisíveis ao usuário e que só servem para possibilitar a implantação de algum requisito;
  • É necessário conhecimento de integrações de sistemas, visto que em grande maioria dos casos, um processo automatizado tem integração com um ou mais sistemas, para buscar ou gravar informações que são manipuladas no processo. É possível automatizar um processo sem integrações, mas a sua inteligência ficará bastante limitada. Por exemplo, se um aprovador precisa de uma informação que já existe em outro sistema para tomar uma decisão, por quê não faríamos uma integração para buscar este dado, e mostrar a ele na hora de realizar a tarefa? Se já existe um cadastro de fornecedores, por que não fazer uma integração para buscar uma lista de fornecedores, facilitando o preenchimento de uma tarefa e evitando que o usuário tenha que ficar digitando todos os dados?
  • É necessário conhecer como fazer a atribuição dos papéis (roles) aos usuários na ferramenta, sendo frequentemente necessária integração com repositórios de usuários (ex: Active Directory). É possível fazer atribuição direta (“de/para”) de roles do processo para grupos de usuários criados na própria ferramenta de BPMS, mas em cenários reais de automação, muito provavelmente isto não será o suficiente e algum tipo de integração com sistemas ou repositórios de usuários será necessária;
  • É necessário conhecimento de como a ferramenta de BPMS implementa os padrões de workflow/BPMN. Por exemplo, como implementar um subprocesso multi-instance na ferramenta? O fato de marcar um “check” em alguma tela da ferramenta não significa que o comportamento esperado vai ser realizado. É necessário que o usuário de negócio saiba exatamente as implicações, em termos de automação de processos, de um subprocesso multi-instance;
  • É necessário definir e desenvolver todas as interfaces de usuário. A ferramenta de BPM pode oferecer recursos de criação de formulários eletrônicos amigáveis e com pouco código, o que na primeira vista possibilitará ao usuário a criação rápida de formulários eletrônicos. Mas em boa parte das soluções de BPMS é necessário conhecimento mais técnico para conectar este formulário ao modelo de dados do processo, plugar as integrações necessárias (sempre elas!) e definir regras de validação e interface, que não raro exigem a criação de linhas de código de software.

Talvez você agora esteja achando que a resposta para a pergunta do título seja “Não”, certo? Ou talvez esteja achando que os discursos de marketing das ferramentas coloquem uma pressão exagerada nas áreas de negócio, influenciando a tentar resolver todos os seus problemas sozinhas.

A boa notícia é: nem tanto ao mar, nem tanto a terra. Dependendo do BPMS sendo utilizado, se estivermos falamos de um processo simples, sem integração com sistemas externos, com regras de negócio e de interface básicas, então apenas o treinamento na ferramenta poderá sim permitir avanços por usuários de negócio.

Mas não podemos deixar de comentar que os melhores resultados são obtidos quando TI e negócio trabalham juntos, ou seja, existe colaboração na automação de processos. A boa notícia é que as ferramentas de BPMS tem evoluindo muito para reforçar este trabalho colaborativo, onde usuários de negócio podem iniciar o trabalho definindo os processos, quem sabe até mesmo desenhando algumas interfaces de usuários (o que no passado era uma atribuição exclusiva da TI), e no momento adequado a TI poderá “entrar em cena” e colaborar, se encarregando das tarefas mais técnicas.

Esperamos ter colocado um pouco mais de luz sobre esta situação. Pra finalizar, não podemos deixar de louvar o empenho e sucesso dos fornecedores de ferramentas de BPM em deixar as ferramentas cada vez mais produtivas e amigáveis. Temos hoje ferramentas com quase zero código, montagem de formulários eletrônicos de forma intuitiva e configuração visual de integrações. São recursos que certamente incentivam os fornecedores a elaborar este discurso de marketing. 🙂

BPM em tempos de crise econômica

Como todos estão sentindo muito bem na pele neste ano de 2015, estamos passando por uma grande crise econômica no Brasil, que promete uma continuidade nos próximos anos.

Nestes momentos de crise as organizações são forçadas a rever seus investimentos e estratégias, para se adaptar a um novo cenário que, para a maioria delas, é negativo. Digo “maioria delas”, porque sempre há quem lucre ou cresça com a crise, enxergando novas oportunidades e evoluindo.

O fato é que infelizmente a crise está aí. Como ficam os projetos BPM neste cenário? Como fica a situação dos profissionais de BPM? Poderiam eles sofrer também os efeitos da crise, com cortes de vagas e cancelamentos de projetos?

Da nossa experiência, infelizmente ainda nos deparamos com a percepção de que BPM é um gasto, e não um investimento. Isto geralmente acontece em empresas que não tiveram uma boa experiência em seus projetos de BPM (por diversos motivos), pela falta de maturidade em Gestão Por Processos ou por não ter vislumbrado um bom retorno em relação ao investimento exigido.

Nos momentos de crise, as empresas precisam revisitar e ajustar sua gestão e processos, serem inovadoras, cortar custos e descobrir como “fazer mais com menos”. Sim, este clichê tão disseminado, mas que continua mais válido do que nunca, em tempos de crise econômica e discussões sobre sustentabilidade.

É neste momento que a prática de BPM dá o apoio fundamental para que a empresa consiga atingir estes objetivos. Alguns exemplos:

  • A partir da etapa modelagem de processos se obtêm todo o conhecimento dos processos de negócio;
  • A partir da etapa de análise de processos se obtêm o conhecimento de quais são os problemas e pontos fracos dos processos;
  • A partir da etapa de redesenho de processos são analisadas e definidas as melhorias e inovações necessárias, que serão implementadas e implantadas nos processos;
  • A partir do monitoramento de processos se verificam se os resultados desejados estão sendo atingidos.

Ciclo BPM

Assim, BPM tem o poder de “armar” (no bom sentido) a organização com toda a informação necessária que ela precisa para se adaptar a crise e aos novos tempos, mudar e inovar com rapidez. Sem falar de, obviamente, sobreviver.

Em países em desenvolvimento como o Brasil, por sua série de deficiências, os projetos de BPM tem o potencial de atingir níveis de melhoria que não seriam possíveis em países desenvolvidos, que contam com metodologias e práticas de gestão bem estabelecidas, que contribuem para a execução dos processos com eficiência. Agora, se estamos falando de um país em desenvolvimento E em crise (Brasil, alguém?), então as possibilidades da prática de BPM são inúmeras.

Então, quando estiver analisando o que precisa ser feito para adequar a sua organização à crise que nos encontramos, olhe com atenção para profissionais e projetos de BPM: eles tem o potencial de oferecer os recursos e subsídios que a organização precisa para enfrentar e superar a situação.

Como realizar projetos de BAM?

No artigo BAM – Uma visão Geral, que publicamos recentemente aqui no blog da iProcess, passamos uma visão geral do BAM (Business Activity Monitoring), onde demonstramos as características, arquitetura comum e principais cenários de uso deste tipo de ferramenta.

Talvez agora o assunto seja do seu interesse, e você acha que a sua empresa pode se beneficiar da utilização desta ferramenta.

Mas neste caso, por onde começar?

A realização de um projeto de implantação de BAM pode ser caracterizada, usualmente, pela execução das seguintes grandes etapas:

1. Definição da ferramenta de BAM a utilizar: conforme citamos no artigo anterior, existem ferramentas de BAM que fazem parte de suítes de BPMS, e outras que são produtos independentes. Dependendo do tipo de ferramenta de BAM escolhida, a integração com sistemas externos poderá ter maior ou menor flexibilidade. No caso de uma ferramenta de BAM que faz parte de uma suíte BPMS, é necessário avaliar se é possível integrar a mesma com outros sistemas, pois em alguns casos só é possível a exibição de dados relacionados apenas aos processos sendo automatizados na própria suite.

Ressaltamos que a escolha do BAM não deveria ser uma escolha de um projeto, ou seja, a empresa não vai adotar uma nova ferramenta de BAM a cada processo implantado. Deve ser uma decisão corporativa e que permanecerá a longo prazo, então a escolha do BAM deve ser cuidadosa, tendo atenção a questões como aderência às necessidades de processos de toda organização (e não apenas de uma área) e que possua interface de comunicação com o BPMS utilizado para gerenciar a execução de processos automatizados.

2. Definição dos indicadores e gráficos de monitoramento necessários: é necessário discutir funcionalmente com os usuários de negócio quais são os indicadores e dashboards de monitoramento desejados, regras de segurança e acesso as informações (ex: num dashboard que será disponibilizado para todas as unidades, pode se definir que os usuários só poderão visualizar informações relativas à sua própria unidade), bem como alertas e ações sobre os alertas (se for o caso). Usualmente, esta é uma ação que está alinhada com a própria fase de modelagem, análise e melhoria de processos, onde estão sendo discutidos os processos e seus indicadores de desempenho. Assim, deste trabalho normalmente são extraídos requisitos de BAM, que permitirão  aos usuários realizar o acompanhamento dos novos processos. É importante ressaltar, no entanto, que um projeto de BAM pode ser uma ação mais “isolada” e até independente de outras iniciativas de BPM.

3. Análise técnica da origem dos dados: definidos quais são os indicadores e dashboards desejados, é necessário verificar como estes dados podem ser obtidos para serem enviados para a ferramenta de BAM. Via de regra, além dos dados de execução dos processos provenientes do BPMS, podem ser necessários dados de diferentes sistemas de informação existentes na organização (ex: ERP, sistemas legados). Assim, é necessário envolver as equipes técnicas responsáveis por estes sistemas para avaliar como estes dados devem ser obtidos, bem como a forma de integração sugerida. É importante, para isto, conhecer as possibilidades de integração que a ferramenta de BAM oferece, pois cada uma pode disponibilizar diferentes formas de integração (ex: Web Services, Filas, etc).

4. Desenvolvimento dos dashboards: após a análise técnica da origem dos dados, é necessário realizar a construção técnica dos dashboards e alertas de monitoramento (caso existam). Esta é uma etapa que irá envolver os desenvolvedores e arquitetos que conhecem a ferramenta de BAM, bem como as equipes técnicas responsáveis pelos sistemas de origem das informações. Nesta etapa a origem dos dados pode, caso necessário, ser “simulada” através de input manual de informações diretamente na ferramenta do BAM (se a ferramenta permitir).

5. Homologação dos dashboards: finalmente, nesta etapa serão testados os dashboards pelos usuários finais, já com a integração com os sistemas de origem funcionando, para verificar que estão exibindo as informações corretamente. São também testados os alertas de monitoramento e ações de contingência definidas (se for o caso), bem como as regras de segurança e acesso às informações.

Pela nossa experiência, a fase que costuma ser mais trabalhosa é a “Análise técnica da origem dos dados”. Isto porque, com o crescimento da organização e aquisição de diversos sistemas, muitas vezes existe replicação de dados em fontes diferentes, e não há uma visão de qual é a origem mais apropriada para determinadas informações. Além disso, a falta de uma governança de TI e padrões de integração também pode dificultar a escolha da melhor forma de integração com a ferramenta de BAM.

Podemos notar então que, no que se refere as macro etapas necessárias, um projeto de implementação de BAM não difere muito de projetos convencionais de implementação de TI. Porém, olhando no detalhe, é possível perceber que um projeto BAM tem diversas características e desafios próprios, que exigem uma equipe com conhecimentos específicos, sem falar na mudança cultural que a adoção da ferramenta pode trazer para a organização.

Abaixo, listamos alguns cuidados básicos que devem ser tomados durante a realização de um projeto de BAM:

  • Limitar o número de gráficos num dashboard: tente limitar o número máximo de gráficos num mesmo relatório,  para um desempenho mais otimizado e melhor ocupação da área disponível. Um número máximo de 4 a 6 gráficos por dashboard é geralmente recomendado.
  • Usar filtros: utilize quando possível filtros, de forma que o usuário possa restringir a quantidade de dados sendo exibida e assim minimizar os recursos de processamento necessários.
  • Avaliar a necessidade de histórico de dados: evite armazenar dados antigos na ferramenta de BAM, para fins de histórico. Caso realmente necessário, considere a criação de um repositório específico para este fim. Mas lembre-se que uma ferramenta de BAM tem o foco no presente (informação em tempo real) e não para ser uma referência para avaliações históricas.
  • Utilizar o recurso de drill-down: o termo drill-down (em português “detalhar”) refere-se à ação de clicar em alguma seção de um gráfico para obter o detalhamento de informações referente àquela seção. Podemos pensar, por exemplo, num gráfico de pizza que mostra a quantidade de solicitações em aberto por região do país. Ao clicar numa fatia, o usuário é direcionado para uma lista de solicitações especificamente daquela região. Assim, procure construir os seus dashboards de maneira a mostrar inicialmente apenas as informações mais abrangentes e relevantes, para que os usuários possam ter um rápido entendimento da situação atual. E então disponibilize a navegação drill-down para níveis com maior detalhamento, que poderão ser consultados se o usuário achar necessário.
  • Avaliar o ambiente de exibição dos dashboards: deve ser avaliado de que forma os dashboards serão acessados. Serão acessados através de desktops e notebooks? Ou através de telas maiores? Frequentemente os dashboards são previstos para serem exibidos em telões/televisores, posicionados em lugares estratégicos no ambiente de trabalho, de maneira que possam ser vistos a uma certa distancia pelos usuários. Então, se for este o caso, será necessário limitar a quantidade de gráficos e  informações sendo exibidas, prestando atenção a detalhes como resolução da tela, disposição dos gráficos, tamanho e cores das fontes utilizadas.

Como vimos, os projetos de BAM tem suas próprias características e desafios, que devem ser levados em consideração durante o planejamento. Levando estes fatores em consideração, não temos dúvida que uma ferramenta de BAM pode se tornar uma ferramenta de inestimável valor para o acompanhamento do seu negócio!

Você se interessou pelo assunto? Falamos mais de BAM no nosso treinamento “Modelagem de Processos para Automação” e oferecemos um treinamento específico da ferramenta “Oracle BAM“. Ambos os cursos são oferecidos pela iProcess Education.

BAM – Uma visão geral

Em um artigo anterior, tivemos uma breve explicação sobre uma ferramenta de BAM que pode ser utilizada para realizar o monitoramento de atividades do negócio.

Achamos que é hora de aprofundar um pouco mais este conceito. Então vamos começar novamente do básico: O que exatamente é o BAM?

BAM é a sigla para Business Activity Monitoring, que é uma tecnologia que permite realizar o monitoramento em tempo real de indicadores de desempenho da empresa. Isso possibilita a tomada de decisão de uma forma mais ágil, a partir da análise desses indicadores. Existem ferramentas de BAM que permitem, inclusive, a execução de planos de contingência baseado em gatilhos previamente definidos, como por exemplo o envio de alertas por e-mail quando um determinado indicador está fora dos limites definidos.

Algumas características importantes deste tipo de tecnologia:

  • É voltada para a ação imediata a partir do acesso à informação;
  • BAM é focado no que está acontecendo, não o que aconteceu, ou pode acontecer;
  • BAM fica, desta forma, posicionado entre o foco histórico e analítico do BI e o planejamento futuro de negócio do CPM (Corporate Performance Management).

Com uma ferramenta de BAM é possível, por exemplo:

  • Monitorar processos:
    • Acompanhar as etapas;
    • Identificar problemas ou gargalos;
  • Realizar agregações de dados provenientes de diferentes sistemas:
    • Realizar médias, somas, agrupamentos, cálculos;
  • Processar eventos complexos:
    • Correlação de eventos isolados;
    • Identificar ameaças e oportunidades;
  • Obter informações de contexto:
    • Acompanhar desempenho histórico;
    • Evolução da média;

Normalmente as ferramentas de BAM são oferecidas em ambiente Web, desta forma facilitando o acesso.

Uma ferramenta de BAM disponibiliza uma interface gráfica para exibição de dados diversos de negócio, normalmente em um formato de dashboard (ou simplesmente um “relatório”).

Dashboard é o termo utilizado para designar uma série de gráficos que são visualizados de forma conjunta, onde cada gráfico pode ser de um tipo diferente (ex: gráfico de pizza, gráfico de barra), cada qual exibindo informações relacionadas a uma determinada informação/indicador de negócio. Normalmente um dashboard irá exibir informações relacionadas a um determinado contexto/área de negócio, como por exemplo indicadores relacionados a área de logística ou a área de suporte de TI. Veja um exemplo de dashboard na imagem abaixo:
A arquitetura de um produto BAM pode variar de acordo com a ferramenta. Podemos, no entanto, descrever a arquitetura usual da seguinte forma:

  • Interface de desenvolvimento: é a interface que permite o desenvolvimento dos gráficos pelos desenvolvedores e a definição dos dados pelos arquitetos;
  • Interface de apresentação: é a interface dos usuários finais com a ferramenta, permitindo a visualização dos dashboards implementados;
  • Base de dados:  é o repositório das informações que são exibidas na camada de apresentação do BAM. Muito embora as fontes dos dados exibidos no BAM tenham origem sempre em outros sistemas (ex: BPMS, ERP, Banco de Dados, etc), as ferramentas de BAM normalmente possuem uma base de dados própria para armazenamento destas informações, assim diminuindo a necessidade de buscar as informações a todo momento nos sistemas de origem;
  • Camada de integração: é a camada que permite a integração da ferramenta de BAM com outros sistemas e fontes de dados, para armazenamento na base de dados própria da ferramenta;
  • Interface de administração:  se encarrega, por exemplo, da definição de usuários e perfis/restrições de acesso, bem como integrações com repositórios de usuários existentes (ex: AD, LDAP);
  • Camada de Monitoramento de Alertas/Ações: em ferramentas de BAM que a possuem, é responsável por verificar a alteração e desvio dos valores dos indicadores e disparar ações de tratamento  (ex: envio de e-mail ou SMS de alerta)

Um dos principais aspectos relacionados a uma ferramenta de BAM é que a ferramenta não é fonte/origem de dados, ou seja, ela não “cria” nenhuma informação, mas apenas consolida e exibe dados provenientes de outros sistemas ou fontes de dados. Neste sentido, temos normalmente 2 cenários:

  1. Ferramenta de BAM que faz parte de uma suite de BPMS: o BAM é um dos módulos da solução de BPMS. Neste caso, a ferramenta está habilitada a exibir informações provenientes dos processos automatizados na solução.
  2. Ferramenta de BAM que é um produto independente:  neste caso o produto normalmente tem uma arquitetura mais robusta e abrangente, permitindo assim que os dados provenham de diferentes origens, também podendo ter integração nativa com ferramenta de BPMS. Alguns exemplos de origens de dados que podem ser enviados para a ferramenta de BAM:
    • Dados de aplicações, transições de estado;
    • RFID e sensores;
    • Sistemas de mensagens (JMS, MQSeries, etc);
    • Bancos de Dados;
    • ERPs;
    • Sistemas legados diversos;
    • etc;

Bons resultados no monitoramento da atividade do negócio com BAM não dependem apenas da ferramenta, mas da definição de bons indicadores, buscando a visão equilibrada de indicadores direcionadores e indicadores de resultados. A definição de medidas, métricas e indicadores já foi tema de artigo em nosso blog. Confira em: http://blog.iprocess.com.br/2014/05/medidas-metricas-e-indicadores/

Em futuros artigos, vamos falar dos benefícios na utilização de uma solução de BAM, bem como dos principais passos e cuidados que devem ser tomados para iniciar projetos neste tipo de tecnologia. Fique ligado!