Avançar para a área de conteúdo

Ao clicar em Enviar, você concorda com os termos e condições do developerWorks.

Na primeira vez que você efetua sign in no developerWorks, um perfil é criado para você. Informações selecionadas do seu perfil developerWorks são exibidas ao público, mas você pode editá-las a qualquer momento. Seu primeiro nome, sobrenome (a menos que escolha ocultá-los), e seu nome de exibição acompanharão o conteúdo que postar.

Todas as informações enviadas são seguras.

  • Fechar [x]

Ao se conectar ao developerWorks pela primeira vez, é criado um perfil para você e é necessário selecionar um nome de exibição. O nome de exibição acompanhará o conteúdo que você postar no developerWorks.

Escolha um nome de exibição de 3 - 31 caracteres. Seu nome de exibição deve ser exclusivo na comunidade do developerWorks e não deve ser o seu endereço de email por motivo de privacidade.

Ao clicar em Enviar, você concorda com os termos e condições do developerWorks.

Todas as informações enviadas são seguras.

  • Fechar [x]

Modelando seus processos de negócio com o IBM WebSphere Lombardi Edition, Parte 1: Visão geral e Arquitetura

Liu Yu, Intern, IBM
Liu Yu foi estagiária da equipe de Desempenho de negócio e otimização de serviço no IBM Software Group.
Lei (Joyce) He, Senior Software Engineer, IBM
Lei He photo
Xi Ning Wang é um engenheiro de software na equipe de Desempenho de negócios e otimização de serviço do IBM Software Group. Sua função é desenvolver tecnologias e soluções SOA e BPM. Ele foi indicado para ser um autor do IBM developerWorks em 2009.
Xi Ning Wang, Staff Software Engineer, IBM
Author photo
Xi Ning Wang é um engenheiro de software na equipe de Desempenho de negócios e otimização de serviço do IBM Software Group. Sua função é desenvolver tecnologias e soluções SOA e BPM. Ele foi indicado para ser um autor do IBM developerWorks em 2009.
(Um autor Contribuidor do IBM developerWorks)

Resumo:  Nesta série, você aprenderá a usar o WebSphere Lombardi Edition V7.1 para modelar processos de negócio de ponta a ponta usando uma amostra de cenário de ordem de compra. A Parte 1 fornece uma visão geral dos recursos e arquitetura do Lombardi.

Visualizar mais conteúdo nesta série

Data:  02/Fev/2012
Nível:  Introdutório Também disponível em :   Inglês
Atividade:  583 visualizações
Comentários:  


Visão Geral

WebSphere Lombardi Edition versão 7.1 (chamado a partir de agora de Lombardi) fornece uma plataforma flexível para a entrega e aprimoramento agilizados de seus aplicativos de processo de negócio. O Lombardi V7.1 é uma oferta abrangente de BPM que permite que as empresas aprimorem continuamente seus processos de negócios de ponta a ponta. Com o Lombardi, as equipes podem criar, gerenciar e otimizar os aplicativos de processos que organizam a colaboração humana e as interações do sistema.

Este artigo fornece uma visão geral do produto e da arquitetura do Lombardi. Os próximos artigos desta série irão abranger a modelagem de processo básica e avançada, Coaches, monitoramento e geração de relatórios, simulação e otimização. Durante toda a série, usaremos um processo de ordem de compra, por exemplo, o cenário.


Conceitos

Um processo de negócios é uma coleção de atividades desenvolvidas para produzir um determinado resultado para um objetivo específico, envolvendo interações humanas e do sistema. Um processo de negócio implica em uma ênfase sobre como o trabalho é realizado dentro de uma organização, e não o foco no produto. Um processo é uma organização específica das atividades do trabalho com relação ao tempo e ao local, com um início, um fim e entradas e saídas claramente definidos: uma estrutura para a ação.

Business Process Modeling Notation (BPMN) é um padrão de diagramação para criação de processos de negócios. É um formato compreensível para os usuários de negócios, pois se parece com um fluxograma e não é necessário muito treinamento para entender como usá-lo. Também pode ser entendido por qualquer pessoa do ramo de TI que esteja envolvida no processo. O objetivo do BPMN é suportar o gerenciamento de processo de negócios (BPM) por usuários técnicos e usuários de negócios, fornecendo uma notação intuitiva aos usuários, mas ainda assim capaz de representar semânticas complexas do processo. O Lombardi V7.1 é uma das primeiras plataformas BPM a suportar BPMN.

