UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS TECNOLÓGICAS DA TERRA E DO MAR CURSO DE CIÊNCIA DA COMPUTAÇÃO

Tamanho: px
Começar a partir da página:

Download "UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS TECNOLÓGICAS DA TERRA E DO MAR CURSO DE CIÊNCIA DA COMPUTAÇÃO"

Transcrição

1 UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS TECNOLÓGICAS DA TERRA E DO MAR CURSO DE CIÊNCIA DA COMPUTAÇÃO DESENVOLVIMENTO DE UM SMART GATEWAY PARA O MONITORAMENTO DE MÁQUINAS INDUSTRIAIS Paulo Henrique da Silva Orientadora: Michelle Silva Wangham, Dra. Co-Orientador: Marlon C. Domenech. São José, Novembro / 2014 i

2 UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS TECNOLÓGICAS DA TERRA E DO MAR CURSO DE CIÊNCIA DA COMPUTAÇÃO DESENVOLVIMENTO DE UM SMART GATEWAY PARA O MONITORAMENTO DE MÁQUINAS INDUSTRIAIS Paulo Henrique da Silva São José, Novembro / 2014 Orientadora: Michelle Silva Wangham, Dra. Co-Orientador: Marlon C. Domenech. Área de Concentração: Internet das Coisas Linha de Pesquisa: Sistemas Distribuídos Palavras-chave: Internet das Coisas, Web das Coisas, Smart Gateway, Monitoramento Remoto. Número de páginas: 85 RESUMO O gerenciamento eficiente de plantas industriais depende da capacidade da cobertura de monitoramento dos equipamentos que a compõe. Isto pode ser feito através da coleta contínua dos dados gerados por estes equipamentos, dados que podem ser desde a hora de início de um determinado processo até o número de intervenções realizadas no equipamento que está sendo monitorado. Porém, em muitos casos, esses equipamentos não possuem conectividade de rede ou quando possuem utilizam diferentes tecnologias de comunicação. Esta heterogeneidade onera e, por vezes, inviabiliza o processo de criação de soluções para integrar e monitorar remotamente esses equipamentos. Este trabalho teve como objetivo prover o monitoramento remoto de máquinas industriais através da Internet, utilizando o conceito de Internet das Coisas. Para tanto, foi realizada uma modelagem da solução proposta que contou com a participação de colaboradores de uma fabricante de máquinas têxteis industriais que auxiliaram no processo de elicitação dos requisitos da solução de monitoramento remoto. Como resultado deste trabalho foi desenvolvido (i) uma API e serviços RESTful que foi embarcada em um hardware com restrições computacionais (Smart Gateway) e (ii) uma aplicação chamada de Monitor. O Smart Gateway tem como objetivo abstrair a camada de comunicação e possibilitar a integração de dispositivos heterogêneos entre si e com sistemas na Internet. O Monitor é uma aplicação modular que é acoplada (plug-in) ao Smart Gateway para adicionar a capacidade de interação do Smart Gateway com diferentes interfaces como Zigbee, Bluetooth e Ethernet. Neste trabalho, o Monitor foi desenvolvido para prover a interação do Smart Gateway com os sistemas supervisórios (SCADA) das ii

3 máquinas industriais. O Smart Gateway foi implementado em uma plataforma de hardware aberto que disponibiliza, por meio de serviços web RESTful, os recursos da máquina industrial monitorada. Isto permite que aplicações para dispositivos móveis e outros Smart Gateways possam consumir os recursos disponibilizados pela máquina industrial e possam monitorá-la. O Smart Gateway possui ainda uma aplicação cliente que envia, periodicamente, os dados de monitoramento para um serviço web RESTFul de recebimento de dados em uma nuvem privada de dados. Após a fase de desenvolvimento, foram realizados testes com informações reais de uma máquina (logs do SCADA) e com o serviço web de recebimento de dados, além disso, também foram realizados testes funcionais, não funcionais e de desempenho que confirmam a viabilidade da solução. iii

4 ABSTRACT The efficient management of industrial plants relies on the ability of the monitoring coverage of equipment that compose it. This can be done through the continuous collection of data generated by such equipment, provided data that can be the start time of a particular process until the number of interventions performed on the equipment being monitored. However, in many cases, these devices do not have network connectivity or when they have use different communication technologies. This heterogeneity costly and sometimes impedes the process of creating solutions to integrate and monitor these devices remotely. This study aimed to provide remote monitoring of industrial machinery via the Internet, using the concept of Internet of Things. For this, a model of the proposed solution with the participation of employees of a manufacturer of industrial textile machines that assisted in the elicitation of the requirements of remote monitoring solution process was carried out. As a result of this work was (i) an API and RESTful services that was embedded in a hardware computational constraints (Smart Gateway) and (ii) an application called Monitor. Smart Gateway aims to abstract the communication layer and enable integration of heterogeneous devices among themselves and with systems on the Internet. The Monitor is a modular application that is coupled (plug-in) to the Smart Gateway to add the ability to interact with the Smart Gateway different interfaces as Zigbee, Bluetooth and Ethernet. In this paper, the Monitor was developed to provide interaction with the Smart Gateway supervisory systems (SCADA) of industrial machines. The Smart Gateway was implemented in hardware that provides an open, through RESTful web services, resources industrial monitored machine. This allows applications to mobile devices and other Smart Gateways can consume the resources provided by the industrial machine and can monitor it. The Gateway also has a Smart Client application that periodically sends monitoring data to a web service RESTFul receiving data in a private cloud data. After the development phase testing with actual information from a machine (SCADA logs) and with the web service receiving data were performed, in addition, functional, nonfunctional and performance tests that confirm the feasibility of the solution were also performed. iv

5 LISTA DE QUADROS Quadro 1 Comparação entre serviços WS-* e serviços RESTful Quadro 2. Comparação entre os 10 hardwares selecionados Quadro 3. Comparativo dos trabalhos relacionados com o trabalho proposto Quadro 4. Detalhamento do Caso de Uso UC01. Inserir URL do Smart Gateway Quadro 5. Detalhamento do Caso de Uso UC02. Alterar URL do Smart Gateway Quadro 6. Detalhamento do Caso de Uso UC03. Selecionar arquivo de log monitorado Quadro 7. Detalhamento do Caso de Uso UC04. Alterar o arquivo de log monitorado Quadro 8. Detalhamento do Caso de Uso UC05. Iniciar monitoramento Quadro 9. Detalhamento do Caso de Uso UC06. Parar monitoramento Quadro 10. WADL do Smart Gateway recuperado pelo navegador Quadro 11: Detalhamentos do caso de teste CT Quadro 12: Retorno do recurso "/history" para o CT Quadro 13: Detalhamentos do caso de teste CT Quadro 14: Retorno do recurso "/history" para o CT Quadro 15: Detalhamentos do caso de teste CT Quadro 16: Retorno do recurso "/history" para o CT Quadro 17: Detalhamentos do caso de teste CT Quadro 18: Retorno do recurso "/history" para o CT Quadro 19: Detalhamentos do caso de teste CT Quadro 20: Detalhamentos do caso de teste CT Quadro 21: Retorno do recurso "/history" para o CT Quadro 22: Detalhamentos do caso de teste CT Quadro 23: Retorno do recurso "/history" para o CT Quadro 24: Detalhamentos do caso de teste CT Quadro 25: Retorno do recurso "/history" para o CT Quadro 26: Detalhamentos do caso de teste CT Quadro 27: Retorno do recurso "/history" para o CT Quadro 28: Detalhamentos do caso de teste CT Quadro 29: Retorno do recurso "/history" para o CT Quadro 30: Detalhamentos do caso de teste CT Quadro 31: Retorno do recurso "/history" para o CT Quadro 32: Detalhamentos do caso de teste CT Quadro 33: Retorno do recurso "/history" para o CT Quadro 34. Detalhamento do Caso de Teste de desempenho CT Quadro 35. Resultado do caso de teste CT Quadro 36. Detalhamento do Caso de Teste de desempenho CT Quadro 37. Resultados do caso de teste de desempenho CT Quadro 38. Detalhamento do Caso de Teste de desempenho CT Quadro 39. Resultado do CT03 - Uso de recursos computacionais Quadro 40. Resultado do CT03 - Tempo de Envio e Recebimento de mensagens Quadro 41. Detalhamento do Caso de Teste de desempenho CT Quadro 42. Resultados do caso de teste de desempenho CT Quadro 43. Detalhamento do caso de teste CT Quadro 44. Resultados do caso de teste desempenho CT Quadro 45. Detalhamento do caso de teste CT v

6 Quadro 46. Resultados do caso de deste de desempenho CT Quadro 47: Retorno do recurso "/history" para o CT vi

7 LISTA DE ABREVIATURAS E SIGLAS API CFM COD CPU CRUD EUA HMI HTML HTTP IHM IoT IP ITU JavaEE JAX-RS JSON JSR-311 LAN M2M NFC NIC ONU RAM REST RFID ROA ROM RPC SCADA SOAP TCC TIC UNIVALI URI WADL WOT WSDL XML Application Programming Interface Célula Flexível de Manufatura Code On Demand Central Processing Unit Create, Read, Update e Delete Estados Unidos da America Human Machine Interface Hypertext Markup Language Hypertext Transfer Protocol Interface Homem-Máquina Internet of Things Internet Protocol International Telecommunication Union Java Enterprise Edition Java API for RESTful Services JavaScript Object Notation Java Specification Requests Local Area Network Machine to Machine Near Field Communication National Intelligence Council Organização das Nações Unidas Random Access Memory REpresantational State Transfer Radio Frequency Identification Resource Oriented Architecture Read Only Memory Remote Procedure Call Supervisory Control and Data Acquisition Simple Object Access Protocol Trabalho de Conclusão de Curso Tecnologia da Informação e Comunicação Universidade do Vale do Itajaí Universal Resource Identifier Web Application Description Language Web Of Things Web Service Description Language extensible Markup Language vii

8 LISTA DE FIGURAS Figura 1. Visões da Internet das Coisas Figura 2. Integração Direta e Indireta na Web das Coisas Figura 3. Os 10 principais hardwares Figura 4. Principal uso do hardware adquirido Figura 5. Arquitetura da aplicação em três camadas Figura 6. Cliente/ Servidor em três camadas Figura 7. Visão geral do uso do Smart Gateway no ambiente industrial Figura 8. Diagrama de Casos de Uso da aplicação Monitor Figura 9. Ciclo de vida da aplicação Monitor Figura 10. Integração Monitor, Smart Gateway e Serviços Externos Figura 11. API REST do Smart Gateway Figura 12. Beagle Bone Black Figura 13. Diagrama de classe da aplicação Monitor viii

9 SUMÁRIO INTRODUÇÃO PROBLEMA DE PESQUISA Solução Proposta Delimitação de Escopo Justificativa OBJETIVOS Objetivo Geral Objetivos Específicos METODOLOGIA Metodologia da Pesquisa Procedimentos Metodológicos FUNDAMENTAÇÃO TEÓRICA MONITORAMENTO REMOTO DE MÁQUINAS INDUSTRIAIS INTERNET DAS COISAS WEB DAS COISAS REST Representação dos Recursos com JSON PLATAFORMA DE HARDWARE ABERTO TRABALHOS RELACIONADOS WEB BASED INTERFACE TO SCADA SYSTEM PROPOSTA DE ARQUITETURA ORIENTADA A RECURSOS PARA SCADA NA WEB AN INTERNET BASED DITRIBUTED CONTROL SYSTEM: A CASE STUDY OF OIL REFINERIES ANÁLISE COMPARATIVA DESENVOLVIMENTO LEVANTAMENTO INICIAL VISÃO GERAL DA SOLUÇÃO PROPOSTA ANÁLISE DE REQUISITOS Análise de Requisitos MODELAGEM DO SISTEMA Diagramas de Sequência WADL do Smart Gateway TECNOLOGIAS UTILIZADAS Beagle Bone Black Oracle Java Standard Edition Embedded

10 4.5.3 Jersey Framework AVALIAÇÃO E RESULTADOS Casos de Teste Casos de Teste de Desempenho CONCLUSÕES TRABALHOS FUTUROS REFERÊNCIAS BIBLIOGRÁFICAS APÊNDICE A DIAGRAMA DE CLASSES APÊNDICE B RETORNO DO RECURSO /history REFERENTE AO CT

11 INTRODUÇÃO Um assunto de grande importância para a indústria é o monitoramento remoto das máquinas e equipamentos industriais. Segundo Ramamurthy, Bhargavi e Shashikumar (2010), o controle, monitoramento remoto e a manutenção inteligente são alguns dos mais importantes mecanismos para o aumento da produção e da disponibilidade nesse ambiente e, recentemente, tem havido muito interesse das empresas por implantá-los. Uma forma de permitir a comunicação entre dispositivos heterogêneos garantindo também o seu monitoramento remoto é utilizando o conceito de Internet das Coisas (Internet of Things - IoT). Segundo Atzori, Iera e Morabito (2010), a ideia básica deste conceito é a presença generalizada de uma variedade de coisas ou objetos, como etiquetas RFID (Radio Frequency Identification), sensores, atuadores e telefones celulares. Esses objetos são capazes de interagir uns com os outros utilizando mecanismos de endereçamento único e protocolos de comunicação padronizados, de modo a cooperar com seus vizinhos (outros objetos) para alcançar objetivos comuns. Atzori, Iera e Morabito (2010) estimam que uma grande quantidade de objetos estarão conectados à Internet, sendo que estes se tornarão os maiores emissores e receptores de tráfego da rede. Segundo CERP-IoT (2010), em 2010, havia aproximadamente 1,5 bilhão de computadores pessoais e mais de 1 bilhão de celulares com acesso à Internet e é esperado para 2020 algo entre 50 e 100 bilhões de dispositivos conectados à Internet. Uma pesquisa realizada pela NIC (2008) prevê que em 2025 todos os objetos do cotidiano estarão conectados a Internet. Estes podem ser quaisquer objetos, tais como eletrodomésticos, sensores, atuadores, celulares, tablets e computadores, que possam ser identificados e interligados à Internet para trocar informações e tomar decisões para atingir objetivos comuns. Um relatório do ITU (International Telecommunication Union) apontou que na Internet das Coisas qualquer objeto capaz de ser conectado em rede poderá se comunicar a qualquer tempo e em qualquer lugar (ITU, 2005). Contudo, a perfeita integração das coisas com a Internet é um desafio. Os maiores obstáculos que tornam complexa esta integração são as restrições de conectividade, fontes de energia, segurança, fatores geográficos e custo de instalação e operação (MAHALLE et al., 2010). 11

