 | 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).
 | |
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.
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.
Dicas gerais para usar os Padrões
A aplicação de um padrão no WebSphere Business Modeler é composta por três etapas simples:
-
Identificar o local para aplicação de um padrão, selecionando uma ou duas conexões
-
Invocar o padrão a partir da paleta de Aceleradores ou do menu
-
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
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.
padrões Inserir
Tarefa, Inserir Processo e Sequência
nome do padrão: Inserir Tarefa, Inserir Processo, Sequê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
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
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
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
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
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
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
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
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
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.
Composto Alternativo
Nome do padrão: Composto 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
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
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
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
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
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.
-
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
-
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
A Figura 18 mostra o modelo de processo resultante.
Figura 18. Modelo de processo resultante
após aplicar o padrão Composto Alternativo
Com nosso segundo exemplo, mostrando o reuso de um fragmento de processo:
-
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.
-
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
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
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
Composto Paralelo
: Composto 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
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
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.
-
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
-
Chame o padrão Composto Paralelo.
-
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.
-
Selecione o item de negócios Aplicativo como entrada e saída do composto.
-
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.
-
Clique em Aplicar Padrão.
Figura 24. O padrão Composto Paralelo com essas
três
ramificações instanciadas
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
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).
Loop
Nome do padrão: Loop
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
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
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
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
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.
-
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
-
Selecione a conexão entre o evento inicial e a tarefa Emitir Contrato.
-
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.
-
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.
-
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.
-
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
-
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.
-
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
-
Agora, preencha na guia Tarefas de Retrabalho conforme na Figura 33. Insira o nome de tarefa
Retornar 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
-
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
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.
Ramificação Alternativa e Ramificação Paralela
Nome do padrão: Ramificação Alternativa Ramificaçã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
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
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.
-
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
-
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
-
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
-
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
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:
-
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
-
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
-
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
É 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:
-
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
-
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
-
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.
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.
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.
-
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
-
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.
-
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.
-
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
-
É 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
-
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
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
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
-
IBM Pattern-based Process Model Accelerators para WebSphere Business Modeler, Parte 1: Compreenda os
Padrões e Qualidade de Processo & Altere o Gerenciamento durante a Modelagem de Processo
(developerWorks, jun. de 2009): Este tutorial ensina a compor um modelo de processo de negócios instanciando padrões predefinidos, e a aplicar mudanças complexas a seu modelo com um único clique chamando uma transformação ou refatoração.
-
N. Russell, A.H.M. ter Hofstede, W.M.P van der Aalst, and N. Mulyar: Workflow Control-Flow Pattern Library: A revised View. BPM Center Report BPM-6-22, BPMcenter.org, 2006.
-
F. Buschmann, R. Meunier, H. Rohnert, P. Sommerlad, M. Stal: Pattern-Oriented
Software Architecture – A System of Patterns, Wiley 1996.
-
E. Gamma, R. Helm, R. Johnson, J. Vlissides: Design
Patterns: Elements of Reusable Object-Oriented Software, Addison-Wesley 1995.
- Tutoriais e Amostras para o WebSphere Business Modeler Versão 6.2: Aprenda sobre modelagem de processos de negócio com o WebSphere Business Modeler V6.2 e faça o download de modelos de exemplos adicionais .http://www-01.ibm.com/support/docview.wss?uid=swg27013902:
- Central de Informações do WebSphere Business Process Management V6.2: Obtenha mais informações sobre o Gerenciamento de Processos de Negócios com o WebSphere V6.2 http://www-01.ibm.com/support/docview.wss?uid=swg21366595
- T. Gschwind, J. Koehler, J. Wong: Applying Patterns during Business Process Modeling. Procedimento das 6a Conferência Internacional sobre Gerenciamento de Processo de Negócio, Springer 2008. Este artigo descreve os fundamentos científicos por trás das capacidades descritas neste artigo.
- J. Koehler, J. Vanhatalo: Process anti-patterns: How to avoid the common traps of business process modeling, Part 1 (developerWorks, fev. de 2007): Este artigo descreve típicos erros de modelagem em modelos de processo e como reconhecê-los.
- J. Koehler, J. Vanhatalo: Process anti-patterns: How to avoid the common traps of business process modeling, Part 2 (developerWorks, fev. de 2007): A parte 2 desta série descreve ainda os erros de modelagem de fluxo de dados normalmente encontrados em modelos de processo.
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 é 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 é 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
|  |