O Lombardi V7.1 é compatível com as principais normas relacionadas ao BPM, além disso, suas ferramentas de design fornecem um ambiente de modelagem de processo compatível com BPMN.


Arquitetura

Lombardi é um conjunto integrado de ferramentas de desenvolvimento baseado em Eclipse, junto com um portal e painéis do usuário baseados na web, além de uma plataforma de tempo de execução comum. Essas tecnologias fornecem funções de design, simulação, definição de regras, execução de processo e funções de integração, monitoramento e otimização. As principais perspectivas no Lombardi, que suporta todas as atividades, desde o design passando pela simulação, implementação, monitoramento e otimização, compartilham um repositório comum, chamado de Modelo compartilhado, como mostra a Figura 1.


Figura 1. Modelo compartilhado

O Lombardi inclui os seguintes componentes, como mostra a Figura 2, que ilustra uma configuração típica do Lombardi. Para as diferentes fases de desenvolvimento e implementação, o Process Server e o Performance Data Warehouse podem ser instalados em diversos ambientes de temporariedade, teste e produção que são controlados centralmente pelo Process Center.

  • Process Center

    O Process Center fornece um ambiente central de desenvolvimento e repositório para diversos autores de processo que trabalham no Process Center Console e em outras interfaces no Lombardi Authoring Environment. Ele inclui um Process Center Server e um Performance Data Warehouse, que permitem o desenvolvimento e execução de aplicativos de processo, além de armazenar dados de desempenho para fins de teste e reprodução durante o desenvolvimento.

  • Process Server

    O Process Server executa os processos e serviços desenvolvidos no Lombardi Authoring Environment, armazenados no repositório do Process Center, e instalados em um ambiente de tempo de execução.

  • Performance Data Warehouse

    O Performance Data Warehouse coleta e agrega dados de processo de acordo com os requisitos de rastreamento estabelecidos no Lombardi Authoring Environment.


Figura 2. Componentes do Lombardi

Os componentes a seguir compõem a modelagem de processo e a interface de gerenciamento:

  • Authoring Environment

    O Lombardi Authoring Environment é composto por diversas interfaces que permitem que os autores de processo modelem, implementem, simulem e inspecionem os processos de negócio. Os usuários do Authoring Environment podem criar modelos de processo, serviços e outros ativos dentro dos aplicativos de processo.

  • Process Center Console

    No Process Center Console, é possível criar aplicativos de processo e kits de ferramentas e também conceder o acesso aos outros usuários. O Process Center Console pode ajudá-lo a gerenciar e manter o repositório do Lombardi, incluindo o gerenciamento de aplicativos de processo, áreas de trabalho e capturas instantâneas. Também permite a instalação de aplicativos de processo em Process Servers em ambientes de tempo de execução.

  • Process Admin Console

    O Process Admin Console fornece uma interface que permite que os administradores configurem e mantenham os Process Servers em qualquer ambiente de tempo de execução configurado, como ambientes de temporariedade, de teste ou de produção. Também permite que os administradores configurem e mantenham o Process Center Server.

  • Performance Admin Console

    O Performance Admin Console fornece uma interface que permite que os administradores configurem e mantenham os Lombardi Performance Data Warehouses em qualquer ambiente de tempo de execução configurado, como ambientes de temporariedade, teste ou produção. Também permite que os administradores configurem e mantenham o Performance Data Warehouse incluído no Process Center.

  • Process Portal

    O Process Portal fornece uma interface que permite que os participantes do processo executem tarefas designadas, visualizem o histórico de tarefas e visualizem o desempenho de seus processos e de suas equipes. Com o Process Portal, os participantes do processo podem se conectar ao Process Center Server ou ao Process Server em qualquer ambiente de tempo de execução configurado, como ambientes de teste de produção.


Modelando seu processo usando o Authoring Environment