12 Com estas restrições alguns dispositivos não suportam diretamente a conectividade com a Internet por meio do protocolo IP (Internet Protocol), dificultando sua integração. Segundo De França et al. (2011), quando o protocolo IP não é suportado é necessário utilizar um padrão de integração diferente. Nessas situações, é possível utilizar um dispositivo intermediário entre o objeto e sistemas finais na Internet chamado Smart Gateway. Este dispositivo receberá os dados fornecidos pelos objetos e os interpretará a fim de direcioná-los para um banco de dados, um servidor ou outro nó da rede que processe as informações de forma mais especializada. Da mesma forma, o Smart Gateway enviará dados aos objetos permitindo configurações, atualizações, monitoramento, etc. O Smart Gateway também poderá receber e enviar dados para um software externo que pode ser uma aplicação Web, aparelhos celulares, tablets ou até mesmo outro Smart Gateway. Para facilitar o desenvolvimento de aplicações para esses dispositivos que permita que os serviços e os dados dos dispositivos sejam utilizados em diferentes aplicações, é necessário o uso de uma linguagem em comum. Uma abordagem proposta para o uso de uma linguagem comum no desenvolvimento de aplicações de Internet das Coisas é a Web das Coisas (Web of Things - WoT) (GUINARD et al., 2009). A WoT objetiva a interação entre dispositivos de IoT através do uso de protocolos Web já difundidos na Internet atual, facilitando assim a troca de mensagens entre dispositivos e entre estes e outras aplicações da Internet, promovendo assim uma maior interoperabilidade entre estes. Na WoT, a integração dos dispositivos ocorre no nível de aplicação, acima da conectividade de rede. Com isso, a WoT agrega valor às informações geradas pelos objetos físicos através da utilização dos recursos da Web, o que ajuda a concretizar a visão da Internet das Coisas (GUINARD et al., 2009). No contexto da WoT, uma metodologia para a criação de aplicações em linguagem comum para os dispositivos é o REST (REpresentational State Transfer). O REST é um estilo de arquitetura de software que pode ser aplicado no desenvolvimento de sistemas denominados RESTful. (DE FRANÇA et al., 2011, p. 110). O REST tem o intuito de aumentar a interoperabilidade entre as partes de uma aplicação distribuída através da reutilização de padrões da Web e utiliza características inerentes do protocolo HTTP (Hipertext Transfer Protocol), como autenticação, autorização, criptografia, compressão e caching. Além disso, os princípios REST podem ser mapeados nos métodos básicos do protocolo HTTP (GET, POST, PUT e DELETE) para criar sistemas CRUD (Create, Read, Update, Delete) de 12

13 uma aplicação RESTful. Os recursos dos serviços RESTful são identificados e encapsulados por um URI (Uniform Resource Identifier). Essas características fazem do REST a opção mais adequada para construção de APIs (Application Programming Interface) Web para acesso a objetos do mundo real (GUINARD et al., 2009). Segundo De França et al. (2011), o Smart Gateway atua como uma ponte entre a Web e os dispositivos inteligentes ao fornecer uma interface Web RESTful de acesso aos recursos e subrecursos dos dispositivos e ao se comunicar com tais dispositivos através de suas APIs específicas. O Smart Gateway tem um endereço IP e compreende os protocolos proprietários dos diferentes dispositivos conectados através do uso de controladores (drivers) dedicados. Assim, requisições vindas da Internet para acesso a algum dispositivo irão passar pelo Smart Gateway, que irá redirecionar a requisição através do protocolo específico. Dentro deste contexto, este trabalho visa contribuir com área de controle e monitoramento remoto de máquinas industriais por meio da Web das Coisas. 1.1 PROBLEMA DE PESQUISA A tomada de decisão faz parte do dia a dia das empresas. Logo, informações acerca do processo que se está analisando são cada vez mais importantes. Na indústria, dados como o estado de sensores de temperatura, energia elétrica e tempo de funcionamento da máquina são tão importantes quanto a velocidade com que estas informações são disponibilizadas para os gestores. Uma dificuldade nesse cenário é lidar com máquinas que não foram projetadas para comunicação M2M (Machine-to-Machine) ou que não possuem suporte ao protocolo IP. Portanto, existe a necessidade de uma solução que possa ser agregada às máquinas sem suporte ao M2M, evitando o custo de redesenhar uma máquina para disponibilizar uma interface para comunicação. Segundo Kirubashankar, Krishnamurthy e Indra (2009), as máquinas industriais integram um vasto número de sistemas embarcados, conectados ou não a uma rede de comunicação. Estas máquinas podem ter sensores e atuadores que possibilitam operações de monitoramento e controle. Atualmente, a maioria das máquinas disponíveis no mercado de vestuário restringe sua operação e monitoramento ao ambiente da rede local da indústria. Nestes ambientes industriais também é restrita a interoperabilidade entre máquinas de diferentes fabricantes. 13

14 De acordo com De França et al. (2011), o Smart Gateway é uma das possíveis soluções para garantir a integração de objetos em redes quando os dispositivos não possuem conectividade com a Internet através do protocolo IP. O Smart Gateway será uma appliance (hardware e software embarcado) que utilizará uma plataforma de hardware aberto. As seguintes questões de pesquisa foram consideradas durante o desenvolvimento deste trabalho: Como agregar o serviço de monitoramento remoto às máquinas industriais de uma empresa do setor do vestuário por meio de um Smart Gateway? Quais plataformas de hardware aberto de baixo custo podem ser utilizadas para a solução de monitoramento remoto de máquinas industriais e qual o mais adequado? Quais os impactos da solução proposta na operação das máquinas e na infra-estrutura de rede de um ambiente industrial? Solução Proposta Este trabalho visou contribuir para o monitoramento remoto de máquinas industriais por meio da WoT, com o objetivo de conceber ambientes industriais inteligentes (smart). Durante este trabalho foi desenvolvido um sistema de monitoramento remoto (via Internet) para máquinas industriais sob a plataforma de hardware aberto Beagle Bone Black compondo desta forma o Smart Gateway que faz a ponte entre os consumidores e os recursos. Os consumidores podem ser usuários, sistemas e até outras máquinas através de seus próprios Smart Gateways.Os recursos representam os sensores, atuadores e outros componentes de uma máquina. Logo, o Smart Gateway representa virtualmente uma máquina industrial. O Smart Gateway é responsável por disponibilizar os recursos monitorados através de serviços Web RESTful para os usuários e para outras aplicações na Internet, além de interfacear com cada recurso monitorado na máquina, através da linguagem específica de cada um. Portanto, além de ter o papel de ponte entre recursos e usuários ou aplicações na Internet, a solução proposta abstrai os recursos presentes na máquina para usuários ou aplicações que precisam acessá-los. 14

15 1.1.2 Delimitação de Escopo Este trabalho realizou um estudo sobre as possíveis plataformas de hardware aberto disponíveis no mercado que atendam os requisitos funcionais e não funcionais elencados durante a modelagem da API. Por ser um intermediador de objetos na rede com capacidade de interpretar protocolos, podendo assim determinar o destino de pacotes, foi realizado um estudo avaliando os impacto do Smart Gateway no ambiente de rede industrial para demonstrar sua viabilidade. Experimentos foram realizados com as próprias máquinas industriais de forma a avaliar a aplicabilidade da solução proposta. Os experimentos quantificaram os impactos no uso de recursos computacionais na plataforma de hardware aberto e se basearam nas métricas de: (i) consumo de memória, (ii) consumo de CPU (Central Processing Unit) e (iii) espaço de armazenamento utilizado. Testes funcionais e não funcionais foram realizados visando avaliar o software desenvolvido Justificativa A necessidade de informação sobre as máquinas industriais é de extrema importância para que os gestores das empresas possam tomar ciência do cenário corrente de seu chão de fábrica. Ramamurthy, Bhargavi e Shashikumar (2010) afirmam que o controle e monitoramento remotos e a manutenção inteligente são alguns dos mais importantes mecanismos para o aumento da produção e da disponibilidade nesse ambiente e que, recentemente, tem havido muito interesse das empresas por implantá-los. Segundo Kirubashankar, Krishnamurthy e Indra (2009), isto ocorre porque a manutenção inadequada causa o colapso e o atraso na identificação de causas de falhas tornam unidades industriais inutilizáveis. Segundo Ramamurthy, Bhargavi e Shashikumar (2010), tais problemas podem ser resolvidos por meio do monitoramento constante da planta industrial e das condições ambientais a partir de uma localização remota. Tal necessidade pode esbarrar em máquinas obsoletas ou que simplesmente não foram projetadas para disponibilizar uma interface que permita a interconexão. Nesses casos, segundo De França et al. (2011), é possível utilizar um dispositivo intermediário entre o objeto e sistemas finais na Internet chamados Smart Gateway. 15

16 1.2 OBJETIVOS Esta seção formaliza os objetivos do trabalho, conforme descrito a seguir Objetivo Geral Prover o monitoramento e controle remoto de máquinas industriais por meio do de um Smart Gateway conectado à Internet Objetivos Específicos 1. Levantar, junto à (Empresa X) 1 os problemas e necessidades de assistência e suporte técnico de suas máquinas, de forma a identificar quais variáveis e estados devem ser monitorados nas máquinas e os requisitos funcionais e não funcionais do Smart Gateway; 2. Desenvolver os serviços Web RESTful do Smart Gateway a serem embarcados em uma plataforma de hardware aberto para prover o serviço de monitoramento de máquinas industriais; e 3. Avaliar os impactos do uso do Smart Gateway, em termos de desempenho da rede e uso de recursos computacionais dos dispositivos, considerando a aplicação de monitoramento remoto. 1.3 METODOLOGIA Metodologia da Pesquisa Para o desenvolvimento da pesquisa, foi aplicado o método hipotético-dedutivo. A pesquisa buscou gerar conhecimentos para o desenvolvimento de aplicação para a solução de um problema específico, seguindo assim a natureza de pesquisa aplicada. Em relação à abordagem do problema, a pesquisa é em parte qualitativa e em parte quantitativa. Qualitativa porque avaliou a qualidade do 1 Devido a requisitos de segredo industrial, durante o texto deste projeto será utilizado o termo Empresa X para representar a empresa do setor têxtil utilizada para pesquisas e experimentos. A empresa real utilizada nesse projeto prefere manter sigilo de seus estudos de Pesquisa e Desenvolvimento (P&D). 16

17 projeto utilizando métodos de engenharia de software e quantitativa porque mensurou o impacto que a utilização do Smart Gateway provocou quando aplicado em um estudo de caso Procedimentos Metodológicos Para o alcance dos objetivos deste trabalho foram realizados quatro procedimentos, pesquisa bibliográfica, modelagem da solução proposta, implementação e avaliação: Pesquisa bibliográfica: a pesquisa bibliográfica consistiu em pesquisar conceitos para a definição exata do problema. A pesquisa concentrou-se em obter um melhor entendimento dos conceitos envolvidos com o projeto, estudando arquiteturas de APIs tipo REST e ferramentas para auxiliar o desenvolvimento das mesmas; e Modelagem da solução proposta: Modelagem do Smart Gateway e da aplicação Monitor, incluindo a análise de requisitos funcionais e não funcionais, a descrição dos casos de uso e diagramas de sequência; Implementação: Utilizando os conceitos estudados e a modelagem, foram desenvolvidas dois principais softwares: a aplicação Monitor e o software embarcado do Smart Gateway. Avaliação: A avaliação foi realizada com base no entendimento sobre as regras de negócio o que possibilitou a validação e verificação dos requisitos funcionais e não funcionais construídos, além disso, também foi avaliado o desempenho da solução por meio da execução de casos de testes específicos para esse fim. 17

