• Nenhum resultado encontrado

Com o objetivo de validar o processo de criação e composição de SoS, foi implementado um experimento envolvendo três sistemas de uma cidade inteligente fictícios onde:

O Sistema 1, desenvolvido em JavaScript, cujo gerenciamento é realizado pela prefei- tura da cidade, é constituído de sensores e possui como missão coletar e informar periodi- camente o nível de ocupação e o peso do conteúdo de contêineres de lixo espalhados pela cidade.

Gerenciado por uma ONG, o Sistema 2 é, por sua vez, responsável por apresentar à população informações referentes à produção de lixo na cidade. Tal sistema é um sistema Web de eco-feedback que produz informações com alguns dias de atraso, pois a prefeitura, responsável pelos dados brutos da produção de lixo, não faz o repasse das informações em tempo real.

Já o ultimo sistema, Sistema 3, desenvolvido em Java e com objetivo de gerar rotas para os caminhões de lixo da empresa terceirizada responsável pela coleta de lixo dos contêineres, de modo que a quantidade de rotas e de carros destinados à coleta do lixo depende do cadastro de contêiner enviado pela prefeitura.

Considerando que esses três sistemas são independentes, isolados, desenvolvidos usando tecnologias diferentes e gerenciados por órgãos distintos da cidade, é perceptível que al- guma forma de integração necessita ser desenvolvida para possibilitar a comunicação entre eles.

Uma situação que envolve os três sistemas citados acima e que a interoperabilidade en- tre esses eles poderia atingir seria a Geração de Rotas Otimizadas. Além da otimização das rotas considerando o nível de ocupação e localização do contêiner, também apresentar-se- ia à população, em tempo real, a coleta sendo realizada e quais e quantos carros estariam sendo utilizados no momento. O Sistema 1 seria responsável pelas informações do nível de ocupação de cada contêiner, o Sistema 3 calcularia uma rota por região (com base nas informações de cadastro do Sistema 2 ), verificando quais contêineres estão próximos

54

geograficamente e, de acordo com o nível de produção do lixo, calcularia uma rota otimi- zada. Isso evitaria que carros de lixo saíssem para a coleta sem que a produção de lixo fosse suficiente para enchê-lo ou que vários carros saíssem às ruas quando apenas um seria necessário. Essa situação seria conseguida apenas mediante a produção de um SoS onde possui interoperabilidade entre os sistemas.

Para a integração dos sistemas na plataforma Mandala, os três sistemas foram ca- dastrados, conforme especificado da Seção 4.1, foi cadastrado o SoS. Após o cadastro dos sistemas, o desenvolvedor do SoS criou o fluxo, em BPD, da missão Geração de Rotas Oti- mizadas, conforme mostrado na Figura 20. Após isso, foi publicado o Web Service para ser consumida essa missão.

Figura 20: Fluxo da missão Geração de Rotas Otimizadas em BPD. Fonte: Própria (2017)

O experimento ora reportado foi realizados utilizando dois computadores conectados através de uma rede local Ethernet de alta velocidade no intuito de minimizar possíveis efeitos (principalmente relacionados à latência de comunicação e outras interferências ex- ternas) entre os sistemas participantes no SoS. A primeira máquina possuía processador Intel CoreTM i5, 6 GB de RAM e sistema operacional Linux Ubuntu 16.04, enquanto que a segunda máquina possuía processador Intel CoreTM i5, 2 GB de RAM e sistema opera- cional Microsoft WindowsR TM 10. O protótipo do Mandala foi implantado na primeira máquina juntamente com o Sistema 2 (eco-feedback ) e o Sistema 3 (gerador de rotas) e a segunda máquina serviu para a implantação do Sistema 1 (gerenciamento de lixo em contêineres).

Como ferramenta de suporte aos experimentos, foi utilizado o SoapUI Open Source 5.3.0 (SOFTWARE, 2016), que tem como característica simular acessos a serviços Web, pa-

rametrizando, dentre outras variáveis, o número de requisições e de threads, que variaram entre 500, 1.000, 5.000 e 10.000 requisições associadas a 10, 50, 100, 500 e 1.000 threads. Uma vez que o Mandala possui sua implementação realizada na linguagem de progra- mação Java, a máquina virtual Java (JVM) poderia afetar os resultados observados nos experimentos computacionais. Dessa forma, um total de vinte execuções foram realizadas para cada, a fim de garantir uma significância estatística adequada para os resultados.

A Figura 21 apresenta o tempo de resposta médio (em segundos) observado para as diferentes configurações em termos de número de requisições e threads para consumo do serviço Web do SoS para a geração de rotas. É possível verificar que o tempo médio de execução de uma requisição ao SoS não varia de forma significativa quando há aumento de requisições, com exceção para a configuração com 500 threads. Entre 500 e 5.000 conexões há uma variação de aproximadamente 30% no tempo de resposta (entre três e quatro segundos), que volta a ficar estável até chegar em 10.000 requisições.

Figura 21: Tempo de resposta médio (em segundos) observado para diferentes configura- ções em termos de número de requisições e threads

Fonte: Própria (2017)

Além da média aritmética calculada para os tempos de resposta observados, foram calculados o desvio padrão e um intervalo de confiança a fim de adquirir uma maior relevância analítica. Os maiores valores para o desvio padrão e intervalo de confiança foram identificados na configuração de 10.000 requisições com 500 threads, que apresentou tempo de resposta médio de 3,673s (3673ms) e desvio padrão de 116ms, o que representa

56

um percentual de 3,15%. Como a amostragem feita possui menos de 30 elementos, o intervalo de confiança da média dos tempos de resposta foi determinado considerando que os valores obtidos seguem uma distribuição t-Student e adotando um nível de significância α = 0.05 (MONTGOMERY, 2013). Com o valor calculado de 54,6ms, pode-se inferir que 95% dos valores coletados aleatoriamente, para essa configuração, devem se situar dentro de um intervalo de 109ms, o que mostra a constância do Mandala no tratamento de suas requisições.

A Figura 22 mostra a troca de mensagens entre os agentes envolvidos nesse experi- mento,

Figura 22: Troca de mensagens pelos agentes Jade ao executar missão Geração de Rotas Otimizadas.

Fonte: Própria (2017)

Com esse experimento, pode-se dizer que o Mandala foi eficaz ao que se propôs, uma vez que conseguiu realizar a comunicação de todas as mensagens conforme definido no fluxo da missão gerado pelo componente SoS Composer. O mesmo, no entanto, não se pode dizer de sua eficiência, uma vez que não há uma linha de base comparativa com outros sistemas, mesmo que, subjetivamente, o valor seja aceitável.

Documentos relacionados