O Lombardi fornece uma plataforma baseada em Eclipse para desenvolvimento de processo. Para começar a usar o authoring environment para modelagem de processo de negócio, faça o seguinte:

  1. Inicie o servidor selecionando Start => IBM WebSphere Lombardi Edition 7 => Start Servers. Para abrir o Authoring Environment, selecione Start => IBM WebSphere Lombardi Edition 7 => Lombardi Authoring Environment. A conta e senha de login padrão do usuário são tw_admin.
  2. A primeira vez que você inicia o authoring environment, ele abre no Process Center Console, que permite a criação e gerenciamento de aplicativos de processo, instalação de capturas instantâneas em servidores de teste e de produção e também a execução de outras tarefas.

    Clique na guia Process Apps e selecione Create New Process App, como mostra a Figura 3.

    O acrônimo para um aplicativo de processo precisa ser exclusivo e possuir um limite de sete caracteres. O Lombardi usa o acrônimo como um identificador do aplicativo de processo e dos itens de biblioteca que ele contém. Por exemplo, ao trabalhar com os itens no aplicativo de processo usando a API JavaScript do Lombardi, é possível usar o acrônimo para especificar o namespace dos itens.

  3. Na caixa de diálogo Create New Process App , insira um nome (por exemplo, Purchase Order Process ) e um acrônimo (como, POPROC) para seu aplicativo de processo. Também é possível fornecer uma descrição opcional. É possível visualizar a descrição no Process Center Console clicando no ponto de interrogação ao lado do nome do aplicativo de processo.

    Figura 3. Criar um novo aplicativo de processo no authoring environment


A Parte 2 desta série descreverá detalhadamente como modelar um processo de negócios no authoring environment.

Criando uma Definição de processo de negócios (BPD)

Ao modelar um processo no authoring environment, primeiro você cria uma Definição de processo de negócios (BPD), como mostra a Figura 4. Uma BPD é um modelo reutilizável de um processo que define o que é comum a todas as instâncias de tempo de execução desse modelo de processo.


Figura 4. Definição de processo de negócios

Desenvolvendo serviços humanos

Desenvolva serviço humano quando desejar uma etapa em sua BPD para criar uma tarefa interativa que possa ser executada pelos participantes do processo em uma interface com o usuário baseada na web, como mostra a Figura 5. Ao desenvolver um serviço humano, devem ser incluídos Coaches, que são os formulários baseados na web que fornecem dados relacionados ao processo para os usuários e coletam entradas desses usuários. Coaches permitem que você adicione, de uma maneira simples, campos e controles padrão como botões de opção, menus suspensos e muito mais.

Os serviços Ajax desenvolvidos no Lombardi são posteriormente ligados aos controles de Coach para execução de funções como preenchimento automático de listas de suspensas e ativação do recurso de digitação antecipada em campos de entrada. É possível usar o serviço Ajax para obter dados, de forma dinâmica, a partir de uma origem de dados conectada, como um banco de dados.


Figura 5. Criar serviços humanos

Criando serviços de integração

Crie um serviço de integração quando quiser realizar uma integração com um sistema externo a fim de concluir uma tarefa, como mostra a Figura 6. Por exemplo, é possível desenvolver um serviço de integração que chama um serviço da web para realizar alguma lógica de negócios. Os serviços de integração são os únicos serviços que podem incluir integração de serviço da web e componentes de integração Java™ .

Use os serviços gerais do sistema quando quiser organizar outros serviços em segundo plano, trabalhar com dados variáveis, gerar HTML para um Coach ou executar outras ações que não exigem integrações ou regras de negócios. Provavelmente, os serviços gerais do sistema são chamados diretamente de BPD ou serviço humano. Os serviços gerais do sistema podem incluir somente componentes de serviço básicos, como scripts e não podem conter Coaches ou componentes de integração (integração do serviço da web ou integração Java). Os serviços gerais do sistema podem ser aninhados em qualquer outro tipo de serviço.

External activities permitem que você crie BPDs que incluem atividades tratadas por sistemas externos ao Lombardi. Por exemplo, é possível criar um aplicativo personalizado usando a API da web do Lombardi para executar uma atividade, ou etapa, em uma BPD.