18 2 FUNDAMENTAÇÃO TEÓRICA Este capítulo é composto por alguns tópicos necessários para obter o conhecimento teórico suficiente para o desenvolvimento de um Smart Gateway para o monitoramento de máquinas industriais, tais como o Monitoramento Remoto de Máquinas Industriais, a Internet das Coisas, a Web das Coisas, REST e Plataforma de Hardware Aberto. 2.1 MONITORAMENTO REMOTO DE MÁQUINAS INDUSTRIAIS A visibilidade do chão de fábrica, obtida por meio do monitoramento de máquinas industriais, é de suma importância para que gestores e administradores do ambiente monitorado consigam compreender a real situação dos estados de seus equipamentos e possam então definir prioridades, tomar decisões ou planejá-las. Segundo Chiavenato (2010) tomar decisões é identificar e selecionar um curso de ação para lidar com um problema específico ou extrair vantagens em uma oportunidade. Para tanto, a obtenção de indicadores se torna um requisito fundamental. Kligerman (2006) afirma que os indicadores são desenvolvidos pela necessidade de tratar a informação para entender fenômenos complexos, [...] tornando-os quantificáveis e compreensíveis de maneira que possam ser analisados, utilizados e serem transmitidos [...]. Uma abordagem comumente utilizada é a adoção de sistemas SCADA. Segundo (BAILEY; WRIGHT, 2003), aplicativos SCADA são utilizados na supervisão e controle de processos. Segundo Polônia (2011), no contexto de aplicações de automação industrial os sistemas SCADA possuem um papel importante, que é o de fornecer os dados de chão de fábrica para outras aplicações, além de receberem comandos de controle das mesmas tendo desta forma um papel mais operacional. No contexto da proposta deste trabalho, esses indicadores podem ser, por exemplo, a quantidade de intervenções realizadas nas máquinas que, quando combinados com outros dados como datas e horários dessas intervenções e comparados com o comportamento de outras máquinas, podem indicar uma situação atípica produzindo assim informação necessária para o apoio às decisões. 18

19 Para realizar a coleta e transmissão desses indicadores, o monitoramento constante do chão de fábrica em conjunto com a Internet podem ser grandes aliados. Ramamurthy, Bhargavi e Shashikumar (2010) afirmam que o controle, monitoramento remoto e a manutenção inteligente são alguns dos mais importantes mecanismos para o aumento da produção e da disponibilidade nesse ambiente e que, recentemente, tem havido muito interesse das empresas por implantá-los. Uma justificativa para tal comportamento é descrita por Kirubashankar, Krishnamurthy e Indra (2009), quando afirmam que a manutenção inadequada causa um colapso e o atraso na identificação de causas de falha tornam unidades industriais inutilizáveis. Segundo Ramamurthy, Bhargavi e Shashikumar (2010), tais problemas podem ser resolvidos através do monitoramento constante da planta industrial e das condições ambientais a partir de uma localização remota 2.2 INTERNET DAS COISAS Segundo Xiang e Li (2009), a Internet das Coisas (IoT) é considerada como a terceira onda da indústria da informação e atrai atenção crescente por causa das perspectivas de aplicações industriais. Atzori, Iera e Morabito (2010) afirmam que a ideia básica da IoT é a presença generalizada de uma variedade de coisas ou objetos, como etiquetas RFID (Radio Frequency Identification), sensores, atuadores e telefones celulares, os quais, por meio de esquemas de endereçamento único, são capazes de interagir uns com os outros e cooperar com seus vizinhos para alcançar objetivos comuns. Miorandi et al. (2012) definem essas coisas ou dispositivos inteligentes como sendo entidades que possuem as seguintes características: Um conjunto mínimo de funcionalidades de comunicação, tais como a capacidade de ser descoberto e capacidade para aceitar requisições e produzir respostas; Possuir um identificador único dentro de seu contexto (por exemplo, Internet e Intranet); Estar associada a pelo menos um nome e um endereço. O nome é uma descrição legível do objeto podendo ser usada de forma intuitiva. O endereço é uma cadeia de caracteres legíveis, que pode ser usado para comunicar-se com o objeto; 19

20 Possuem algumas capacidades básicas de computação. Isto pode variar desde a capacidade de responder um sinal recebido (como etiquetas RFID passivas) até a capacidade de executar operações bastante complexas, incluindo a descoberta de serviço e as tarefas de gestão da rede; e Pode possuir meios para detectar os fenômenos físicos (por exemplo, temperatura e nível de radiação eletromagnética de luz) ou para desencadear ações que têm um efeito sobre a realidade física (por exemplo, acionar a luz de emergência quando a temperatura alcançar valores configurados). Segundo Miorandi et al. (2012), a IoT está emergindo como uma das principais tendências que moldam o desenvolvimento de tecnologias no setor das TIC (Tecnologia da Informação e Comunicação) em geral. É a mudança da Internet usada para interconexão de dispositivos de usuário final para a Internet usada para interligação de objetos físicos que comunicam entre si e/ou com seres humanos, a fim de oferecer um determinado serviço. O NIC (National Intelligence Council) dos EUA classifica a IoT como uma das seis tecnologias civis mais promissoras, com impactos potenciais sobre o futuro das pessoas e o poder dos EUA. O NIC prevê ainda que por volta de 2025 as coisas do cotidiano como embalagens de alimentos, móveis e documentos podem estar integrados através da IoT. Além disto, o NIC destaca também as oportunidades que surgirão, a partir de demandas populares combinadas com os avanços da tecnologia, as quais podem alavancar uma difusão generalizada da IoT, e que consequentemente, como a atual Internet, pode contribuir para o desenvolvimento econômico (NIC,2008). Os dispositivos inteligentes que fazem parte da IoT possuem restrições computacionais, como memória RAM (Random Access Memory) ou ROM (Read Only Memory) e poder de processamento e de energia (HUMMEN et al., 2013). Além disto, os mecanismos de comunicação de alguns dispositivos, na maioria das vezes sem fio, possuem baixa potência de transmissão e baixa taxa de dados (MAHALLE et al., 2010). Segundo Atzori, Iera e Morabito (2010) existe também uma grande quantidade de dispositivos heterogêneos que necessitam estar integrados, o que demanda uma preocupação com relação à interoperabilidade e integração dos mecanismos de comunicação. 20

21 De acordo com Atzori, Iera e Morabito (2010), a IoT pode ser orientada em três principais visões: visão orientada a Coisas, visão orientada à Internet e visão orientada a Semântica. Essas visões podem ser percebidas analisando o próprio termo Internet das Coisas, onde Internet remete a rede mundial de computadores e coisas remete à objetos genéricos. Quando as duas palavras são interligadas assumem um significado que rompe barreiras e introduz um nível de inovação ainda não percebido pelas TICs (Tecnologia de Informação e Comunicação). Semanticamente, de acordo com Atzori, Iera e Morabito (2010), a "Internet das Coisas" significa uma rede mundial de objetos interligados, endereçáveis, capazes de armazenar informações e com o poder de trocá-las, criando um ambiente mais desafiador. A Figura 1 detalha as três visões citadas pelos autores. Figura 1. Visões da Internet das Coisas Fonte: Atzori, Iera e Morabito (2010) 21

22 As três visões são descritas a seguir: Visão orientada a coisas: Considera as coisas como itens simples, por exemplo, etiquetas RFID, porém, não somente estas coisas simples. Trata de aspectos como endereçamento único e global (para acesso direto às coisas por meio da Internet) e da identificação unívoca das coisas. Um dos pontos relevantes dessa visão é que, para a efetiva concretização da IoT, constata-se a necessidade de aumentar a inteligência das coisas; Visão orientada à Internet: Responsável pelos protocolos necessários e como esses devem ser adaptados para permitir a troca de informações entre as coisas na IoT. Nessa visão, estão as pesquisas e padrões que tratam da adaptação do protocolo IP para o ambiente de IoT; e Visão orientada à Semântica: A quantidade de coisas conectadas à rede (Internet do Futuro) está destinada a ser muito alta. Nesta visão incluem questões como representação, armazenamento, busca e organização da grande quantidade de dados gerados na IoT. Neste contexto, as tecnologias semânticas deverão desempenhar um papel fundamental, pois serão usadas para modelagem das coisas, para extração do conhecimento dos dados, para o raciocínio sobre os dados gerados na IoT, para criação de ambientes de execução semânticos e para definição da arquitetura que irá acomodar os requisitos da IoT. Xiang e Li (2009) afirmam que objetos inteligentes conectados na IoT podem ser utilizados nos mais diversos ambientes, como plataformas de petróleo, mineração, ambientes florestais, túneis, oleodutos, etc. Além disso, em situações de perigo como terremotos, incêndios, inundações, zona de radiação e assim por diante. Nessas situações os objetos dessa infraestrutura poderiam descobrir um ao outro, aproveitar recursos um do outro para obter e utilizar dados entre si e entre o mundo, aumentando assim o alcance e a confiabilidade dos serviços. 22

23 2.3 WEB DAS COISAS Inspirado na ideia da IoT surgiu um paradigma de desenvolvimento de aplicações conhecido como a Web das Coisas (do inglês, Web of Things WoT). Esse conceito propõe a adoção de padrões Web a fim de oferecer plataforma comum para que diferentes tipos de dispositivos possam ser beneficiados pelas tecnologias existentes na Web, além de facilitar o desenvolvimento de aplicativos para tais dispositivos (DE FRANÇA et al., 2011). O objetivo da WoT é alavancar a visão de conectividade entre o mundo físico e o mundo digital, fazendo com que a Web atual passe a englobar também objetos do mundo físico, objetos esses os quais passarão a ser tratados da mesma forma que qualquer outro recurso Web (DE FRANÇA et al., 2011). Porém, muitos objetos estão conectados à Internet utilizando softwares e interfaces distintas, ou seja, desenvolvendo a interface de seus dispositivos sem respeitar um padrão em comum. Isso dificulta a integração de dados e serviços entre estes dispositivos (GUINARD, 2010). O uso das linguagens, protocolos e interfaces específicas de cada tipo de dispositivo faz com que o desenvolvimento de aplicativos para os mesmos seja uma tarefa complexa, pois é necessário que o desenvolvedor possua conhecimento especializado para cada dispositivo utilizado no projeto. Dessa forma, para facilitar o desenvolvimento de serviços no topo desses dispositivos, permitindo também que os serviços e os dados dos mesmos sejam compostos em diferentes aplicações, é necessário utilizar uma linguagem comum a diferentes dispositivos (GUINARD, 2010). A integração dos dispositivos à Web ocorre no nível de aplicação (GUINARD, 2010). Tal integração permite que ferramentas e técnicas da Web (por exemplo, navegadores, ferramentas de busca e sistemas de cache), linguagens da Web (por exemplo, HTML e JavaScript) e técnicas de interação com o usuário (por exemplo, navegação, vinculação e bookmarking) possam ser aplicadas para objetos do mundo real (GUINARD, 2010). Desta forma, de acordo com Guinard et al. (2009), a WoT possibilita a agregação de valor às informações providas pelos objetos físicos através da utilização de todos os recursos disponíveis na Web, o que por sua vez alavanca a concretização da visão da IoT. 23

24 A WoT preconiza que qualquer objeto físico possa enviar seus dados para pontos descentralizados e esses dados podem ser utilizados e reutilizados em diferentes aplicações (GUINARD, 2010). Segundo Guinard et al. (2009), a extensão da Web proposta pela WoT é realizada através da adoção do protocolo HTTP como protocolo de aplicação. Isso significa que esse protocolo deve ser utilizado como interface base para realizar toda a interação com os recursos disponíveis e não apenas para transportar passivamente as mensagens trocadas. Segundo De França et al. (2011), a realização da visão da WoT requer, portanto, que a Web atual seja estendida de modo que objetos do mundo real e dispositivos embarcados possam ser incorporados a ela de forma transparente. Essa extensão é obtida através da utilização do protocolo HTTP e dos princípios REST na criação de APIs (do inglês, Application Programming Interface), contudo, como a W3C atesta, existem dois grandes paradigmas de serviços web: Serviços Web REST também chamados de serviços web RESTful, (Fielding & Taylor 2002); e Serviços web arbitrários (comhecidos como WS*), (GROUP 2004). O objetivo principal dos serviços web RESTful é manipular os recursos da web usando um conjunto uniforme de operações sem estado. Já nos serviços web arbitrários, são utilizados um conjunto arbitrário de operações. Ambos os paradigmas podem ser adotados por Smart gateways. Guinard et al. (2009) descrevem duas maneiras de integrar os objetos na WoT: a primeira é embarcando um servidor web diretamente no dispositivo que se deseja integrar a web, e a segunda, para dispositivos com recursos limitados, propões o uso de um intermediador que interprete as requisições feitas pelos dispositivos. Segundo Zeng, Guo e Cheng (2011), este intermediador entre os dispositivos e a Web é chamado de Smart Gateway. A Figura 2 ilustra esse cenário, no qual alguns dispositivos se conectam diretamente à Web e outros que não possuem recursos suficientes precisam de um intermediador para interpretar suas requisições e enviá-las à Web. Segundo Guinard et AL (2009), os Smart Gateways tem como objetivo principal abstrair protocolos de comunicação ou APIs de dispositivos embarcados e disponibilizar suas funcionalidades por meio de uma API REST. 24

25 Figura 2. Integração Direta e Indireta na Web das Coisas Fonte: Wangham, Domenech e Mello (2013). Além disso, é possível disponibilizar através de middlewares, serviços web que facilitem a composição de recursos, criando assim aplicações de valor agregado denominadas mashups físicos (GUINARD et al., 2009). Guinard (2011) apresenta um modelo de arquitetura para implementação da Web das Coisas que possui quatro camadas: Acessibilidade ao dispositivo: Esta camada é onde é implementada a lógica de acesso ao dispositivo inteligente, tornando este dispositivo visível e disponível ao acesso pela aplicação. O propósito dessa camada é integrar as coisas com o ambiente Web tornandoas entidades reais neste ambiente, como por exemplo, as páginas Web; 25

