Integração do BPM com o Webform, Parte 1: Tarefas manuais em espaço de negócios usando o Lotus Webform Server

Atualmente, as empresas enfrentam uma série de desafios relacionados à eficiência operacional. Há, em particular, muitos processos de negócios em uma dada organização que são desnecessariamente complicados devido à falta de um esforço coordenado. Esses processos são muitas vezes manuais em sua natureza e propensos a erro. Desenvolver uma série de processos de negócios bem coordenados, que incluam uma combinação de tarefas manuais e serviços automatizados, diferenciará uma empresa dos seus concorrentes pela simplificação de operações e redução de desperdício.

O IBM WebSphere Dynamic Process Edition versão 7 oferece aos especialistas de negócios e de TI as ferramentas necessárias para definir o processo de negócio de ponta a ponta e, combinado com o Lotus Forms 3.5.1, as organizações podem começar rapidamente a montar aplicativos de negócios que combinem tecnologia de formulário de alta qualidade com um mecanismo robusto de processos.

Jeff Brent, Senior Software Engineer, IBM

Jeff Brent é engenheiro senior na organização de desenvolvimento do WebSphere BPM. Desde 2005, Jeff é membro da equipe WebSphere Process Server SWAT e é responsável por resolver problemas e reclamações dos clientes.



23/Set/2010

WebSphere BPM e Lotus Webform Server

Introdução

Esta série de artigos acelera a adoção dos produtos WebSphere Business Process Management (BPM) e Lotus Form Technology ao definir cenários essenciais de desenvolvimento e produção. A série de artigos guiará você através de tarefas de instalação e configuração necessárias para a equipe de desenvolvimento e para um ambiente de produção. Incluímos no artigo um aplicativo de exemplo que pode ser usado para validar a instalação e configuração de seus ambientes. Consulte o artigo a seguir para obter instruções detalhadas sobre como criar um aplicativo usando as tecnologias do WebSphere BPM e do Lotus Form.

Observe que o WebSphere Dynamic Process Edition (WDPE) foi usado na criação deste artigo. Esse produto inclui os recursos existentes do WebSphere Process Server e do WebSphere Business Monitor.

A parte um desta série de artigos (este artigo) define o contexto para o restante da série, descrevendo brevemente as vantagens de usar a tecnologia de formulário e fornecendo uma descrição de alto nível desses produtos, conforme são usados em conjunto uns com os outros.

A parte dois desta série foca o aspecto da modelagem e do desenvolvimento de integração do ciclo de vida do projeto e discute como os analistas de negócios e desenvolvedores de TI obtêm esse funcionamento com o suporte integrado do Lotus Forms no WDPE 7 para compor e verificar formulários do Lotus.

A parte três desta série fornecerá uma visão detalhada de como construir as topologias distribuídas e locais do Webform Server. Ela também guiará a criação de um cluster do Webform Server e mostrará como estabelecer uma alta disponibilidade para a solução integrada.


Caso de Uso de Exemplo

O WebSphere BPM fornece um conjunto diferente de recursos voltados para a solução de uma grande variedade de problemas de negócios. Os produtos BPM são usados para criar soluções que possam ser usadas para aliviar o stress gerado por esses problemas de negócios.

O artigo mencionado anteriormente descreve um varejista fictício que está organizando uma promoção de campanha. O gerente de campanha é responsável por aprovar a promoção. O aplicativo que implementa o processo de aprovação, o SalesPromotion, é um simple business process (BPEL) com uma única Tarefa Manual, "Approve Request". Esse processo é mostrado no diagrama a seguir, e o projeto do WebSphere Integration Developer, incluindo este processo, está incluso como download nesta série de artigos.

Figura 1. BPEL simples do StorePromotion
StorePromotion simple BPEL

Nessa implementação, a Tarefa Manual "Approve Request" é exposta como formulário. Os detalhes da tarefa manual podem ser vistos ao clicar no nome da Tarefa Manual na seção de detalhes. Isso exibirá as configurações atuais para esta tarefa. Neste caso, na figura 2, a interface com o usuário do Lotus Forms foi selecionada.

Figura 2. Configurações de Tarefa Manual
Human Task settings

Quando "Generate Human Task Interface" é selecionado a partir do menu de contexto de módulo e o formulário é gerado para "Approve Request", um arquivo "xfdl" (Extensible Forms Description Language) será gerado e colocado na pasta de mo módulo. Quando implementado no WebSphere Process Server, o arquivo de formulário (xfdl) será armazenado na pasta WebContent (ou projeto da Web selecionado).