Um Undercover Agent (UCA) é iniciado por um evento que pode ser acionado por uma mensagem ou em um planejamento específico. Quando um UCA é iniciado, ele invoca um serviço do Lombardi em resposta ao evento. Ao incluir um evento de mensagem em uma BPD, é necessário anexar um UCA ao evento para chamar o serviço especificado. Por exemplo, quando um evento de mensagem é recebido de um sistema externo, é necessário ter um UCA para invocar o serviço apropriado em resposta à mensagem.

É possível criar e publicar um serviço da web para ativar aplicativos externos a fim de iniciar um serviço específico do Lombardi ou um conjunto de serviços. Usando a integração SOAP, os aplicativos externos também podem chamar o serviço da web.


Figura 6. Criar um serviço de integração

Criando serviços de regra

É possível usar um serviço de regras, exibido na Figura 7, quando quiser uma condição para determinar qual implementação será invocada. Por exemplo, quando uma condição é avaliada como verdadeira, o Lombardi implementa uma expressão JavaScript que foi fornecida por você. Os serviços de regra não podem incluir integrações Java ou de serviço da web diretamente. É possível chamar um serviço de regra a partir de qualquer outro tipo de serviço, e esse serviço de regra pode chamar outros serviços aninhados.

Os principais indicadores de desempenho (KPIs) são medições rastreadas pelo Lombardi no tempo de execução do processo, e os resultados são armazenados para usá-los para analisar o desempenho do processo e da tarefa no Optimizer.

Os acordos de nível de serviço (SLAs) podem ser criados com base em KPIs padrão e personalizados. Os SLAs permitem que você estabeleça uma condição para uma ou mais atividades que acionam uma consequência. Ao executar instâncias de seus processos, as consequências de SLA não são acionadas até que a atividade associada seja iniciada ou concluída.


Figura 7. Criar um serviço de regra

Gerenciando arquivos externos

O Lombardi suporta a adição de arquivos externos ao aplicativo de processo, incluindo imagens, folhas de estilo, arquivos JAR e outros. Todos esses ativos de projeto estão incluídos no repositório Process Center. A adição desses arquivos ao seu aplicativo de processo garante que todos os ativos necessários estejam disponíveis e instalados quando seu projeto estiver pronto para teste ou produção.


Ativação da reutilização por meio de kits de ferramentas

Os kits de ferramentas são uma coleção de itens de biblioteca que podem ser usados em diversos aplicativos de processo no Lombardi Authoring Environment. O Lombardi permite que os desenvolvedores de processo reutilizem artefatos existentes, dentro e entre aplicativos de processo, por meio de kits de ferramentas. Por exemplo, se você conhecer diversos serviços existentes que incluem Coaches e outros itens de biblioteca necessários a outros desenvolvedores, será possível acessar e reutilizar esses itens incluindo-os em um kit de ferramentas. Em seguida, em seu aplicativo de processo, é possível adicionar uma dependência no kit de ferramentas no local em que estão os itens de biblioteca. Isso permite que você escolha um dos serviços existentes ao escolher a implementação de uma atividade. Os itens no kit de ferramentas também podem ser usados por outros desenvolvedores que trabalham em aplicativos de processo diferentes.

Os usuários do Authoring Environment podem criar dependências em kits de ferramentas para reutilizar os itens contidos nele. Quando os itens do kit de ferramentas são atualizados, as dependências existentes mostram que há atualizações disponíveis.

Itens de biblioteca em diversos kits de ferramentas podem ser compartilhados entre outros kits de ferramentas e também com aplicativos de processos.

Crie kits de ferramentas

Para criar um kit de ferramentas, faça o seguinte:

  1. Clique na guia Toolkits e clique em Create New Toolkit, como mostra a Figura 8.

    Figura 8. Crie um novo kit de ferramentas


  2. Na caixa de diálogo Create New Toolkit , insira um nome e um acrônimo para seu kit de ferramentas.
  3. Para criar itens de biblioteca no kit de ferramentas ou executar outras edições, clique em Open in Designer.

System Data toolkit