26 Endereçamento: Nesta camada é definido o modelo de implementação para os serviços de busca e endereçamento para os dispositivos inteligentes. Essa camada define como encontrar os serviços providos pelos dispositivos e integrá-los dentro das aplicações; Compartilhamento: Nesta camada são definidas as políticas e como ocorrerá o compartilhamento dos recursos nos dispositivos inteligentes, considerando aspectos de segurança, facilidade de utilização, modelos de confiança, interoperabilidade e integração com aspectos de marketing e propagandas; e Composição: Aqui é definida a fronteira da WoT para com os desenvolvedores, facilitando a criação de aplicações Web compostas no topo dos dispositivos inteligentes e possibilitando um modelo mais flexível e customizável para o desenvolvimento dessas aplicações. 2.4 REST Segundo Mayer (2010), uma abordagem que está sendo bastante utilizada juntamente com protocolo HTTP na criação de sistemas distribuídos na Web é o estilo arquitetural REST (do inglês, REpresentational State Transfer). Esse estilo arquitetural pode ser empregado para desenvolver sistemas que seguem uma arquitetura orientada a recursos (ROA, do inglês Resource Oriented Architecture) (MAYER, 2010). O REST define um conjunto de princípios que ao serem adotados dão origem a sistemas RESTful. Segundo Guinard et al. (2009) os sistemas RESTful são menos acoplados, mais leves, eficientes e flexíveis do que os sistemas Web baseados em serviços web arbitrários (WS-*) e podem ser facilmente reutilizados. Os princípios REST podem ser mapeados nos métodos básicos do protocolo HTTP (GET, POST, PUT e DELETE) para criar sistemas CRUD (Create, Read, Update, Delete) de uma aplicação RESTful. Os recursos dos sistemas RESTful são identificados e encapsulados por uma URI. Segundo Fielding e Taylor (2002) a característica central que distingue o estilo de arquitetura REST de outros estilos é sua ênfase em uma interface uniforme entre os componentes, no qual os recursos devem estar disponíveis com uma semântica de interação bem definida, como por exemplo, o protocolo HTTP. Os métodos das requisições HTTP (GET, PUT, DELETE ou POST) são utilizados para indicar ao provedor do recurso a ação que deve ser realizada. Assim, cada método representa uma ação específica sobre o recurso, conforme descrito a seguir: 26

27 GET: é utilizado para recuperar a representação do recurso; PUT: é utilizado para atualizar o estado de um recurso existente ou utilizado para criar um recurso por meio de um identificador fornecido; DELETE: é utilizado para remover um recurso; e POST: é utilizado para criar um novo recurso. Fielding e Taylor (2002) afirmam que para obter uma interface REST uniforme é necessário seguir quatro regras: Identificação de recursos: A Web se baseia no mecanismo de URI para identificar seus recursos e assim links para estes recursos podem ser estabelecidos por meio de um esquema de identificação conhecido; Manipulação de recursos por meio de representações: A representação consiste em dados e metadados que descrevem estes dados. Dependendo dos dados de controle da mensagem, uma determinada representação pode indicar o estado atual do recurso solicitado, o estado desejado para o recurso solicitado, ou o valor de algum outro recurso; Mensagem auto-descritiva: Todas as informações necessárias para processar uma solicitação em um recurso estão contidas na própria solicitação permitindo assim que os serviços não tenham monitoração de estado; e Hipermídia como o motor do estado do aplicativo: os clientes dos serviços RESTful são condicionados a utilizar links para encontrar os serviços e interagir com os recursos providos por estes. Isto permite a um cliente explorar um serviço sem a necessidade de conhecer o formato do mesmo. Além disso, o cliente pode utilizar uma padronização de identificadores e processos bem definidos para descoberta de tipos e mídias oferecidos pelos serviços. A utilização do protocolo HTTP como protocolo de aplicação admite que os recursos possuam várias representações e permite que os clientes selecionem, dentre as representações disponíveis, aquela que for mais adequada às necessidades da aplicação (SANDOVAL, 2009). 27

28 Segundo Guinard et al. (2009), tais características fazem do estilo REST a melhor opção para construção de APIs Web para acesso a objetos do mundo real. De acordo com Dal Moro, Dorneles e Rebonatto (2011), o REST possui a vantagem de que suas mensagens são transportadas diretamente através do protocolo HTTP, diferente dos serviços WS-*, que trabalham com envelopes SOAP (Simple Object Access Protocol) envolvidos por pacotes HTTP. Com isso o desempenho também é afetado, pois os pacotes SOAP devem ser interpretados antes de os dados serem utilizados. O Quadro 1 apresenta uma comparação entre serviços WS-* e serviços RESTful. Quadro 1 Comparação entre serviços WS-* e serviços RESTful. Fator de Comparação Web services WS-* Web services REST WS lista Tamanho produtos por 584 bytes 399 bytes de Pacote categoria HTTP WS lista 1567 bytes 1412 bytes produtos WS lista fabricantes 572 bytes 431 bytes WS lista categorias 864 bytes 747 bytes Armazenamento de estados Permite Stateless Abordagem de design Baseado em operações ou Baseado em recursos ou verbos substantivos (URIs) Interface Interface não uniforme Interface uniforme GET, POST, UPDATE, DELETE. Code on demand (COD) Não é voltado a COD Permite que o código originado da requisição ao servidor seja executado no lado do cliente. Representação de dados XML (extensible Markup Language) Aberto Descritor WSDL (Web Service Description Language) WSDL/WADL/Nenhum Fonte: Dal Moro, Dorneles e Rebonatto (2011) Representação dos Recursos com JSON JSON (JavaScript Object Notation) é um formato de troca de dados de fácil leitura, escrita e de fácil análise e geração para máquinas, além disso, JSON é um formato de texto que é 28

29 completamente independente de idioma e usa convenções que são familiares aos programadores (JSON, 2014). JSON está constituído em duas estruturas: Uma coleção de pares nome e valor. Em várias linguagens, isto é caracterizado como um object, record, struct, dicionário, hash table, keyed list, ou arrays associativas;e Uma lista ordenada de valores. Na maioria das linguagens, isto é caracterizado como uma array, vetor, lista ou sequência. Estas são estruturas de dados universais. Virtualmente todas as linguagens de programação modernas as suportam. É aceitável que um formato de troca de dados que seja independente de linguagem de programação se baseie nestas estruturas (JSON, 2014). No caso dos dispositivos inteligentes, sugere-se a utilização do JSON uma vez que é um padrão mais leve se comparado ao XML, principalmente levando em consideração o tamanho das mensagens e o tempo de validação das mesmas. Nurseitov et al., (2009) afirmam que JSON é mais rápido e utiliza menos recursos computacionais que XML (extensible Markup Language) quando utilizados para troca de mensagens. Além disto, este padrão é nativamente processado pelo JavaScript, o que o torna ideal para integração com Web mashups e, consequentemente, para a criação dos mashups físicos (GUINARD, 2011). 2.5 PLATAFORMA DE HARDWARE ABERTO Existem diversos hardwares que podem ser utilizados para embarcar serviços web RESTful, cada qual com suas vantagens. A escolha do hardware que servirá como base para o desenvolvimento dos serviços deve atender alguns requisitos mínimos como suporte para software open source, interface de rede e armazenamento interno. Pesquisa realizada pela The Linux Foundation em conjunto com LinuxGismos.com elenca as 10 principais plataformas de hardware aberto utilizados no desenvolvimento de aplicações com hardware embarcado (BROWN, 2014). Estes estão ilustrados na Figura 3. Esta classificação partiu do total de 32 hardwares e serviu como ponto de partida para a escolha da plataforma de hardware 29

30 aberto que será utilizado neste trabalho. A pesquisa questionava quais características listadas à seguir eram levadas em consideração na hora da escolha do hardware a ser adquirido. Suporte para software open source; Suporte da comunidade; Informações do hardware (documentação); Interface de rede wireless; Baixo custo; Interfaces de entrada e saída, tais como USB e serial; Baixo consumo de energia; Armazenamento no dispositivo; Performance gráfica; Controladores de entrada e saída; e Modularidade. Figura 3. Os 10 principais hardwares Fonte: Bronw (2014) A pesquisa também apontou o objetivo para o qual o hardware era adquirido. A Figura 4 mostra esta classificação. 30

31 Figura 4. Principal uso do hardware adquirido Fonte: Bronw (2014) O Quadro 2 apresenta um detalhamento técnico sobre os 10 principais hardwares escolhidos na pesquisa e, apesar de alguns possuírem algumas configurações de hardwares mais performáticas que outras, todos são capazes de embarcar um servidor Web. Um outro ponto que influencia na escolha do hardware é o suporte a sistemas open source, característica que está presente em todos os candidatos. Um ponto importante não tratado nesta pesquisa é a questão de ser uma plataforma de hardware aberto. Segundo Stallman (1999), ideia principal de hardware aberto, é que deve ser livre, no sentido de que esteja livremente disponíveis seus, esquemas, data-sheets e drivers para especificação do hardware, a fim de permitir a criação e a melhoria do mesmo. Neste trabalho, escolheu-se o Beagle Bone Black por este ser uma plataforma de hardware aberto que atende todos os requisitos de projeto da solução proposta e pela disponibilidade na UNIVALI de kits dessa placa para empréstimo. 31

32 Quadro 2. Comparação entre os 10 hardwares selecionados Hardware CPU RAM Armazenamento USB Ethernet Wi-Fi Bluetooth Hardware Custo $ aberto Raspberry Pi Model B MHz 512 MB Não 2X2.0 10/100 Não Não Não $ Beagle Bone Black ARM GHz 512 MB Interno: 2GB Flash 1X2.0 10/100 Não Não Sim $54.95 Odroid-U3 4x ARM 2 GB Módulo Emmc 3X2.0 10/100 Não Não Sim $65.00 GHz CubieTruck Cortext-A7 Dual-Core 2GB Interno: 8GB Flash Externo: microsd 2X2.0 10/100/1000 Sim Sim Sim $99.00 Banana Pi 2x ARM 1 GB Externo: SD 2x2.0 10/100/1000 Não Não Sim $29.99 GHz Parallella Dual-core ARM A9 1GB Externo: MicroSD 2X2.0 10/100/ Sim $ Cubieboard2 2x ARM 1 GB Interno: 4GB 1X2.0 10/100 Não Não Sim $64.99 GHz A10-OlinuXino-Lime A10 1GHz Cortex-A8 512 MB Interno:4GB Flash 2x2.0 10/ Sim $40.90 Externo: MicroSD Galileo Intel Quark X MB Interno: 8MB Flash 2x2.0 10/100 Não Não Sim $67.00 single core Externo: SD Card Udoo Quad 2x, or 4x ARM Cortex-A9 1GB Não 1X2.0 10/100/1000 Sim Não Sim GHz 32

33 3 TRABALHOS RELACIONADOS Neste capítulo, são descritos alguns trabalhos que possuem objetivos semelhantes aos deste trabalho. Ao final do capitulo os trabalhos relacionados são comparados considerando características como, (i) o provimento de uma API REST para disponibilizar acesso aos estados da máquina monitorada, (ii) a comunicação entre máquinas (M2M - Machine to Machine), (iii) o uso do ambiente Web, (iv) a possibilidade do controle remoto das máquinas industriais, (v) o uso da nuvem e (vi) uso de Smart Gateway na resolução de restrições de conectividade. 3.1 O é um projeto da União Européia liderado pela Siemens. O projeto tem como foco o domínio das tecnologias da Internet das Coisas em ambientes industriais e de automação para desenvolver o conceito de plug&work. A ideia deste conceito é tornar os equipamentos industriais capazes de se configurar de forma automática. O dispositivo é conectado em qualquer lugar na rede e a rede se encarrega do resto, até que o dispositivo se torne operacional, podendo cooperar com os outros dispositivos, se adaptar a mudanças como novas demandas e possíveis falhas 2010). A principal motivação do desenvolvimento do é o histórico das dificuldades que os projetistas de sistemas de automação industrial sempre enfrentaram durante a configuração da rede de comunicação e de subsistemas de segurança. Este esforço caro e muitas vezes manual é fundamental, a fim de evitar falhas que podem levar a interrupções de produção dispendiosas ou mau funcionamento que podem colocar em risco os seres humanos envolvidos. Dentre as tecnologias desenvolvidas destacam-se Imtiaz et al. (2013): O serviço de diretório unificado, que permite aos dispositivos descobrir e acessar outros dispositivos/serviços da rede por meio de uma API RESTful, viabilizando também seu monitoramento remoto; O serviço de notificação de eventos, que é um middleware que atua como um conector entre geradores e consumidores de eventos, permitindo a troca de informações eficiente entre os dispositivos; 33

34 O Processamento de Eventos Complexos, o qual permite o processamento inteligente de mensagens para suportar o gerenciamento automatizado da planta industrial (dados monitorados disparam processos automatizados de atuação). Contudo, apesar de ser focado em ambientes industriais e permitir a comunicação M2M, o projeto não aborda a publicação de dados dos dispositivos em uma plataforma na Nuvem por meio de Smart Gateways. 3.2 WEB BASED INTERFACE TO SCADA SYSTEM A proposta deste trabalho é a utilização da Web como meio de acesso aos dados disponibilizados por sistemas SCADA (Supervisory Control and Data Acquisition). A motivação surgiu de um cenário em que usuário trabalhando em diferentes departamentos de uma companhia elétrica precisa obter os dados de um sistema SCADA. O objetivo é conectar a intranet da empresa ao sistema SCADA e dar acesso fácil aos usuários em tempo real e aos dados históricos através de uma única solução por meio de um cliente web (ZECEVIC, 1998). A Figura 5 ilustra as três camadas que compõe o fluxo da solução proposta. A solução possibilita que usuários, por meio de um cliente web realizem uma requisição de dados somente do SCADA. Essa requisição passa pelo ambiente de intranet da empresa e, ao chegar ao servidor de intranet, essa requisição é processada para capturar os dados solicitados e, processar e criar uma resposta, a qual é enviada ao cliente contendo os dados do sistema SCADA que foi solicitado, dessa forma, o sistema permite apenas que sejam capturados dados e não prevê o controle das máquinas que estão sendo monitoradas. 34

