domingo, 12 de julho de 2009

SOA com BPM

No mundo corporativo, além da constante necessidade de melhorias por causa da concorrência, a atual crise tem levado as empresas a reduzirem seus custos, buscando produtos com ciclos de vida otimizados, processos sem desperdícios e integrados entre todas áreas de uma empresa.

Cada vez mais os departamentos se juntam à Área de TI, o qual fornecerá insumos tecnológicos para que toda a estratégia da empresa seja colocada em ação.

O Objetivo desse artigo é apresentar a utilização de SOA e BPM . Mostra-se como criar uma arquitetura SOA a partir do mapeamento do processo de uma empresa utilizando BPM.

SOA é uma arquitetura utilizada para desenvolvimento de sistemas, de maneira com que estejam sempre alinhados com os processos de uma empresa, integrados com outros sistemas e de forma que sejam facilmente mantidos.
Para isso é necessário que o processo de negócio de uma empresa seja analisado, entendido e mapeado, já que SOA entende este processo como um conjunto de serviços, os quais são implementados em alguma linguagem de programação, e disponibilizados em uma intranet ou na internet.

SOA é uma arquitetura polêmica e que ainda não tem 100% de aderência do mundo corporativo. Há muitos casos de sucesso, porém também há inúmeros casos de projetos fracassados. Quem sabe, os projetos que falharam acharam que utilizaram SOA, mas não utilizaram de forma correta. Para isso muita pesquisa e estudo estão sendo realizados.

Business Process Management é um conjunto formado por metodologias e tecnologias cujo objetivo é possibilitar que processos de negócio integrem, lógica, clientes, fornecedores, parceiros, influenciadores, funcionários e todo ou qualquer elemento com que com eles possam, queiram ou tenham que interagir, dando à organização visão completa e essencialmente integrada do ambiente interno e externo das suas operações e das atuações de cada participante em todos os processos de negócio.


A Gestão de Processos de Negócio, visa mapear e melhorar os processos de negócio de uma empresa através de uma abordagem baseada em um ciclo de vida de modelagem, desenvolvimento e execução, monitoração, análise e otimização dos processos de negócio.

BPM objetiva a otimização e automatização dos processos de negócio, e para isto ela provê ferramentas, tecnologias e métodos, utilizados pela área de TI e negócio, que permitem:

a. Documentar os processos e assim permitir sua visibilidade e validação;
b. Identificar e eliminar redundâncias e gargalos;
c. Reduzir o risco através do entendimento dos impactos do processo antes de sua implantação;
d. Separar a lógica de integração de seu código de implementação
e. Aumentar a portabilidade e diminuir o custo de manutenção, por construir as aplicações e executá-las segundo padrões consagrados na indústria;
f. Automatizar a criação dos processos, através da eliminação de tarefas manuais de implantação;
g. Comprar o resultado real dos processos contras indicadores de desempenho;
h. Identificar possíveis melhorias nos processos;
i. Permitir auditoria, controles e mecanismos de verificação de aderência às normas;
j. Simplificar e agilizar a gestão das exceções dos processos.

Como cada empresa tem uma história, ou seja, vínculos particulares com fornecedores ou produtos, restrições de verba, necessidades focadas em certos aspectos (como integração ou “workflow”), não há uma fórmula única para definir os requisitos de uma implementação SOA. As soluções (produtos, tecnologias e metodologias) estão em constante evolução, não só porque TI é uma indústria dinâmica, mas principalmente porque o assunto ainda é muito recente, bem comomuitas respostas ainda não existem ou estão incompletas.

A idéia é que, com o entendimento mais detalhado do que deve ser feito, fica mais fácil a elaboração de um roteiro de como fazê-lo.

A etapa de modelagem dos processos é bastante útil, tanto para TI como para o Negócio, pois permite documentar e disponibilizar para todos na organização, informações que antes estavam escondidas e espalhadas pelos diversos sistemas. Isto facilita a melhoria dos processos, auditorias e atividades de verificação de exigências às normas, bem como o reaproveitamento dos processos dentro da organização. Após documentar e desenhar o fluxo dos processos é possível fazer simulações dos cenários de uso, ou seja, simular a execução do processo um número repetido de vezes, variando condições, regras, quantidade de recursos. A etapa de simulação permite identificar melhorias no processo de negócio, como a eliminação de possíveis gargalos, redução de custos e o dimensionamento correto de equipes, antes mesmo de sua implantação em produção.

Depois da validação do diagrama de processo de negócio, podemos começar a implementar fisicamente os elementos que compõe os fluxos, ou seja, construir as telas que permitirão o usuário interagir com os sistemas, as aplicações que fornecerão os serviços técnicos e de negócio, e as bases de dados. Um dos principais benefícios da SOA é a reutilização de serviços para suportar diversos processos de negócio. Mas para que esta reutilização seja possível, deve haver mecanismos que permitam a pesquisa dos serviços existentes e a identificação de qual é o correto a ser utilizado.

Estes mecanismos são chamados de repositórios de serviços.

Quando as atividades do processo exigem ações ou pareceres de pessoas, é normal categorizar o processo como de “longa duração”, uma vez que o elemento humano pode demorar horas ou mesmo dias para completar a tarefa. No entanto, para os mecanismos de BPM darem suporte a interação humana, não só devem armazenar e controlar estes processos de longa duração, mas também devem prover funcionalidades como: Identificação do responsável pela tarefa, Envio da tarefa para a pessoa responsável e apoio à interação, Tratamento de exceções.

Os processos de negócio representados como fluxos devem ser distribuídos para os ambientes de execução a fim de serem executados pelo mecanismo de orquestração de processos.

Quando se constrói um fluxo de atividades em BPM, depara-se com a necessidade de tomar uma decisão baseada em valores e outros tipos de regras que mudam com muita freqüência. A solução é utilizar mecanismos de parametrização, que em BPM são chamados de “Business Rules Engines” ou Executores de Regras de Negócio. Estes mecanismos são muito versáteis, por permitirem que os próprios gestores do negócio modifiquem as regras através de telas específicas.

Um ponto fundamental das ferramentas de BPM é a integração de sistemas, afinal, os processos são compostos de atividades que na maior parte das vezes são chamadas às aplicações ou acessos a dados. Estas aplicações podem estar em diferentes plataformas, utilizar protocolos de comunicação e formatos de mensagens diferentes.

O Objetivo deste artigo foi demonstrar a importância da utilização de BPM e SOA para o negócio nas empresas, e espero ter contribuido .

Nenhum comentário:

Postar um comentário