• Nenhum resultado encontrado

Esta Seção aborda as tecnologias selecionadas para uso na proposta IoT-DFR3. Como critérios para seleção, destacaríamos as tecnologias serem open source e passíveis de integração com a arquitetura de software do middleware EXEHDA e em particular com o EXEHDA-RR.

4.2.1 Ferramenta Juzzy

A Ferramenta Juzzy foi desenvolvida com o objetivo de facilitar as aplicações de SBRF e SBRF2 em problemas do mundo real. A opção por utilizar esta ferramenta é decorrência da sua modernidade em ampla aceitação pela comunidade acadêmica tanto nacional, como internacional (HAGHRAH; GHAEMI, 2019). Para seleção da ferramenta para processamento Fuzzy foi realizado uma avaliação de alternativas, dentre as quais destacaríamos outras duas: FuzzyCreator e SyFSel (McCulloch, 2018).

Um dos critérios centrais para adoção da ferramenta Juzzy diz respeito a mesma ser baseada na linguagem Java, o que faculta a sua utilização em diversas plataformas e ser dispo-nibilizada de modo open source.

Outra observação importante é que esta ferramenta depende do pacote JMathPlot, que também é open source, para gerar gráficos a partir de seus dados (WAGNER, 2013).

Foi concebido com o intuito de ser livre para utilizar em qualquer plataforma. De fácil acesso, ou seja, não necessita de conhecimento de programação para sua utilização. A ferra-menta destina a expandir a acessibilidade de sistemas de Lógica Fuzzy, em particular do Tipo-2. Esta ferramenta também possui uma interface web que permite desenhar, implementar, executar e partilhar da Lógica Fuzzy Tipo-1, Tipo-2.

Na Figura 4.3 mostra um exemplo de um Conjunto Fuzzy do Tipo-2 Intervalar com uma função trapezoidal. E na Figura 4.4 é exibido um Conjunto Fuzzy do Tipo-1 com função de pertinência triangular.

Figura 4.3 –JuzzyOnline, Tipo-2 Intervalar Trapezoidal. Fonte: (WAGNER, 2013)

Figura 4.4 –JuzzyOnline, Tipo-1 Triangular. Fonte: (WAGNER, 2013)

4.2.2 Linguagem de Marcação e Estilo (HTML e CSS)

A linguagem HTML (HyperText Markup Language), é uma Linguagem de Marcação de Hipertextoutilizada para desenvolvimento de páginas web (HTML, 2020).

O CSS (Cascading Style Sheets), ou seja, Folhas de Estilo em Cascata é uma linguagem de estilo, utilizada para descrever a apresentação de um documento escrito em HTML ou em XML. O CSS descreve como elementos são exibidos na tela, melhorando a aparência da página HTML incluindo seus elementos (CSS, 2020).

O HTML e CSS foram incorporados ao IoT-DFR3 para formar a interface do cliente, para ser manipulada a partir de qualquer dispositivo IoT.

4.2.3 Framework Bootstrap

Originalmente criado por um designer e desenvolvedor no Twitter, o Bootstrap tornou-se uma das estruturas de front-end e projetos de código aberto mais populares do mundo. Além de diversas funcionalidades e melhorias que o Bootstrap oferece, ele permite que o site tenha toda sua estrutura responsiva (BOOTSTRAP, 2020), ou seja, a mesma interface pode ser modelada para ser visualizada em qualquer dispositivo sem a necessidade de modificar sua aparência manualmente.

4.2.4 Linguagem de Programação JavaScript

O JavaScript (muitas vezes abreviado para JS) é uma linguagem de programação inter-pretada, mais conhecida como linguagem de script para páginas web, mas também executadas em outros ambientes sem navegadores. A linguagem suporta orientação a objetos e é multipla-taforma (JAVASCRIPT, 2020).

O lado cliente do JavaScript permite que uma aplicação coloque elementos em um for-mulário HTML e responda a eventos do usuário, como cliques do mouse, entrada de forfor-mulário e de navegação da página (JAVASCRIPT, 2020). Já o lado servidor do JavaScript, permite que uma aplicação comunique-se com um banco de dados, garantindo a continuidade de infor-mações de uma chamada para a outra da aplicação, ou executar manipulações de arquivos em um servidor (JAVASCRIPT, 2020). Neste sentido, o JavaScript foi implementado para fazer a interação entre o cliente e o servidor.