35 Figura 5. Arquitetura da aplicação em três camadas. Fonte: Zecevic (1998). 3.3 PROPOSTA DE ARQUITETURA ORIENTADA A RECURSOS PARA SCADA NA WEB Este trabalho descreve uma proposta de arquitetura de software para aplicações típicas de sistemas SCADA, utilizando a Web como plataforma. Segundo Polônia (2011), o objetivo é mostrar como os requisitos característicos de aplicações SCADA podem ser incorporados em uma arquitetura condizente com os princípios arquiteturais que fundamentam a Web, dado que as arquiteturas comumente propostas para SCADA, baseadas em RPC (Remote Procedure Call), apresentam problemas de forte acoplamento, manutenção de estado e interfaces especializadas, que dificultam uma integração plena com a Web para tanto, uma arquitetura foi projetada utilizando como cenário uma CFM (Célula Flexível de Manufatura), ambiente característico de um sistema SCADA, uma Arquitetura Orientada a Recursos que englobou as funcionalidades geralmente oferecidas por aplicações SCADA: Aquisição de dados; Controle em nível de supervisão; Configurações; 35

36 Históricos; Alarmes; e IHMs (Interface Homem-Máquina). Este cenário, utilizando as tecnologias da Web (HTTP, URI e tipos de mídia) de acordo com seus princípios de arquitetura configura uma solução muito semelhante com a proposta deste trabalho, porém, apesar de possível, o autor não deixa clara a integração M2M e a solução se restringe aos sistemas tipo SCADA, não permitindo a comunicação entre máquinas heterogêneas, além disso, a solução não dispõe de uma integração com a Nuvem, contudo, é importante destacar o interesse do autor em sua conclusão por um estudo aprofundado sobre Web das Coisas. 3.4 AN INTERNET BASED DITRIBUTED CONTROL SYSTEM: A CASE STUDY OF OIL REFINERIES Neste trabalho é proposto um sistema distribuído com base na internet para o controle e monitoramento em tempo real de plantas industriais. Utilizando a web de cada DSC (Data System Control), conectando os DSC s a um servidor WEB central e daí então possibilitando o acesso via um cliente Applet incorporado à uma página Web com intuito de interpretar os dados vindos do servidor e atualizar o HMI (Human Machine Interface) correspondente, o qual se encarrega de atualizar os sensores que sofreram mudanças. Devido à utilização de Applets a proposta não possibilita a comunicação M2M, além disto, como o intuito é realizar o monitoramento em tempo real, não há a persistência dos dados para análise posterior. A Figura 6 apresenta uma visão geral sobre a arquitetura que é proposta para o desenvolvimento desse trabalho. 36

37 Figura 6. Cliente/ Servidor em três camadas Fonte: Mahmood e Al-Naima (2011) 3.5 ANÁLISE COMPARATIVA Os trabalhos relacionados apresentados nesse capítulo possuem características semelhantes à proposta deste trabalho, as quais são destacadas no Quadro 3. Quadro 3. Comparativo dos trabalhos relacionados com o trabalho proposto. Zecevic (1998) Polônia (2011) Mahmood e Al-Naima (2011) 2013 Este Trababalho API REST Não Sim Não Sim Sim M2M Não - Não Sim Sim Ambiente Web Sim Sim Sim Sim Sim Controle Remoto Não Sim Sim Sim Sim Uso de Nuvem Não Não Não Não Sim Uso de Smart Não Sim Não Não Sim 37

38 Gateway Nenhum dos trabalhos relacionados prevê o uso de Nuvem para a persistência dos dados monitorados e o provimento de aplicações web que possibilitem o controle remoto de dispositivos em um ambiente industrial. Deste modo, o diferencial deste trabalho é possuir todas as características, utilizando Smart Gateway para contornar as restrições de conectividade e realizar a comunicação entre máquinas heterogêneas, disponibilizando seus estados na Web via API Rest, a qual possui dentre suas premissas a possibilidade de atualização transparente dos dados, o que viabiliza o controle remoto dessas máquinas, além disso, o uso da Nuvem como ambiente de persistência possibilita que os dados sejam analisados posteriormente. 38

39 4 DESENVOLVIMENTO Este capítulo detalha as etapas do desenvolvimento deste trabalho. Primeiramente, é apresentado um levantamento inicial e uma visão geral dos componentes envolvidos, seguida pela análise de requisitos e pela modelagem do sistema, com os casos de uso e diagramas de sequência que auxiliaram na concepção da solução. Em seguida, é apresentada uma avaliação do desenvolvimento que contempla requisitos funcionais, não funcionais e de desempenho. Por fim, são apresentadas as tecnologias utilizadas no processo de desenvolvimento. 4.1 LEVANTAMENTO INICIAL Esta etapa do trabalho teve como objetivo entender quais os reais problemas enfrentados pela equipe de suporte da Empresa X, isto para que fosse possível identificar necessidades e destacar os requisitos primordiais que o sistema deveria atender, nesta etapa foi obtido o entendimento do funcionamento da máquina industrial. Para tanto foram realizadas reuniões com a equipe de engenharia e com a diretoria da empresa além de visitas à fábrica com o intuito de entender quais as necessidades mais latentes com relação ao monitoramento das máquinas. Como resultado dessas interações, foi adquirido conhecimento para gerar alguns artefatos essenciais para o desenvolvimento da solução proposta entre eles estão o (i) diagrama de máquina de estados, (ii) diagrama de classe, (iii) análise de requisitos e (iv) casos de teste. 4.2 VISÃO GERAL DA SOLUÇÃO PROPOSTA A Figura 7 apresenta uma visão geral do sistema que envolve o Smart Gateway, uma máquina industrial e uma aplicação de recebimento de dados que visa persistir os dados em uma nuvem computacional. 39

40 Figura 7. Visão geral do uso do Smart Gateway no ambiente industrial A solução proposta possui dois principais componentes: uma aplicação (chamada Monitor) que monitora logs de uma máquina industrial e o Smart Gateway, que possui uma API RESTful que disponibiliza, por meio de serviços web, os recursos da máquina industrial monitorada. A máquina industrial em questão possui um sistema SCADA (Supervisory Control and Data Acquisition), o qual atualiza e disponibiliza um arquivo de log com informações dos estados da máquina (arquivo texto). Deste modo, quando a máquina está executando alguma tarefa, esse arquivo é constantemente atualizado com informações de timestamp e tipo de operação que a máquina está realizando. Os logs indicam quando os processos da máquina ocorrem, como por exemplo, o corte de um tecido. A aplicação Monitor consulta constantemente o arquivo de log que é atualizado pelo sistema SCADA. Sempre que o Monitor detecta uma alteração no arquivo este captura a atualização. Por ser um cliente REST do Smart Gateway, sempre que o Monitor captura estas atualizações do arquivo de log este as mantém em memória e as envia quando estabelece uma conexão com o Smart Gateway. Portanto, a aplicação Monitor é um meio de enviar as atualizações dos estados da máquina para o Smart Gateway e foi desenvolvida para adequar o Smart Gateway proposto ao cenário disponibilizado pela Empresa X. Apesar da aplicação Monitor ter sido 40

41 desenvolvida para coletar as atualizações do arquivo de log gerado pelo SCADA para o envio ao Smart Gateway, também é possível que ela colete dados de outra fonte de dados e as envie ao monitor utilizando o mesmo padrão de mensagens, bastando apenas que a máquina monitorada disponibilize tal meio. O Smart Gateway é composto por um servidor web embarcado, o qual possui uma aplicação dividida basicamente em duas camadas, (i) um camada que representa virtualmente a máquina que esta sendo monitorada e uma camada que (ii) implementa a arquitetura REST, a camada (i) tem seus estados sendo constantemente atualizados e a camada (ii) disponibiliza o acesso à recursos que permitem o acesso a dados desta máquina representada virtualmente, como a camada também (ii) implementa um cliente REST, este envia os estados desta máquina virtual à um serviço em Nuvem periodicamente. Os drivers proprietários dão mais flexibilidade à solução, possibilitando por exemplo que haja comunicação direta com o Smart Gateway através de protocolos como I2C e SPI. Todos os elementos citados acima foram embarcados em uma plataforma de hardware aberto, com o principal objetivo de representar virtualmente uma máquina industrial. A aplicação executada dentro do servidor web mantém os estados da máquina, atualizando-os por meio de mensagens que são enviadas pela aplicação Monitor. Para disponibilizar estas propriedades, bem como os estados de sensores e atuadores, de modo que dispositivos e usuários possam acessá-las, o Smart Gateway provê, através do servidor web, uma API RESTful. Desta forma, qualquer dispositivo que possua acesso à Internet e autorização poderá consumir os recursos disponibilizados no formato JSON. Além disto, o Smart Gateway também é um cliente REST, o que permite que o próprio Smart Gateway, utilizando seu histórico de atualizações, envie-as periodicamente para outros serviços que estejam configurados, como serviços em Nuvem e outros Smart Gateways. 4.3 ANÁLISE DE REQUISITOS De modo a apresentar o funcionamento do sistema, as próximas seções mostram, respectivamente, os requisitos funcionais e não funcionais que delimitam as regras de negócio do sistema. 41

42 4.3.1 Análise de Requisitos A seguir encontram-se listados os requisitos funcionais dos dois principais componentes abordados neste trabalho: O Smart Gateway e a Aplicação Monitor. Requisitos funcionais do Smart Gateway RF01: O sistema deve prover uma API que permita o acesso aos recursos da máquina monitorada; RF02: O sistema deve prover um serviço web que permita a configuração de serviços externos que receberão os dados da máquina industrial; RF03: O sistema deve prover um serviço web que permita o recebimento de atualizações dos estados da máquina monitorada através das mensagens de log; RF04: O sistema deve realizar a interpretação de mensagens de log e atualizar os estados e propriedades que representam sensores e atuadores; RF05: O sistema deve manter um histórico temporário dos estados da máquina para posterior envio à Nuvem; e RF06: O sistema deve enviar periodicamente os estados da máquina para os serviços externos configurados. Requisitos Funcionais da Aplicação Monitor RF01: O sistema deve permitir ao usuário inserir a URL de um Smart Gateway; RF02: O sistema deve permitir ao usuário alterar a URL do Smart Gateway; RF03: O sistema deve permitir ao usuário inserir o caminho do arquivo de log da máquina monitorada; RF04: O sistema deve permitir ao usuário alterar o caminho do arquivo de log da máquina monitorada; RF05: O sistema deve permitir ao usuário iniciar e parar o monitoramento do arquivo de log; e RF06: O sistema deve enviar as alterações detectadas no arquivo de log para o Smart Gateway. Requisitos não funcionais do Smart Gateway RNF01: O sistema deve ser implementado utilizando a linguagem de programação Java 7; 42

43 RNF02: O sistema deve ser desenvolvido aplicando os conceitos da arquitetura REST; RNF03: O sistema deve disponibilizar os recursos da máquina no formato JSON e XML; RNF04: O sistema deve reenviar as atualizações para os serviços externos configurados em caso de falha de comunicação; e RNF05: O sistema deve ser desenvolvido sobre a plataforma Oracle Java SE Embedded. Requisitos não funcionais da Aplicação Monitor RNF01: O sistema deve utilizar soluções de tecnologias e plataformas para desenvolvimento open source; e RNF02: O sistema deve reenviar as atualizações do arquivo de log em caso de falha na comunicação com o Smart Gateway. 4.4 MODELAGEM DO SISTEMA Nesta seção são apresentadas as informações referentes à modelagem do sistema, bem como os casos de uso e os diagramas de sequência, os diagramas de classe bem como uma descrição das principais classes encontram-se no Apêndice A. A Figura 8 apresenta o diagrama de casos de uso da aplicação Monitor. 43

44 Figura 8. Diagrama de Casos de Uso da aplicação Monitor Nos quadros a seguir são apresentados os casos de uso expandidos. Nesta expansão encontram-se detalhadas as seguintes informações: descrição, atores, pré e pós-condições, fluxos principal e alternativos e exceções. Quadro 4. Detalhamento do Caso de Uso UC01. Inserir URL do Smart Gateway Nome do caso de uso Descrição Atores Pré-condições Fluxo principal Fluxo alternativo e exceções Pós-condições UC01. Inserir URL do Smart Gateway O Usuário pode inserir o endereço URL do Smart Gateway que receberá as atualizações detectadas pela aplicação Monitor. Usuário Aplicação Monitor iniciada 1. O usuário clica com o botão direito no ícone da aplicação Monitor; 2. O sistema apresenta um menu; 3. O usuário clica na opção Configurar Smart Gateway ; 4. O sistema apresenta um campo de entrada; 5. O usuário adiciona a URL do Smart Gateway e clica no botão Salvar. 1. Caso o usuário insira uma URL inválida sistema apresenta uma mensagem de URL Inválida. N/A 44

Consumindo um Web Service através de uma Aplicação Comercial em Android. Alex Malmann Becker www.alex.porthal.com.br alex@porthal.com.

Consumindo um Web Service através de uma Aplicação Comercial em Android. Alex Malmann Becker www.alex.porthal.com.br alex@porthal.com. Consumindo um Web Service através de uma Aplicação Comercial em Android Alex Malmann Becker www.alex.porthal.com.br alex@porthal.com.br 08/2014 Agenda Introdução Conceitos Web Service Por que utilizar

Leia mais

2 Conceitos relativos a Web services e sua composição

2 Conceitos relativos a Web services e sua composição 15 2 Conceitos relativos a Web services e sua composição A necessidade de flexibilidade na arquitetura das aplicações levou ao modelo orientado a objetos, onde os processos de negócios podem ser representados

