Gustavo Henrique Rodrigues Pinto Tomas
UMA ARQUITETURA PARA CIDADES INTELIGENTES BASEADA
NA INTERNET DAS COISAS
Dissertação de Mestrado
Universidade Federal de Pernambuco [email protected] www.cin.ufpe.br/~posgraduacao
RECIFE 2014
Universidade Federal de Pernambuco
Centro de Informática
Pós-graduação em Ciência da Computação
Gustavo Henrique Rodrigues Pinto Tomas
UMA ARQUITETURA PARA CIDADES INTELIGENTES BASEADA
NA INTERNET DAS COISAS
Trabalho apresentado ao Programa de Pós-graduação em Ciência da Computação do Centro de Informática da Univer-sidade Federal de Pernambuco como requisito parcial para obtenção do grau de Mestre em Ciência da Computação.
Orientador: Vinicius Cardoso Garcia Coorientador: Alexandre Alvaro
RECIFE 2014
Catalogação na fonte
Bibliotecário Jefferson Luiz Alves Nazareno, CRB 4-1758
Tomas, Gustavo Henrique Rodrigues Pinto.
Uma arquitetura para cidades inteligentes baseada na internet das coisas. – Recife: O Autor, 2014.
109f. : fig.
Orientadora: Vinícius Cardoso Garcia. Dissertação (Mestrado) - Universidade Federal de Pernambuco. Cin. Ciência da computação , 2014.
Inclui referências e apêndice.
1. Engenharia de software . 2. Internet das coisas. I. Garcia, Vinícius Cardoso. (orientador). II. Título.
Dissertação de Mestrado apresentada por Gustavo Henrique Rodrigues Pinto Tomas à Pós-Graduação em Ciência da Computação do Centro de Informática da Universidade Federal de Pernambuco, sob o título “Uma Arquitetura para Cidades Inteligentes Baseada na Internet das Coisas” orientada pelo Prof. Vinicius Cardoso Garcia e aprovada pela Banca Examinadora formada pelos professores:
______________________________________________ Prof. Kiev Santos da Gama
Centro de Informática / UFPE
______________________________________________ Prof. Gibeon Soares de Aquino Junior
Departamento de Informática e Matemática Aplicada/UFRN
_______________________________________________ Prof. Vinícius Cardoso Garcia
Centro de Informática / UFPE
Visto e permitida a impressão. Recife, 26 de fevereiro de 2014.
___________________________________________________ Profa. Edna Natividade da Silva Barros
Coordenadora da Pós-Graduação em Ciência da Computação do Centro de Informática da Universidade Federal de Pernambuco.
À minha família, por sempre me proporcionar totais condições para a realização dos meus estudos. Aos meus irmãos, que esta dissertação sirva de inspiração
para suas futuras decisões profissionais. À Crisley, por sempre estar ao meu lado e me ajudar a ver o
lado bom de tudo. Dedico.
Agradecimentos
Primeiramente gostaria de agradecer a Deus por me proporcionar todas as condições para a realização deste trabalho e, principalmente, por ter colocado em meu caminho pessoas muito especiais que me ajudaram nesta aventura. Algumas destas pessoas serão brevemente citadas a seguir:
Agradeço ao meu orientador Vinicius Cardoso Garcia, pela orientação, pelo espírito acolhedor, pelo incentivo e pelas cobranças, totalmente necessárias, para me manter o tempo todo focado no objetivo final. Não poderia deixar de agradecer a liberdade e abertura para discutir novas ideias e definir novas metas, sem deixar de lado a qualidade do trabalho. Os questionamentos e a experiência de outras áreas foram de suma importância para a concretização da proposta. A coragem em se aventurar em uma área de pesquisa recente, na qual ninguém possuía muita experiência, fatalmente separa os vencedores dos medrosos. Além disso, a confiança em permitir, que uma parte do mestrado seja realizada remotamente, certamente foi uma atitude de uma pessoa grande, tanto profissionalmente quanto espiritualmente.
Ao grande pesquisador e amigo Alexandre Alvaro pela ajuda e compartilhamento de suas experiências antes mesmo de iniciar o mestrado. Certamente daquele dia em diante, você começou a ser observado com olhos de admiração. Agradeço também por ter apresentado a área de pesquisa e, principalmente, as oportunidades que estavam envolvidas. Os feedbacks do trabalho sempre contribuíram de forma muito positivamente, assim como os bate-papos, por mais “viajados” que fossem.
Ao grande irmão de consideração Welington Manoel da Silva, pelo tempo de convi-vência, pelos aprendizados deste período e, principalmente, pela paciência e bom humor para enfrentarmos juntos toda aquela situação. Em relação à parte técnica, todos os questionamentos e palpites foram fundamentais para o aprimoramento da proposta. A forma pelo qual Weling-ton compartilhou seus conhecimentos comigo certamente evidencia uma das suas principais características: compaixão com o próximo.
Agradeço a minha família pela compreensão nos dias em que fiquei trancado no quarto e nos dias de indisponibilidade para conversar por telefone. Em especial aos meus pais Érica e Elcio, agradeço ao suporte que, por mais que não seja o que eles gostariam de proporcionar, foi muito mais do que o suficiente para a minha formação, tanto como homem quanto profissional. Ainda em relação à família, agradeço aos meus irmãos Larissa e Júnior, por aturarem o meu mau humor quando as coisas pareciam estar desabando. Sinceramente, espero que este novo objetivo alcançado na minha vida sirva de exemplo para que eles acreditem nos respectivos potenciais e, principalmente, na capacidade de atingir seus objetivos.
Não poderia de deixar de fora a minha amiga, companheira, revisora de textos em inglês e português: Crisley. A sua compaixão e o seu jeitinho singular foram as forças que eu precisava
nos momentos de maiores dificuldades. Olhando para trás, não consigo enxergar outra forma de enfrentar os meus desafios sem o seu positivismo. A compreensão e a paciência para enfrentar 9 meses à distância certamente comprovaram que somos iguais ao amanhecer: independente do que aconteça, sempre estaremos juntos para enfrentar qualquer tipo de escuridão.
Ao Centro de Estudos e Sistemas Avançados do Recife (C.E.S.A.R) pela coragem e confiança em aceitar o desafio de conciliar a rotina de trabalho de 40h semanais com as disciplinas do mestrado. Nesse sentido, gostaria de agradecer imensamente os meus gestores Paulo Urbano e Roberta Hazin pela coragem, compreensão e, principalmente, por não aliviarem as minhas tarefas, o que contribuiu muito para a minha formação acadêmica e profissional. Espero que eles tenham a consciência de que esse tipo de atitude afetou, e muito, positivamente a vida de uma pessoa. Certamente gestores com esse perfil deveriam ser supervalorizados nas suas atribuições. Considero a forma como a situação foi conduzida um exemplo a ser seguido na minha vida.
Finalmente, gostaria de agradecer a todos que de alguma forma, direta ou indiretamente, contribuíram para a realização deste trabalho.
Resumo
De acordo com recentes pesquisas, a população mundial esta crescendo de forma despro-porcional aos recursos necessários para a vida humana. Cada vez mais a quantidade de pessoas vivendo nas áreas urbanas aumenta, devido à diversos fatores, como as oportunidades que são geradas nestes grandes centros.
Este desenfreado crescimento populacional, principalmente nas áreas urbanas, além de outros fatores como má governança, ocasiona e/ou intensifica diversos problemas urbanos. Para exemplificar este fato, pode-se citar os grandes problemas que as cidades brasileiras enfrentam nas áreas de transporte, saúde e educação, evidenciados, rotineiramente, pela mídia em geral.
Neste contexto, o conceito de Cidade Inteligente (CI) visa mitigar estes problemas a fim de aumentar a qualidade de vida dos cidadãos. Para tal, uma importante ferramenta para a implementação de uma CI é a Internet of Things (Internet das Coisas) (IoT), na qual diversos objetos são combinados para atingir um objetivo em comum como, fornecer informações do fluxo de veículos de uma cidade.
Porém, para que este cenário seja de fato consolidado, necessita-se de uma Arquitetura de Software (AS) capaz de integrar e combinar as diferentes tecnologias e dados que compõem os serviços urbanos.
Na literatura pode-se encontrar várias Arquiteturas de Software (AS’s) para CI, inclusive com apoio de grandes empresas. Porém, estas AS’s visam atender apenas um determinado serviço urbano com uma aplicação específica, o que não caracteriza de fato uma implementação de CI.
Motivado por estes desafios, esta dissertação apresenta a especificação, o projeto e a avaliação de uma AS para CI que permite a integração com IoT, baseado no conjunto de requisitos extraídos das soluções existentes. Adicionalmente, são discutidos os resultados obtidos, os problemas encontrados, e as direções futuras para pesquisa e o desenvolvimento.
Abstract
According to recent researches, global population is increasing disproportionally from the essential resources for human life. More and more, the amount of people living in urban areas is increased due to several factors, including the opportunities which are generated in these locals.
This unbridled populational growth, mainly in urban areas, and other factors such as poor governance, leads and/or enhances many urban problems. To illustrate this fact, we can mention the major problems that Brazilian cities face in the areas of transport, health and education, evidenced routinely by the media in general.
In this context, the Smart City (SC) concept attempts to mitigate these problems in order to increase the citizens quality of life. For such an important tool for the implementation of a SC is the Internet of Things (IoT), in which several objects are combined to achieve a common goal, such as, details of the flow of vehicles in a city.
Nevertheless, in order to consolidate this scenario, a software architecture that is able to integrate and combine different technologies and data that comprise the urban services is required.
In literature we can find several architectures for SC, including support of large companies. However, these architectures aim to meet only an urban service with specific application, which features not in fact an implementation of SC.
Motivated by these challenges, this thesis presents the specification, the design and evaluation of a SC architecture that allows integration of IoT technologies, based on a set of requirements drawn from existing approaches. Additionally, we discuss the results obtained, the problems found, and the future steps for research and development.
Lista de Figuras
1.1 Arquitetura de Software (AS) da solução proposta . . . 25
3.1 Estratégia de Busca . . . 39
3.2 Resultado da filtragem das abordagens . . . 40
4.1 Integração das visões do modelo “4+1” com as visões definidas pelo SEI . . . . 61
4.2 Visão lógica da Arquitetura de Software (AS) proposta . . . 63
4.3 Abstração da operação de um recurso receber dados . . . 66
4.4 Abstração da operação de um recurso fornecer dado . . . 66
4.5 Abstração da operação de um recurso fornecer um novo tipo de dado . . . 66
4.6 Operação de composição de dados urbanos . . . 67
4.7 Visão de Implementação . . . 70
4.8 Diagrama de Componente Conector . . . 71
4.9 Diagrama de Dependências . . . 72
5.1 Resultado da avaliação dos cenários . . . 88
B.1 Printscreen do formulário online utilizado pelos participantes para propor os cenários de uso da AS . . . 107
B.2 Printscreen da Parte 1/3 do formulário online para quantificar a adequação da AS aos respectivos cenários . . . 107
B.3 Printscreen da Parte 2/3 do formulário online para quantificar a adequação da AS aos respectivos cenários . . . 107
B.4 Printscreen da Parte 3/3 do formulário online para quantificar a adequação da AS aos respectivos cenários . . . 107
Lista de Tabelas
3.1 Quantidade de abordagens por fonte de pesquisa . . . 40
3.2 Abordagens resultantes por ordem cronológica . . . 42
3.3 Resumo das abordagens descritas na literatura . . . 49
3.4 Mapeamento requisitos-arquiteturas . . . 56
4.1 Requisitos abordados . . . 60
4.2 Mapeamento Requisitos por Módulo . . . 65
4.3 Resumo da quantidade de processos e threads em tempo de execução . . . 68
4.4 Requisitos físicos de utilização da arquitetura . . . 71
5.1 Métodos de Avaliação Vs Atributos de Qualidade . . . 78
5.2 Métodos de Avaliação Vs Objetivo . . . 79
5.3 Etapas do método adaptado . . . 80
5.4 Expertisesda equipe de avaliação . . . 81
5.5 Priorização dos Atributos de Qualidade . . . 84
5.6 Cenários resultantes de acordo com a relevância . . . 87
A.1 Repositórios de busca na Systematic Literature Review (Revisão Sistemática da Liteturatura) (SLR) . . . 105
Lista de Acrônimos
AS Arquitetura de Software . . . 24
DHT Distributed Hash Table. . . 64
IoT Internet of Things(Internet das Coisas) . . . 24
CI Cidade Inteligente . . . 24
SLR Systematic Literature Review (Revisão Sistemática da Liteturatura) . . . 38
SOA Arquitetura Orientada a Serviços . . . 43
Sumário
1 Introdução 23
1.1 Motivação . . . 23
1.2 Estabelecimento do Problema . . . 24
1.3 Visão Geral da Solução Proposta . . . 24
1.3.1 Visão Geral da Arquitetura de Software (AS) . . . 25
1.4 Escopo Negativo . . . 26
1.5 Principais Contribuições . . . 26
1.6 Organização da Dissertação . . . 28
2 Cidades Inteligentes e Internet das Coisas 29 2.1 Conceito de Cidade Inteligente (CI) . . . 31
2.2 Conceito de Internet of Things (Internet das Coisas) (IoT) . . . 33
2.3 Integração de Cidade Inteligente (CI) com Internet of Things (Internet das Coisas) (IoT) . . . 34
2.4 Considerações Finais do Capítulo . . . 34
3 Revisão da Literatura de Arquiteturas de Software para Cidades Inteligentes 37 3.1 Revisão Sistemática . . . 38
3.1.1 Metodologia de Pesquisa . . . 39
3.1.1.1 Estratégia de Busca e Fontes de Dados . . . 39
3.1.1.2 Seleção das Abordagens . . . 40
3.1.2 Resultados . . . 41
3.1.2.1 Abordagens Resultantes . . . 42
3.2 Revisão Exploratória . . . 44
3.2.1 Metodologia de Pesquisa . . . 45
3.2.2 Resultados . . . 45
3.3 Consolidação das Abordagens Encontradas . . . 48
3.4 Requisitos para uma Arquitetura de Software para Cidades Inteligentes . . . 48
3.4.1 Interoperabilidade de objetos . . . 50
3.4.2 Monitoramento em tempo real . . . 50
3.4.3 Sustentabilidade . . . 50
3.4.4 Aspectos sociais . . . 51
3.4.5 Ubiquidade/Mobilidade . . . 52
3.4.6 Privacidade e Segurança dos dados . . . 52
3.4.8 Composição de Dados Urbanos . . . 53 3.4.9 Histórico de dados . . . 53 3.4.10 Disponibilidade . . . 54 3.4.11 Sensoriamento e Processamento Distribuído . . . 54 3.4.12 Flexibilidade/Extensibilidade . . . 55 3.5 Sumário dos Requisitos para Cidades Inteligentes . . . 55 3.6 Discussão do Capítulo . . . 55 3.7 Considerações Finais do Capítulo . . . 57 4 Uma Arquitetura de Software para Cidades Inteligentes baseada na Internet das
Coisas 59
4.1 Requisitos abordados . . . 60 4.2 Metodologia “4+1” . . . 61 4.3 Visão Lógica . . . 62 4.3.1 Módulo de Acesso e Comunicação (MAC) . . . 62 4.3.2 Módulo de Gerenciamento de Recursos (MGR) . . . 63 4.3.3 Módulo de Gerenciamento e Distribuição de Dados (MGDD) . . . 64 4.3.4 Módulo de Persistência de Dados (MPD) . . . 65 4.3.5 Mapeamento Requisito x Módulo . . . 65 4.3.6 Operações . . . 66 4.3.6.1 Consumidor: Recurso receber dados . . . 66 4.3.6.2 Produtor: Fornecer dado . . . 66 4.3.6.3 Compor um dado urbano . . . 67 4.4 Visão de Execução . . . 67 4.4.1 Módulo de Acesso e Comunicação (MAC) . . . 67 4.4.2 Módulo de Gerenciamento de Recursos (MGR) . . . 68 4.4.3 Módulo de Gerenciamento e Distribuição de Dados (MGDD) . . . 68 4.4.4 Módulo de Persistência de Dados (MPD) . . . 69 4.5 Visão de Implementação . . . 69 4.6 Visão Física . . . 70 4.7 Visão Componente Conector . . . 71 4.8 Visão de Dependências . . . 72 4.9 Cenários . . . 72 4.9.1 Desenvolvimento de aplicações móveis . . . 72 4.9.2 Emitir Alertas com Informações de Trânsito . . . 73 4.9.3 Definição de Estratégia Efetiva de Investimento de Recursos . . . 73 4.9.4 Predição de Catastrófes em Áreas de Riscos . . . 73 4.10 Discussão do Capítulo . . . 74 4.11 Considerações Finais do Capítulo . . . 74
21
5 Avaliação da Arquitetura de Software 77
5.1 Métodos de Avaliação . . . 78 5.1.1 Métodos Analisados . . . 78 5.1.2 Descrição dos métodos restantes . . . 79 5.2 Adaptação dos métodos de avaliação . . . 80 5.2.1 Definição do método de avaliação . . . 80 5.2.2 Equipe de Avaliação . . . 81 5.2.3 Descrição do Método de Avaliação . . . 81 5.3 Processo de Avaliação Executado . . . 83 5.3.1 Primeira Reunião . . . 83 5.3.2 Segunda Reunião . . . 85 5.3.3 Terceira Reunião . . . 86 5.4 Resultados da Avaliação da Arquitetura . . . 86 5.4.1 Resultados da Avaliação dos Cenários . . . 87 5.4.2 Resultados Gerais . . . 89 5.5 Ameaças à Avaliação . . . 89 5.6 Considerações Finais do Capítulo . . . 90
6 Conclusão 91 6.1 Principais Conclusões . . . 91 6.2 Trabalhos Relacionados . . . 92 6.3 Trabalhos Futuros . . . 94 6.4 Conclusão . . . 94 References 97 Apêndice 103 A Repositórios de busca na SLR 105
23 23 23
1
Introdução
Pequenas oportunidades são muitas vezes o começo de grandes empreendimentos. —DEMÓSTENES
1.1
Motivação
De acordo com relatório divulgado pela UNESCONATIONS(2007), por volta de 1950, 30% da população mundial vivia em áreas urbanas e em 2010 esta porcentagem subiu para 50%. Estima-se que em 2050 a porcentagem de pessoas vivendo nos grandes centros urbanos será de 70%. Além disso, 10% da população mundial vive nas 30 principais metrópolesDOBBS;
INSTITUTE(2011). No cenário nacional, segundo a pesquisa realizada pelo Instituto Brasileiro
de Geografia e Estatística (IBGE), publicada no Diário Oficial da União1, em julho de 2012 o Brasil chegou a 193.946.886 habitantes, que representa um aumento de aproximadamente 1,65% em relação ao ano de 2010.
A expansão das cidades enfrenta uma série de desafios. Embora as cidades ocupam menos de 2% da massa terrestre, os residentes urbanos consomem mais de três quartos dos recursos naturais do mundo e são os principais responsáveis pela emissão de gases do efeito estufaMARCEAU(2008). Problemas decorrentes da rápida urbanização indicam uma perda de funcionalidades básicas para ser um lugar habitável: por exemplo, a dificuldade na gestão de resíduos, a escassez de recursos naturais, a poluição do ar, as doenças humanas, o intenso tráfego de veículos e deterioração e envelhecimento das infraestruturasKRCO(2010).
Algumas iniciativas isoladas estão sendo desenvolvidas para mitigar alguns dos pro-blemas urbanosNAM; PARDO(2011). As iniciativas vão de aplicativos como “Waze”2, um serviço que combina geolocalização no celular com indicações do fluxo e problemas de trânsito via smartphones, até governamentais, como o Centro de Operações da Prefeitura do Rio de
1http://saladeimprensa.ibge.gov.br/noticias?view=noticia&idnoticia=2204
24 CAPÍTULO 1. INTRODUÇÃO Janeiro3, sistema que integra informações a respeito dos diferentes serviços públicos oferecidos pela cidade.
Porém, para de fato estabelecer uma Cidade Inteligente (CI) é necessário que estas iniciativas estejam integradas em uma mesma Arquitetura de Software (AS), seja para com-partilhar informações, seja para facilitar a definição da estratégia de atuaçãoFILIPPONI et al.
(2010);ANTHOPOULOS; FITSILIS(2010);HAUBENSAK(2011);SANCHEZ et al.(2011);
HERNáNDEZ-MUñOZ et al.(2011). Da mesma forma, necessita-se de uma AS que permita
a criação de novas iniciativas para solucionar os problemas dos cidadãos FILIPPONI et al.
(2010);HAUBENSAK(2011);SANCHEZ et al.(2011), como por exemplo, o monitoramento
da qualidade do transporte coletivo.
Além disso, este trabalho é motivado pela vasta gama de sensores, atuadores, pessoas, sistemas, drivers e qualquer outro componente capaz de interagir com os serviços urbanos. Ao aplicar este conjunto de componentes nos contextos urbanos, vários desafios são gerados para integrá-los e obter o melhor de cada componente.
Para este e outros cenários semelhantes, uma AS para CI pode ajudar a integrar esses diversos componentes. Para tal, a AS deve ser totalmente plugável e expansível, do ponto de vista dos protocolos de comunicação implementados.
1.2
Estabelecimento do Problema
Motivado pelas questões apresentadas na Seção anterior, o principal objetivo deste trabalho é, em linhas gerais:
Especificar, projetar e implementar uma Arquitetura de Software (AS) para Ci-dade Inteligente (CI) que permita o desenvolvimento de soluções com base em Internet of Things (Internet das Coisas) (IoT), independente das especificações de cada tecnologia e características físicas das cidades. Além disto, este trabalho visa prover uma implementa-ção de referência desta AS.
1.3
Visão Geral da Solução Proposta
A fim de atingir os objetivos deste trabalho, estabelecidos na Seção anterior, foi realizado um estudo das Arquiteturas de Software (AS’s) para CI baseada em IoT tanto na academia quanto na indústria, por meio de dois métodos de revisão literária: Revisão Exploratória e Revisão Sistemática. Este estudo teve como finalidade identificar as técnicas empregadas nestas soluções e se existia a necessidade da criação de um novo padrão arquitetural para este contexto.
A partir dos objetivos das abordagens encontradas nestes dois métodos de revisão, um conjunto de requisitos ao qual uma nova AS para CI deve atender foi estabelecido. Em seguida,
25 1.3. VISÃO GERAL DA SOLUÇÃO PROPOSTA a AS da solução foi proposta visando atingir um sub-conjunto destes requisitos, que representa os requisitos fundamentais. Por fim, a AS foi submetida à um processo de avaliação formal adaptado do SAAMKAZMAN et al.(1994) e ATAMKAZMAN et al.(1999,2000).
1.3.1
Visão Geral da Arquitetura de Software (AS)
A AS consiste em módulos que implementam um conjunto de requisitos fundamentais para o contexto de CI. Estes requisitos são implementados a partir da utilização de padrões arquiteturais já conhecidos e utilizados em outros tipos de AS’s de software, como publisher-subscriber. A Figura 1.1 ilustra a AS proposta.
Registro de recursos Configuração de recursos
Driver BD1 BD1 BD2 BD3 DHT-BD Driver BD2 ...
Interface: Banco de Dados
Módulo de Acesso e Comunicação (MAC) Módulo de Gerenciamento de Recursos (MGR) Módulo de Gerenciamento e Distribuição de Dados (MGDD) Módulo de Persistência de Dados (MPD) DHT - Canal de dados P P ... C C ... Canal 2 P P ... C C ... .... Canal 3 P P ... C C ... Canal 1 Driver BD3 REST
Interface: Protocolos de troca de mensagens
Figura 1.1: Arquitetura de Software (AS) da solução proposta
Os módulos da AS são: Módulo de Acesso e Comunicação (MAC), Módulo de Gerenci-amento de Recursos (MGR), Módulo de GerenciGerenci-amento e Distribuição de Dados (MGDD) e Módulo de Persistência de Dados (MPD). Estes módulos fornecem as funcionalidades essenciais utilizadas pelos diferentes tipos de usuários do sistema.
O MAC representa o ponto de entrada dos usuários, aplicações ou até mesmo serviços externos. O MAC provê todos os mecanismos necessários para o acesso e a comunicação com a AS, tanto para envio quanto para recebimento de informações. Por sua vez, o MGR visa gerenciar as informações relativas aos diferentes tipos de recursos disponíveis na AS. Já o MGDD possui a responsabilidade de disseminar os dados na AS, tanto os dados de fora para dentro da AS quanto os dados obtidos a partir de alguma computação interna para os agentes externos. O último módulo (MPD), como o próprio nome já identifica, possui a responsabilidade de armazenar os dados oriundos dos diferentes níveis da AS. Estes dados, nos mais variados estágios da AS, são importantes para a predição de acontecimentos futuros, a partir do histórico
26 CAPÍTULO 1. INTRODUÇÃO de dados.
Os detalhes da AS serão descritos no Capítulo 4.
1.4
Escopo Negativo
Como a solução proposta por esta dissertação faz parte de um contexto mais amplo, um conjunto de aspectos relacionados não será tratado no escopo deste trabalho.
Adicionalmente, os requisitos tratados na solução não formam um conjunto completo e fechado de funcionalidades que devem sempre estar presentes em qualquer AS para CI. Contudo, acredita-se que os requisitos identificados podem servir como base para a construção e/ou adaptação de uma AS para CI que combine tecnologias de IoT, tanto para coletar informações quanto para atuar no ambiente.
Os seguintes aspectos não fazem parte do escopo deste trabalho:
Modelo de Negócio: Aspectos relacionados ao suporte a modelos de negócio e es-tratégias de monetização e cobrança desta proposta não serão tratados neste trabalho; Análises de big data: Apesar da grande quantidade de dados trafegados na AS, este trabalho não faz nenhum tipo de análise de big data, apenas permite que um serviço que o faça seja criado;
Semântica dos Dados: Este trabalho não faz distinção entre semântica dos dados, uma vez que qualquer tipo de dado relacionado à cidade pode trafegar na AS.
1.5
Principais Contribuições
Como resultado do trabalho apresentado nesta dissertação, as seguintes contribuições podem ser destacadas:
Estado de arte de AS para CI: A partir das revisões da literatura executadas foi possível apresentar um resumo a respeito do estado da arte de CI no Brasil e no mundo, a partir da descrição de algumas abordagens com ou sem apoio dos setores estatais e privados;
Comparativo entre dois métodos de revisão literária: A partir dos resultados obtidos nas duas avaliações executadas (Revisão Sistemática e Revisão Exploratório) foi possível estabelecer um comparativo em relação a eficiência de cada método, principalmente relacionado à questões de pesquisa com relevância acadêmica e mercadológica;
Requisitos de uma AS para CI: Um conjunto de requisitos essencias que uma AS para CI deve atender foi estabelecido, a partir da análise das soluções existentes;
27 1.5. PRINCIPAIS CONTRIBUIÇÕES
Arquitetura de Software (AS) para CI e IoT: Uma AS que visa atender aos principais requisitos de CI que combina conceitos de IoT foi especificada;
Implementação inicial: Baseado na proposta desta dissertação, uma implementação inicial foi realizada e disponibilizado em domínio público. Esta implementação serve de guia para a utilização desta proposta em qualquer cidade;
Adaptação de dois métodos de avaliação: Não foi encontrado na literatura nenhum método de avaliação que fosse totalmente compatível com as peculiaridades do contexto deste trabalho. Logo, foi proposta e utilizada uma adaptação de dois métodos de avaliação: SAAM e ATAM. Esta adaptação foi aplicada, na qual se pôde comprovar a sua utilidade. Este método pode ser empregado em qualquer contexto semelhante, principalmente se a equipe esta geograficamente distribuída.
Além das contribuições finais listadas acima, alguns resultados intermediários deste trabalho estão sendo reportados na literatura, como mostrado a seguir:
TOMAS, G. H. R. P.; SILVA, W. M.; GARCIA, V. C. ; ALVARO, Alexandre, GAMA, Kiev. Towards a Smart City Architecture based on Internet Of Things. Internet of Things Technology and Applications in Information Sciences and Service Sciences, 2014.
DA SILVA, WELINGTON M. ; ALVARO, Alexandre ; TOMAS, GUSTAVO H. R. P. ; AFONSO, RICARDO A. ; DIAS, KELVIN L. ; Garcia, Vinicius C. . Smart cities software architectures. In: the 28th Annual ACM Symposium, 2013, Coimbra. Proceedings of the 28th Annual ACM Symposium on Applied Computing - SAC ’13. New York: ACM Press. p. 1722-1727.
TOMAS, G. H. R. P. ; SILVA, W. M. ; Garcia, Vinicius Cardoso ; ALVARO, Alexandre . Smart Cities Architectures: A Systematic Review. In: The 15th International Conference on Enterprise Information Systems (ICEIS), 2013, Angers. Proceedings of the 15th International Conference on Enterprise Information Systems (ICEIS). Lisboa: SCITEPRESS Science and Technology Publications, 2013. p. 410-417. SILVA, W. M. ; TOMAS, G. H. R. P. ; Garcia, Vinicius Cardoso ; ALVARO, Alexandre
. Synaptic City: An architectural approach using an OSGI Infrastructure and GMaps API to build a City Simulator. In: The 15th International Conference on Enterprise Information Systems (ICEIS), 2013, Angers. Proceedings of the 15th Internatio-nal Conference on Enterprise Information Systems (ICEIS). Lisboa: SCITEPRESS Science and Technology Publications, 2013. p. 427-434.
AFONSO, R. A. ; SILVA, W. M. ; TOMAS, G. H. R. P. ; ALVARO, Alexandre ; Garcia, Vinicius Cardoso . Br-SCMM: Modelo Brasileiro de Maturidade para Cidades
28 CAPÍTULO 1. INTRODUÇÃO Inteligentes. In: IX Simpósio Brasileiro de Sistemas de Informação (SBSI), 2013, João Pessoa. Anais do III Simpósio Brasileiro de Sistemas de Informação. Curitiba, PR, novembro de 2006. Porto Alegre: Sociedade Brasileira de Computação, 2013. v. 1. p. 511-516.
1.6
Organização da Dissertação
O restante desta dissertação está organizado conforme se segue:
Capítulo 2: contextualiza a temática de CI e IoT, além de esclarecer a interação entre as duas áreas de pesquisa;
Capítulo 3: apresenta a revisão bibliográfica sobre AS para CI que combinam tecnologias IoT, com o objetivo de identificar as principais soluções existentes na academia e na indústria e estabelecer um conjunto de requisitos fundamentais que uma nova AS deve atender;
Capítulo 4: descreve em detalhes a proposta da AS, ressaltando, principalmente, como cada requisito é implementado;
Capítulo 5: discute o processo de avaliação de AS realizado, totalmente remoto, durante o desenvolvimento da solução, e apresenta os principais resultados;
Capítulo 6: conclui esta dissertação por meio de de um resumo das principais contribuições desta pesquisa e discussões a respeito de alguns trabalhos relacionados. Por fim, são apresentadas algumas observações finais e direções para pesquisas futuras.
29 29 29
2
Cidades Inteligentes e Internet das Coisas
A alegria que se tem em pensar e aprender faz-nos pensar e aprender aindamais. —ARISTÓTELES
As cidades são sistemas complexos que concentram um grande conjunto de serviços e de infraestruturas e consomem um crescente volume de recursos e de energia, com um significativo impacto a nível econômico, ambiental e de qualidade de vidaCOMPUTERWORLD(2013).
A literatura apresenta diversas definições do termo Cidade, porém a mais aceita é descrita em kuper1995social como “um povoado relativamente grande e permanente”. Geralmente, uma cidade possui alta densidade populacional e os cidadãos interagem com indústrias, comércios e serviços. No quesito operacional, cidades são baseadas em um conjunto de serviços urbanos básicos: energia, água, transporte, infraestrutura de informação e comunicação, mercado, saúde pública e saneamento públicoMORVAJ; LUGARIC; KRAJCAR(2011).
Este conjunto de serviços urbanos básicos é justamente onde se localizam os principais problemas das cidadesMORVAJ; LUGARIC; KRAJCAR(2011). Além disso, com o crescimento populacional supracitado no Capítulo anterior e o envelhecimento das infraestrturas, surge a necessidade de aprimorar técnicas para otimizar a utilização destes serviços KRCO (2010). Simultaneamente, necessita-se de um sistema no qual os demais serviços possam ser criados e/ou otimizados para suprir as necessidades dos cidadãos.
Estes fatores demonstram os grandes desafios para os gestores das cidades. Problemas relacionados ao tráfego, segurança, consumo de água e energia, dentre outros, têm sido cada vez mais difíceis de serem administrados. A saber:
Segurança: Os altos índices de criminalidade são grandes preocupações da sociedade. Assaltos, tráfico de drogas e crime organizado são manchetes na TV e nos jornais todos os dias e são uma dura realidade das cidades brasileiras. Catástrofes como enchentes são um problema de defesa civil devido a ocupação desordenada de encostas e morros, ameaçando diversas comunidades em cidades por todo o Brasil. Segundo o Mapa das Ocorrências Registradas pelas
30 CAPÍTULO 2. CIDADES INTELIGENTES E INTERNET DAS COISAS Polícias Civis (Janeiro de 2004 a Dezembro de 2005)1, desenvolvido pela Secretaria Nacional de Segurança Pública, entre 2004 e 2005 a taxa de roubo no Brasil por 100 mil habitantes aumentou de 516,7 para 519,4;
Transporte: O sistema de transporte coletivo é de qualidade e eficiência questionáveis na maioria das cidades brasileiras. Com o aumento do poder aquisitivo no Brasil e as crescentes facilidades no financiamento de veículos, a quantidade de motocicletas e automóveis no país é cada vez maior. A infraestrutura viária não acompanha este crescimento da frota nacional e o trânsito é um problema em muitas cidades. Soluções paliativas, como rodízio de veículos, apenas atenuam o crescimento do problema do tráfego, quando, na verdade, uma otimização no sistema de transportes coletivos faz-se necessária. Dois exemplos da situação do transporte coletivo no Brasil podem ser encontrados na Pesquisa de Mobilidade Da Região Metropolitana de São Paulo2: i) entre 2002 e 2012, a frota de veículos particulares cresceu 18%; ii) no mesmo período, a taxa de motorização passou de 184 para 212 automóveis particulares por 1.000 habitantes;
Saúde: No Brasil, a infraestrutura do sistema de saúde é insuficiente para atender à demanda. Vários hospitais públicos possuem atendimento deficitário, forçando pacientes a aguardarem em longas filas de espera e o mesmo problema vem assolando pacientes do sistema privado com planos de saúde. De acordo com a pesquisa da Assistência Médico-Sanitária(AMS)3 realizada em 2002 pelo IBGE, houve uma variação na quantidade de leitos disponíveis no Brasil, de 3,65 leitos por 1 000 habitantes em 1992, para 2,70 em 2002, uma redução de quase 25%;
Uso sustentável de recursos: O aumento do poder aquisitivo das classes mais pobres gerou uma elevação no consumo de energia elétrica, mas classes média e alta ainda representam a maior fatia do consumo de energia elétrica, pelo padrão de consumo e conforto que envolve diversos tipos de eletroeletrônicos. Em Foz do Iguaçu, por exemplo, 7% das famílias corres-pondem a mais de 65% do consumo de energia elétrica da cidadeHEBERTY H. AMARAL;
FERNANDES(2010);
Gestão de resíduos: O lixo tem se tornado um grande problema para cidades de países em desenvolvimento. Enquanto cidades de países desenvolvidos põem em prática diversas soluções de tratamento de lixo orgânico e de reaproveitamento de materiais recicláveis, cidades de países como o Brasil não conseguem definir ou executar práticas de reciclagem, salvo raras exceções. Por exemplo, de acordo com a Associação Brasileira de Empresas de Limpeza Pública e Resíduos Especiais (ABRELPE)4, em 2012 cerca de 60% dos municípios registraram alguma iniciativa de coleta seletiva. Embora seja expressiva a quantidade de municípios com iniciativas de coleta seletiva, muitas vezes estas atividades resumem-se à disponibilização de pontos de entrega voluntária ou convênios com cooperativas de catadores, que não abrangem a totalidade do território ou da população do município.
1
http://portal.mj.gov.br/services/DocumentManagement/FileDownload.EZTSvc.asp?DocumentID={42595482-B0DD-4185-918E-80E4BAFAFC72}&ServiceInstUID={B78EA6CB-3FB8-4814-AEF6-31787003C745}
2http://www.metro.sp.gov.br/pdf/mobilidade/pesquisa-mobilidade-2012.pdf
3http://www.ibge.gov.br/home/estatistica/populacao/condicaodevida/ams/default.shtm
31 2.1. CONCEITO DE Cidade Inteligente (CI) Apesar da evidente necessidade de cidades cada vez mais inteligente e a atenção que a academia tem destinado para o tema, ainda não há um consenso a respeito da definição do conceito de Cidade Inteligente (CI), nem quanto ao ambiente mais adequado para empregá-lo
GIFFINGER; PICHLER-MILANOVI ´C(2007);CARAGLIU; DEL BO; NIJKAMP(2009);LI
et al.(2011). Logo, a Seção 2.1 visa clarificar a definição de CI a ser utilizada durante este
trabalho.
Um paradigma que vem sendo utilizado em diversas abordagens para CI é a utilização de IoT como ferramenta para captar dados e atuar sobre os serviços urbanos. Logo, a Seção 2.2 visa contextualizar a IoT, a partir de alguns exemplos de aplicações.
Por sua vez, a Seção 2.3 inicialmente pontua alguns dos principais desafios, princi-palmente, nas cidades brasileiras. Em seguida, apresenta-se a integração existente entre estas duas áreas de pesquisa e alguns exemplos de utilização desta integração para mitigar alguma deficiência urbana.
Por fim, a Seção 2.4 consolida as principais contribuições deste Capítulo.
2.1
Conceito de Cidade Inteligente (CI)
A literatura apresenta algumas definições para o termo CI, porém ainda não há um consenso a respeito deste conceito. A seguir, são apresentadas as principais definições descritas na literatura e a definição que será utilizada no decorrer deste trabalho.
Em Giffinger-2007 é ilustrada uma série de diferentes ambientes na qual o termo foi utilizado. Por exemplo, a definição de CI, quando associada com economia, é uma cidade com indústria inteligente, na qual são empregadas tecnologias de última geração para aprimorar os aspectos financeiros e econômicos. No aspecto educação, Giffinger et. al. caracteriza CI como o nível de escolaridade dos cidadãos. Além disso, de acordo com Giffinger et. al., uma CI também pode ser mensurada a partir do relacionamento entre o governo e os cidadãos e a utilização de modernas tecnologias, não somente relacionada à Tecnologia da Informação e Comunicação (TIC), mas também à outros domínios, como transporte e logística.
Por fim, Giffinger et. al. define seis características principais para cidades inteligentes: smart economy, smart people, smart governance, smart mobility, smart environment e smart living. A partir disso, uma CI é uma cidade com bom desempenho nestas seis características, construída a partir da combinação inteligente de atividades independentes, auto-decisivas e em prol dos cidadãos. Esta definição, oriunda dos resultados do projeto European Smart Cities
CARAGLIU; DEL BO; NIJKAMP(2009), é a mais bem conhecida e com maior aceitação na
literaturaHERNáNDEZ-MUñOZ et al.(2011), pois permite quantificar o nível de inteligência das cidades. Por exemplo, inovação faz parte do eixo smart economy e é calculado pela quantidade de patentes por habitantesHAUBENSAK(2011).
Apesar dessa definição ser considerada a mais abrangente, cada trabalho adota uma definição mais apropriada para o escopo do projeto. Em Kehua-2011, a IBM define CI como o uso de TIC para capturar, analisar e integrar informações relevantes no núcleo dos sistemas
32 CAPÍTULO 2. CIDADES INTELIGENTES E INTERNET DAS COISAS das cidades. Ao mesmo tempo, uma CI pode tomar decisões inteligentes para diferentes tipos de necessidades, incluindo aspectos diários, proteção ambiental, segurança pública, serviços da cidade e atividades industriais e comerciais.
Analogamente, em moss2009informed o termo CI é definido como uma cidade que com-bina TICs com a infraestrutura física, para prover conveniências aos cidadãos, como: eficiência energética; aumento da qualidade da água e do ar; identificar e resolver rapidamente qualquer problema no funcionamento dos sistemas da cidades; mitigar desastres; capturar dados para apurar a tomada de decisões e a utilização de recursos de forma eficiente. Logo, a CI não pode ser vista como a soma de partes independentes, mas uma rede de infraestrutura interconectada, na qual cada recurso é dependente do outro.
Em Steventon-2005, as CIs se referem aos ambientes físicos em que as TICs e os sistemas de sensoriamento são transparentes para os cidadãos, porém desepenham papel fundamental para garantir o funcionamento operacional da cidade.
Uma CI também é definida como um território no qual as TICs propiciam inovações em diversos segmentos, combinando a criatividade e o talento individual em prol da população da cidade, instituições locais e orgãos governamentaisKOMNINOS(2002);SCHUMPETER
(1934).
Em Dossier-2013 defende-se que CI não é um conceito tecnológico, mas um conceito sociotécnico. Integra-se três vertentes essenciais: a tecnologia, as pessoas e as instituições. Uma CI tem que centrar a sua atuação nos cidadãos e nas comunidades onde vivem e trabalham.
Em relação aos aspectos governamentais, toppeta2010smart acredita que uma CI deve identificar e otimizar os processos governamentais, mitigando a burocracia que envolve o processso de inovação de soluções e gerenciamento de técnicas sustentáveis.
Por fim, CI pode ser considerada um conjunto de comunidades inteligentes LI et al.
(2011). A partir dessa perspectiva, a World Foundation for Smart Communities (Fundação Mun-dial para Cidades Inteligentes)5define que uma CI é uma comunidade com avanços significativos em TICs que transformam o cotidiano dos cidadãos, melhorando os aspectos relacionados ao trabalho e ao lazer de forma incremental e transparenteEGER(2011).
Além da falta de consenso quanto ao termo CI, existem outros termos que são comu-mente aplicados aos mesmos contextos, como “cidades virtuais”, “cidades digitais”, “cidade informatizada”, “cidade eletrônica” KOMNINOS (2006). Ao generalizar esse conceito aos ambientes inteligentes que se relacionam com serviços urbanos, vários sinônimos de CI são frequentemente empregados, como “information city”, “wired city”, “telecity”, “knowledge-based city”, “electronic communities”, “electronic community spaces”, “flexicity”, “teletopia”, “cyberville”DROEGE(1997).
Essa ausência de consenso é devido aos múltiplos movimentos científicos, tecnológicos e sociais que compõem o contexto de uma cidadeKOMNINOS(2006). Em cada disciplina, existe uma série de problemas que afetam diretamente diversos serviços existentes, como transporte,
33 2.2. CONCEITO DE IOT! (IOT!) segurança, provisão/consumo de energia elétrica e água, saneamento básico, utilização de recursos naturais, controle de catástrofes, principalmente no que tange a gestão individual e influência mútua, até como planejar e otimizar a utilização em resposta a diferentes cenários.
Neste trabalho, uma combinação destas principais definições com diferentes vieses é considerada:
“Cidade Inteligente (CI) é a combinação de Tecnologia da Informação e Comunicação (TIC) com todos os aspectos que compõem uma cidade, desde aos aspectos físicos até governamentais,
combinados de forma a satisfazer às necessidades dos cidadãos ”.
2.2
Conceito de Internet of Things (Internet das Coisas) (IoT)
De acordo com giusto2010internet, a Internet of Things (Internet das Coisas) (IoT), também conhecida como Internet dos Objetos, é um paradigma que vem crescendo no cenário moderno de telecomunicações sem fio. A idéia básica deste conceito é a presença de um conjunto de objetos (things) - como Radio-Frequency IDentification (RFID), sensores, atuadores, telefones celulares - que, por meio de mecanismos de endereçamento único (como a Internet), são capazes de interagir e cooperar uns com os outros para alcançar objetivos em comum.Sem dúvida, o principal impacto da IoT será sobre alguns aspectos do cotidiano e comportamento das pessoasATZORI; IERA; MORABITO(’2010’). Por exemplo, já existem aplicações IoT que permitem o monitoramento de atividades físicas6e controle de medicamentos de uso contínuo7. Outro conjunto de aplicações que interferem no cotidiano das pessoas são as voltadas para o ambiente doméstico. Por exemplo, ligar e desligar aparelhos domésticos à distância8, medir a temperatura da casa9e até mesmo monitorar o jardim10 já são realidades.
Ao considerar a diversidade de aplicações ilustradas acima, pode-se inferir o motivo pelo qual IoT é incluída pelo Conselho Nacional de Inteligência dos EUA (NIC) na lista das seis tecnologias civis “com impactos potenciais sobre o poder nacional dos EUA” (NIC). Além disso, o NIC prevê que até 2025 os “objetos” estarão presentes em todas as coisas cotidianas, como documentos, embalagens de alimentos e móveis.
A partir da evidente gama de possibilidade oriundas da IoT, torna-se natural associá-las ao contexto de CI. Em uma CI, para o funcionamento adequado dos serviços inteligentes é necessária a utilização de tecnologias que sejam capazes de captar e distribuir estas informações
LI et al.(2011) para uma AS centralizadaHAUBENSAK(2011).
6http://www.fitbit.com/
7http://www.vitality.net/glowcaps.html
8http://www.belkin.com/us/Products/home-automation/c/wemo-home-automation/
9https://nest.com/
34 CAPÍTULO 2. CIDADES INTELIGENTES E INTERNET DAS COISAS
2.3
Integração de Cidade Inteligente (CI) com Internet of Things
(Internet das Coisas) (IoT)
A partir dos problemas comumente enfrentado pelas cidades, surge o desafio de com-binar diferentes informações com TIC, a fim de mitigar estes problemas e promover melhores condições de vida aos cidadãos. Neste sentido, as tecnologias IoT também podem ser integradas como ferramentas para monitorar os eventos de um ambiente, atuar a fim de conter uma situação emergencial ou, até mesmo, propagar uma informação relevante.
Os cenários da utilização de TICs e IoT para esta finalidade são os mais variados. Um exemplo é o monitoramento do trânsito em estradas e rodovias. Este monitoramento, a partir de sensores espalhados pelas vias, poderia alimentar sistemas de informação capazes de gerar rotas em tempo real, redistribuindo os veículos, aumentando a fluidez das vias. Esta redistribuição poderia ser feita ao enviar informações para os dispositivos GPS dos veículos ou até mesmo por um conjunto de painéis indicativos para orientar os motoristas sobre a melhor rota. A comunicação e a troca de informações entre estes diferentes objetos constituem um cenário de uso clássico de IoT.
Outro exemplo da utilização maciça de TIC e IoT é o controle do consumo residencial de energia elétrica a partir de eletrodomésticos habilitados a otimizar seu funcionamento de acordo com os hábitos e necessidades de seus moradores. Além disso, estes eletrodomésticos, atuando em uma rede de objetos, podem trocar informações a fim de otimizar tarefas rotineiras dos cidadãos, tais como, compras nos supermercados e manutenção do lar.
Um caso real da eficiência em aplicar TICs baseada em IoT é a redução de 30% das emissões de carbono em Londres, apenas com a mudança de comportamento dos cidadãos, a partir do acompanhamento de todas as tarefas dia-a-diaTOMORDY(2011). Esta mudança de comportamento foi possível a partir de uma rede sensores que fornecia informações do nível de carbono em tempo real .
2.4
Considerações Finais do Capítulo
Este Capítulo contextualizou as duas grandes áreas de pesquisa deste trabalho: Cidade Inteligente (CI) e Internet of Things (Internet das Coisas) (IoT).
Como discutido previamente, ainda não há um consenso a respeito da definição mais adequada para CI. Logo, a Seção 2.1 apresentou algumas definições disponíveis na literatura. A partir destas, a definição a ser utilizada neste trabalho foi explicitada, considerando os diferentes pontos de vistas dos demais autores.
Em seguida, a IoT foi definida e exemplificada na Seção 2.2. A partir desta, pode-se notar a evidente correlação entre estas duas áreas de pesquisa. Este fato pode ser comprovado ao analisar as principais aplicações de IoT: a grande maioria visa otimizar algum aspecto
35 2.4. CONSIDERAÇÕES FINAIS DO CAPÍTULO relacionado ao cotidiano das pessoas, tanto no ambiente profissional quanto no doméstico
ATZORI; IERA; MORABITO(’2010’).
Por fim, a Seção 2.3, apresentou alguns exemplos de utilização de IoT e dos conceitos de CI para mitigar estes problemas urbanos. Algumas destas iniciativas já estão sendo desenvolvidas e validadas, porém, para de fato se estabelecer uma CI, é necessária a integração destas iniciativas a partir de uma AS centralizadaFILIPPONI et al.(2010);ANTHOPOULOS; FITSILIS(2010);
HAUBENSAK(2011);SANCHEZ et al.(2011);HERNáNDEZ-MUñOZ et al.(2011).
Diversas abordagens já estão sendo desenvolvidas utilizando o paradigma: IoT como ferramenta para captar e atuar sobre os serviços urbanos em prol da consolidação de uma CI. Logo, o próximo Capítulo apresenta exemplos destas abordagens, encontradas a partir de dois métodos de revisão da literatura.
37 37 37
3
Revisão da Literatura de Arquiteturas de
Software para Cidades Inteligentes
Cada dia sem treinar, estudar ou se dedicar a algo realmente importante significa um dia mais distante da realização do seu sonho. —BERNARDO ROCHA DE REZENDE, 2010 (Transformando Suor em
Ouro)
No contexto de uma Cidade Inteligente (CI), as Arquitetura de Software (AS) são de suma importância por uma série de fatores. Primeiramente, uma AS pode permitir a troca de informações entre diferentes serviços urbanos, a fim de fornecer serviços mais efetivos para os cidadãos. Outro fator relevante é a possibilidade de criar aplicações Internet of Things (Internet das Coisas) (IoT) que consumam ou forneçam algum tipo de dado para uma determinada finalidade, como por exemplo, captar informações de pontos turísticos da cidade para melhorar a experiência dos turistas. Esta integração das aplicações IoT com a AS será independente da tecnologias utilizada, devido a vasta gama de sensores, atuadores, pessoas, sistemas, drivers e qualquer outro componente capaz de interagir com os serviços urbanos. Além disso, a AS pode permitir que governos adotem ações estratégicas voltadas para as reais necessidades dos cidadãos.
Ao adotar um modelo como esse, na qual uma AS centralizada processa e distribuí dos dados dos serviços urbanos, uma CI pode de fato ser implementada, uma vez que existirá um meio pelo qual os serviços urbanos poderão ser integradosFILIPPONI et al.(2010);ANTHOPOULOS;
FITSILIS(2010);HAUBENSAK(2011);SANCHEZ et al.(2011);HERNáNDEZ-MUñOZ et al.
(2011).
Nos ínicio dos anos 90, a AS era basicamente voltada para os sistemas cliente-servidor, na qual uma máquina exercia o papel de cliente requisitante e a outra máquina, o papel de servidor com a responsabilidade de atender as requisiçõesSOMMERVILLE(2007). Deste modo, a arquitetura cliente-servidor tornou-se padrão no desenvolvimento de software, sendo em nossa
38 CAPÍTULO 3. REVISÃO DA LITERATURA DE ARQUITETURAS DE SOFTWARE PARA CIDADES INTELIGENTES
atualidade ainda explorada e, sobretudo, mesclada a outras AS para atender ao objetivo de um softwareFOWLER(2012). Já na década de 2000, nota-se que as aquiteturas propostas são cada vez mais heterogêneas, na qual estilos e tecnologias diferenciadas se misturam para formar novas versões de representações arquiteturaisBASS; CLEMENTS; KAZMAN(1998).
Dessa forma, o que se almeja investigar neste Capítulo é o estado da arte de Arquiteturas de Software (AS’s) para CI que empregam IoT na solução de problemas urbanos.
Para aumentar a abrangência desta investigação, duas revisões da literatura foram rea-lizadas: Revisão Sistemática (Seção 3.1) e Exploratória (Seção 3.2). As revisões sistemáticas possibilitam a replicação do procedimento, pois possuem um processo repetitível. Porém, a temática deste trabalho envolve aspectos mercadológicos que podem ser excluídos dessas revi-sões, por não serem publicados nos veículos convencionais. Logo, as revisões exploratórias são importantes, pois permitem incluir diversos trabalhos de diferentes veículos de publicação, como por exemplo, relatório técnico de empresas. Porém, esse tipo de revisão possui certa resistência por ser baseado totalmente nas buscas não-metódicas do pesquisador.
Estes dois métodos de revisão literária também têm como objetivo identificar a necessi-dade de criar ou adaptar um padrão arquitetural específico para este contexto de CI e IoT.
Na Revisão Sistemática, foram selecionadas 11 abordagens. Já na Revisão Exploratória 16 abordagens foram selecionadas. Nestas duas revisões, 7 abordagens foram encontradas em ambas as revisões. Estes trabalhos destacam-se por envolverem aspectos acadêmicos e mercadológicos. Nestes casos, optou-se por descrevê-los apenas na Revisão Sistemática. Por fim, ao todo, foram encontrados 20 abordagens condizentes com o objetivo deste trabalho.
Após a descrição das abordagens encontradas nas duas revisões, a Seção 3.3 visa conso-lidar as características mais relevantes de cada abordagem. Em seguida, pretende-se estabelecer um conjunto de requisitos que uma AS para CI deve atender (Seção 3.4).
Este conjunto de requisitos e os demais resultados da Revisão Exploratória foram publi-cados em SAC:2013. Já os resultados da Revisão Sistemática foram publipubli-cados em ICEIS-2013. Por fim, a Seção 3.6 dicute os pontos mais relevantes deste Capítulo e a Seção 3.7 finaliza o Capítulo.
3.1
Revisão Sistemática
Conforme brevemente introduzido na Seção anterior, de acordo com Kitchenham-2007 o objetivo de uma Systematic Literature Review (Revisão Sistemática da Liteturatura) (SLR) é fornecer indícios para o desenvolvimento de pesquisas baseadas em evidências, a partir da seleção e síntese das pesquisas mais relevantes. Além disso, a SLR deve identificar, avaliar, interpretar e comparar todas as fontes relevantes para uma determinada questão de pesquisa.
Diversas abordagens arquiteturais têm sido propostas na literatura, mas essa revisão foca-se somente nas AS’s que utilizam o paradigma de combinar IoT como ferramenta para a implementação de uma CI.
39 3.1. REVISÃO SISTEMÁTICA
3.1.1
Metodologia de Pesquisa
O objetivo desta subseção é descrever a estratégia de busca e todos os passos utilizados para filtrar e extrair as informações relevantes de cada pesquisa. Essa estratégía segue as recomendações descritas por Kitchenham-2007.
3.1.1.1 Estratégia de Busca e Fontes de Dados
A estratégia empregada para a construção das strings de buscas segue a mesma metodo-logia emprega por Kitchenham-2007, Chen-2009 e Khurum20091982. Esta estratégia é ilustrada na Figura ??.
file = images/stringprocess.eps, width = 10cm
Figura 3.1: Estratégia de Busca
Seguindo esta estratégia, a seguinte string de busca foi definida:
(smart city OR intelligent city OR digital city OR urban environment) AND (internet of things OR heterogeneous sensors) AND (architecture OR middleware OR platform)
Devido à variação dos resultados de cada motor de busca das principais fontes digitais da literatura (como IEEExplore, Springer Link e ACM Digital Library), não é possível utilizar a mesma string de busca em todas as fontes digitaisCHEN; ALI BABAR; ALI(2009). Logo, foi necessário um esforço para garantir que as strings utilizadas sejam logicamente e semanticamente equivalentes.
Após definir a string de busca, realizou-se a busca nos seguintes repositórios digitais (1. IEEExplore; 2. Science Direct; 3. ACM Digital Library; 4. Springer Link; 5. CiteSeerX; 6.Academia.edu; e 7. ISI Web of Science). Além disso, considerando que CI é uma linha de pesquisa que envolve diversos aspectos de negócio e mercado, realizou-se a busca por patentes no banco de patentes World Intellectual Property Organization(WIPO)1.
Em relação à busca manual, foi realizada nos seguintes anais (1. International Conference on Computational Intelligence, Modeling and Simulation(IJCCI); 2. International Conference on Intelligent Environments(IE); 3. Multimedia Information Networking and Security (MINES); 4. Emerging Technologies for a Smarter World (CEWIT); 5. International Conference on Innovative Mobile and Internet Services in Ubiquitous Computing(IMIS)).
A Tabela 3.1 ilustra a quantidade de abordagens encontradas de acordo com as fontes de pesquisa.
40 CAPÍTULO 3. REVISÃO DA LITERATURA DE ARQUITETURAS DE SOFTWARE PARA CIDADES INTELIGENTES
Tabela 3.1: Quantidade de abordagens por fonte de pesquisa
Fonte de Dados #
1. IEEExplore 24
2. Science Direct 1291 3. ACM Digital Library 1933 4. Springer Link 1484
5. CiteSeerX 399
6. Academia.edu 42
7. ISI Web of Science 4
8. WIPO 1233 9. IJCCI 4 10. IE 8 11. MINES 3 12. CEWIT 3 13. IMIS 7 Total 6435
A qualidade dos motores de busca podem influenciar a integridade das abordagens iden-tificadas como primários, conforme discutido em Chen-2009. Dessa forma, algumas abordagens podem não ter sido incluídas, caso os autores tenham usado outros termos além dos mencionados acima.
3.1.1.2 Seleção das Abordagens
Nesta SLR foram selecionadas somente abordagens que propõem uma AS e/ou fra-meworkque centralize os diversos contextos e tecnologias que envolvem o ambiente urbano. Para tal, 5 pesquisadores, sendo 2 mestrandos, 2 PhD e 1 doutorando, foram envolvidos no processo de seleção e classificação
Após definir a string de busca e as fontes, foram definidos filtros para classificar as abordagens encontradas. A Figura ?? ilustra os resultados de cada filtro, baseado na quantidade de abordagens resultantes.
file = images/stepfilters.pd f , width = 10cm
Figura 3.2: Resultado da filtragem das abordagens
O objetivo destes filtros é selecionar as principais abordagens que descrevem AS’s para CI baseadas em IoT. O primeiro filtro corresponde a todas as abordagens encontradas nas fontes de pesquisa, descritas anteriormente, a partir da string de busca.
O segundo filtro foi aplicado para excluir as abordagens que não foram publicadas entre 2008-2012. Este intervalo foi escolhido após analisar e verificar que as abordagens propostas antes de 2008 relatam CI e IoT isoladamente, ou seja, as abordagens foram propostas para solucionar problemas específicos de um contexto usando apenas uma tecnologia, sem analizar a
41 3.1. REVISÃO SISTEMÁTICA conexão entre os diferentes contextos urbanos.
Para realizar a terceira filtragem, todos os títulos das abordagens foram lidos e resultaram apenas 71. Esta alta discrepância com o valor resultante do filtro anterior está relacionada a falta de eficiência das engines de busca, como discutido em Kitchenham:2009:SLR:1465742.1466091.
O quarto filtro corresponde à elimição de abordagens duplicadas. Já, para realizar o quinto filtro, todos os resumos foram lidos e discutidos entre a equipe.
Cada uma das 33 abordagens resultantes foram lidas e discutidas entre a equipe desta SLR. Em seguida, apenas 11 abordagens resultaram como relevantes para a proposta deste trabalho.
Em relação aos critérios de inclusão, as abordagens foram incluídas se:
Propõem uma AS para centralizar a informação de diferentes contextos urbanos OU
Descreve uma AS IoT na qual seu design permite a combinação de uma ou mais tecnologias diferentes e/ou contextos urbanos E
Abordagens que ainda não foram selecionadas.
Durante esta revisão, foram encontradas diversas abordagens que descrevem a mesma AS. Neste caso, somente o trabalho mais completo foi considerado. Após essa etapa, restaram 11 abordagens para serem analisadas.
Existem diversas razões para esta alta discrepância entre a quantidade inicial de tra-balhos com a quantidade resultante. A principal razão é a alta quantidade de estudos du-plicados com resultados semelhantes. Estas razões são discutidas e explicadas em Kitche-nham:2009:SLR:1465742.1466091.
Em relação às patentes, não foi encontrada nenhuma patente relacionada. Geralmente, as patentes mais próxima à temática dessa revisão sistemática descrevem um algoritmo específico ou a otimização de uma técnica empregada em um ambiente controlado.
3.1.2
Resultados
Após realizar as buscas nas principais fontes de pesquisa, filtrar as abordagens de acordo com os critérios descritos na Seção anterior, restaram 11 abordagens. Estas abordagens foram lidas e discutidas entre os 5 pesquisadores supracitados, com o objetivo de realçar os tópicos relacionados às questões de pesquisa. Esta seção visa discutir estas abordagens, iniciando por uma descrição inicial de cada abordagem.
Caso uma abordagem tenha algum nome, este será utilizado para referir-se a ela. Caso contrário, será dado um nome usando o sobrenome do primeiro autor seguido pelo ano de publicação. A Tabela 3.2 lista as 11 abordagens analisadas, organizadas em ordem cronológica.
42 CAPÍTULO 3. REVISÃO DA LITERATURA DE ARQUITETURAS DE SOFTWARE PARA CIDADES INTELIGENTES
Tabela 3.2: Abordagens resultantes por ordem cronológica
ID Abordagem Ano Referência
1 Al-Hader’2009 2009 AL-HADER et al.(2009) 2 Anthopoulos’2010 2010 ANTHOPOULOS; FITSILIS(2010)
3 SOFIA 2010 FILIPPONI et al.(2010)
4 EcoCity/ISMP-UC 2011 LEE; BAIK; CHOONHWA LEE(2011)
5 CPAF 2011 MOSTASHARI et al.(2011)
6 SmartSantander 2011 SANCHEZ et al.(2011)
7 IMS 2011 SHAO(2011)
8 USN 2011 HERNáNDEZ-MUñOZ et al.(2011)
9 Wu’2011 2011 WU et al.(2011)
10 Fazio’2012 2012 FAZIO et al.(2012)
11 S3OiA 2012 VEGA-BARBAS et al.(2012)
3.1.2.1 Abordagens Resultantes
Arquitetura de Software (AS) para CI podem ser desenvolvidas a partir de diferentes áreas do conhecimento. Esta Seção visa fornecer uma descrição alto-nível das AS’s encontradas, ordenadas em ordem cronológica, ressaltando os principais objetivos e características de cada abordagem.
Iniciando por Al-Hader’2009 AL-HADER et al. (2009), no qual é proposto uma AS baseada em quatro princípios: aplicações, negócios, gerenciamento de processos e infraestrutura de redes. O primeiro princípio corresponde às aplicações que fazem uso de diferentes tecnologias para monitorar sensores, como Global Positioning System (GPS). De acordo comAL-HADER
et al. (2009), a maioria destas aplicações atendem as demandas operacionais das cidades,
porém, ao utilizar as regras definidas no segundo princípio - negócios - elas podem agregar soluções economicamente viáveis. O terceiro princípio é o gerenciamento de processos na qual relacionamentos, regras, estratégias e políticas entre as aplicações e as unidades de negócios são definidas. Finalmente, o último princípio corresponde a toda a infraestrutura de rede, responsável por conectar os outros três princípios.
anthopoulos2010digital propõem uma AS baseada na análise de diferentes iniciativas já implementadas, modelada a partir dos princípios das Enterprise ArchitecturesBOOCH(2010). anthopoulos2010digital enfatizam que a construção de uma CI deve ser guiada pela integração de sistemas legados com as novas infraestruturas, migração e reuso de dados existentes, simplifi-cação dos processos urbanos, otimização da utilização de recursos naturais, interoperabilidade de sistemas e equipamentos e prover ferramentas para monitoramento, gerenciamento e análises.
A integração de sensores é um dos objetivos da AS conhecida como SOFIAFILIPPONI
et al. (2010), centrada no conceito de Smart Environment (Ambiente inteligente) como um
ecossistema de interação de objetos, como sensores, dispositivos e sistemas embarcados em geral. A AS SOFIA é baseada em eventos, na qual cada evento corresponde à mudança de estado de qualquer sistema de TIC. Estes eventos podem ser iniciados a partir de eventos do mundo
43 3.1. REVISÃO SISTEMÁTICA real (como detecção de presença) ou ao término de algum processamento.
O monitoramento e gerenciamento de sensores também são objetivos definidos pela abordagem denomida EcoCity/ISMP-UC LEE; BAIK; CHOONHWA LEE (2011). A AS EcoCity/ISMP-UC é constituída de três camadas. A camada inferior consiste de diferentes tipos de sensores, atuadores e outros dispositivos distribuídos pela cidade. Já a camada superior representa um conjunto de serviços U-eco City. Entre essas duas camadas existe um middleware responsável por coletar e processar informações contextuatilizadas. Esta AS orientada à serviços possibilita o desenvolvimento de serviços independentes e que sejam consumidos via interfaces padronizadas, como web services.
Por sua vez, mostashari2011citizens propõem um framework denominado Cognitive Process Architecture Framework (CPAF), o qual permite o desenvolvimento de diferentes serviços urbanos com habilidades cognitivas. Nesse contexto, cognição é a habilidade do sistema aprender a partir das experiências anteriores e adaptar seu comportamento a partir destas conclusões. Um sistema cognitivo é capaz de perceber e responder às mudanças no ambiente, portanto, pode melhorar a performance dos serviços urbanos.
Outra abordagem na qual utiliza vários sensores embarcados nos contextos urbanos é SmartSantander SmartSantander-2011. A quantidade de dispositivos configurados na AS é superior à 12.000. O SmartSantander provê: i) uma AS refência para sistemas IoT; ii) um escalável e heterogêneo laboratório para prototipação de aplicações IoT; iii) um conjunto representativo de casos de uso implementados para facilidades de experimentação e iv) um grande conjunto de experimentos relacionados à Internet do Futuro.
Com o mesmo objetivo de interoperabilidade de objetos abordado em Smart Santander, a abordagem IMSSHAO(2011) propõe uma AS que combina IoT com os cidadãos das cidades. Changheng-2011 acreditam que o desenvolvimento de TIC esta relacionado à proximidade com os moradores das cidades. Para isso, IMS é baseada em três camadas: acesso, sessão e aplicações. A camada de acesso é a camada mais baixa e provê toda a infraestrutura para acessar a rede IMS a partir de diferentes terminais. A camada de sessão provê o gerenciamento de sessões entre a camada inferior (Acesso) e a superior (Aplicações). Finalmente, a camada de aplicação permite o desenvolvimento de diversas aplicações.
A interoperabilidade de objetos também é explorada por Hernandez-2011, que propõem uma AS denominada Ubiquitous Sensor Network (USN). O objetivo é prover uma infraestrutura que seja capaz de integrar sensores heterogêneos e distantes geograficamente em um base centralizadora, na qual serviços podem ser facilmente desenvolvidos. Adicionalmente, a AS inclui um módulo conhecido como USN-Gateway que possibilita a interoperabilidade entre redes de sensores e redes IP.
Da mesma forma que USN, Wu’2011WU et al.(2011) propõem um middleware para gerenciamento de informações dispersas oriundas de múltiplas fontes, com diferentes formatos e estruturas. Esta abordagem é construída seguindo os princípios de Arquitetura Orientada a Serviços (SOA), baseada em duas principais componentes: modelo Contract-First e agente de
44 CAPÍTULO 3. REVISÃO DA LITERATURA DE ARQUITETURAS DE SOFTWARE PARA CIDADES INTELIGENTES
troca de mensagens.
Em Fazio’2012 FAZIO et al. (2012) é proposto uma AS que permite a agregação de diferentes tipos de informações oriundas de diferentes sensores distribuídos pelos contextos urbanos. O principal objetivo dessa abordagem é de prover dados contextualizados, combinando diferentes fontes de dados. Para isso, a AS consiste de quatro camadas: I) REST que permitem interações sob-demanda com os clientes, aplicações e outros serviços; II) Sensor Observation Service Agent (SOS Agent)que suporta todas as funcionalidades para a descrição de sensores; III) Sensor Manager capaz de interagir com sensores, coordenar suas atividades e coletar dados para as demais camadas; IV) Sensing Infrastructure é composto de vários diferentes sensores.
Finalmente, a abordagem conhecida como S3OiAVEGA-BARBAS et al.(2012) também permite o gerenciamento de diferentes tipos de informação. A AS S3OiA é sintática e semântica aos princípios do SOA, que permitem a integração de qualquer tipo de dispositivo IoT. Com essa estratégia, a AS suporta a composição de aplicações ad hoc. Para tal, foi definido dentro do projeto da AS um conjunto de módulos de dependência semântica de gestão que controlam serviços e recursos, permitindo que os aplicativos já criados possam continuar a execução, apesar das mudanças do contexto.
3.2
Revisão Exploratória
As abordagens e iniciativas em CI que se baseiam na adoção de IoT podem ser desen-volvidas tanto no ambiente acadêmico quanto no empresarial. Por exemplo, pode-se ressaltar o interesse das organizações governamentais e/ou privadas, como MicrosoftPLANIT(2012), além das iniciativas nos modelos de Startup, como Libelium2e Every3.
Além disso, pode-se encontrar diversas iniciativas em formato Web/HTML ou relatório técnico disponibilizados pela própria organização, como HP HOOVER et al.(2010) e IBM
DIRKS; KEELING(2009).
Desta forma, para aumentar a eficácia e a abrangência da revisão literária faz-se necessário à realização de uma revisão exploratória. Uma revisão exploratória consiste em um mecanismo que não possui nenhum processo pré-definido para encontrar as fontes de informações.
Nesse tipo de revisão, todas as fontes relacionadas com o tema são analisadas, indepen-dente do tipo e do veículo de publicação do conteúdo. Em algumas situações, essas revisões podem ser consideradas mais abrangentes, por não possuírem nenhum processo de classifica-ção. Porém, em outras situações, são consideradas tendenciosas, já que o processo de revisão dificilmente pode ser repetido.
Logo, essa revisão exploratória visa discutir e analisar as principais abordagens que pro-põem uma AS para CI baseada em IoT, encontradas nos mais diversos veículos de comunicação. Dentre eles, destacam-se websites, blogs, relatórios técnicos não publicados e eventos.
2http://www.libelium.com