• Nenhum resultado encontrado

A Figura 4.7 ilustra a interface de acesso à plataforma. Ela permite ao usuário registrar sua entrada na plataforma, como um usuário conhecido, e selecionar os serviços a serem invo- cados. A informação capturada do campo ‘password’ permite à plataforma iniciar os pro- cessos internos para realizar a autenticação do usuário e posteriormente verificar as autori- zações dadas a ele para usar os serviços a serem por ele selecionados.

Se o resultado do processo de autenticação e autorização for positivo, o usuário recebe a lista com os serviços disponíveis para ele. A Figura 4.8 mostra uma possível lista de servi- ços (a lista difere dependendo do usuário e seus direitos de uso). Em particular, nota-se a existência dos serviços “Hotel_Service”, “Tickets_Service” e “Workflow_ Engine_ Servi- ce”. Embora cada um dos serviços “Hotel_Service” e “Tickets_Service” possua uma inter- face independente para seu uso particular, eles serão combinados, conforme a definição do processo de workflow, representada no Tabela 4.1, pelo serviço “Work- flow_Engine_Service”.

Figura 4.8 Serviços disponíveis para um usuário particular

Uma vez que o usuário tenha selecionado, na interface gráfica mostrada da Figura 4.8, o serviço “Workflow_Engine_Service”, ele recebe a interface mostrada na Figura 4.9. Os pri- meiros quatro campos da interface são usados para capturar a informação que a máquina de workflow requer: (i) os serviços a serem encadeados e (ii) os tipos de dependência entre eles. Os outros campos capturam a informação de contexto que vai ser processada pelos serviços mediados pela plataforma. O último botão permite obter o resultado final do pro- cesso

Figura 4.9. Interface do serviço Workflow_Engine_Service

As Figuras seguintes 4.10, 4.11 e 4.12 ilustram o que acontece no monitor da plataforma que oferece e medía, para um usuário dela, os serviços: “Hotel_Service”, “Tickets_Service” e “Workflow_Engine_Service”.

Em particular, a Figura 4.10 ilustra, na janela-monitor da plataforma, alguns registros re- lacionados com o serviço “Workflow_Engine_Service”, o qual é conhecido na plataforma com o nome de “Java Workflow Engine Service”. A parte direita da janela registra o rece- bimento, por parte do serviço da máquina de workflow, da informação associada com os serviços a serem combinados e que foi capturada mediante a interface mostrada na Figura 4.9 anterior. O serviço de workflow recebeu , como primeiro tipo de serviço, “Hotel”, como segundo, ”Tickets” e como dependência entre eles, a condição “AND”, que determina que o serviço “Hotel_Service” e o serviço “Tickets_Service” devem ambos ser realizados para que o processo, como um todo, seja completado. E, de conformidade com a definição de processo, o serviço “Hotel_Service” deve ser realizado primeiro e só depois dele concluir será iniciado o segundo serviço “Tickets_Service”.

Embora o processo de workflow ilustrado corresponde ao caso mais simples possível (uma dependência do tipo AND entre só dois serviços) a máquina de workflow implemen- tada é capaz de coordenar processos bem mais complexos compostos por combinações ló- gicas AND e OR (seqüenciais e paralelas ) com qualquer numero de passos. As probas cor- respondentes foram realizadas fora do ambiente da Plataforma Platin usando o produto Vi-

siBroker 4.0 da Inprise. As mesmas não foram realizadas na Plataforma Platin devido à complexidade da instalação e limitações de tempo.

Figura 4.10 Monitor do serviço da máquina de workflow

A Figura 4.11 ilustra, na janela-monitor da plataforma, alguns registros relacionados com o serviço “Hotel_Service”, o qual é conhecido na plataforma com o nome de “Java Hotel Service”. Especificamente mostra que ele, como primeiro passo do processo, recebe da máquina de workflow a informação (requester_name’, ‘departure_date’, ‘num- ber_of_persons’ e ‘Credit_card_number’) dada a ela pelo usuário através da correspondente interface à máquina de workflow.

Este serviço hipotético “Hotel_Service” faz a reserva no Hotel do número de quartos, na data solicitada e o fornece a nome do requisitante. O resultado anterior fica também regis- trado na janela-monitor do serviço (Figura 4.11).

Depois de ter-se realizado o serviço “Hotel_Service”, a informação com o resultado da reserva do hotel é enviada à máquina de workflow. A máquina de workflow examina, na definição do processo, que o serviço “Tickets_Service” tem uma dependência de dados com o serviço “Hotel_Service”: especificamente a informação de entrada do serviço “Tic- kets_Service” é a informação de saída do serviço “Hotel_Service”. Assim, a máquina de workflow passa a informação com o resultado da realização do serviço “Hotel_Service” ao seguinte passo no processo, o serviço “Tickets_Service”. O anterior fica registrado na jane- la-monitora da plataforma, correspondente ao serviço “Tickets_Service”, conhecido na pla- taforma com o nome “Java Airplane_tickets Service” (ver Figura 4.12).

Figura 4.11 Monitor do serviço de Hotel

Figura 4.12 Monitor do serviço de passagens aéreas

O serviço “Tickets_Service” depois de ter recebido da máquina de workflow a informa- ção com a confirmação do hotel, como resultado do passo prévio, faz a reserva das passa- gens aéreas na data solicitada, com o nome do mesmo requisitante. O resultado anterior fica

processo pode ser acessado na máquina de workflow (o serviço “Work- flow_Engine_Service” ) pelo usuário que requisitou o processo, através da respectiva inter- face (Figura 4.9).

Independentemente, cada um dos serviços de hotel e passagens aéreas podem ser invoca- dos fora do contexto de um processo de workflow, usando suas respectivas interfaces. As Figuras seguintes, 4.13 e 4.14, ilustram a interface de acesso ao serviço “Java Hotel Service” e os resultados dele na janela-monitor da plataforma, fora do contexto de um processo de workflow.

Figura 4.13 Interface ao serviço de Hotel