Leia mais

Curso Tecnológico de Redes de Computadores 5º período Disciplina: Tecnologia WEB Professor: José Maurício S. Pinheiro V. 2009-2

Curso Tecnológico de Redes de Computadores 5º período Disciplina: Tecnologia WEB Professor: José Maurício S. Pinheiro V. 2009-2 Curso Tecnológico de Redes de Computadores 5º período Disciplina: Tecnologia WEB Professor: José Maurício S. Pinheiro V. 2009-2 Aula 2 Computação em Nuvem Desafios e Oportunidades A Computação em Nuvem

Leia mais

Service Oriented Architecture (SOA)

Service Oriented Architecture (SOA) São Paulo, 2011 Universidade Paulista (UNIP) Service Oriented Architecture (SOA) Prof. MSc. Vladimir Camelo vladimir.professor@gmail.com 04/09/11 vladimir.professor@gmail.com 1 04/09/11 vladimir.professor@gmail.com

Leia mais

Service Oriented Architecture SOA

Service Oriented Architecture SOA Service Oriented Architecture SOA Arquitetura orientada aos serviços Definição: Arquitetura de sistemas distribuídos em que a funcionalidade é disponibilizada sob a forma de serviços (bem definidos e independentes)

Leia mais

Intranets. FERNANDO ALBUQUERQUE Departamento de Ciência da Computação Universidade de Brasília 1.INTRODUÇÃO

Intranets. FERNANDO ALBUQUERQUE Departamento de Ciência da Computação Universidade de Brasília 1.INTRODUÇÃO Intranets FERNANDO ALBUQUERQUE Departamento de Ciência da Computação Universidade de Brasília 1.INTRODUÇÃO As intranets são redes internas às organizações que usam as tecnologias utilizadas na rede mundial

Leia mais

REST Um Estilo de Arquitetura de Sistemas Distribuídos

REST Um Estilo de Arquitetura de Sistemas Distribuídos REST Um Estilo de Arquitetura de Sistemas Distribuídos Márcio Alves de Araújo¹, Mauro Antônio Correia Júnior¹ 1 Faculdade de Computação Universidade Federal de Uberlândia (UFU) Monte Carmelo MG Brasil

Leia mais

Tipos de Sistemas Distribuídos (Cluster e Grid)

Tipos de Sistemas Distribuídos (Cluster e Grid) Tipos de Sistemas Distribuídos (Cluster e Grid) Sistemas Distribuídos Mauro Lopes Carvalho Silva Professor EBTT DAI Departamento de Informática Campus Monte Castelo Instituto Federal de Educação Ciência

Leia mais

UFG - Instituto de Informática

UFG - Instituto de Informática UFG - Instituto de Informática Especialização em Desenvolvimento de Aplicações Web com Interfaces Ricas EJB 3.0 Prof.: Fabrízzio A A M N Soares professor.fabrizzio@gmail.com Aula 13 Web Services Web Services

Leia mais

1 http://www.google.com

1 http://www.google.com 1 Introdução A computação em grade se caracteriza pelo uso de recursos computacionais distribuídos em várias redes. Os diversos nós contribuem com capacidade de processamento, armazenamento de dados ou

Leia mais

COMPARANDO APLICAÇÃO WEB SERVICE REST E SOAP

COMPARANDO APLICAÇÃO WEB SERVICE REST E SOAP COMPARANDO APLICAÇÃO WEB SERVICE REST E SOAP Cleber de F. Ferreira¹, Roberto Dias Mota¹. ¹Universidade Paranaense (Unipar) Paranavaí PR Brasil cleberferreirasi@hotmail.com, motaroberto@hotmail.com Resumo.

Leia mais

3 Serviços na Web (Web services)

3 Serviços na Web (Web services) 3 Serviços na Web (Web services) 3.1. Visão Geral Com base na definição do Word Wide Web Consortium (W3C), web services são aplicações autocontidas, que possuem interface baseadas em XML e que descrevem

Leia mais

Integração de sistemas utilizando Web Services do tipo REST

Integração de sistemas utilizando Web Services do tipo REST Integração de sistemas utilizando Web Services do tipo REST Jhonatan Wilson Aparecido Garbo, Jaime Willian Dias Universidade Paranaense (Unipar) Paranavaí PR Brasil jhowgarbo@gmail.com jaime@unipar.br

Leia mais

INFRAESTRUTURA DE TI E TECNOLOGIAS EMERGENTES

INFRAESTRUTURA DE TI E TECNOLOGIAS EMERGENTES Sistema de Informação e Tecnologia FEQ 0411 Prof Luciel Henrique de Oliveira luciel@uol.com.br Capítulo 5 INFRAESTRUTURA DE TI E TECNOLOGIAS EMERGENTES PRADO, Edmir P.V.; SOUZA, Cesar A. de. (org). Fundamentos

Leia mais

AUTOMAÇÃO SUPERVISÃO E CONTROLE E A APLICAÇÃO DA ARQUITETURA ORIENTADA A SERVIÇOS SOA.

AUTOMAÇÃO SUPERVISÃO E CONTROLE E A APLICAÇÃO DA ARQUITETURA ORIENTADA A SERVIÇOS SOA. AUTOMAÇÃO SUPERVISÃO E CONTROLE E A APLICAÇÃO DA ARQUITETURA ORIENTADA A SERVIÇOS SOA. Uma significativa parcela dos sistemas de automação de grandes empresas são legados de tecnologias de gerações anteriores,

Leia mais

Curso de Aprendizado Industrial Desenvolvedor WEB

Curso de Aprendizado Industrial Desenvolvedor WEB Curso de Aprendizado Industrial Desenvolvedor WEB Disciplina: Programação Orientada a Objetos II Professor: Cheli dos S. Mendes da Costa Modelo Cliente- Servidor Modelo de Aplicação Cliente-servidor Os

Leia mais

DIGIMAN. WTB Tecnologia 2009. www.wtb.com.br

DIGIMAN. WTB Tecnologia 2009. www.wtb.com.br DIGIMAN MANDADO JUDICIAL ELETRÔNICO Arquitetura WTB Tecnologia 2009 www.wtb.com.br Arquitetura de Software O sistema DIGIMAN é implementado em três camadas (apresentação, regras de negócio e armazém de

Leia mais

APOSTILA DE REDES DE COMPUTADORES PARTE - III

APOSTILA DE REDES DE COMPUTADORES PARTE - III APOSTILA DE REDES DE COMPUTADORES PARTE - III 1 REDE DE COMPUTADORES III 1. Introdução MODELO OSI ISO (International Organization for Standardization) foi uma das primeiras organizações a definir formalmente

Leia mais

Notas da Aula 15 - Fundamentos de Sistemas Operacionais

Notas da Aula 15 - Fundamentos de Sistemas Operacionais Notas da Aula 15 - Fundamentos de Sistemas Operacionais 1. Software de Entrada e Saída: Visão Geral Uma das tarefas do Sistema Operacional é simplificar o acesso aos dispositivos de hardware pelos processos

Leia mais

milenaresende@fimes.edu.br

milenaresende@fimes.edu.br Fundação Integrada Municipal de Ensino Superior Sistemas de Informação A Internet, Intranets e Extranets milenaresende@fimes.edu.br Uso e funcionamento da Internet Os dados da pesquisa de TIC reforçam

Leia mais

acoplamento Exprime o grau de conexão entre os módulos; os módulos de um software devemapresentar um baixo coeficiente de acoplamento.

acoplamento Exprime o grau de conexão entre os módulos; os módulos de um software devemapresentar um baixo coeficiente de acoplamento. SOA Arquitetura Orientada a Serviços Conceitos e Aplicações Prof. MSc. Edilberto Silva edilms@yahoo.com/ http://edilms.eti.br Gestão de TI Conceitode SOA SOA - Service OrientedArchitecture (Arquitetura

Leia mais

Boas Práticas de Desenvolvimento Seguro

Boas Práticas de Desenvolvimento Seguro Boas Práticas de Desenvolvimento Seguro Julho / 2.012 Histórico de Revisões Data Versão Descrição Autor 29/07/2012 1.0 Versão inicial Ricardo Kiyoshi Página 2 de 11 Conteúdo 1. SEGURANÇA DA INFORMAÇÃO

Leia mais

7 Utilização do Mobile Social Gateway

7 Utilização do Mobile Social Gateway 7 Utilização do Mobile Social Gateway Existem três atores envolvidos na arquitetura do Mobile Social Gateway: desenvolvedor do framework MoSoGw: é o responsável pelo desenvolvimento de novas features,

Leia mais

11/3/2009. Software. Sistemas de Informação. Software. Software. A Construção de um programa de computador. A Construção de um programa de computador

11/3/2009. Software. Sistemas de Informação. Software. Software. A Construção de um programa de computador. A Construção de um programa de computador Sistemas de Informação Prof. Anderson D. Moura Um programa de computador é composto por uma seqüência de instruções, que é interpretada e executada por um processador ou por uma máquina virtual. Em um

Leia mais

IW10. Rev.: 02. Especificações Técnicas

IW10. Rev.: 02. Especificações Técnicas IW10 Rev.: 02 Especificações Técnicas Sumário 1. INTRODUÇÃO... 1 2. COMPOSIÇÃO DO IW10... 2 2.1 Placa Principal... 2 2.2 Módulos de Sensores... 5 3. APLICAÇÕES... 6 3.1 Monitoramento Local... 7 3.2 Monitoramento

Leia mais

SOA Introdução. SOA Visão Departamental das Organizações

SOA Introdução. SOA Visão Departamental das Organizações 1 Introdução A Organização é a forma pela qual nós coordenamos nossos recursos de todos os tipos para realizar o trabalho que nos propusemos a fazer. A estrutura de nossas organizações manteve-se basicamente

Leia mais

REST. Caio Nakashima caio.nakashima@mds.gov.br caionakashima@gmail.com

REST. Caio Nakashima caio.nakashima@mds.gov.br caionakashima@gmail.com REST Caio Nakashima caio.nakashima@mds.gov.br caionakashima@gmail.com 1 RESTful REpresentation State Transfer Estilo de arquitetura de software para sistemas distribuídos Termo proposto por Roy Fielding

Leia mais

5 Mecanismo de seleção de componentes

5 Mecanismo de seleção de componentes Mecanismo de seleção de componentes 50 5 Mecanismo de seleção de componentes O Kaluana Original, apresentado em detalhes no capítulo 3 deste trabalho, é um middleware que facilita a construção de aplicações

Leia mais

Web Services. Integração de aplicações na Web. Sistemas Distribuídos

Web Services. Integração de aplicações na Web. Sistemas Distribuídos Web Services Integração de aplicações na Web Integração de Aplicações na Web Interoperação entre ambientes heterogêneos desafios diversidade de componentes: EJB, CORBA, DCOM... diversidade de linguagens:

Leia mais

CONCEITOS E APLICAÇÕES DA COMPUTAÇÃO EM NUVEM

CONCEITOS E APLICAÇÕES DA COMPUTAÇÃO EM NUVEM CONCEITOS E APLICAÇÕES DA COMPUTAÇÃO EM NUVEM Rogério Schueroff Vandresen¹, Willian Barbosa Magalhães¹ ¹Universidade Paranaense(UNIPAR) Paranavaí-PR-Brasil rogeriovandresen@gmail.com, wmagalhaes@unipar.br

Leia mais

O que são sistemas supervisórios?

O que são sistemas supervisórios? O que são sistemas supervisórios? Ana Paula Gonçalves da Silva, Marcelo Salvador ana-paula@elipse.com.br, marcelo@elipse.com.br RT 025.04 Criado: 10/09/2004 Atualizado: 20/12/2005 Palavras-chave: sistemas

Leia mais

INTEGRAÇÃO DE APLICAÇÕES UTILIZANDO WEB SERVICE 1. Kellen Kristine Perazzoli 2 ; Manassés Ribeiro 3

INTEGRAÇÃO DE APLICAÇÕES UTILIZANDO WEB SERVICE 1. Kellen Kristine Perazzoli 2 ; Manassés Ribeiro 3 INTEGRAÇÃO DE APLICAÇÕES UTILIZANDO WEB SERVICE 1 Kellen Kristine Perazzoli 2 ; Manassés Ribeiro 3 INTRODUÇÃO Atualmente empresas de diversos portes estão encontrando nos web services soluções para seus

Leia mais

SISTEMAS DISTRIBUIDOS

SISTEMAS DISTRIBUIDOS 1 2 Caracterização de Sistemas Distribuídos: Os sistemas distribuídos estão em toda parte. A Internet permite que usuários de todo o mundo acessem seus serviços onde quer que possam estar. Cada organização

Leia mais

FACULDADE DE ADMINISTRAÇÃO E NEGÓCIOS DE SERGIPE - FANESE CURSO SUPERIOR DE TECNOLOGIA em Gestão da Tecnologia da Informação

FACULDADE DE ADMINISTRAÇÃO E NEGÓCIOS DE SERGIPE - FANESE CURSO SUPERIOR DE TECNOLOGIA em Gestão da Tecnologia da Informação FACULDADE DE ADMINISTRAÇÃO E NEGÓCIOS DE SERGIPE - FANESE CURSO SUPERIOR DE TECNOLOGIA em Gestão da Tecnologia da Informação 1 Ruironaldi dos Santos Cruz ARTIGO ARQUITETURA ORIENTADA A SERVIÇO SOA SERVICE

Leia mais

Anexo VI Edital nº 03361/2008. Projeto de Integração das informações de Identificação Civil. 1. Definições de interoperabilidade adotadas pela SENASP

Anexo VI Edital nº 03361/2008. Projeto de Integração das informações de Identificação Civil. 1. Definições de interoperabilidade adotadas pela SENASP Anexo VI Edital nº 03361/2008 Projeto de Integração das informações de Identificação Civil 1. Definições de interoperabilidade adotadas pela SENASP A Senasp procura adotar os padrões de interoperabilidade

Leia mais

UNIVERSIDADE. Sistemas Distribuídos

UNIVERSIDADE. Sistemas Distribuídos UNIVERSIDADE Sistemas Distribuídos Ciência da Computação Prof. Jesus José de Oliveira Neto Web Services Web Services Existem diferentes tipos de comunicação em um sistema distribuído: Sockets Invocação

Leia mais

Um Processo para Desenvolvimento de Aplicações Web Baseado em Serviços. Autores: Fábio Zaupa, Itana Gimenes, Don Cowan, Paulo Alencar e Carlos Lucena

Um Processo para Desenvolvimento de Aplicações Web Baseado em Serviços. Autores: Fábio Zaupa, Itana Gimenes, Don Cowan, Paulo Alencar e Carlos Lucena Um Processo para Desenvolvimento de Aplicações Web Baseado em Serviços Autores: Fábio Zaupa, Itana Gimenes, Don Cowan, Paulo Alencar e Carlos Lucena Tópicos Motivação e Objetivos LP e SOA Processo ADESE

Leia mais

Desenvolvimento de Sistemas Orientados a Objetos com UML UP/RUP: Projeto

Desenvolvimento de Sistemas Orientados a Objetos com UML UP/RUP: Projeto Desenvolvimento de Sistemas Orientados a Objetos com UML UP/RUP: Projeto Engenharia de Software I Informática 2009 Profa. Dra. Itana Gimenes RUP: Artefatos de projeto Modelo de Projeto: Use-Case Realization-projeto

Leia mais

Curso Tecnológico de Redes de Computadores 5º período Disciplina: Tecnologia WEB Professor: José Maurício S. Pinheiro V. 2009-2

Curso Tecnológico de Redes de Computadores 5º período Disciplina: Tecnologia WEB Professor: José Maurício S. Pinheiro V. 2009-2 Curso Tecnológico de Redes de Computadores 5º período Disciplina: Tecnologia WEB Professor: José Maurício S. Pinheiro V. 2009-2 Aula 3 Virtualização de Sistemas 1. Conceito Virtualização pode ser definida

Leia mais

A INTERNET E A NOVA INFRA-ESTRUTURA DA TECNOLOGIA DE INFORMAÇÃO

A INTERNET E A NOVA INFRA-ESTRUTURA DA TECNOLOGIA DE INFORMAÇÃO A INTERNET E A NOVA INFRA-ESTRUTURA DA TECNOLOGIA DE INFORMAÇÃO 1 OBJETIVOS 1. O que é a nova infra-estrutura informação (TI) para empresas? Por que a conectividade é tão importante nessa infra-estrutura

Leia mais

Infra estrutura da Tecnologia da Informação

Infra estrutura da Tecnologia da Informação Infra estrutura da Tecnologia da Informação Capítulo 3 Adaptado do material de apoio ao Livro Sistemas de Informação Gerenciais, 7ª ed., de K. Laudon e J. Laudon, Prentice Hall, 2005 CEA460 Gestão da Informação

Leia mais

ARQUITETURA DE SISTEMAS. Cleviton Monteiro (cleviton@gmail.com)

ARQUITETURA DE SISTEMAS. Cleviton Monteiro (cleviton@gmail.com) ARQUITETURA DE SISTEMAS Cleviton Monteiro (cleviton@gmail.com) Roteiro Definição Documento de arquitetura Modelos de representação da arquitetura Estilos arquiteturais Arquitetura de sistemas web Arquitetura

Leia mais

Autoria Web Apresentação e Visão Geral sobre a Web

Autoria Web Apresentação e Visão Geral sobre a Web Apresentação e Visão Geral sobre a Web Apresentação Thiago Miranda Email: mirandathiago@gmail.com Site: www.thiagomiranda.net Objetivos da Disciplina Conhecer os limites de atuação profissional em Web

Leia mais

Curso Tecnológico de Redes de Computadores 5º período Disciplina: Tecnologia WEB Professor: José Maurício S. Pinheiro V. 2009-2

Curso Tecnológico de Redes de Computadores 5º período Disciplina: Tecnologia WEB Professor: José Maurício S. Pinheiro V. 2009-2 Curso Tecnológico de Redes de Computadores 5º período Disciplina: Tecnologia WEB Professor: José Maurício S. Pinheiro V. 2009-2 Aula 1 Conceitos da Computação em Nuvem A computação em nuvem ou cloud computing

Leia mais

QUESTÕES PROVA 2 (28 a 44)

QUESTÕES PROVA 2 (28 a 44) QUESTÕES PROVA 2 (28 a 44) 28) A orientação a objetos é uma forma abstrata de pensar um problema utilizando-se conceitos do mundo real e não, apenas, conceitos computacionais. Nessa perspectiva, a adoção