Figura 3. Arquivo xfdl NewPromotionForm em recursos físicos
NewPromotionForm xfdl file in physical resources

Esse arquivo, NewPromotion.xfdl, armazena todos os formulários necessários – no caso de um aplicativo de multiformulários – e quando um usuário cria ou abre uma tarefa manual enquanto executa um processo, esses formulários serão enviados para o Lotus Forms Webform Server. A tarefa do Webform Server, nesse momento, é converter o "formulário" para HTML e retorná-lo para o Business Space para exibição. Se você possui o Lotus Forms Designer instalado no WebSphere Integration Developer (WID), abrir o NewPromotionForm permitirá que você edite e customize o formulário.


Visão Geral do WebSphere Business Process Management

Os produtos WebSphere Business Process Management (BPM) fornecem elementos-chave necessários para desenvolver soluções de negócios para várias necessidades. As ferramentas fornecidas com o WDPE fornecem um amplo ambiente de desenvolvimento para analistas de negócios e desenvolvedores de integração para modelar, projetar e montar aplicativos. Quando implementados no WebSphere Process Server, esses aplicativos ativam partes críticas dos negócios principais. Nesta seção, forneceremos uma visão geral dos componentes relevantes dos produtos WebSphere BPM.

Fluxo de Trabalho Manual

O WebSphere BPM fornece recursos para criar soluções escaláveis de fluxo de trabalho baseadas em tarefas manuais. O mecanismo de processo do BPM é implementado usando o BPEL padrão e é executado no WebSphere Process Server. O WebSphere BPM ampliou a especificação para lidar com cenários de fluxo de trabalho manual mais complexos. O mecanismo do processo fornece acesso seguro (baseado em função) a dados críticos do processo. Além disso, o mecanismo do processo fornece recursos avançados em escalação e atribuição de trabalho, além de aprimorar a capacidade de criar aplicativos de negócios flexíveis e robustos.

Os exemplos a seguir ilustram quando esse tipo de tecnologia pode ser impulsionado em múltiplos segmentos de mercado.

Assistência Médica

  • Processamento de informações de novos pacientes
  • Aprovação/Rejeição de solicitação

Telecomunicação

  • Revisão e aprovação de contrato
  • Faturamento e cobrança

Varejo

  • Gerenciamento de campanha
  • Planejamento de promoção

Utilitários

  • Despacho e roteamento
  • Gestão de clientes e reconciliação de conta

Business Space

O WebSphere Business Space é a estrutura de interface com o usuário baseada na Web 2.0 incluída no WebSphere Process Server. A estrutura fornece a base para o desenvolvimento de aplicativos de negócios e monitoramento de soluções (chamadas de espaços). Os espaços possuem uma ou mais páginas que, por sua vez, possuem um ou mais widgets, cada qual consumindo uma parte da construção da página.

Figura 4. Business Space
Business space

Inúmeros espaços e widgets predefinidos são fornecidos com os produtos BPM. As informações podem ser consolidadas de modo rápido e fácil pelo empreendimento usando widgets preenchidos pelos serviços Representational State Transfer (REST) fornecidos pelos componentes incluídos nos produtos WebSphere BPM. Além desses espaços fornecidos, a estrutura customizável permite que os usuários de negócios personalizem visualizações de suas informações para atender às suas necessidades em mudança constante. O Business Space é um aplicativo da Web seguro que suporta autenticação e acesso baseados em função.


Visão Geral do Lotus Forms

A tecnologia do Lotus Web Form oferece um excelente complemente ao conjunto do WebSphere BPM. A tecnologia de formulário integrada permite que os usuários montem formulários de alta qualidade usando estruturas de dados existentes. Recursos de pesquisa detalhada e controles de fluxo de tela são parte integrante do Fluxo de Trabalho Manual e os produtos Lotus Forms aceleram a implementação de uma solução fornecendo ferramentas e serviços de conversão necessários para a entrada de dados. O produto, fácil de usar, permite que os usuários montem aplicativos de negócios rapidamente e reduzam os custos gerais de design de interface com o usuário.

Lotus Designer

O Lotus Designer é uma ferramenta baseada no Eclipse para elaborar novos formulários ou editar os formulários gerados no WID ou WebSphere Business Modeler (WBM). Os designers de processo e os desenvolvedores de TI podem arrastar e soltar facilmente elementos e controles de dados na paleta de design.

Lotus Forms Server

O Lotus Forms Server é o componente de tempo de execução do produto. A parte do Webform Server do Lotus Form Server converte o formulário em HTML para exibição em um navegador. Depois de preenchido, o usuário envia o formulário para processamento e, nesse ponto, o Webform Server converte o HTML novamente para XPDL.