Durante a instalação do Lombardi, o System Data Toolkit é importado no repositório do Process Center. Cada aplicativo de processo e kit de ferramentas que você cria inclui automaticamente uma dependência do System Data Toolkit, de modo que você tenha acesso aos ativos exigidos por todos os processos do Lombardi, como tipos de variável padrão, gráficos padrão para relatórios e muito mais. Não é possível editar ou alterar os itens da biblioteca no System Data Toolkit, mas é possível abrir o kit de ferramentas e visualizar os itens que ele contém.


Visão geral do cenário

Nesta série, usaremos um cenário de negócios típico de um processo de ordem de compra para ilustrar como usar o Lombardi V7.1 para modelar e executar o processo de negócios. Como mostra a Figura 9, o processo de ordem de compra é iniciado pelo comprador no departamento de compra, de acordo com o inventário e consumo real. Quando o comprador insere a ordem, o processo é acionado. Quando o processo é iniciado, o sistema envia uma notificação ao fornecedor responsável pela confirmação da ordem.


Figura 9. Processo de ordem de compra

O fornecedor pode responder à ordem por meio de uma interface com o usuário baseada na web, da seguinte maneira:

  • O fornecedor pode aceitar diretamente a ordem sem qualquer alteração. Nessa situação, o comprador não precisa confirmar novamente a ordem.
  • O fornecedor pode aceitar a ordem com uma alteração na quantidade e preço unitário das mercadorias preenchendo uma "Order Change." Nesse caso, o comprador precisa reconfirmar essa ordem antes de gerar a ordem.
  • O fornecedor pode rejeitar a ordem devido ao preço ou por não ter o item em estoque. Nesse caso, a ordem será anulada e o sistema enviará a notificação ao comprador.

No caso de aceitar a ordem, se o fornecedor elevar o preço unitário das mercadorias, o sistema precisará notificar o comprador para reconfirmar a ordem atualizada. A confirmação resulta em uma das seguintes opções:

  • Se o comprador aceitar a ordem atualizada, o sistema irá gerar automaticamente a ordem de compra final.
  • Se o comprador não aceitar a ordem atualizada, o sistema irá enviar a notificação ao fornecedor e o processo de ordem de compra será interrompido.

Caso contrário, o comprador não precisará confirmar a ordem e o sistema irá gerar automaticamente a ordem de compra formal.

Gere o subprocesso da ordem

A geração da ordem de compra formal é um subprocesso incorporado no processo de ordem de compra principal, como mostra a Figura 10. Ao receber a ordem de compra final do processo de ordem de compra acima, o subprocesso inicia as seguintes tarefas:

  1. Cálculo do preço total final das mercadorias da ordem
  2. Seleção de um remetente para a ordem.
  3. Planejamento da remessa.
  4. Envio de uma notificação para o comprador e para o fornecedor.

Figura 10. Gerar o subprocesso da ordem

Definindo os tipos de dados de negócio

Variáveis são usadas para capturar os dados de negócio passados pelas etapas de um processo. Ao desenvolver uma Definição de processo de negócios no Lombardi, reserve um tempo para criar modelos de dados para a BPD durante a fase de design.

Em nosso cenário de Ordem de compra, um importante tipo de dado, Order, é definido para descrever a ordem de compra. O tipo de variável Order inclui dois parâmetros: orderHead (a cardinalidade é 1) e orderDetail (que é um List). Os tipos de variável e parâmetros OrderHead e OrderDetail são exibidos nas Tabelas 1 e 2.


Tabela 1. Tipo de variável: OrderHead
Nome do parâmetro Tipo de variável Descrição Lista Is
orderId String O número do cabeçalho da ordem de compra atual Falso
orderName String O nome da ordem de compra atual Falso
buyer String O comprador da ordem de compra atual Falso
orderDate Data A data de início da ordem de compra atual Falso
supplierName String O nome do fornecedor da ordem de compra atual Falso
supplierContact String As informações de contato do fornecedor da ordem de compra atual Falso
orderCloseDate Data A data de encerramento da ordem de compra atual Falso
status String O status da ordem de compra, por exemplo, Accepted by supplier, Rejected by supplier e outros. Falso