Leia mais

15 Computador, projeto e manufatura

15 Computador, projeto e manufatura A U A UL LA Computador, projeto e manufatura Um problema Depois de pronto o desenho de uma peça ou objeto, de que maneira ele é utilizado na fabricação? Parte da resposta está na Aula 2, que aborda as

Leia mais

AUTOMAÇÃO RESIDENCIAL

AUTOMAÇÃO RESIDENCIAL AUTOMAÇÃO RESIDENCIAL Automação e Controle AR026 SUMÁRIO I. Sistemas Supervisórios... 3 II. Automação... 4 III. Arquitetura de Redes Industriais... 5 IV. Comunicação entre Supervisório e CLP...7 V. O Protocolo

Leia mais

BRAlarmExpert. Software para Gerenciamento de Alarmes. BENEFÍCIOS obtidos com a utilização do BRAlarmExpert:

BRAlarmExpert. Software para Gerenciamento de Alarmes. BENEFÍCIOS obtidos com a utilização do BRAlarmExpert: BRAlarmExpert Software para Gerenciamento de Alarmes A TriSolutions conta com um produto diferenciado para gerenciamento de alarmes que é totalmente flexível e amigável. O software BRAlarmExpert é uma

Leia mais

Padrões Arquiteturais e de Integração - Parte 1

Padrões Arquiteturais e de Integração - Parte 1 1 / 58 - Parte 1 Erick Nilsen Pereira de Souza T017 - Arquitetura e Design de Aplicações Análise e Desenvolvimento de Sistemas Universidade de Fortaleza - UNIFOR 11 de fevereiro de 2015 2 / 58 Agenda Tópicos

Leia mais

SISTEMAS DISTRIBUÍDOS

SISTEMAS DISTRIBUÍDOS SISTEMAS DISTRIBUÍDOS Cluster, Grid e computação em nuvem Slide 8 Nielsen C. Damasceno Introdução Inicialmente, os ambientes distribuídos eram formados através de um cluster. Com o avanço das tecnologias

Leia mais

Aula 03-04: Modelos de Sistemas Distribuídos

Aula 03-04: Modelos de Sistemas Distribuídos UNIVERSIDADE Computação Aula 03-04: Modelos de Sistemas Distribuídos 2o. Semestre / 2014 Prof. Jesus Principais questões no projeto de um sistema distribuído (SD) Questão de acesso (como sist. será acessado)

Leia mais

SNPTEE SEMINÁRIO NACIONAL DE PRODUÇÃO E TRANSMISSÃO DE ENERGIA ELÉTRICA

SNPTEE SEMINÁRIO NACIONAL DE PRODUÇÃO E TRANSMISSÃO DE ENERGIA ELÉTRICA SNPTEE SEMINÁRIO NACIONAL DE PRODUÇÃO E TRANSMISSÃO DE ENERGIA ELÉTRICA GTL 16 14 a 17 Outubro de 2007 Rio de Janeiro - RJ GRUPO XVI GRUPO DE ESTUDO DE SISTEMAS DE INFORMAÇÃO E TELECOMUNICAÇÃO PARA SISTEMAS

Leia mais

Rede de Computadores II

Rede de Computadores II Rede de Computadores II Slide 1 SNMPv1 Limitações do SNMPv1 Aspectos que envolvem segurança Ineficiência na recuperação de tabelas Restrito as redes IP Problemas com SMI (Structure Management Information)

Leia mais

Sistemas Distribuídos. Professora: Ana Paula Couto DCC 064

Sistemas Distribuídos. Professora: Ana Paula Couto DCC 064 Sistemas Distribuídos Professora: Ana Paula Couto DCC 064 Sistemas Distribuídos Basedos na Web Capítulo 12 Agenda Arquitetura Processos Comunicação Nomeação Sincronização Consistência e Replicação Introdução

Leia mais

Arquitetura dos Sistemas de Informação Distribuídos

Arquitetura dos Sistemas de Informação Distribuídos Arquitetura dos Sistemas de Informação Distribuídos Quando se projeta um sistema cuja utilização é destinada a ser feita em ambientes do mundo real, projeções devem ser feitas para que o sistema possa

Leia mais

Desenvolva Sistemas de Medições Distribuídos e Portáteis

Desenvolva Sistemas de Medições Distribuídos e Portáteis Desenvolva Sistemas de Medições Distribuídos e Portáteis Henrique Tinelli Engenheiro de Marketing Técnico NI Nesta apresentação, iremos explorar: Plataforma NI CompactDAQ Distribuída Sistemas de Medição

Leia mais

Capítulo 9. Gerenciamento de rede

Capítulo 9. Gerenciamento de rede 1 Capítulo 9 Gerenciamento de rede 2 Redes de computadores I Prof.: Leandro Soares de Sousa E-mail: leandro.uff.puro@gmail.com Site: http://www.ic.uff.br/~lsousa Não deixem a matéria acumular!!! Datas

Leia mais

Integração de Sistemas Industriais com a Suíte GE Proficy