4.2.5 GlassFish Server

GlassFish é um servidor de aplicação Open Source para a plataforma Java EE (Enter-prise Edition). A versão proprietária é chamada de Sun GlassFish Enter(Enter-prise Server (ORACLE, 2020a). Foi implementada na proposta IoT-DFR3 para fornecer o serviço de classificação de recursos na IoT. Além disso, o servidor GlassFish faz o gerenciamento dos dados e funcionali-dades da IoT-DFR3 para o cliente.

4.2.6 Linguagem de Programação Java

Java é uma linguagem de programação e uma plataforma computacional lançada pela primeira vez pela Sun Microsystems em 1995 e atualmente propriedade da Oracle. O Java foi projetado para permitir o desenvolvimento de aplicações portáteis de alto desempenho para a mais ampla variedade possível de plataformas de computação (ORACLE, 2020b). Java vem sendo largamente empregada, de laptops a datacenters, em supercomputadores científicos, tele-fones celulares à Internet (ORACLE, 2020b). Nessa perspectiva, a linguagem Java foi utilizada por possuir uma facilidade de comunicação com diversas plataformas.

4.2.7 Banco de Dados PostgreSQL

PostgreSQL é um SGBDOR (Sistema Gerenciador de Banco de Dados Objeto Relaci-onal) de código aberto. Possui mais de 15 anos de desenvolvimento ativo. Ganhou uma forte reputação de confiabilidade, integridade de dados e correção. PostgreSQL é executado nos prin-cipais sistemas operacionais, incluindo Linux, Mac OS e Windows (POSTGRESQL, 2020). Foi empregado no projeto IoT-DFR3para armazenar os dados de diferentes perfis de usuários.

5 IOT-DFR3: AVALIAÇÃO REALIZADA

Neste Capítulo é realizada a avaliação da proposta IoT-DFR3, caracterizando suas fun-cionalidades e apresentando os resultados obtidos.

Considerando as alternativas para avaliação presentes na literatura da área de ciência da computação, nesta dissertação optou-se pelo emprego de uma avaliação baseada em cenários. Destacam-se como principais razões para esta escolha os seguintes critérios:

(i) ser considerada uma alternativa madura para ser empregada em ambientes como os da IoT (PATIDAR; SUMAN, 2015);

(ii) ser explorada para avaliar a utilização de uma arquitetura de software em relação às de-mandas de um conjunto de aplicações (SHANMUGAPRIYA; SURESH, 2012); e, (iii) ser utilizada como método de avaliação em Trabalhos Relacionados considerados por esta

dissertação.

Neste sentido são explorados três cenários de uso direcionados a avaliação das principais funcionalidades providas pela proposta IoT-DFR3. Para consecução dos cenários, foram empre-gados 2400 recursos providos pelo QWS dataset versão 2.0 (AL-MASRI; MAHMOUD, 2008), esta versão foi atualizada em novembro de 2019. Foram selecionados os atributos Response Time(RT), Availability (AV), Throughput (TH), Successability (SU) e Reliability (RE), descri-tos na Tabela 5.1. A seleção destes atribudescri-tos se deu por conta de serem usualmente considerados nas aplicações típicas da IoT.

Tabela 5.1 –Atributos do QWS Dataset 2.0 Considerados

Atributo Descrição do Atributo Unidade de Medida

Response Time– RT

(Tempo de Resposta)

Tempo gasto para enviar uma

solicitação e receber uma resposta ms

Availability– AV (Disponibilidade)

Número de invocações

bem-sucedidas/ total de invocações %

Throughput– TH

(Taxa de Transferência)

Número total de invocações por

um determinado período de tempo invocação/segundo

Successability– SU (Sucessibilidade) Número de solicitação/ resposta de mensagens % Reliability– RE (Confiabilidade)

Taxa de erro em relação

ao total de mensagens %

Documentos relacionados