Pesquisar

sexta-feira, 25 de fevereiro de 2011

Modelagem de Processo (Business Process Management - BPM), Desenvolvimento de Sistemas e Arquitetura Orientada a Serviços (Service Oriented Architecture - SOA)

O que é o processo de desenvolvimento de sistemas?
É um conjunto de fases e atividades, com o objetivo de desenvolver e manter o sistema com seus respectivos componentes (abstratos ou concretos), que trabalham em conjunto, visando um objetivo comum.
Os principais componentes de um sistema são: os interessados; as informações; os processos; todo hardware e software necessários na operação do sistema, conforme figura 1.

Figura 1 – Elementos Sistêmicos
O processo de desenvolvimento de sistemas se preocupa com o processo produtivo das diversas dimensões (componentes) de um sistema, ou seja, identificar os processos, as pessoas envolvidas nesses processos (stakehoders), as informações a serem coletadas, processadas, transmitidas e disseminadas por meio do uso de tecnologia (softwares e hardwares).
Na visão tradicional, os sistemas são desenvolvidos aplicando-se processos verticais, ou seja, os processos são embutidos na codificação do sistema por meio de fluxos de controle, conforme apresentado na Figura 2.
É importante destacar que já existem modelos de processos disponíveis no mercado possíveis de serem adotados no processo de desenvolvimento de um sistema, os mais conhecidos e utilizados são: cascata; espiral; incremental e iterativo; prototipação.
Também é necessário destacar as principais metodologias utilizadas no mercado, que são baseadas nesses modelos: RUP (IBM Rational Unified Process), Scrum (http://www.scrum.org/), XP (http://www.extremeprogramming.org/), entre outras.

Figura 2 – Processo Vertical – Acoplado ao código da função

O que é a técnica de modelagem do processo (BPM)?
Segundo Vitor Bizinoto, a técnica de Modelagem de Processo (Business Process Management - BPM) consiste em construir uma representação de um processo real refletindo suas características com o nível ideal de detalhamento desejado (TORRES, 2002). Ela permite que sejam conhecidas com detalhes e profundidade todas as operações que ocorrem durante a fabricação de um produto ou a produção de um serviço, ou seja, as operações de um processo (ROTONDARO, 2006).
A modelagem de processo também pode ser definida como uma técnica de modelagem para especificar, visualizar, construir, documentar e aperfeiçoar processos de negócio por meio de soluções BPMS (Business Process Management Suite). O principal padrão atual de notação gráfica para representação de processos é o OMG BPMN (Business Process Model and Notation) 2.0 (http://www.omg.org/spec/BPMN/2.0/), de acordo com alguns exemplos demonstrados na figura 3.

Figura 3 – Exemplos de Notação OMG BPMN

Os softwares que suportam a técnica de modelagem de processo são conhecidos normalmente como BPMS (Business Process Management Suite).
A técnica de modelagem de processo da forma tradicional aborda uma visão horizontal, ou seja, os processos são modelados de forma independente sem integração, conforme figura 4.

Figura 4 – Processos Horizontais
Baseadas nas duas visões tradicionais (vertical e horizontal) você pode estar perguntando como melhorar essas duas técnicas? Respondo, integrando-as com a aplicação das técnicas de modelagem de processos (BPM), processo de desenvolvimento de sistemas e arquitetura orientada a serviços.
Arquitetura Orientada a Serviços (Service Oriented Architecture - SOA) e a técnica de Modelagem de Processo (Business Process Management - BPM)
A Arquitetura Orientada a Serviços (Service Oriented Architecture - SOA) é uma estratégia para organização desenvolver sistemas interoperáveis (troca de informações), independente de tecnologia, aplicando as melhores práticas de tecnologia da informação.
Na visão moderna, a arquitetura SOA e a técnica de modelagem de processo são aplicadas de forma integrada. A maioria das principais soluções BPMS de mercado possui suporte tanto para modelagem de processos quanto arquitetura SOA.
Os principais padrões suportados por essas ferramentas são: OMG BPMN (Business Process Model and Notation) e OASIS BPEL (Web Services Business Process Execution Language – notação padrão para modelar o comportamento de processos de negócio baseados em serviços) (http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=wsbpel).
Os softwares que suportam a arquitetura SOA são conhecidos normalmente como SOA Suite. Neste contexto, é importante destacar a importância do Barramento de Serviços, conhecido do ESB (Enterprise Service Bus), responsável por gerenciar e disponibilizar os serviços e para o controle de identidades dos usuários (controle de acesso).
O serviço, no ponto de vista da arquitetura SOA, é uma função de um sistema computacional que é disponibilizado para outro sistema na forma de um serviço, normalmente implementado como um Web Service.
Segundo o relatório do Gartner “The Evolving Market for BPM Technology”, conforme apresentado na figuras 5, as principais funções necessárias para uma solução de BPM são:
  • Integração entre Servidores de Portais (Portals), Servidores de Aplicação (App. Servers) e Servidores de Barramento de Serviços (ESB);
  • Fluxo de Trabalho (Workflow);
  • Regras de Negócio (Business Rules Engines);
  • Ferramentas de Análise e Modelagem (Modeling and Analisys Tools);
  • Gerenciador de Conteúdo e Documentos (Document/Content Management);
  • Inteligência de Negócio e Monitoramento de Atividade de Negócio (BI and Business Activity Monitoring).

           

Figura 5 – Núcleo da Funções BPM segundo Gartner

As figuras 6 e 7 mostram a visão moderna na integração de modelagem de processos e arquitetura SOA.

Figura 6 – Visão de Processos Integrados

Figura 7 – Visão Processos e SOA
Referência Bibliográfica
[1] Gartner Group. The Evolving Market for BPM Technology. Abril de 2009.
[2] ROTANDARO, R. G. Identificação, análise e melhoria dos processos críticos. São Paulo: Gestão integrada de processos e da tecnologia da informação, Atlas, cap. 3, 2006.
[3] SANTOS ANJO, V. B. Modelagem de processos: GAP conceitual quanto ao nível ideal de detalhamento de processo. Brasilia: Universidade de Brasilia, 2009.
 [4] TORRES, J. B. Um modelo dinâmico de apoio a gestão organizacional baseado na modelagem de processos utilizando componentes de software. Florianópolis: Universidade Federal de Santa Catarina, 2002.

Nenhum comentário:

Postar um comentário