WebSphere_Integration_Developer_D_Jan06 Script
1a
Nesta demonstração, Will Dunlop, um programador de integração da JK, utiliza o IBM
WebSphere Integration Developer, [Programador de Integração WebSphere IBM], ou WID para construir um novo serviço orientado para os processos comerciais para realização de
verificação de contas.
1b 0:16
O Will importou agora mesmo informação sobre um serviço web externo que é uma etapa deste novo processo.
1c 0:24
Na árvore do projecto vemos que esta importação gerou um objecto de dados, um interface e uma porta de serviços web.
1d 0:35
A importação de informação para um projecto sobre um serviço web é feita simplesmente com a função de importação, seleccionando o serviço web e depois seleccionando o directório UDDI onde este serviço web foi registado.
1e 0:51
O WebSphere Integration Developer e a sua plataforma runtime correspondente, o WebSphere Process Server, permitem a construção de processos não só a partir de serviços web, mas também de tarefas manuais e outros componentes como veremos nesta demonstração.
1f 1:07
Agora passamos à frente até ao momento seguinte ao Will ter importado o design do processo de verificação de contas para o WID.
2b 1:17
Após o Will ter importado o BPEL para o WID, a árvore do projecto lista um interface ou ponto de entrada para cada componente no processo e também mostra que existem etapas do
regra comercial incluída no processo.
2a 1:37
Este processo foi definido por um analista comercial que usa o WebSphere Business Modeler, [Modelador Comercial WebSphere]. Utilizando o Modeler, a definição do processo foi exportada para o BPEL, ou formato de Linguagem para Execução de Processos Comerciais. O BPEL é uma norma industrial para definição do fluxo e interacção entre uma série de serviços que compõem um processo comercial.
2c 1:58
O circuito entre estas etapas do processo é mostrado neste fluxograma de processos e reflecte o circuito definido no Modeler. Começando com o BPEL importado do Modeler, o Will entende claramente as exigências comerciais e possui uma vantagem inicial para montagem do
processo desejado, pois tudo o que ele tem de fazer agora é definir como cada uma destas etapas do processo deve ser chamada.
2d 2:24
Ele começa por definir como todo o processo será inicializado. Como o processo arranca quando uma aplicação é submetida por um cliente, o Will configura a tarefa inicial como sendo uma tarefa humana.
2:42
Ele pode estabelecer limites relativamente aos utilizadores ou grupo de utilizadores que podem originar uma aplicação. Neste caso, o Will quer autorizar qualquer potencial cliente a submeter uma aplicação e define “todos” como potenciais iniciadores.
2e 2:51
Seguidamente, o Will define o interface para envio de uma aplicação de conta aberta. Para demonstração ele define que tal será feito com o cliente Business Process Choreographer Explorer, [Explorador Coreógrafo do Processo Comercial], fornecido pelo WID. Depois especifica qual o JSP que fornecerá o interface do utilizador.
2f 3:20
O Will prossegue completando as outras tarefas humanas envolvidas no processo de modo similar.
3a 3:28
Para a demonstração, vamos avançar até ao ponto em que o Will está a implementar a etapa “Determinar a Elegibilidade do Candidato”. Na árvore do projecto vemos que esta é uma tarefa automatizada implementada como uma simples classe Java.
3b 3:44
O esqueleto desta classe foi gerado automaticamente assim que o modelo foi importado. O Will só tem de adicionar o código personalizado fornecido por uma programador Java desta
organização. Ele limita-se a introduzir o mnemónico e importa o código.
TRANSITION 4a
4:00
Após ter concluído etapas idênticas para as outras duas classes Java necessárias, o Will prossegue implementando um conjunto de regras empresariais para classificar os riscos de crédito como Elevado, Médio ou Baixo, baseando-se no valor dos resultados do crédito devolvidos por um serviço web de relatórios de crédito externo.
4b 4:19
Clicando duas vezes na regra Avaliação do Risco de Crédito Comercial abre-se o editor de regras. Ele começa por criar um conjunto de regras contendo definições para cada uma das três categorias de risco.
4C NEW 4:33
O Will começa por criar um modelo que irá utilizar para construir as três regras individuais exigidas. Primeiro define que o modelo incluirá três parâmetros.
4:46
Depois constrói o modelo seleccionando os valores do menu suspenso. Ele constrói um modelo declarando se o resultado de crédito na entrada é superior ao primeiro parâmetro, mas inferior ao segundo parâmetro; depois o campo de resultado do crédito na saída será estabelecido no valor do terceiro parâmetro.
5:10
O conjunto de ferramentas gráficas facilita a concentração do Will na lógica da regra não tendo de se preocupar com o código de desenvolvimento.
5:27
4d 5:35
Utilizando regras empresariais, todo o processo fica mais flexível porque a lógica de decisão pode ser modificada sem alterar o código de aplicação ou o design do processo.
4e new 5:46
Agora o Will inicia a construção das regras efectivas. Primeiro constrói uma regra de acção que encaminhará o objecto de dados de aplicação do cliente para a saída, e estabelece a definição do risco padrão para Elevado.
4f 6:07
Depois constrói a primeira regra “se-depois” utilizando o modelo que acabou de criar.
Preenchendo os espaços em branco, ele determina que os resultados de crédito entre 330 e 589 são classificados como de baixo risco. Da mesma forma, define as categorias de risco médio e elevado.
4g 6:27
Se as condições comerciais mudarem, estes limites podem ser redefinidos sem modificação da aplicação actual.
5a
Concluída a etapa da regra empresarial, o Will prossegue terminando o seu trabalho de construção ligando o serviço de relatórios de crédito web.
5b 6:45
Ele abre o editor do diagrama de construção mostrando como cada etapa está conectada ao processo. Ele arrasta um componente para a tela e a partir da árvore do processo chama o serviço web de Pedidos de Relatórios de Crédito
5C new 7:05
Agora elimina o stub padrão gerado automaticamente. Seguidamente, liga o novo componente ao módulo todo, substituindo este stub.
7:26
Depois, ligando o componente ao serviço web, indica que este componente irá solicitar o serviço web externo.
6a 7:35
O Will inicia a implementação da etapa do processo que executa a troca de dados e
transformação exigida para interagir com o serviço web seleccionando Gerar Implementação.
6b 7:52
Deste modo é-lhe apresentado um editor visual para definir o mapeamento entre interfaces. Ele liga o Serviço Electrónico de Relatórios de Crédito ao interface para o serviço web.
6c 8:08
Will especifica a transformação de dados exigida aquando do envio de um pedido ao serviço web ou aquando da recepção de uma resposta. É improvável que o formato interno da JK de um objecto de aplicação do cliente corresponda exactamente ao formato esperado pelo serviço web.
Para fazer face a esta situação, o Will especifica que tem de ser efectuado um dado de mapeamento e prossegue definindo os detalhes deste mapeamento. Ele rotula este mapeamento AcctVer2WS (pronounce Account Vair 2 W S) para indicar que este é o mapeamento do processo de Verificação de Contas para o Serviço Web.
7a 8:48
O próximo menu autoriza-o a especificar que o objecto comercial da Aplicação do Cliente deve ser adequado ao objecto de Pedido de Relatórios de Crédito. Carregando em Finalizar cria um novo mapa de dados.
7b 9:02
Ao abrir este mapa de dados, o Will pode agora determinar como os campos no objecto
comercial da Aplicação do Cliente devem ser adequados ao formato esperado pelo serviço web. Ele tem a capacidade para mapear os campos directamente como ele está a fazer aqui, ou pode determinar se e como os campos devem ser modificados.
7c 9:23
Através do mapeamento de dados minimiza as alterações exigidas se o interface dos serviços web mudarem no futuro.
7d 9:32
concluirá o seu trabalho implementando este serviço totalmente novo orientado para o processo comercial.
7e 9:41
Como foi mostrado nesta demonstração, o Will foi capaz de montar todo este processo multi-path abrangendo tarefas humanas, artefactos Java, regras empresariais, e serviços web fornecidos externamente com o mínimo esforço de programação e utilizando ferramentas poderosas de WebSphere Integration Developer