• Nenhum resultado encontrado

O objetivo da arquitetura proposta é melhorar a qualidade em serviços web. Para que isto seja possível é utilizado um mecanismo fuzzy para prever possíveis violações de contratos eletrônicos e tomar ações para prevenir estas violações, aumentando a qualidade de serviço. A arquitetura proposta foi apresentada em Talon et al. (2014) e Talon & Madeira (2015a, 2015b).

A arquitetura é composta por quatro entidades (Entidade Consumidora, Entidade Provedora, Entidade Monitora e Entidade Negociadora) e possui cinco fases para execução de processos de negócio (Fase de Negociação, Fase de Monitoramento, Fase de Recuperação, Fase de Otimização e Fase de Renegociação). As fases de negociação e renegociação não são tratadas nesta tese pois já foram tratadas em trabalhos anteriores (Vecchiato, 2010; Santos, 2011), além do foco dessa tese ser no monitoramento com técnicas para previsão de uma possível quebra do contrato eletrônico antes que ela aconteça. A principal diferença da arquitetura original e da apresentada nesta tese é a adição dos módulos analisador, otimizador e recuperador para ajudar no monitoramento. Este novo monitoramento faz a predição das violações dos contratos eletrônicos antes que eles aconteçam.

Estas predições são determinadas por um mecanismo fuzzy. Somente o módulo analisador utiliza o sistema fuzzy. Os módulos otimizador e recuperador não utilizam nenhuma técnica de inteligência artificial. O analisador é pró-ativo, enquanto os outros dois módulos são reativos. O otimizador utiliza os dados da análise para mudar a prioridade do serviço, e o recuperador, diante de uma falha, tenta solucioná-la.

Pelo fato da (re)negociação não ser tratada nesta tese, é suposto que todos os contratos eletrônicos já existem e que todas as entidades já os têm. Os contratos eletrônicos são armazenados no Repositório de Contratos Eletrônicos (RCE). As informações armazenadas no contrato eletrônico são: serviço acordado, consumidor que utiliza o serviço, provedor que oferece o serviço, monitor que monitora a qualidade do serviço, característica não-funcional da qualidade de serviço a ser garantida e valor máximo/mínimo aceitável da característica não-funcional monitorada.

As entidades são divididas em repositórios, módulos e a Computação Orientada a Serviço (COS). O Sistema COS é responsável pela comunicação entre os serviços, isto significa que este sistema está presente somente nas entidades consumidora e provedora. Estes serviços são armazenados no Repositório de Serviços (RS). A Figura 6 mostra como as entidades estão organizadas. Em relação à arquitetura original, o Módulo Monitor foi modificado e é apresentado na Figura 6 com um símbolo de “*”, e os Módulos Analisador, Otimizador e Recuperador foram adicionados, e estão apresentados na Figura 6 com um símbolo de “+”.

4.2. Entidades

Nesta seção são apresentadas as entidades presentes na arquitetura proposta. São elas: entidade monitora, entidade consumidora, entidade provedora e entidade negociadora.

4.2.1. Entidade Monitora

A Entidade Monitora é composta pelo Repositório de Contratos Eletrônicos (RCE), pelo Repositório de Dados (RD) e pelos Módulos Monitor e Analisador.

Todos os serviços que são monitorados pela Entidade Monitora, assim como seus parâmetros de qualidade de serviço, são armazenados no RCE.

O Módulo Monitor intercepta todas as mensagens de requisição/resposta trocadas entre a Entidade Consumidora e a Entidade Provedora. Estas mensagens são armazenadas no RD, junto com os tempos de resposta e processamento dos serviços. O Módulo Analisador utiliza os dados do RD para estimar a possiblidade de violação de um contrato eletrônico. Esta possibilidade é determinada por um mecanismo fuzzy. Foi utilizado o sistema fuzzy na arquitetura pois é uma técnica para o tratamento de imprecisão, que é o caso, pois não é possível garantir exatamente quando acontecerá uma violação. Toda informação da análise é passada para o Módulo Otimizador da Entidade Provedora.

O monitor pode ser classificado como levemente-intrusivo e assíncrono. É levemente-intrusivo pois tanto a Entidade Consumidora como a Entidade Provedora necessitam fazer uma pequena mudança em seu código. Ambas precisam duplicar suas mensagens para o monitor. E é assíncrono pois toda a análise para prever uma violação de contrato eletrônico é feita em paralelo com a execução do serviço.

Com relação ao peso, o monitor pode ser classificado tanto como leve como pesado, pois o monitor pode monitorar somente uma característica não-funcional de QoS como duas características não-funcionais de QoS. Foram monitoradas as características não- funcionais tempo de resposta e disponibilidade.

4.2.2. Entidade Consumidora

A Entidade Consumidora é composta pelo Repositório de Serviços (RS), pelo Repositório de Contratos Eletrônicos (RCE) e pela Computação Orientada a Serviço (COS).

Todos os serviços dos provedores que são utilizados pelo consumidor ficam armazenados no RS, e todos os parâmetros de qualidade de serviço que foram acordados com os provedores ficam armazenados no RCE. O sistema COS é responsável pela comunicação com os serviços dos provedores que são utilizados pelo consumidor.

4.2.3. Entidade Provedora

A Entidade Provedora é composta pelo Repositório de Serviços (RS), pelo Repositório de Contratos Eletrônicos (RCE), pela Computação Orientada a Serviço (COS) e pelos Módulos Recuperador e Otimizador.

Todos os serviços do provedor que são utilizados por consumidores ficam armazenados no RS, e todos os parâmetros de qualidade de serviço que foram acordados com os consumidores ficam armazenados no RCE. O sistema COS é responsável pela comunicação com os serviços do provedor que são utilizados pelos consumidores.

O Módulo Otimizador usa a informação recebida do Módulo Analisador para mudar a prioridade dos serviços. A ordem de execução dos serviços é baseada em fila de prioridades. A ideia principal sobre a Fila de Prioridades é: se um serviço tem maior probabilidade de violar o contrato eletrônico ele deveria ter uma prioridade maior do que a dos outros serviços. Dessa forma, a Entidade Provedora deveria executá-lo primeiro.

Os Módulos Analisador e Otimizador têm o objetivo de tentarem cumprir os contratos eletrônicos. Entretanto, uma quebra ainda pode acontecer. Então diante de uma quebra de contrato eletrônico, o Módulo Recuperador tenta recuperar o serviço, aumentando sua prioridade. As prioridades atribuídas pelo Módulo Recuperador ao serviço são maiores do que as prioridades atribuídas pelo Módulo Otimizador. Isto significa que, se existe uma quebra de contrato, este serviço deve ser executado antes do que todos os outros.

4.2.4. Entidade Negociadora

A Entidade Negociadora é composta pelo Repositório de Contratos Eletrônicos (RCE) e pelo Módulo Negociador.

O RCE é responsável por armazenar todos os contratos eletrônicos que foram negociados, assim como todos os parâmetros de qualidade de serviço que foram acordados entre os consumidores e os provedores.

O Módulo Negociador é responsável por realizar toda a (re)negociação dos valores dos parâmetros de qualidade de serviço entre os consumidores e os provedores. Porém deve ficar claro que esta tese não se preocupa com as fases de negociação e renegociação, o foco é o monitoramento dos contratos eletrônicos para prever uma possível quebra do contrato eletrônico antes que ela aconteça. Como estas fases não são tratadas aqui, é suposto que todo os contratos eletrônicos já existem e que todas as entidades já os têm.

Documentos relacionados