Avançar para a área de conteúdo

ir para o conteúdo principal

developerWorks Brasil  >  WebSphere  >

IBM Pattern-based Process Model Accelerators para WebSphere Business Modeler, Parte 2: Uso avançado de padrões e configuração de paleta de aceleradores

developerWorks
Opções de documento

Opções de documento que necessitam de JavaScript não são exibidas


Classificar esta página

Ajude-nos a melhorar este conteúdo


Nível: Intermediário

Thomas Gschwind, Research Staff, Zurich Research Laboratory, IBM
Janette Wong, Senior Technical Staff Member, IBM
Cedric Favre, PhD Student, IBM
Wolfgang Kleinoeder, Research Emeritus, Zurich Research Laboratory, IBM
Maystrenko Alexander, Pre-Doctoral Researcher, IBM
Krenar Muhidini, Student, IBM

20/Jul/2009

Esta série apresenta a você o IBM Pattern-based Process Model Accelerators V2.0 para WebSphere® Business Modeler, um conjunto de plugins para o IBM WebSphere Business Modeler que adiciona padrões, transformações e refatorações ao seu ambiente de modelagem de processo de negócios. Na Parte 2, mostramos como aplicar padrões com itens de negócios e estados de itens de negócios para criar modelos de processo baseado em padrão com fluxo de dados. Também explicamos como configurar a paleta de Aceleradores para se adequar às suas necessidades.

Introdução

Este artigo é a Parte 2 de uma série de 4, apresentando o IBM Pattern-based Process Model Accelerators para WebSphere Business Modeler (daqui em diante referido como aceleradores). Esses aceleradores fornecem a você um conjunto de plugins para o IBM WebSphere Business Modeler que adiciona padrões, transformações e refatorações ao seu ambiente de modelagem de processo de negócios. Os plugins também incluem um recurso para detectar e corrigir automaticamente erros de controle-fluxo.

Ao usar os aceleradores, você se afasta de uma abordagem tradicional de modelagem de processo de negócio em que os modelos de processo são estabelecidos ao arrastar e soltar elementos na tela de desenho que são então conectados manualmente. Os aceleradores permitem a criação de modelos de processo de negócios de maior qualidade, compondo-os a partir de blocos maiores de construção ou pela aplicação de operações de mudança semanticamente corretas em todo o seu modelo com um único clique. Seus modelos conterão erros de modelagem significativamente menores, a modelagem torna-se um exercício mais divertido, e você experimentará ganhos de produtividade de aproximadamente 70% em comparação com a abordagem tradicional.

Este artigo fornece:

  • Uma descrição sistemática dos 8 padrões disponíveis neste release dos aceleradores.
  • Instruções sobre como configurar a paleta de Aceleradores de acordo com suas necessidades de modelagem.

Um padrão encapsula uma única e elegante solução a um problema específico, porém frequentemente recorrente. Os padrões são criados pela observação (ou "mineração") de diversas soluções que diferentes pessoas criaram ao longo do tempo ao trabalhar no mesmo problema. O padrão encapsula a "essência" que é comum a todas essas soluções diferentes e que garante que a solução resolva o problema. Exemplos de coleções famosas de padrões são os padrões de projeto orientados a objeto pela Gamma et al, os padrões de arquitetura de software pela Buschmann et al, e os padrões de fluxo de trabalho pela van der Aalst et al (vide Recursos para referências detalhadas).

Veja o vídeo do tutorial na Parte 1.
Faça o download dos aceleradores.

Os padrões de processo de negócios que apresentamos neste release dos aceleradores encapsulam fragmentos típicos de modelo de processo que ocorrem frequentemente em modelos de processo de negócios. Os fragmentos encapsulados representam estruturas de controle de fluxo comuns e de fácil reutilização que também podem ser associadas a itens de negócios e estados de itens de negócios. Ao compor um processo a partir desses padrões, fica garantido que o processo executa corretamente em um ambiente de simulação de processo, como aquele fornecido pelo WebSphere Business Modeler, e que pode ser mapeado para uma combinação de padrões de fluxo de trabalho para uma implementação correta em um mecanismo de tempo de execução de processo.

Este artigo abrange os seguintes padrões:

A lista acima também apresenta os ícones desses padrões na paleta de Aceleradores.



Voltar para parte superior


Pré-requisitos

Este artigo é a Parte 2 de uma série, e presume que você esteja familiarizado com a Parte 1, o que significa:

  • Você possui o IBM WebSphere Business Modeler V6.2.0.1 com Fixpack 1 instalado.
  • Você instalou os aceleradores e trabalhou em todo o exemplo de projeto de modelagem HiringExample.mar.

Também assumimos que você possui conhecimento básico do WebSphere Business Modeler, ou seja, que está familiarizado com o produto e que ganhou experiência de modelagem ao criar modelos de processo de negócios. Você também deve estar familiarizado com os elementos do modelo básico, como gateways, tarefas, subprocessos, eventos de início e fim do Business Process Modeling Notation (BPMN), conforme disponível no WebSphere Business Modeler. A ajuda disponível no WebSphere Business Modeler lhe fornece a experiência necessária.

A Parte 1 apresenta informações detalhadas sobre em que lugar fazer o download dos aceleradores e como instalá-los, bem como a forma para validar sua instalação. A Parte 1 também conduziu você através de um tutorial baseado no projeto de exemplo durante o qual aprendeu a aplicar 5 dos padrões, isto é, Inserir Tarefa, Sequência, Composto Paralelo, Loop, e Ramificação Alternativa. Além disso, apresentou a análise de controle-fluxo, que permite localizar facilmente erros de modelagem em seu modelo de processo. A Parte 1 também explicou como aplicar transformações e refatorações para corrigir erros e aperfeiçoar ainda mais seus modelos.

Neste artigo, descrevemos todos os 8 padrões em detalhes, em particular observando como criar modelos com fluxo de dados. Este artigo servirá principalmente como uma referência em que é possível buscar informações detalhadas sobre boas práticas para usar os padrões, e instruções adicionais para a configuração da paleta de Aceleradores.



Voltar para parte superior


Dicas gerais para usar os Padrões

A aplicação de um padrão no WebSphere Business Modeler é composta por três etapas simples:

  1. Identificar o local para aplicação de um padrão, selecionando uma ou duas conexões
  2. Invocar o padrão a partir da paleta de Aceleradores ou do menu
  3. Providenciar parâmetros opcionais ao padrão, preenchendo um assistente de padrão

Etapa 1: Identificar o local para aplicação de um padrão

É necessário ter uma única conexão ou um par de conexões selecionadas para aplicar um padrão. A seleção é diferente para os três grupos em que os padrões podem ser organizados:

  • O primeiro grupo compreende os padrões Inserir Tarefa, Inserir Processo e Sequência, que adicionam uma única tarefa ou processo, ou uma sequência de tarefas a um modelo de processo e reconecta ao fluxo existente.

    Para esses padrões, é preciso selecionar apenas uma única conexão. Ao selecionar uma conexão única, o Modeler aplica o padrão para refinar esta conexão, ou seja, insere o fragmento do processo que resulta do instanciamento do padrão no modelo de processo, dividindo a conexão selecionada em duas conexões que conectam o padrão ao modelo de processo existente. Se a conexão tiver dados associados, ela reutiliza automaticamente esses dados no instanciamento do padrão.

  • O segundo grupo compreende compostos de padrão, ou seja, uma combinação de tarefas e gateways que exibem uma estrutura regular. Estão disponíveis os seguintes compostos: Composto Alternativo, Composto Paralelo, e Loop.

    Para esses padrões, é possível selecionar uma conexão ou um par de conexões. Se for selecionada uma única conexão, o Modeler refina esta conexão com o padrão selecionado. Se for selecionado um par de conexões, o Modeler reutiliza o fragmento de processo que está identificado por este par de conexões como uma parte do padrão. Explicamos a reutilização de fragmentos de processo em um padrão ao descrever os padrões com maiores detalhes.

  • No terceiro grupo, é possível encontrar padrões que permitem adicionar facilmente ramificações adicionais ao seu modelo: Ramificação Alternativa e Ramificação Paralela.

    Para esses padrões, é preciso ter selecionado um par de conexões. O Modeler coloca esses padrões entre as duas conexões selecionadas. Descrevemos este comportamento em detalhes na descrição desses padrões.