Integração de Sistemas Industriais com a Suíte GE Proficy Integração de Sistemas Industriais com a Suíte GE Proficy Ricardo Caruso Vieira Aquarius Software 1. Introdução Há mais de duas décadas, a indústria investe intensamente em sistemas ERP (Enterprise Resource

Leia mais

PADRÕES PARA O DESENVOLVIMENTO NA WEB

PADRÕES PARA O DESENVOLVIMENTO NA WEB PADRÕES PARA O DESENVOLVIMENTO NA WEB Ederson dos Santos Cordeiro de Oliveira 1,Tiago Bonetti Piperno 1, Ricardo Germano 1 1 Universidade Paranaense (UNIPAR) Paranavaí PR- Brasil edersonlikers@gmail.com,

Leia mais

Prof. Marcelo de Sá Barbosa SISTEMAS DISTRIBUIDOS

Prof. Marcelo de Sá Barbosa SISTEMAS DISTRIBUIDOS Prof. Marcelo de Sá Barbosa SISTEMAS DISTRIBUIDOS Objetos distribuídos e invocação remota Introdução Comunicação entre objetos distribuídos Chamada de procedimento remoto Eventos e notificações Objetos

Leia mais

Automação de Locais Distantes

Automação de Locais Distantes Automação de Locais Distantes Adaptação do texto Improving Automation at Remote Sites da GE Fanuc/ Water por Peter Sowmy e Márcia Campos, Gerentes de Contas da. Nova tecnologia reduz custos no tratamento

Leia mais

Serviços Web: Introdução

Serviços Web: Introdução Sistemas Distribuídos Mauro Lopes Carvalho Silva Professor EBTT DAI Departamento de Informática Campus Monte Castelo Instituto Federal de Educação Ciência e Tecnologia do Maranhão Objetivos Nesta aula

Leia mais

1.1. Aplicações de TVD dinâmicas

1.1. Aplicações de TVD dinâmicas 1 Introdução Uma aplicação de TV Digital (TVD) comumente é composta por um vídeo principal associado a outros objetos (aplicações, imagens, vídeos, textos etc.), que são transmitidos em conjunto possibilitando

Leia mais

Laudon & Laudon Essentials of MIS, 5th Edition. Pg. 9.1

Laudon & Laudon Essentials of MIS, 5th Edition. Pg. 9.1 Laudon & Laudon Essentials of MIS, 5th Edition. Pg. 9.1 9 OBJETIVOS OBJETIVOS A INTERNET E A NOVA INFRA-ESTRUTURA DA TECNOLOGIA DE INFORMAÇÃO O que é a nova infra-estrutura de tecnologia de informação

Leia mais

FACULDADE PITÁGORAS. Prof. Ms. Carlos José Giudice dos Santos cpgcarlos@yahoo.com.br www.oficinadapesquisa.com.br

FACULDADE PITÁGORAS. Prof. Ms. Carlos José Giudice dos Santos cpgcarlos@yahoo.com.br www.oficinadapesquisa.com.br FACULDADE PITÁGORAS DISCIPLINA FUNDAMENTOS DE REDES REDES DE COMPUTADORES Prof. Ms. Carlos José Giudice dos Santos cpgcarlos@yahoo.com.br www.oficinadapesquisa.com.br Material elaborado com base nas apresentações

Leia mais

INTERNET CONCEITOS. Internet é a "grande rede mundial de computadores"

INTERNET CONCEITOS. Internet é a grande rede mundial de computadores INTERNET CONCEITOS O que é Internet Estamos acostumados a ouvir que Internet é a "grande rede mundial de computadores" Entretanto, essa definição não é muito simplista. Na realidade, Ela é uma coleção

Leia mais

Modelos e Arquiteturas de Sistemas Computacionais

Modelos e Arquiteturas de Sistemas Computacionais Modelos e Arquiteturas de Sistemas Computacionais Prof. Ricardo J. Rabelo UFSC Universidade Federal de Santa Catarina DAS Departamento de Automação e Sistemas SUMÁRIO Importância da definição da Arquitetura

Leia mais

CAPITULO 4 A ARQUITETURA LÓGICA PARA O AMBIENTE

CAPITULO 4 A ARQUITETURA LÓGICA PARA O AMBIENTE CAPITULO 4 A ARQUITETURA LÓGICA PARA O AMBIENTE A proposta para o ambiente apresentada neste trabalho é baseada no conjunto de requisitos levantados no capítulo anterior. Este levantamento, sugere uma

Leia mais

Frameworks para criação de Web Apps para o Ensino Mobile

Frameworks para criação de Web Apps para o Ensino Mobile 393 Frameworks para criação de Web Apps para o Ensino Mobile Lucas Zamim 1 Roberto Franciscatto 1 Evandro Preuss 1 1 Colégio Agrícola de Frederico Westphalen (CAFW) Universidade Federal de Santa Maria

Leia mais

Web das Coisas: Conectando Dispositivos Físicos ao Mundo Digital

Web das Coisas: Conectando Dispositivos Físicos ao Mundo Digital Capítulo 3 Web das Coisas: Conectando Dispositivos Físicos ao Mundo Digital Tiago C. de França, Paulo F. Pires, Luci Pirmez, Flávia C. Delicato, Claudio Farias Abstract In the near future the number of

Leia mais

Hardware (Nível 0) Organização. Interface de Máquina (IM) Interface Interna de Microprogramação (IIMP)

Hardware (Nível 0) Organização. Interface de Máquina (IM) Interface Interna de Microprogramação (IIMP) Hardware (Nível 0) Organização O AS/400 isola os usuários das características do hardware através de uma arquitetura de camadas. Vários modelos da família AS/400 de computadores de médio porte estão disponíveis,

Leia mais

Universidade Federal de Goiás Centro de Recursos Computacionais - CERCOMP Divisão de Sistemas. Criação de uma Serviço de Geração de Relatórios

Universidade Federal de Goiás Centro de Recursos Computacionais - CERCOMP Divisão de Sistemas. Criação de uma Serviço de Geração de Relatórios Universidade Federal de Goiás Centro de Recursos Computacionais - CERCOMP Divisão de Sistemas Criação de uma Serviço de Geração de Relatórios Goiânia 12/2011 Versionamento 12/12/2011 Hugo Marciano... 1.0

Leia mais

Estilos Arquiteturais. Estilos Arquiteturais. Exemplos de Estilos Arquiteturais. Estilo: Pipe e Filtros

Estilos Arquiteturais. Estilos Arquiteturais. Exemplos de Estilos Arquiteturais. Estilo: Pipe e Filtros Em geral sistemas seguem um estilo, ou padrão, de organização estrutural Os estilos diferem: nos tipos de componentes que usa na maneira como os componentes interagem com os outros (regras de interação)

Leia mais

Roteiro. Arquitetura. Tipos de Arquitetura. Questionário. Centralizado Descentralizado Hibrido

Roteiro. Arquitetura. Tipos de Arquitetura. Questionário. Centralizado Descentralizado Hibrido Arquitetura Roteiro Arquitetura Tipos de Arquitetura Centralizado Descentralizado Hibrido Questionário 2 Arquitetura Figura 1: Planta baixa de uma casa 3 Arquitetura Engenharia de Software A arquitetura

Leia mais

Introdução. Definição de um Sistema Distribuído (1) Definição de um Sistema Distribuído(2) Metas de Sistemas Distribuídos (2)

Introdução. Definição de um Sistema Distribuído (1) Definição de um Sistema Distribuído(2) Metas de Sistemas Distribuídos (2) Definição de um Sistema Distribuído (1) Introdução Um sistema distribuído é: Uma coleção de computadores independentes que aparecem para o usuário como um único sistema coerente. Definição de um Sistema

Leia mais

Softwares de Sistemas e de Aplicação

Softwares de Sistemas e de Aplicação Fundamentos dos Sistemas de Informação Softwares de Sistemas e de Aplicação Profª. Esp. Milena Resende - milenaresende@fimes.edu.br Visão Geral de Software O que é um software? Qual a função do software?

Leia mais

www.f2b.com.br 18/04/2006 Micropagamento F2b Web Services Web rev 00

www.f2b.com.br 18/04/2006 Micropagamento F2b Web Services Web rev 00 www.f2b.com.br 18/04/2006 Micropagamento F2b Web Services Web rev 00 Controle de Revisões Micropagamento F2b Web Services/Web 18/04/2006 Revisão Data Descrição 00 17/04/2006 Emissão inicial. www.f2b.com.br

Leia mais

Dado: Fatos conhecidos que podem ser registrados e têm um significado implícito. Banco de Dados:

Dado: Fatos conhecidos que podem ser registrados e têm um significado implícito. Banco de Dados: MC536 Introdução Sumário Conceitos preliminares Funcionalidades Características principais Usuários Vantagens do uso de BDs Tendências mais recentes em SGBDs Algumas desvantagens Modelos de dados Classificação

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais Aula 6 Estrutura de Sistemas Operacionais Prof.: Edilberto M. Silva http://www.edilms.eti.br Baseado no material disponibilizado por: SO - Prof. Edilberto Silva Prof. José Juan Espantoso

Leia mais

Trabalho de Sistemas Distribuídos

Trabalho de Sistemas Distribuídos Cássio de Olivera Ferraz Trabalho de Sistemas Distribuídos Petrópolis 2015, v-1.0 Cássio de Olivera Ferraz Trabalho de Sistemas Distribuídos Trabalho sobre sistemas distribuídos e suas tecnologias. Universidade

Leia mais

Arquiteturas SOA, WOA, e REST

Arquiteturas SOA, WOA, e REST Arquiteturas SOA, WOA, e REST Aplicação de Software Social Fred Figueiredo Luiz Borges Pedro Pires Arquiteturas SOA, WOA e REST Desenvolvimento de aplicações orientadas ao fornecimento de serviços que

Leia mais

Projeto de Sistemas Distribuídos. Prof. Andrêza Leite andreza.lba@gmail.com

Projeto de Sistemas Distribuídos. Prof. Andrêza Leite andreza.lba@gmail.com Projeto de Sistemas Distribuídos Prof. Andrêza Leite andreza.lba@gmail.com Exemplos de SD Quais podem ser? Ex. de SD: Internet Internet é um conjunto de redes de computadores, de muitos tipos diferentes,

Leia mais

Ferramentas Web para controle e supervisão: o que está por vir

Ferramentas Web para controle e supervisão: o que está por vir Artigos Técnicos Ferramentas Web para controle e supervisão: o que está por vir Marcelo Salvador, Diretor de Negócios da Elipse Software Ltda. Já faz algum tempo que ouvimos falar do controle e supervisão

Leia mais

TECNOLOGIA WEB. Principais Protocolos na Internet Aula 2. Profa. Rosemary Melo

TECNOLOGIA WEB. Principais Protocolos na Internet Aula 2. Profa. Rosemary Melo TECNOLOGIA WEB Principais Protocolos na Internet Aula 2 Profa. Rosemary Melo Tópicos abordados Compreender os conceitos básicos de protocolo. Definir as funcionalidades dos principais protocolos de Internet.

Leia mais

EXIN Cloud Computing Fundamentos

EXIN Cloud Computing Fundamentos Exame Simulado EXIN Cloud Computing Fundamentos Edição Maio 2013 Copyright 2013 EXIN Todos os direitos reservados. Nenhuma parte desta publicação pode ser publicado, reproduzido, copiado ou armazenada

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos LICENCIATURA EM COMPUTAÇÃO Prof. Adriano Avelar Site: www.adrianoavelar.com Email: eam.avelar@gmail.com Mecanismos de Comunicação Protocolos de Aplicação Mecanismos de comunicação

Leia mais

AULA 01 INTRODUÇÃO. Eduardo Camargo de Siqueira REDES DE COMPUTADORES Engenharia de Computação

AULA 01 INTRODUÇÃO. Eduardo Camargo de Siqueira REDES DE COMPUTADORES Engenharia de Computação AULA 01 INTRODUÇÃO Eduardo Camargo de Siqueira REDES DE COMPUTADORES Engenharia de Computação CONCEITO Dois ou mais computadores conectados entre si permitindo troca de informações, compartilhamento de

Leia mais

TEMA TECNOLOGIA DA INFORMAÇÃO -Tipos de SI e Recursos de Software parte2. AULA DE SISTEMAS DE INFORMAÇÃO PROFa. ROSA MOTTA

TEMA TECNOLOGIA DA INFORMAÇÃO -Tipos de SI e Recursos de Software parte2. AULA DE SISTEMAS DE INFORMAÇÃO PROFa. ROSA MOTTA TEMA TECNOLOGIA DA INFORMAÇÃO -Tipos de SI e Recursos de Software parte2 AULA DE SISTEMAS DE INFORMAÇÃO PROFa. ROSA MOTTA CONTEÚDO DA AULA Tipos de Software Serviços Web Tendências 2 OBJETIVOS ESPECÍFICOS

Leia mais

Planejando uma política de segurança da informação

Planejando uma política de segurança da informação Planejando uma política de segurança da informação Para que se possa planejar uma política de segurança da informação em uma empresa é necessário levantar os Riscos, as Ameaças e as Vulnerabilidades de

Leia mais

L A C Laboratory for Advanced Collaboration

L A C Laboratory for Advanced Collaboration Publicação de Dados Governamentais no Padrão Linked Data 1.2 - Dados Governamentais Abertos Karin Breitman José Viterbo Edgard Marx Percy Salas L A C Laboratory for Advanced Collaboration Objetivo deste

Leia mais

Uma nova perspectiva sobre a experiência digital do cliente

Uma nova perspectiva sobre a experiência digital do cliente Uma nova perspectiva sobre a experiência digital do cliente Redesenhando a forma como empresas operam e envolvem seus clientes e colaboradores no mundo digital. Comece > Você pode construir de fato uma

Leia mais

Desenvolvendo para WEB

Desenvolvendo para WEB Nível - Básico Desenvolvendo para WEB Por: Evandro Silva Neste nosso primeiro artigo vamos revisar alguns conceitos que envolvem a programação de aplicativos WEB. A ideia aqui é explicarmos a arquitetura

Leia mais

Tipos de Sistemas Distribuídos

Tipos de Sistemas Distribuídos (Sistemas de Informação Distribuída e Pervasivos) Sistemas Distribuídos Mauro Lopes Carvalho Silva Professor EBTT DAI Departamento de Informática Campus Monte Castelo Instituto Federal de Educação Ciência

Leia mais

Projuris Enterprise Visão Geral da Arquitetura do Sistema

Projuris Enterprise Visão Geral da Arquitetura do Sistema Projuris Enterprise Visão Geral da Arquitetura do Sistema Março/2015 Página 1 de 17 Projuris Enterprise Projuris Enterprise é um sistema 100% Web, com foco na gestão de contencioso por empresas ou firmas

Leia mais

MSc Eliton Smith elitonsmith@gmail.com. Gerenciamento e Administração de Redes

MSc Eliton Smith elitonsmith@gmail.com. Gerenciamento e Administração de Redes MSc Eliton Smith elitonsmith@gmail.com Gerenciamento e Administração de Redes 2 Gerência de Redes ou Gerenciamento de Redes É o controle de qualquer objeto passível de ser monitorado numa estrutura de

Leia mais

e-ping - Padrões de Interoperabilidade de Governo Eletrônico www.governoeletronico.gov.br www.eping.e.gov.br

e-ping - Padrões de Interoperabilidade de Governo Eletrônico www.governoeletronico.gov.br www.eping.e.gov.br e-ping - Padrões de Interoperabilidade de Governo Eletrônico www.governoeletronico.gov.br www.eping.e.gov.br e PING: Segmentação Interconexão Segurança Meios de acesso Organização e intercâmbio de informações

Leia mais

Controle Supervisório e Aquisição de Dados (SCADA) Sistema de Execução da Manufatura MES Sistemas a Eventos Discretos (SED

Controle Supervisório e Aquisição de Dados (SCADA) Sistema de Execução da Manufatura MES Sistemas a Eventos Discretos (SED Controle Supervisório e Aquisição de Dados (SCADA) Sistema de Execução da Manufatura MES Sistemas a Eventos Discretos (SED Yuri Kaszubowski Lopes Roberto Silvio Ubertino Rosso Jr. UDESC 24 de Abril de

Leia mais

Sistemas Distribuídos Arquitetura de Sistemas Distribuídos Aula II Prof. Rosemary Silveira F. Melo Arquitetura de Sistemas Distribuídos Conceito de Arquitetura de Software Principais elementos arquiteturais

Leia mais

5 Framework para coordenação e mediação de Web Services para ambientes de aprendizado à distância

5 Framework para coordenação e mediação de Web Services para ambientes de aprendizado à distância 5 Framework para coordenação e mediação de Web Services para ambientes de aprendizado à distância O capítulo anterior apresentou uma discussão sobre a inclusão dos chamados learning services no processo

Leia mais

PROJETO DE REDES www.projetoderedes.com.br

PROJETO DE REDES www.projetoderedes.com.br PROJETO DE REDES www.projetoderedes.com.br Centro Universitário de Volta Redonda - UniFOA Curso Tecnológico de Redes de Computadores 5º período Disciplina: Tecnologia WEB Professor: José Maurício S. Pinheiro

Leia mais