Tabela 2. Tipo de variável: OrderDetail
Nome do parâmetro Tipo de variável Descrição Lista Is
orderItemId String O código de cada detalhe da ordem de compra Falso
orderId String O número do cabeçalho da ordem de compra atual Falso
shipDate Data Data da remessa Falso
productNumber String O número do produto Falso
quantity Decimal A quantidade do produto Falso
unitPrice Decimal O preço unitário do produto Falso
updatedQuantity Decimal A quantidade atualizada do produto Falso
updatedUnitPrice Decimal O preço unitário atualizado do produto Falso


Conclusão

Este artigo forneceu uma visão geral do WebSphere Lombardi V7.1, incluindo sua arquitetura, componentes e recursos. Na Parte 2, você aprenderá como usar o Lombardi para modelar um processo usando um cenário de ordem de compra.


Recursos

Sobre os autores

Liu Yu foi estagiária da equipe de Desempenho de negócio e otimização de serviço no IBM Software Group.

Lei He photo

Xi Ning Wang é um engenheiro de software na equipe de Desempenho de negócios e otimização de serviço do IBM Software Group. Sua função é desenvolver tecnologias e soluções SOA e BPM. Ele foi indicado para ser um autor do IBM developerWorks em 2009.

Author photo nível de autor Contribuidor do developerWorks

Xi Ning Wang é um engenheiro de software na equipe de Desempenho de negócios e otimização de serviço do IBM Software Group. Sua função é desenvolver tecnologias e soluções SOA e BPM. Ele foi indicado para ser um autor do IBM developerWorks em 2009.

Ajuda para Relatar Abuso

Relatar abuso

Obrigado. Esta entrada foi sinalizada para atenção do moderador.


Ajuda para Relatar Abuso

Relatar abuso

Falha no envio do Relatório de abuso. Tente novamente mais tarde.


developerWorks: Registre-se


Precisa de um ID IBM?
Esqueceu seu ID IBM?


Esqueceu sua senha?
Alterar sua senha

Ao clicar em Enviar, você concorda com os termos de uso do developerWorks.

 


Na primeira vez que você efetua sign in no developerWorks, um perfil é criado para você. Informações selecionadas do seu perfil developerWorks são exibidas ao público, mas você pode editá-las a qualquer momento. Seu primeiro nome, sobrenome (a menos que escolha ocultá-los), e seu nome de exibição acompanharão o conteúdo que postar.

Selecione seu nome de exibição

Ao se conectar ao developerWorks pela primeira vez, é criado um perfil para você e é necessário selecionar um nome de exibição. O nome de exibição acompanhará o conteúdo que você postar no developerWorks.

Escolha um nome de exibição de 3 - 31 caracteres. Seu nome de exibição deve ser exclusivo na comunidade do developerWorks e não deve ser o seu endereço de email por motivo de privacidade.

(Deve possuir de 3 a 31 caracteres.)


Ao clicar em Enviar, você concorda com os termos de uso do developerWorks.

 


Classificar este artigo

Comentários

static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=80
Zone=WebSphere
ArticleID=790668
ArticleTitle=Modelando seus processos de negócio com o IBM WebSphere Lombardi Edition, Parte 1: Visão geral e Arquitetura
publish-date=02022012

Conheça a IBM da sua cidade

Virtual Branch Office Brasil

A IBM está mais perto do que você imagina!


Tags

Help
Use o campo de pesquisa para encontrar todos os tipos de conteúdo no My developerWorks com essa tag.

Use a barra de rolagem para ver mais ou menos tags.

Tags populares mostra as principais tags para esta zona de conteúdo em particular (por exemplo, Java technology, Linux, WebSphere).

Minhas tags mostra suas tags para esta zona de conteúdo em particular (por exemplo, Java technology, Linux, WebSphere).

Use o campo de pesquisa para localizar todos os tipos de conteúdo no Meu developerWorks com essa tag. Tags populares mostra as tags principais para essa zona de conteúdo particular (por exemplo, tecnologia Java, Linux, WebSphere). My tags shows your tags for this particular content zone (for example, Java technology, Linux, WebSphere). Minhas tags mostra as suas tags para essa zona de conteúdo em particular (por exemplo, tecnologia Java, Linux, WebSphere).