Etapa 2: Chamar um padrão

Após a sua seleção de conexões, há duas opções para chamar um padrão:

  • Clique em desenhar a tela de pintura de seu diagrama de modelo de processo de negócios e a seguir chamar o padrão na parte inferior do menu suspenso, ou
  • Clique no símbolo gráfico correspondente na paleta de Aceleradores.

Explicamos ambas as opções na Parte 1 desta série.

Recomendamos que você salve o seu modelo antes de aplicar um padrão, o que torna mais fácil desfazer alterações indesejadas, simplesmente descartando um modelo e reabrindo-o novamente em seu último estado salvo. Alternativamente, é possível usar a função desfazer oferecida pelo WebSphere Business Modeler. Isto irá desfazer cada uma das operações individuais de edição em que o padrão está composto passo a passo.

Para padrões que sejam possíveis chamar em uma conexão única, é exibida a seguinte mensagem de erro quando não estiver selecionada nenhuma conexão:

Para aplicar o padrão, selecione uma conexão.

Para padrões que sejam possíveis chamar em uma conexão única ou um par de conexões, o Modeler exibe a mensagem de erro da Figura 1, quando não houver nada selecionado. Se o seu par de conexão não delimitar um fragmento de processo ao qual o padrão é aplicável, é exibida a seguinte mensagem de erro:

Para aplicar o padrão, selecione uma conexão única ou um par de
 conexões que delimite um fragmento.

É seguro aplicar qualquer um dos 8 padrões; não é possível introduzir um erro de modelagem em seu modelo de processo de negócios pelo instanciamento de um padrão.

Contudo, aplicar um padrão raramente leva a um layout perfeito do modelo de processo resultante. Chamar o Layout automático da esquerda para a direita para aperfeiçoar o layout do modelo.

Etapa 3: Providenciar parâmetros em um assistente de padrão

Diversos padrões possuem uma interface de usuário, denominada de assistente de padrão que permite aos usuários instanciar o padrão com parâmetros. Um assistente de padrão é composto de três partes:

  • Na parte superior, exibe o nome do padrão e uma imagem esquemática sob a qual é possível encontrar uma explicação textual do padrão, contendo dicas sobre como usar o padrão.
  • Na parte intermediária do assistente, é possível especificar as informações sobre gateways e seus possíveis itens de entrada e saída e seus estados.
  • Na parte inferior, é possível encontrar guias para adicionar informações sobre as tarefas que fazem parte do padrão. As guias contêm listas que permitem que os usuários adicionem mais tarefas ou ramificações a um padrão. Para adicionar ou remover uma linha da lista, clique com o botão direito e selecione Adicionar ou Remover no menu de contexto (vide Figura 1).

Figura 1. Exemplo de assistente de padrão
Screen shot of Alternative Compound pattern

Enquanto um assistente de padrão estiver aberto, é possível continuar a editar o modelo. Se excluir acidentalmente a conexão selecionada para aplicação do padrão, o assistente fica inativo e o padrão não mais pode ser aplicado. Neste caso, feche o assistente.

Todas as informações em um assistente são opcionais, o que significa que um padrão pode ser aplicado sempre sem inserir nenhuma informação no assistente.

Na parte inferior de cada assistente, é possível encontrar o botão Aplicar Padrão. Clique neste botão para aplicar o padrão ao seu modelo de processo. Se decidir não aplicar um padrão, simplesmente feche a janela do assistente. Todos os parâmetros serão descartados. Cada assistente é exibido e descrito em detalhes neste artigo.

Neste artigo, adotamos as diretrizes comuns para a descrição de padrões, especificando as seguintes informações:

  • nome do Padrão: Um nome descritivo que ajuda a identificar e fazer referência ao padrão.
  • Propósito: Uma descrição da meta por trás do padrão e o motivo para usá-lo.
  • Também conhecido como: Outros nomes do padrão.
  • Estrutura: Uma explicação do assistente de padrão (se disponível) e os principais parâmetros do padrão.
  • Consequências: Uma descrição dos resultados, efeitos colaterais, e trade-offs causados pelo uso do padrão.
  • Exemplo: Um exemplo que ilustra como usar o padrão.
  • Padrões relacionados:Uma breve discussão de outros padrões que possuem um relacionamento com o padrão ou que são especialmente úteis em uma aplicação combinada com o padrão. Também destacaremos as transformações e refatorações que sejam úteis no contexto do padrão.

Em caso de grande similaridade das informações, forneceremos uma descrição que cubra diversos padrões. Ao descrever os assistentes, nos concentraremos nos campos em que as informações possam ser inseridas pelo usuário.



Voltar para parte superior


padrões Inserir Tarefa, Inserir Processo e Sequência

nome do padrão: Insert Task iconInserir Tarefa, Insert Process iconInserir Processo, Sequence iconSequência

Propósito: Os padrões Inserir Tarefa, Inserir Processo e Sequência permitem refinar uma conexão selecionada com uma única tarefa ou subprocesso, ou uma sequência de tarefas.

Também conhecido como: Roteamento sequencial, serial ou linear (fluxo) de tarefas e subprocessos.

Estrutura: Os padrões Inserir Tarefa e Inserir Processo são variantes do padrão Sequência que permite refinar uma conexão selecionada com uma única tarefa ou processo global. Essas duas instâncias específicas do padrão foram adicionadas explicitamente aos aceleradores, pois esta etapa de edição ocorre frequentemente. Em contraste, o padrão Sequência permite especificar uma sequência de tarefas com saídas de itens de negócios opcionais e estados de itens de negócios.

O padrão Inserir Tarefa não possui um assistente. Ela simplesmente insere uma tarefa com um novo nome padrão na conexão selecionada, poupando você do trabalho de soltar manualmente uma tarefa na tela de pintura e reconectar esta tarefa. Após aplicar o padrão, é possível editar o nome desta tarefa.

O padrão Inserir Processo abre uma janela de diálogo que permite a seleção de um processo global dos modelos de processo de negócios existentes no projeto de modelagem, conforme mostrado abaixo.

O padrão Inserir Processo seleciona a lista de processos globais de seu projeto de modelagem atual ou qualquer projeto em seu grupo de referência. Selecione um processo na lista, e a seguir clique em OK. O processo é adicionado ao modelo e conectado automaticamente usando a conexão selecionada (vide Figura 2).


Figura 2. Inserção de um processo global
Screen shot of Insert Global Process pattern wizard

Para adicionar outro projeto de modelagem a partir de sua área de trabalho ao grupo de referência de seu projeto atual, clique com o botão direito em seu projeto atual, selecione Editar Grupo de Referência... e siga as instruções.

O padrão Sequência permite especificar uma lista de nomes de tarefas em um assistente. O assistente mostra uma lista de nomes de tarefas com colunas de itens de negócios opcionais e estado de itens de negócios, conforme mostrado na Figura 3.


Figura 3. Assistente de Padrão Sequência
Screen shot of Sequence pattern wizard

O nome exibido na primeira linha é o nome da tarefa ou outro elemento de modelo a partir do qual a conexão selecionada tem início. Por exemplo, ao selecionar uma das ramificações de saída que inicia a partir de uma decisão, o nome da ramificação de saída selecionada é exibido no campo Nome de Tarefa da primeira linha.

Se uma conexão selecionada tiver um item de negócio associado e estado de item de negócio, este item de negócio e estado de item de negócio aparecem na primeira linha como a saída do elemento de modelo. Também são usados para instanciar os campos item de negócio e estado de item de negócios em todas as outras colunas.

É possível sobrescrever todos os campos com novos valores. Também é possível sobrescrever os valores na primeira linha do assistente. Entretanto, apenas a alteração do item de negócio e estado de item de negócio de saída é aplicada à conexão selecionada, enquanto uma alteração do nome de tarefa é ignorada.