Combinação de Automação de Processo e Tecnologia de Formulário

Combinar automação de processo (WebSphere BPM) e tecnologias de formulário pode fornecer vantagens competitivas essenciais em cenários de negócios envolvendo fluxo de trabalho manual. Ao automatizar tarefas de negócios tradicionais baseadas em papel, o papel pode ser substituído por formulários muito semelhantes que aumentam a produtividade do usuário final de forma rápida e eficiente.

Sempre que uma tarefa manual é incluída em um BPEL de longa duração, uma decisão necessita ser tomada em relação à tecnologia a ser usada para renderização dessa tarefa. O conjunto WebSphere BPM oferece algumas escolhas em termos de tecnologia de interface com o usuário (UI): WebSphere Portal, JavaServer Faces, HTML simples com Dojo e, agora, uma integração completamente acoplada com o Lotus Forms.

As últimas duas dessas escolhas de interface com o usuário podem ser integradas ao Business Space, mas o Lotus Forms requer uma infraestrutura adicional para visualizar os formulários. Visualizar e trabalhar com formulários implementados no Lotus Webform Server não requer um visualizador no computador cliente. Os usuários conseguem visualizar e interagir com o Lotus Forms em qualquer navegador.

Integrar formulários ao Business Space requer que o servidor do Business Space se comunique com o Lotus Webform Server. Essa comunicação recupera o formulário associado à tarefa manual específica, enquanto o Webform Server fornece um fragmento em HTML que representa esse formulário.

O fluxo entre o Business Space e o Webform Server é mostrado na figura 4.

Quando o Business Space encontrar um Lotus Form (XFDL), ele imediatamente tentará enviar o formulário para o servlet proxy bSpaceWebformEnabler (caminho "FormEntry" na figura 4).

Figura 5. Propriedade customizada de URL de raiz de proxy
Proxy Root URL custom property

O Business Space localiza o bSpaceWebformEnabler com o bspaceWebformsProxyRootid.url, que pode ser encontrado ao acessar Resources > Resource Environment > Resource Environment Providers > Mashup Endpoints > Custom Properties no console administrativo.

A tarefa do servlet proxy é enviar o XFDL para o Webform Server, chamando o aplicativo de conversão. O valor de configuração usado pelo servlet para localizar o Webform Server pode ser encontrado ao acessar Applications > Enterprise Applications > BspaceWebformEnabler > Initialize parameters for servlet e está no formulário http://<host>:<port>/translator.

Figura 6. URL do Webform Server
Webform Server URL

O aplicativo de conversão recebe o XFDL e verifica o cache do Webform Server em busca de uma versão salva do arquivo. Se existir uma, ela é arrastada e usada. Se, por outro lado, não houver, o arquivo é convertido para DHTML e enviado de volta, através do servlet proxy do Business Space, para renderização.

Depois de pressionar "submit" no formulário, a versão DHTML desse formulário é enviada de volta para o Webform Server para ser convertida novamente em XFDL.

O armazenamento em cache dos formulários gerados – tanto XFDL quanto DHTML – é realizado durante qualquer chamada para o Webform Server. Se o cache estiver cheio, as entradas mais antigas são substituídas por novos formulários.


Ciclo de vida do projeto

Em qualquer projeto, há estágios de desenvolvimento e teste. Os projetos, em geral, são estruturados de tal forma que a organização de desenvolvimento usará um ambiente instalado e configurado para desenvolvimento iterativo. Eventualmente, os artefatos de desenvolvimento serão "promovidos" para o ambiente de produção para transações de negócios de produção. A paisagem do BPM, em geral, poderia ser representada como mostrado abaixo.

Figura 7. Promoção para produção
Promote to production

Soluções implementáveis na forma de arquivos Module/EAR podem ser gerenciadas por um sistema de governança com controle de mudança. Essas soluções são testadas e usadas em uma série de técnicas e critérios, conforme são movidas de um ambiente para outro. Esses ambientes podem ser concebidos através das seguintes definições:

Desenvolvimento – Verdadeiro ambiente de desenvolvimento iterativo.

UAT - User Acceptance Test, incluindo teste funcional, que validará se as capacidades de negócios apropriadas estão presentes.

Preparação – Testes de stress, desempenho e alta disponibilidade são realizados na solução para validar o nível apropriado de rendimento e disponibilidade em condições esperadas durante a produção.

Produção – O ambiente usado para conduzir transações de negócios usando dados ativos.

