quinta-feira, 28 de agosto de 2014

Evoluindo Processos com o Modelo de Decisão - Brigadeiros da Nice (Parte 2)

No nosso post anterior mostramos como o processo de negócio da Brigadeiros da Nice (uma excelente apresentação dos conceitos de modelagem de decisão criada e apresentada por Fabrício Laguna, da Gigante Consultoria, de SP) se torna muito mais simples e fácil de ser compreendido quando associamos a modelagem de decisão com a modelagem de processos. Agora, vamos discutir como a modelagem de decisão pode facilitar de forma significativa a melhoria e a evolução dos processos de negócio de qualquer organização, desde as mais simples, como uma doceria, até as mais sofisticadas, como grandes instituições financeiras.

Primeiramente, vamos imaginar que a Doceria da Nice continuou fazendo um tremendo sucesso, mas que o crescimento começou a trazer alguns problemas operacionais: com o aumento das encomendas, as dificuldades com o processo de entrega dos brigadeiros também cresceram na mesma proporção. Muitas pessoas que moram muito longe da casa de Nice começaram a fazer pedidos de brigadeiros, e ela não tem como entregar os brigadeiros em todos os lugares. Mesmo quando é possível entregar, o custo de entrega é alto e é necessário cobrar um adicional de entrega por pedido para compensar os custos do transporte.

Para resolver estes problemas a Nice definiu algumas regras de negócio relativas à forma e ao custo de entrega dos pedidos, como podemos ver abaixo:
  • pedidos de pessoas que residem acima de 20 km da casa da Nice não serão atendidos, a não ser que a pessoa se disponha a buscar o pedido
  • para os pedidos aceitos e que serão entregues pela Nice, as seguintes regras serão adotadas:
    • para distância até 1 km a entrega será grátis, de bicicleta, se a quantidade for menor que 200 brigadeiros
    • para distância até 20 km a entrega será feita por motoboy, com taxa de entrega de R$ 10,00, se a quantidade for de até 500 brigadeiros, ou se a entrega for à noite
    • para distância até 20 km a entrega será feita por taxi, com taxa de entrega de R$ 20,00, se a quantidade for superior a 500 brigadeiros, ou se estiver chovendo
  • se o cliente não concordar com as taxas de entrega, ou não puder buscar os brigadeiros, o pedido não será aceito.
  • A D.Creusa continuará sendo atendida em qualquer situação (a Nice é eternamente grata a ela por tê-la incentivado a entrar no ramo dos brigadeiros!), ou seja, ela será atendida mesmo se morar a mais de 20 km da casa da Nice, não pagará a taxa de entrega, e nunca será atendida por bicicleta.
Primeiramente, vamos mostrar como estas mudanças nas regras do negócio seriam modeladas se estivéssemos trabalhando apenas com modelos de processo. Uma vez que agora o cliente tem que aprovar a taxa de entrega ANTES do pedido ser aceito, temos que calcular os valores da taxa de entrega e do valor do pedido durante o processo de aprovação do pedido:

Clique na imagem para ampliar
Notem como mesmo uma pequena alteração no processo, destinada a avaliar a viabilidade de entrega (usando relativamente poucas condições) já aumentou consideravelmente a complexidade do modelo. Além disto, não estou levando em consideração, aqui, questões como o tempo gasto para desenhar um modelo "limpo" (compreensível, completo e semanticamente correto), as inúmeras formas como este processo poderia ser modelado (se você acha que tem uma solução melhor, envie para a Centus! será interessante comparar as diversas soluções possíveis), ou o tempo gasto para verificar se a lógica está correta (o que implica em "seguir o fluxo" de forma manual). Aqui, também, usamos indicações de regras de negócio para indicar as fórmulas de cálculo, em uma tentativa (ineficaz) de simplificar o processo.

Agora, a título de exercício, imaginem se a Nice resolvesse ter um número maior de tipos de cliente, ou outras formas de entrega. Fica evidente o aumento no tamanho, complexidade e dificuldade de manutenção deste modelo de processo, e que a evolução e manutenção do modelo ficará cada vez mais difícil. Começaram a perceber porque a modelagem da lógica do negócio através de modelos de processo pode resultar em modelos que são impossíveis de serem manejados?

No próximo post vamos apresentar a solução deste problema, usando a modelagem de decisão para tornar este processo mais simples e mais fácil de ser modificado e, por consequência, mais ágil. Enquanto isto, mandem seus comentários e apontem os eventuais erros de modelagem (não sou CBPP!) e melhorias possíveis neste processo.

______________________________________________________________________________
Para conhecer mais sobre o Modelo de Decisão, e como ele pode ajudar as organizações a tornarem seus processos mais ágeis, visite o site da Centus e acesse dezenas de artigos, apresentações e webinares sobre modelagem de decisão e arquitetura corporativa.