Para sobrescrever um campo, clique em um campo de uma coluna de item de negócios ou estado de item de negócios. É exibido um botão, conforme mostrado na Figura 5. Ao clicar neste botão, a próxima janela permite a seleção de sua escolha diretamente dos itens e estados de negócios que estão definidos em seu projeto de modelagem. Se não estiver definido nenhum estado para um item de negócios, o valor Sem Estado é mostrado no respectivo campo e não pode ser alterado.

Para adicionar à lista ou remover da lista tarefas adicionais, clique com o botão direito e selecione Adicionar ou Remover no menu de contexto

.

Consequências: Os padrões adicionam uma tarefa local, processo global ou sequência de tarefas locais à conexão selecionada. Não há padrões específicos para adicionar tarefas globais ou processos locais, porém é possível converter uma tarefa local para uma tarefa global ou um processo local, usando o recurso Converter Para no WebSphere Business Modeler. Se inserir o nome de uma tarefa local no assistente do padrão Sequência que já tenha sido usado em seu modelo de processo, é adicionada uma nova tarefa com este nome e é exibido um erro Nome Duplicado na visualização de Erros.

Exemplo: Este exemplo mostra o padrão Sequência ilustrando o uso dos itens e estados de negócios. Reutilizamos os itens de negócios, conforme definido no projeto de modelagem de amostra HiringExample.mar que está disponível para download com esta série.

Nosso modelo de exemplo inicial contém uma única tarefa Receber Aplicativo que possui um item de negócios Aplicativo como entrada e saída. Quando o item de negócios Aplicativo deixar esta tarefa, ele está no estado Recebido (Figura 3).


Figura 4. Modelo de exemplo inicial que contém uma única tarefa
Diagram showing Receive Application example model

Aplicamos o padrão Sequência à conexão de saída desta tarefa para adicionar mais tarefas ao processo que manipula o aplicativo, ou seja, selecionamos a conexão de saída da tarefa Receber Aplicativo antes de chamar o padrão Sequência.

O assistente do padrão Sequência é pré-instanciado como mostra a Figura 6. Portanto, a tarefa Receber Aplicativo é exibida na primeira linha com o item de negócios Aplicativo como sua saída e o estado Recebido. As próximas duas linhas são instanciadas como nomes padrão para duas novas tarefas, enquanto o item de negócios e o estado de item de negócios são herdados dos valores na primeira linha.


Figura 5. Pré-instanciamento do assistente do padrão Sequência
Screen shot of Sequence wizard pre-instantiation table