Nesta série de artigos, esses ambientes são divididos em dois tipos básicos: Ambientes de Desenvolvimento de Solução e Ambientes de Implementação de Produção.

  1. Desenvolvimento de Solução – Esses ambientes são usados para modelagem de formulário iterativo, desenvolvimento de processo e teste de unidade. (Esta classe de ambiente inclui o Ambiente de Desenvolvimento.)
  2. Implementação de Produção – Esses ambientes influenciam as opções de topologia de ND (Implementação de Rede) oferecidas pelo WebSphere Process Server. As opções incluem clusters configurados para alta disponibilidade. (Esta classe de ambiente inclui UAT, pré-produção e ambientes de produção.)

Classe de Ambiente de Desenvolvimento de Solução

Durante os estágios de desenvolvimento de solução, a equipe irá interagir com a modelagem do BPM e ferramentas de desenvolvimento. Em nosso cenário, a organização de desenvolvimento usará os seguintes produtos:

  • Integrated Test Environment do WebSphere Process Server no WebSphere Integration Developer ou WebSphere Business Modeler e o recurso Interactive Process Development
  • Lotus Forms Designer
  • Lotus Form Server

Os analistas de negócios e arquitetos de serviços trabalham juntos para construir soluções de negócios confiáveis usando uma abordagem iterativa. Cada parte da solução é implementada em vários estágios do ciclo de vida do projeto. Os ambientes de teste são configurados de forma que a equipe de desenvolvimento possa colaborar e implementar rapidamente iterações para testes de unidade e verificação funcional incremental.

Figura 8. Interação de Ferramentas
Tools Interaction

A configuração da topologia dessa abordagem iterativa é o foco da parte 2 desta série de artigos.

Um arquivo de troca de projetos incluso nesta série de artigos permitirá que você se torne familiarizado com a configuração de ambiente antes que seu aplicativo esteja pronto para desenvolvimento iterativo.

Classe de Ambiente de Implementação de Produção

Esses ambientes são criados usando tecnologia fundamental de ND (Implementação de Rede) do WebSphere Application Server. Essa tecnologia permite que os administradores do sistema criem uma topologia de implementação que dinamizem múltiplos nós (máquinas físicas) e clusters (processos aplicativos que transportem recursos físicos). O resultado é um ambiente tolerante a falhas que pode ser facilmente escalado, adicionando-se recursos físicos adicionais ao ambiente do BPM.

A Topologia de Produção Típica pode ser descrita da seguinte forma:

Figura 10. Topologia de Produção Típica
Typical Production Topology

Os ambientes de produção típicos são instalados e configurados com base em vários critérios comuns.

  • Alta disponibilidade
  • Escalabilidade
  • Facilidade de administração

Na parte 3 do artigo, mostraremos ao leitor as etapas necessárias para instalar um ambiente como esse e descreveremos as opções para escolhas de implementação, além de como incluir o Lotus Forms Server. O arquivo Module/EAR fornecido pode ser usado para verificar a instalação depois que todas as etapas forem concluídas.

Recursos

Aprender

Obter produtos e tecnologias

  • Avalie os produtos IBM da maneira que for melhor para você: faça download da versão de teste de um produto, avalie um produto on-line, use-o em um ambiente de nuvem ou passe algumas horas na SOA Sandbox aprendendo a implementar Arquitetura Orientada a Serviços de modo eficiente.

Discutir

  • Participe da comunidade do My developerWorks. Entre em contato com outros usuários do developerWorks, enquanto explora os blogs, fóruns, grupos e wikis orientados ao desenvolvedor.

Comentários

developerWorks: Conecte-se

Los campos obligatorios están marcados con un asterisco (*).


Precisa de um ID IBM?
Esqueceu seu ID IBM?


Esqueceu sua senha?
Alterar sua senha

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

 


A primeira vez que você entrar no developerWorks, um perfil é criado para você. Informações no seu perfil (seu nome, país / região, e nome da empresa) é apresentado ao público e vai acompanhar qualquer conteúdo que você postar, a menos que você opte por esconder o nome da empresa. Você pode atualizar sua conta IBM a qualquer momento.

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

Elija su nombre para mostrar



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.

Los campos obligatorios están marcados con un asterisco (*).

(Escolha um nome de exibição de 3 - 31 caracteres.)

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

 


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


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=80
Zone=Lotus, WebSphere
ArticleID=555930
ArticleTitle=Integração do BPM com o Webform, Parte 1: Tarefas manuais em espaço de negócios usando o Lotus Webform Server
publish-date=09232010