Clique nos campos Nome de Tarefa e Estado de Item de Negócios na segunda e terceira linha e altere seus valores, conforme mostrado na Figura 6 (alterar Tarefa 1 Sequência para Revisar Aplicativo e Estado de Item de Negócios para Em Revisão. Adicione uma quarta linha à lista e defina seu Nome de Tarefa para Decidir Candidato, e seu Estado de Item de Negócios para Fechado.


Figura 6. Assistente de padrão Sequência atualizado
Screen shot of updated table

Clique em Aplicar Padrão e faça o layout de seu modelo de processo. Contém as tarefas exibidas na Figura 7, conectado por fluxo de dados.


Figura 7. Modelo de processo HiringExample após aplicação do padrão Sequência
Diagram showing updated process model

Evite a substituição de um item de negócios em uma ramificação de um gateway, pois isso pode levar a incompatibilidades em seu processo informado na visualização Erros ao salvar o modelo. Como exemplo, selecione a conexão de saída da fusão que conduz um item de negócios Contrato, conforme mostrado na Figura 8.


Figura 8. Conexão de fusão de saída
Diagram of process model with outgoing merge connection

Aplique o padrão Sequência à ramificação de saída desta fusão e substitua o item de negócios Contrato da ramificação de saída pelo Registro de Funcionário conforme mostrado na Figura 9.


Figura 9. Aplicação do padrão Sequência com um item de negócios alterado
Screen shot of Sequence table with a changed business item

Como resultado, a fusão recebe dois Contratos em suas ramificações de entrada que ela altera magicamente para um Registro de funcionário em sua ramificação de saída, conforme mostrado na Figura 10.


Figura 10. Contrato alterado para registro de Funcionário
Diagram of process model with contract changed to Employee record

Padrões relacionados: Esses padrões podem ser aplicados em qualquer conexão em seu modelo de processo. Utilize-os em particular após uma aplicação dos padrões Ramificação Alternativa e Ramificação Paralela para adicionar tarefas e subprocessos à ramificação criada por esses padrões. Similarmente, aplique-os após os padrões Composto Alternativo e Paralelo ou Loop para adicionar mais tarefas e subprocessos às ramificações especificadas.



Voltar para parte superior


Composto Alternativo

Nome do padrão: Alternative Compound iconComposto Alternativo

Propósito: Utilize este padrão para adicionar um fluxo de diversas ramificações alternativas ao seu modelo de processo que inicia com uma decisão e termina com uma fusão.

Também conhecido como:O padrão Composto Alternativo é uma combinação dos padrões de fluxo de trabalho Escolha Exclusiva e Fusão Simples (vide Russell et al. em Recursos abaixo) que englobam diversas ramificações alternativas. O padrão implementa o roteamento condicional e a junção assíncrona de diversos fluxos alternativos. O comportamento é comparável a um caso ou instrução switch em linguagens de programação.

Estrutura: É possível chamar o padrão composto alternativo, selecionando uma conexão ou um par de conexões. Um assistente abre conforme mostrado na Figura 11:


Figura 11. Assistente do padrão Composto Alternativo
The Alternative Compound consists of a decision followed by a merge that enclose two or more branches of tasks. Parameters can be provided for the names of the decision, the merge, the tasks, and the input and output business items and states. A branch without a task can be created by entering - as the task name.

O assistente permite a inserção de informações sobre a entrada da decisão que inicia o padrão, e sobre a saída da fusão que encerra o padrão. Para a decisão, é possível inserir seu nome, item de negócio de entrada e estado de item de negócios. Para a fusão, é possível inserir item de negócio de saída e estado de item de negócios. Lembre-se de que uma fusão pode ter um nome definido pelo usuário no WebSphere Business Modeler, porém este nome não é visível no diagrama e, portanto, não é editável no assistente.

Também é possível inserir as seguintes informações para duas ou mais ramificações de saída da decisão:

  • O nome de cada ramificação.
  • Probabilidade da ramificação
  • O estado do item de negócios quando deixa a decisão e entra na tarefa nesta ramificação
  • O nome da tarefa nesta ramificação
  • O estado do item de negócios quando deixa a tarefa.

Para adicionar à lista ou remover da lista ramificações adicionais, clique com o botão direito e selecione Adicionar ou Remover no menu de contexto

.

Consequências: Ao aplicar o padrão sem inserir nenhuma informação no assistente, a conexão selecionada é refinada com o fragmento do processo mostrado na Figura 12:


Figura 12. Saída padrão do assistente de processo Composto Alternativo
Diagram of output process model from Alternative Compound process     wizard

As duas primeiras ramificações obterão, por padrão, uma probabilidade de 50%. Qualquer outra ramificação obterá uma probabilidade de 0%, por padrão. Ao especificar porcentagens para cada ramificação que não totalizem 100%, o WebSphere Business Modeler informa este erro ao salvar o modelo. O padrão não tentará corrigir porcentagens de ramificação, pois não é possível saber quais são porcentagens corretas.

É possível criar um composto alternativo com uma ramificação vazia não contendo uma tarefa, especificando um traço "-" como o nome da tarefa, conforme mostrado na Figura 13:


Figura 13. Assistente do padrão Composto Alternativo
Screen shot of Alternate compound table with an empty branch

As entradas do assistente da Figura 13 criam um fragmento de processo, conforme mostrado na Figura 14:


Figura 14. O fragmento de processo criado para o composto com ramificação vazia
Diagram of process fragment created for     compound with empty branch

Também é possível selecionar um par de conexões e então aplicar o padrão. Com base no par de conexão, o assistente de padrão identifica automaticamente o fragmento de processo que está delimitado por essas duas conexões. Se este fragmento tiver suas conexões selecionadas como suas únicas conexões de entrada e saída, ele o usa como um argumento ao assistente de padrão e o adiciona em uma das ramificações do padrão, especificando um início "*" como o nome da tarefa nesta ramificação.

Observe que a explicação textual do padrão no assistente é ajustada, exibindo texto adicional ao selecionar duas conexões, e destaca esta opção.

O Composto Alternativo compreende uma decisão seguida por uma fusão que engloba duas ou
mais ramificações de tarefas.  Os parâmetros podem ser fornecidos para os nomes da decisão,
|-------10--------20--------30--------40--------50--------60--------70--------80--------9|
|-------- Erro XML:  A linha anterior não é maior do que o máximo de 90 caracteres ---------|
fusão, tarefas, e os itens e estados de negócios de entrada e saída. Uma ramificação sem
uma tarefa pode ser criada pela inserção de "-" como nome da tarefa. O fragmento atualmente
|-------10--------20--------30--------40--------50--------60--------70--------80--------9|
|-------- Erro XML:  A linha anterior não é maior do que o máximo de 90 caracteres ---------|
selecionado pode ser utilizado em vez de uma tarefa, usando "*" como nome da tarefa.

Se você se esquecer de colocar o *, a seguinte mensagem de erro lembrará você:

Se um par de conexões tiver sido selecionado, use "*" como nome de exatamente uma
tarefa. Se apenas uma única conexão tiver sido selecionada, "*" não é permitido
como nome da tarefa.

Vamos observar mais de perto a noção de um fragmento de processo. A Figura 15 mostra 4 fragmentos em um modelo de processo. Apenas os três fragmentos circundados por uma caixa sólida possuem uma única conexão de entrada 1, 3 ou 4 e conexão de saída 2, 5 ou 6 e podem ser reutilizados no padrão. A parte do modelo de processo circundado por uma caixa tracejada possui duas conexões de entrada 3 e 4 (as duas ramificações de saída da decisão) e as duas conexões de saída 5 e 6 (as duas ramificações de entrada da fusão). Se forem selecionadas duas dessas conexões, por exemplo a ramificação de saída inferior da decisão e ramificação de entrada superior da fusão, não foi selecionado um fragmento adequado que pode ser reutilizado no padrão.


Figura 15. Fragmento em um modelo de processo
Diagram showing fragments in the process model

Se duas conexões não identificarem uma seleção válida de um fragmento que possa ser reusado no padrão, uma mensagem de erro avisa para rever sua seleção de conexões.

Para aplicar o padrão, selecione uma conexão única ou um par de conexões que
delimite um fragmento.

Exemplo: Apresentamos dois exemplos. O primeiro exemplo ilustra o uso de itens de negócios e estados de item de negócios em um composto alternativo. Nesse exemplo, criamos o modelo de processo na Figura 16. O segundo exemplo ilustra a reutilização de um fragmento de processo como um argumento no assistente de padrão com suas conexões selecionadas.

  1. Crie um novo modelo de processo e conecte os eventos iniciais e finais. Em seguida, selecione essa conexão conforme mostra a Figura 16:

    Figura 16. Iniciar e encerrar eventos
    Diagram showing start and terminate events

  2. Instancie o padrão como mostra a Figura 17. É possível usar o item de negócios Aplicativo conforme definido no projeto de modelagem de exemplo HiringExample.mar que está disponível com esta série. Selecione Fechado como o valor para os campos de estado do item de Negócios da Saída e das Ramificações.
    Observe que os campos para especificar itens de negócio e estados de itens de negócio são sincronizados um com o outro de tal modo que seus valores permaneçam consistentes um com o outro. Por exemplo, só é possível especificar diferentes estados de item de negócio em cada uma das ramificações quando for selecionado o Estado No como valor do estado de entrada do item de negócio da decisão. Se desejar um estado de saída específico do item de negócio na fusão, então a tarefa em cada ramificação deve fornecer este estado de saída.

    Figura 17. Instanciando o padrão Composto Alternativo
    Screen shot of Alternative     Compound wizard with values instantiated

    A Figura 18 mostra o modelo de processo resultante.



    Figura 18. Modelo de processo resultante após aplicar o padrão Composto Alternativo
    Diagram showing resulting process model after applying the Alternative Compound pattern

Com nosso segundo exemplo, mostrando o reuso de um fragmento de processo:

  1. Selecione a conexão de entrada 1 da decisão e a conexão de saída 2 da fusão como marcado na Figura 15 a partir da alternativa composta que criamos no primeiro exemplo. O par de conexão identifica o maior fragmento mostrado na Figura 15.
  2. Chame o padrão e insira * como o nome da tarefa na primeira ramificação. Preencha os outros campos do assistente como mostrado na Figura 19 Clique em Aplicar Padrão.

    Figura 19. Assistente de Padrão Composto Alternativo ao reutilizar um fragmento de processo
    Screen shot of the Alternative Compound pattern when reusing a process fragment

    O fragmento de processo entre as duas conexões selecionadas é reutilizado na ramificação superior do padrão, como mostra a Figura 20:



    Figura 20. Fragmento de processo reutilizado
    Diagram showing reused process     fragment

Padrões relacionados: Para adicionar mais tarefas ou subprocessos a uma ramificação do padrão, aplique o padrão Inserir Tarefa, Inserir Processo ou Sequência a uma conexão nesta ramificação. Para modelar um processo onde o controle pode fluir de uma ramificação a outra antes da fusão das duas ramificações, aplique o padrão Ramificação Alternativa. Para mesclar diversos gateways em um único gateway, use a refatoração de Elementos de Fusão. Para refatorações, vide a Parte 4 desta série.

Nome do Padrão

Voltar para parte superior


Composto Paralelo

: Parallel Compound iconComposto Paralelo.

Propósito: Use este padrão para adicionar um fluxo de diversas ramificações paralelas ao seu modelo de processo que começa com uma bifurcação e termina com uma junção.

Também conhecido como: O padrão Composto Paralelo é uma combinação dos padrões de fluxo de trabalho Divisão Paralela e Sincronização (vide Russel et al. em Recursos abaixo) que compreende várias ramificações paralelas. Esse padrão implementa o roteamento paralelo e o encontro de fluxos.

Estrutura: É possível chamar o padrão composto paralelo, selecionando uma conexão ou um par de conexões. É aberto um assistente, conforme mostra a Figura 21:


Figura 21. Assistente do padrão Composto Paralelo
The pattern description reads: The Parallel Compound consists of a fork followed by a join that enclose two or more branches of tasks. Parameters can be provided for the names of the fork, the join, the tasks, and the input and output business items and states.

Através desse assistente, é possível inserir informações sobre o item de negócios de entrada e o estado do item de negócios da bifurcação que inicia o padrão, e sobre o item de negócios de saída e estado do item de negócios da junção que encerra o padrão. Lembre-se que uma bifurcação ou junção podem ter um nome definido por usuário no WebSphere Business Modeler, porém esses nomes não estão visíveis no diagrama, portanto, não são editáveis no assistente.

Também é possível especificar o nome de uma tarefa para cada ramificação paralela. O assistente recebe os itens de negócios de entrada e saída e estados dos itens de negócios a partir das informações fornecidas pela bifurcação e junção, que, portanto, não são editáveis para a tarefa. Para adicionar à lista ou remover da lista ramificações adicionais, clique com o botão direito e selecione Adicionar ou Remover no menu de contexto.

Consequências: Quando o padrão for aplicado sem inserir nenhuma informação no assistente, o Modeler filtra a conexão selecionada com o fragmento de processo apresentado na Figura 22:


Figura 22. Fragmento de processo padrão para padrão Composto Paralelo
Diagram showing default process fragment for     Parallel Compound pattern

Não pode ser criada nenhuma ramificação vazia neste padrão, pois todas as ramificações paralelas são sempre executadas, e executar uma ramificação vazia não tem sentido. Portanto, ao inserir um traço “-” como o nome da tarefa em uma ramificação, o padrão interpreta o traço como o nome da tarefa, em contraste ao padrão Composto Alternativo em que o traço indica uma ramificação vazia.

Exemplo: Apresentamos um exemplo onde recriamos uma parte do processo Avaliar Candidato a partir da Parte 1 desta série, porém, desta vez, também modelamos itens de negócios de modelo e estados de item de negócios.

  1. Crie uma parte inicial deste processo e selecione a conexão entre a tarefa Verificar CV e finalizar evento conforme apresentado na Figura 23:

    Figura 23. Processo Avaliar Candidato inicial
    Diagram showing Initial Evaluate Candidate     process

  2. Chame o padrão Composto Paralelo.
  3. Instancie-o conforme a Figura 24, criando três ramificações que contenham as tarefas Revisar Publicações Selecionadas, Examinar Perfil de Publicação, e Verificar Certificados de &Categorias. Lembre-se de que é necessário adicionar uma nova ramificação antes de inserir o nome da terceira tarefa.
  4. Selecione o item de negócios Aplicativo como entrada e saída do composto.
  5. Selecione Recebido como seu estado de entrada e Fechado como seu estado de saída. É possível usar o item de negócios Aplicativo conforme definido no projeto de modelagem de exemplo HiringExample.mar que está disponível com esta série.
  6. Clique em Aplicar Padrão.

    Figura 24. O padrão Composto Paralelo com essas três ramificações instanciadas
    Screen shot of Parallel Compound pattern with     three     instantiated branches

    O padrão instanciado com fluxo de dados é adicionado ao seu modelo de processo. O padrão adiciona o item de negócios Aplicativo como saída da tarefa Verificar CV para conectar de forma adequada a entrada necessária para a bifurcação, conforme mostra a Figura 25:



    Figura 25. Modelo de processo após a aplicação do padrão
    Diagram showing the process model after pattern application

Como no caso do padrão Composto Alternativo, é possível selecionar duas conexões para reusar um fragmento de processo em uma ramificação do padrão Composto Paralelo. Vide a descrição do padrão Composto Paralelo para informações adicionais.

Padrões relacionados: Para adicionar mais tarefas ou subprocessos a uma ramificação do padrão, aplique os padrões Inserir Tarefa, Inserir Processo ou Sequência. Para adicionar ramificações paralelas adicionais ao padrão ou adicionar conexões paralelas entre ramificações existentes, selecione duas conexões e aplique o padrão Ramificação Paralela (NOTA DE PRODUÇÃO: Adicionar link à seção Ramificação Paralela). Mescle bifurcações e junções múltiplas, usando a refatoração de Elementos de Fusão (vide Parte 4 desta série).



Voltar para parte superior


Loop

Nome do padrão: Loop iconLoop

Propósito: O padrão Loop permite adicionar um ciclo ao seu modelo de processo que começa com uma fusão, compreende uma sequência de tarefas de loop, e termina com uma decisão. Na conexão reversa desde a decisão até fusão, é possível adicionar as assim chamadas tarefas de retrabalho que são executadas antes do corpo de loop ser inserido novamente.

Também conhecido como: O padrão Loop permite aos usuários adicionar loops estruturados (iterações, ciclos) na forma de um loop while ... do (pré-teste) ou um loop repeat ... until/do ... while (pós-teste) ao modelo. Ele corresponde ao padrão de fluxo de trabalho Loop Estruturado (vide Russel et al. em Recursos abaixo). Sintaticamente, é uma combinação da Fusão Simples seguida pelos padrões de fluxo de trabalho Escolha Exclusiva.

Estrutura: É possível chamar o padrão de Loop, selecionando uma conexão ou um par de conexões. É aberto um assistente, conforme mostra a Figura 26:


Figura 26. Assistente de padrão de loop
The Loop pattern consists of a merge, followed by a sequence of tasks, followed by a decision, and optionally a sequence of rework tasks. Parameters can be provided for the names of the merge, decision, tasks, the business items, and the business item states

O assistente contém três guias denominadas Parâmetros de Loop, Tarefas de Corpo de Loop, eTarefas de Retrabalho.

Na guia Parâmetros de Loop são inseridas as informações sobre o item de negócios de entrada e o estado de item de negócios para a fusão, o item de negócio de saída e estado de item de negócios para a decisão e o nome da decisão. Além disso, é possível especificar os nomes e probabilidades da ramificação de saída que deixam a ramificação de decisão e de loop conectarem a decisão de volta à fusão. Observe que os campos de item de negócio e estado de item de negócio das ramificações são sincronizados com os respectivos campos para os gateways de fusão e decisão. Por exemplo, o estado do item de negócios de saída é o mesmo que o estado do item de negócios da ramificação de saída. O estado do item de negócios para a ramificação de loop é o mesmo que o estado do item de negócios na primeira fileira da guia Tarefas de Retrabalho. O item de negócios e estado de item de negócios da última tarefa de retrabalho são os mesmos que o item de negócios de saída e estado de item de negócios da fusão.

Na guia Tarefas de Corpo de Loop apresentada na Figura 27, são inseridas as informações sobre as tarefas entre a fusão e a decisão no corpo do loop. A primeira linha exibe a fusão a partir da qual o corpo loop tem início. É possível editar o item de negócios de saída e o estado do item de negócios para a fusão. Nas linhas subsequentes, é possível adicionar mais tarefas com seus itens de negócios de saída e estados de item de negócios. Para adicionar à lista ou remover da lista tarefas adicionais, clique com o botão direito e selecione Adicionar ou Remover no menu de contexto.


Figura 27. Guia Tarefas de Corpo do Loop
Screen shot showing Loop Body Tasks     tab

Na guia Tarefas de Retrabalho apresentada na Figura 28, é possível adicionar tarefas para a conexão reversa, ou seja, a ramificação de loop que retorna da decisão até a fusão. A primeira linha exibe o nome da ramificação de saída do loop da decisão. Nas linhas subsequentes, é possível adicionar mais tarefas com seus itens de negócios de saída e estados de item de negócios. Para adicionar à lista ou remover da lista tarefas adicionais, clique com o botão direito e selecione Adicionar ou Remover no menu de contexto.


Figura 28. Guia Tarefa de Retrabalho
Screen shot showing Rework Task tab

Consequências: Quando o padrão é aplicado sem inserir nenhuma informação no assistente, a conexão selecionada é refinada com o fragmento de processo apresentado na Figura 29:


Figura 29. Resultado da aplicação do padrão de Loop sem fornecer uma instalação
Diagram showing result of applying the Loop pattern     without providing an instantiation

O Modeler adiciona a fusão e a decisão ao modelo. Entre eles, ele adiciona uma tarefa padrão chamada Nome de Tarefa do Corpo. As duas ramificações da decisão são denominadas Ramificação de Saída e Ramificação de Loop. A ramificação de saída liga-se à conexão originalmente selecionada, enquanto a Ramificação de Loop conectam-se de volta à fusão. Na ramificação de loop, o Modeler atribui uma tarefa de retrabalho padrão chamada Nome da Tarefa de Retrabalho.

O resultado da porta de decisão determina se o loop é repetido. Isso significa que as tarefas de corpo do loop serão executadas, pelo menos, uma vez. As tarefas de Retrabalho somente serão executadas quando o resultado da decisão ativa a ramificação do loop e o loop se repete. Deixando o corpo do loop vazio sem nenhuma tarefa e atribuindo somente tarefas de retrabalho na ramificação de loop, é definido um loop while-do (teste de pré-loop), pois todas as tarefas de retrabalho são somente executadas quando o resultado da decisão ativa a ramificação de loop. Se a ramificação de loop for deixada sem nenhuma tarefa e apenas coloque tarefas no corpo do loop entre a fusão e a decisão, é definido um loop do-while (teste de pós-loop).

Loops criados com o padrão loop são sempre aninhados de forma apropriada um dentro do outro. Ao usar esse padrão, não é possível criar ciclos não estruturados com conexões sobrepostas.

Exemplo: Apresentamos um exemplo que ilustra o uso dos itens de negócios e estados dos itens de negócios. Nesse exemplo, criamos a parte inicial do processo Aprovar Contratação e Emitir Contrato que foi trabalhado na Parte 1 desta série, porém a refinamos com fluxo de dados.

  1. Crie um pequeno modelo de processo que consista em um evento inicial, seguido pela tarefa Emitir Contrato, e encerre em um evento final, conforme apresentado na Figura 30:

    Figura 30. Modelo de processo inicial
    Screen shot showing Rework Task tab

  2. Selecione a conexão entre o evento inicial e a tarefa Emitir Contrato.
  3. Execute o padrão loop. Insira na guia Parâmetros de Loop, conforme apresentado na Figura 31, Dados Completos e Precisos? como o nome da decisão.
  4. Selecione o item de negócios Aplicativo como entrada da fusão e saída da decisão. O estado de item de negócios é Aceito, o estado de saída é ApprovedForContract.
  5. Nomeie a ramificação de saída com Sim e a ramificação de loop Não. Insira uma probabilidade de 70% de que a ramificação de saída seja tomada e uma probabilidade de 30% de que a ramificação de loop deva ser tomada.
  6. Selecione IncompleteForContract como o estado do item de negócios para a ramificação de loop. O estado da ramificação de saída já é definido a partir do estado do item de negócios de saída da decisão.

    Figura 31. valores da guia Parâmetros de Loop
    Screen shot showing Loop Parameters tab     values

  7. Em seguida, insira na guia Tarefas de Corpo de Loop conforme na Figura 32. Insira o nome de tarefa Analisar Dados de Funcionário na segunda linha. Selecione o item de negócios Aplicativo, mas não selecione um estado de item de negócios específico, pois o item Aplicativo pode estar em dois estados diferentes após a análise.
  8. O campo Estado do Item de Negócios referente à fusão pode exibir o valor Aceito neste estágio, mas quando são preenchidas as Tarefas de Retrabalho, ele sincronizará para exibir o valor Sem estado. Observe que Sem estado no WebSphere Business Modeler indica "qualquer estado" - um item de negócios está sempre em algum estado, porém ele pode, por exemplo, estar em um dos diversos estados de saída possíveis após uma tarefa ter sido executada. Este é o caso com a tarefa Revisar Dados de Funcionário que define o estado do Aplicativo para IncompleteForContract ou ApprovedForContract, como podemos observar a partir dos estados do item de negócios das ramificações de loop e de saída.

    Figura 32. Valores da guia Corpo de Loop
    Screen shot showing Loop Body Tasks tab     values

  9. Agora, preencha na guia Tarefas de Retrabalho conforme na Figura 33. Insira o nome de tarefaRetornar ao Gerente que Envia na segunda fileira, selecione o Aplicativo item de Negócios, e especifique IncompleteForContract como seu estado. A primeira linha já deve exibir as informações inseridas na guia Parâmetros de Loop para a ramificação do loop.

    Figura 33. Valores da guia Tarefas de Retrabalho
    Screen shot showing Rework Tasks tab values     values

  10. Clique em Aplicar Padrão.

Conforme pode ser visto na Figura 34, o evento inicial é substituído por fluxo de dados, exibindo o item de negócio Aplicativo inserindo o processo no estado Aceito. As ramificações de decisão exibem os dois estados de resultado possíveis da tarefa Analisar Dados de Funcionário: ApprovedForContract e IncompleteForContract. Para o estado ApprovedForContract, a ramificação de saída nomeada Sim é assumida e conecta-se à tarefa Emitir Contrato. Para o estado ImcompleteForContract, a ramificação de loop nomeada Não é assumida e conduz de volta à fusão. Na ramificação de loop, podemos ver a tarefa Retornar ao Gerente que Envia como a única tarefa de retrabalho neste exemplo.


Figura 34. Modelo de processo Emitir Contrato atualizado
Diagram showing updated Issue Contract process model

Padrões relacionados: Use os padrões Sequência ou Inserir Tarefa/Inserir Processo para adicionar mais tarefas e subprocessos de corpo de loop ou de retrabalho a um loop. É possível adicionar ciclos não estruturados ao seu modelo, aplicando o padrão Ramificação Alternativa. Vide a descrição deste padrão para mais detalhes.



Voltar para parte superior


Ramificação Alternativa e Ramificação Paralela

Nome do padrão: Alternative Branch iconRamificação AlternativaParallel Branch iconRamificação Paralela

Propósito: Os padrões ramificação alternativa e ramificação paralela permitem criar uma nova conexão que tem início na conexão selecionada primeira e termina na conexão selecionada como segunda. Para o padrão Ramificação Alternativa, o Modeler adiciona uma porta de decisão e de fusão no início e no final da nova conexão. Para o padrão de Ramificação Alternativa, o Modeler adiciona uma porta de bifurcação e de junção no início e no final da nova conexão.

Esses padrões permitem criar processos com fluxos de ramificação muito flexíveis, que transpassam as estruturas similares a blocos possíveis de serem criadas com os padrões de Sequência, Composto, e Loop. Além disso, o padrão de Ramificação Alternativa permite adicionar ciclos não estruturados ao seu modelo. As Figuras 35 e 36 ilustram modelos de processo possíveis de criar usando os padrões de Ramificação.


Figura 35. Modelo de processo com ramificações alternativas não estruturadas, incluindo um ciclo
Diagram of process model with unstructured alternative branches including a cycle.

O modelo de processo na Figura 35 contém três fusões e três decisões, mas essas fusões e decisões não são colocadas em blocos bem estruturados, de modo que uma decisão sempre seria exatamente coincidente com uma fusão. Chamamos tal fluxo de não estruturado. O modelo de processo também contém um ciclo que compreende fusões M1 e M2 e decisão D3. As duas fusões M1 e M2 especificam duas entradas possíveis para o ciclo.


Figura 36. Modelo de processo sem ciclo com ramificações paralelas não estruturadas
Diagram of cycle-free process model with unstructured parallel branches

O modelo de processo na Figura 36 exibe um modelo não estruturado com fluxos paralelos que começam e terminam em diferentes derivações e junções. Por exemplo, a junção J2 sincroniza duas ramificações que são abertas pela derivação F1 e F2. Observe que um fragmento de processo com derivações e junções jamais devem conter um ciclo, ou seja, uma conexão reversa que conduz de volta a uma junção. Um ciclo ou loop que começa em uma junção sempre criará uma situação chamada "impasse". Esse impasse ocorre porque a junção aguarda a entrada de todas as ramificações antes que ela possa executar, mas a ramificação de loop apenas pode fornecer a entrada após a derivação ter executado. A análise de controle-fluxo contida neste release dos aceleradores permite detectar de forma automática impasses e outros tipos e erros de controle-fluxo. Vide Parte 1 desta série para detalhes.

Também conhecido como: O padrão Ramificação Alternada é uma combinação da Escolha Exclusiva seguida pelos padrões de fluxo de trabalho de Fusão Simples (vide Russel et al. em Recursos abaixo). Quando usado para criar conexões reversas, ele permite adicionar o padrão de Ciclos Arbitrários aos seus modelos de processo. O padrão Ramificação Paralela é uma combinação do padrão Divisão Paralela seguido pelo padrão de fluxo de trabalho Sincronização (vide Russel et al. em Recursos abaixo).

Estrutura: Os padrões não têm assistentes. Para criar modelos não estruturados, selecione duas conexões, pressionando a tecla SHIFT. Primeiro, clique na conexão onde a ramificação deve começar e, em segundo, clique na conexão onde a ramificação deve terminar.

Consequências: Para criar um modelo correto, deve-se usar somente um tipo de ramificação em um fragmento de seu modelo. Se os dois tipos forem misturados com um fragmento, seu modelo sempre conterá erros de controle-fluxo. Protegemos o aplicativo de ambos os padrões de ramificação nos aceleradores para evitar que uma ramificação seja aplicada de forma incorreta. Você verá as seguintes mensagens de erro ao tentar aplicar o padrão Ramificação Alternativa a um fragmento que contiver uma porta de derivação ou junção:

Para aplicar esse padrão, o fragmento incluso não deve conter uma derivação ou uma junção.

Uma ramificação paralela só pode ser adicionada para processar fragmentos que não contenham um gateway de decisão ou de fusão:

Para aplicar esse padrão, o fragmento incluso não deve conter uma derivação ou uma junção.

Além disso, um fragmento de processo com derivações e junções jamais devem conter um ciclo, ou seja, uma conexão reversa que conduz de volta a uma junção. O padrão evita a adição de um ciclo ao seu modelo ao aplicar o padrão Ramificação Paralela. Ele exibe a seguinte mensagem de erro:

A aplicação do padrão Ramificação Paralela não deve introduzir um ciclo.

Exemplo: Em nosso primeiro exemplo, vimos o caso de uso mais comum para o padrão Ramificação Alternativa, a saber, a criação de um processo cíclico, adicionando uma conexão reversa ao modelo.

  1. Crie um modelo de processo que contenha tarefas Analisar Dados de Funcionário e Emitir Contrato em uma sequência conforme apresentado na Figura 37:

    Figura 37. Modelo de processo inicial
    Diagram of Initial process     model

  2. Agora, pressione a tecla SHIFT e selecione a conexão entre as duas tarefas, seguidas pela conexão entre o evento inicial e a tarefa Analisar Dados de Funcionário. Observe as duas marcações diferentes das conexões selecionadas. A Figura 38 distingue a ordem de seleção.

    Figura 38. Modelo de processo inicial com conexões selecionadas
    Diagram of initial process model with     connections selected

  3. Aplique o padrão de Ramificação Alternativa, que adicionam um ciclo em volta da tarefa Analisar Dados de Funcionário, ou seja, essa tarefa torna-se parte do corpo do loop que acabou de ser criado conforme apresentado na Figura 39:

    Figura 39. Modelo de processo com padrão de Ramificação Alternativa aplicado
    Diagram of Process model with Alternative     Branch pattern applied

  4. Para adicionar tarefas de retrabalho a esse loop, selecione a conexão reversa (ou seja, a ramificação do loop deixando a decisão) e aplique o padrão Sequência conforme explicado inicialmente nesse artigo.

Em nosso segundo exemplo, discutimos um caso de uso em que é necessário adicionar uma conexão adicional entre duas ramificações alternativas. Dê uma olhada no modelo de um processo de aprovação de hipoteca com duas ramificações alternativas apresentado na Figura 40:


Figura 40. Modelo inicial de processo de Aprovação de Hipoteca
Diagram of initial Mortage Approval process model

Se o cliente não tiver capacidade creditícia, o banco encaminha uma rejeição e encerra o aplicativo do cliente. Se o cliente tiver capacidade creditícia, o banco encaminha uma oferta hipotecária, preenche os documentos, e abre uma conta para pagamento da hipoteca.

Observamos que o modelo de processo presume que o cliente aceita a hipoteca concedida. Esse pode nem sempre ser o caso. Se a oferta for rejeitada pelo cliente, o funcionário do banco deve entrar em contato com o cliente para descobrir o motivo, e então, encerra o aplicativo.

Para fazer essa mudança no modelo de processo:

  1. Pressione a tecla SHIFT e, primeiro, selecione a conexão entre as tarefas Enviar Hipoteca... e Preencher Documentos na ramificação Sim da decisão, e, em seguida, selecione a conexão entre as tarefas Enviar Rejeição e Fechar o Aplicativo na ramificação Não da decisão, conforme mostra a Figura 41:

    Figura 41. Processo de Aprovação de Hipoteca com conexões selecionadas
    Diagram of Mortgage Approval process with     connections selected

  2. Execute o padrão Ramificação Alternativa. Uma nova conexão conecta as duas ramificações que estão protegidas por novos gateways de decisão e de fusão, conforme mostra a Figura 42:

    Figura 42. Processo de aprovação de hipoteca com o padrão Ramificação Alternativa aplicado
    Diagram of Mortgage approval process with the     Alternative Branch pattern applied

  3. Coloque a tarefa Contatar Cliente nessa conexão, chamando o padrão Inserir Tarefa. Altere a descrição da decisão para O Cliente Aceita?. O resultado é um modelo de processo em que o cliente é contatado quando não aceita a oferta, conforme mostra a Figura 43:

    Figura 43. Processo de aprovação de hipoteca com padrão Inserir Tarefa aplicado
    Diagram of Mortgage approval process with Insert Task pattern applied

É possível aplicar o padrão Ramificação Alternativa novamente para permitir que o banco reexamine sua oferta após ter entrado em contato com o cliente, adicionando uma conexão reversa da saída da tarefa Contatar Cliente até entrada da tarefa Enviar Hipoteca.

Em nosso terceiro exemplo, observamos um caso de uso para o padrão Ramificação Paralela. Nosso exemplo descreve as atividades de um usuário ao solicitar produtos em uma loja online. Gostaríamos de modificar esse processo de modo que o usuário deva, adicionalmente, ler as condições de garantia e aceitar as condições de pagamento e garantia, após a leitura de ambos. Paralelamente, ele pode ler as informações do produto.

Para fazer essa mudança:

  1. Selecione a conexão de entrada da tarefa Ler Informações de Produto, seguida pela conexão de saída da tarefa Ler Condições de Pagamento conforme mostra a Figura 44:

    Figura 44. Modelo Inicial de processo de Loja Online
    Diagram of Initial Online Shop process model

  2. O Modeler adiciona uma nova ramificação paralela ao modelo conforme mostra a Figura 45:

    Figura 45. Processo de Loja Online com uma nova ramificação paralela
    Diagram of Online Shop process with a new     parallel branch

  3. Adicione a tarefa Ler Condições de Garantia para essa ramificação, e aceite a tarefa Aceitar Condições para a conexão deixando a junção adicionada ao padrão, usando o padrão Inserir Tarefa duas vezes. A Figura 46 mostra o modelo de processo completo.

    Figura 46. Processo de Loja Online com novas tarefas adicionadas.
    Diagram of Online Shop process with new tasks     added

Padrões relacionados: Para adicionar tarefas e subprocessos às ramificações criadas, use os padrões Inserir Tarefa, Inserir Processo, e Sequência. Para melhorar o layout do modelo de processo resultante, pode ser necessário reordenar as ramificações, entrando ou deixando um gateway. A refatoração de Ramificações de Ordenadas Automaticamente pode automatizar isso para você. Para combinar gateways que se conectam um ao outro de forma direta dentro de um único gateway, aplique a transformação Elementos de Fusão. Vide as Partes 3 e 4 desta série para mais detalhes sobre transformações e refatorações.



Voltar para parte superior


Configuração da paleta Aceleradores

A paleta Aceleradores é uma visualização Eclipse configurável que fornece fácil acesso aos padrões, transformações, e refatorações disponíveis. É possível colocá-la em qualquer ponto de sua tela e personalizá-la conforme suas necessidades.

  1. Para abrir a paleta Aceleradores, selecione a Janela> Exibir Visualização> Outro... no WebSphere Business Modeler. Em seguida, desça até Visualizações do Business Modeler, selecione Paleta Aceleradores e clique em OK, conforme mostra a Figura 47.

    Figura 47. Abrindo a paleta Aceleradores
    Diagram of Online Shop process with new tasks     added

  2. A paleta instalará uma nova visualização na parte inferior do WebSphere Business Modeler. É necessário instalar a paleta somente uma única vez, o que a torna disponível para a próxima vez em que o Modeler for aberto no mesmo espaço de trabalho. Entretanto, quando houver troca entre os layouts de 4-lados, 2-lados e 1-lado no Modeler, a paleta fecha e é preciso reabri-la.
  3. Clique em um ícone na paleta para chamar um padrão, transformação ou refatoração. Passe a seta do mouse sobre um ícone para visualizar uma breve descrição dele.
  4. Dê um clique duplo sobre a guia cinza da visualização da paleta Aceleradores e selecione Separado conforme mostra a Figura 48.

    Figura 48. Figura 48. Separando a paleta
    Screen shot of detaching the     palette

  5. É possível mover, agora, a paleta para qualquer direção em sua tela. Também é possível redefinir o tamanho a paleta como qualquer outra janela. Consideramos conveniente adicionar a paleta ao lado inferior esquerdo no Modeler conforme mostra a Figura 49:

    Figura 49. Movendo a paleta ao lado inferior esquerdo do Modeler
    Screen shot of moving the     palette to lower left of Modeler

  6. A paleta Aceleradores, por padrão, exibe todos os itens de todos os padrões, transformações e refatorações. Entretanto, também é possível selecionar seu subconjunto de aceleradores e dispô-los em grupos com nomes de sua preferência.

    Para essa finalidade, selecione Janela > Preferências. Na visualização de Preferências que abrir, selecione a Paleta Aceleradores conforme mostra a Figura 50:



    Figura 50. Visualização de Preferências
    Screen shot of Preferences     view

    A visualização Operações Selecionadas lista todas as operações, ou seja, padrões, transformações, e refatorações que estão exibidas atualmente na paleta Aceleradores. A visualização Operações Disponíveis exibe quaisquer operações remanescentes que ainda não estejam exibidas na paleta. Por padrão, todas as operações disponíveis são selecionadas para a paleta, e a visualização Operações Disponíveis é vazia.

É possível realizar as seguintes operações de configuração:

  • Defina e adicione seus próprios grupos, inserindo um nome de grupo na caixa de texto abaixo da visualização Operações Selecionadas e pressione o botão Grupo. O novo grupo é adicionado à visualização Operações Selecionadas.
  • Renomeie um grupo, através de um clique duplo e edite um nome de grupo na visualização Operações Selecionadas.
  • Renomeie um grupo, selecionado o grupo na visualização Operações Selecionadas, e, em seguida, clique no botão Remover. O grupo desaparecerá e suas operações serão listadas na visualização Operações Disponíveis.
  • Adicione uma operação a um grupo, primeiro selecionando o grupo na visualização Operações Selecionadas, e, então, selecione a operação na visualização Operações Disponíveis, e clique no botão Adicionar. A operação desaparecerá da visualização Operações Disponíveis e será adicionada ao grupo selecionado. Não é necessário expandir o sinal de + na frente do grupo para adicionar uma operação.
  • Remova uma operação de um grupo, expandindo o sinal de + na frente do grupo, em seguida, selecione a operação e clique no botão Remover. A operação desaparecerá do grupo e será adicionada à visualização Operações Disponíveis.
  • Mova uma operação de um grupo até outro, arrastando e soltando-a para dentro da visualização Operações Selecionadas.
  • Altere a ordem das operações dentro de um grupo, arrastando e soltando-as dentro do grupo aumentado na visualização Operações Selecionadas.

Só se pode adicionar uma operação a um grupo por vez, mas não multiplicar grupos de forma simultânea. Para voltar à configuração padrão inicial da paleta, clique em Restaurar Padrões. Ao adicionar um grupo ou remover operações de um grupo, usando o botão Adicionar ou Remover, é possível selecionar operações múltiplas nas visualizações, pressionando as teclas SHIFT ou CTRL

na Figura 51, configuramos a paleta Aceleradores, de modo que ela só exiba os oito padrões disponíveis.


Figura 51. Paleta Aceleradores configurada para exibir os padrões disponíveis
Screen shot of Accelerators palette configured to show the available patterns

Para essa configuração, exclua todos os grupos, exceto o grupo Padrões. Reordene quaisquer padrões dentro do grupo Padrões, arrastando e soltando-os dentro do grupo conforme preferir. Em seguida, clique em Aplicar e OK. Suas alterações devem ser imediatamente visíveis na paleta.

Se uma alteração de configuração não estiver visível na paleta, feche e abra-a novamente para a visualização atualizar, ou seja, selecione Janela >Exibir Visualização > Outro.... Em seguida, desça até Visualizações do Business Modeler, selecione Paleta Aceleradores e clique em OK. A configuração de paleta é válida em relação a um espaço de trabalho. Isso significa que, para cada espaço de trabalho, é possível ter uma configuração diferente, porém isso também exige que a paleta seja configurada cada vez que houver troca para um novo espaço de trabalho, se você desejar desviar de sua configuração padrão.

Resumo

Nesse artigo, apresentamos os padrões disponíveis no release 2.0 dos Aceleradores de Modelo de Processo com base no Padrão IBM para o WebSphere Business Modeler. Os padrões permitem adicionar estruturas de fluxo de dados e controle usadas comum e amplamente, como por exemplo, ramificações paralelas e alternativas ou loops, ao seu modelo de uma forma simples, rápida e correta. Cenários de exemplo ilustram o uso dos padrões e explicam em detalhes como os padrões são instanciados com itens de negócios e estados de itens de negócios.

Esse artigo também descreve como configurar a paleta Aceleradores.



Recursos

Aprender

Obter produtos e tecnologias
  • Avaliação: IBM WebSphere Business Modeler Advanced: Faça o download de uma versão gratuita para avaliação do IBM® WebSphere® Business Modeler Advanced V6.2, a principal ferramenta de modelagem e análise de processo de negócio da IBM para usuários de negócio que oferece capacidades de modelagem, simulação e análise de processo para ajudar os usuários de negócios a visualizar, compreender e documentar os processos de negócio para melhoria contínua. .

  • Download: Aceleradores de Modelo de Processo para WebSphere Business Modeler: Faça o download de um conjunto de complementos para o IBM WebSphere Business Modeler V.6.2 que adicionam padrões, transformações e refatorações ao ambiente de modelagem de processo de negócios.


Discutir


Sobre os autores

Thomas Gschwind é membro da equipe de pesquisa no IBM Zurich Research Laboratory e palestrante na universidade de Zurique. Seus interesses de pesquisa são a modelagem de processos de negócios e engenharia de software. Thomas desenvolveu os fundamentos de tecnologia de software subjacentes aos padrões, e liderou o projeto conceitual e a implementação das operações de refatoração e transformação. É possível entrar em contato com Thomas em thg@zurich.ibm.com.


Janette Wong é Membro Sênior da Equipe Técnica na IBM. Lidera os trabalhos de padrões na área BPM. Janette liderou as contribuições iniciais de campo, contribuiu para o refinamento das idéias de padrão e documentação, e a promoção subsequente deste trabalho de padrões. É possível entrar em contato com Janette em janette@ca.ibm.com.


Cedric Favre's photo

Cedric Favre é formado pela Ecole Polytechnique Fédérale de Lausanne, Suíça, e aluno PhD no IBM Zurich Research Lab. Projetou e implementou a Análise de Controle-Fluxo como parte de sua tese de Mestrado durante estágio no IBM Zurich Research Lab. É possível entrar em contato com Cedric em ced@zurich.ibm.com.


Wolfgang Kleinoeder é emérito do IBM Research no IBM Zurich Research Laboratory trabalhando na implementação e teste de Pattern-based Process Model Accelerators. É possível entrar em contato com Wolfgang em wbk@zurich.ibm.com.


Alexander Maystrenko é formado pelo Instituto Politécnico de Kiev, Ucrânia, e aluno PhD trabalhando no IBM Zurich Research Laboratory. Ajudou a implementar as operações de refatoração e transformação durante estágio no IBM Zurich Research Laboratory. É possível entrar em contato com Alexander em oma@zurich.ibm.com.


Krenar Muhidini's photo

Krenar Muhidini é aluno na Jacobs University Bremen e foi estagiário no verão no IBM Zurich Research Laboratory ajudando a implementar os Pattern-based Process Model Accelerators.




Avalie esta página


Reserve um instante para completar este formulário para nos ajudar a servi-lo melhor.



 


 


Não
são úteis
Extremamente
úteis