Escolar Documentos
Profissional Documentos
Cultura Documentos
28/06/2017 1
Roteiro
Introduo/Motivao
Objetivos
Estado da Arte
Abordagem Proposta
Ferramenta
Avaliao da Abordagem
Anlise dos Resultados
Concluso
Contribuies
Trabalhos Futuros
2
Introduo/Motivao
Pessoas como sensores
Internet das Coisas (IoT)
Dispositivos de computao identificveis, que so conectados internet e
pessoas[1];
[1] ATZORI, L.; IERA, A.; MORABITO, G. The Internet of Things: a survey. Computer Networks, [S.l.], v.54, n.15, p.2787 2805, 2010. 3
Introduo/Motivao
Tendncias da Internet das Coisas (IoT)
4
[2] SUNDMAEKER, H. et al. Vision and challenges for realising the Internet of Things. Cluster of
Introduo/Motivao
Smartphones
Capacidades de processamento computacional e sensores
[3] SALIM, F.; HAQUE, U. Urban computing in the wild: a survey on large scale participation and citizen engagement with ubiquitous computing, 5
cyber physical systems, and internet of things. International Journal of Human-Computer Studies, [S.l.], v.81, p.31 48, 2015. Transdisciplinary Approaches to Urban
Introduo/Motivao
Desenvolvimento Orientado Modelos (MDD)
Modelos
No so apenas ferramentas de comunicao e documentao
Benefcios:
Desenvolvimento mais rpido e reduzindo prazos
6
Introduo/Motivao
Programao generativa (Generative Programming)[5]
Maximizao da automao do desenvolvimento de aplicativos
Tecnologias
DSL
Geradores
Componentes
7
Pergunta de pesquisa
Qual a
proporo/taxa/Nvel
de Reutilizao ?
<code>
Cdigo gerado da
aplicao (Projeto)
Componentes Generative
MDD Programming
Reutilizveis Aplicao
empacotada
8
8
Objetivo Geral
9
Objetivo Especficos
Definir quais componentes de software reutilizveis sero combinados para a elaborao da
abordagem;
Selecionar tcnicas e procedimentos que iro estruturar a abordagem;
Disponibilizar uma ferramenta que permita orquestrao dos componentes definidos e
gerao do cdigo fonte das aplicaes;
Avaliar a abordagem por meio de um estudo de caso com aplicaes construdas com a
ferramenta.
10
Estado da Arte
11
Estado da Arte
Trabalhos Relacionados
IoTLink: An Internet of Things Prototyping Toolkit (PRAMUDIANTO, F. et al. 2014)
Plugin do Eclipse
12
Estado da Arte
Trabalhos Relacionados (cont.)
Integration In The Physical World In Iot Using Android Mobile Application for
13
Estado da Arte
Trabalhos Relacionados (cont.)
OpenIoT- An Open Service Framework for the Internet of Things (KIM; LEE, 2014 )
Ferramenta grfica.
14
Estado da Arte
Trabalhos Relacionados (cont.)
Mobile digcovery: discovering and interacting with the world through the
Internet of things (JARA et al., 2014)
Sensoriamento participativo, utilizando o smartphone como ferramenta.
Controle dos sensores presente na plataforma com o smartphone
No possui ferramenta grfica.
15
Estado da Arte
Trabalhos Relacionados (cont.)
A High-Level Modeling Language for the Efficient Design, Implementation, and
Testing of Android Applications (JABER et al., 2016)
Linguagem de modelagem (MoDroid)
Gera aplicao Android;
No aplicada a IoT.
No possui ferramenta grfica.
16
Estado da Arte
Trabalhos Relacionados
17
Abordagem
18
Abordagem Proposta
Tem a finalidade de permitir uma melhoria de
produtividade, qualidade e reuso na construo
de aplicaes atravs da transformao de
modelos, com o enfoque em adquirir
informaes baseadas nos sensores mais
comuns e usuais encontrados em smartphones.
19
Abordagem Proposta
20
Cenrio para demonstrao
Aplicao "Lembre-me!".
A aplicao permite registrar ideias no aplicativo
com a informao de localizao e fotos do local,
semelhante ao Keep da Google.
Essas ideias podem ser compartilhadas para aqueles
que possuem o aplicativo instalado.
21
Identificao dos objetos do domnio
22
Identificao dos objetos do domnio
Componente
Classe
Relao
Atributo
23
Realizao das transformaes
tags
24
Realizao das transformaes
Tag Regras de Transformao
classes Essa Tag responsvel por identificar entidades dentro do modelo de domnio
especificado. Cada entidade criada ser processada pelo gerador que ir
transform-la em classes atendendo ao padro de projeto MVC. Ser criada a
classe de modelo e persistncia de dados (firebase), classes de layouts de
tela em Android (View) e classes controladoras com validaes.
attributes Essa Tag responsvel por identificar os atributos de uma classe no
modelo de domnio especificado. O atributo na transformao ir ser um
campo da tela.
Relation Nesta tagged Value o Engenheiro de Sistema informa qual atributo est
Attribute relacionado com o componente. Para isso necessrio informar o alvo
To (target) e a origem (source). O atributo associado ao componente
Component identificado pelo gerador, o qual realiza as transformaes necessrias a fim
de permitir que o campo (EditText do Android) inicie a tela do Componente.
25
Realizao das transformaes
Layout e Funcionamento
26
Realizao das transformaes
27
Realizao das transformaes
Nessa etapa so gerados os cdigo fontes:
1) das telas do aplicativo (Activitys);
2) das funes responsveis por restringir
o contedo dos atributos das entidades;
3) das funes responsveis pela
manipulao dos dados (persistncia).
28
Implantao da aplicao
29
Implantao da aplicao
Eclipse Android Studio
JDK 7 ou superior JDK 7 ou superior
Android Developer Tools SDK Android (Default)
(ADT) Gradle(Default)
SDK Android
Gradle
30
Implantao da aplicao
Importar o projeto no eclipse/android studio.
Executar build.gradle (download bibliotecas necessrias)
Alterar o arquivo FirebaseUtil.java com as informaes da
conta de usurio que deve ser criada.
Alterar google_maps_api.xml com sua KEY para ser usado a
API
Pronto. Excute a aplicao.
31
Ferramenta de modelagem
32
Ferramenta de Modelagem
33
Ferramenta de Modelagem
MDD
Framework EuGenia
Eclipse Epsilon
Graphical Modeling
Framework (GMF)
Editor GMF
34
Ferramenta de modelagem
metamodelo
*.ecore <code>
Cdigo gerado da
aplicao (Projeto)
EuGENia Meta-modelo Template *.egl
Adaptaes
Generation Language
Aplicao
GMF Editor Engine empacotada
35
Avaliao da Abordagem
36
Cenrio
Aedes Points, aplicao desenvolvida com base
em Oliveira (2015)
Analisou e demostrou a distribuio espacial dos
locais acometidos com o desequilbrio ambiental
que possam influenciar na prevalncia dos casos
de dengue.
37
Cenrio
Georreferenciar o
desequilbrio ambiental
(lixo, esgoto cu aberto e
gua parada)
4 Bairros de Juazeiro-BA
181 casos de dengue
confirmados nos quatro
bairros.
38
Cenrio
Identificao dos objetos do domnio
39
Cenrio
Realizao das
Transformaes
40
Cenrio
Implantao da Aplicao
41
Cenrios
42
Avaliao
Goal Question Metric (GQM)
definir e avaliar um conjunto de metas operacionais,
usando medio.
43
Avaliao
Objetivo definido :
44
Avaliao Plano GQM
45
Avaliao Coleta de Dados
Eclipse Metrics, verso 1.3.6
Plugin Compare do Notepad++, verso 5.6
Todos os dados coletados, alimentaram uma
planilha as quais foram realizados os clculos
segundo as mtricas apresentadas a seguir.
46
Avaliao - Interpretao
Avaliou-se duas aplicaes desenvolvidas com a
abordagem e foram respondidas as seguintes
questes:
Questo 1: Qual a distribuio do reuso de forma geral no
cdigo gerado da aplicao?
Questo 2: Qual a distribuio do reuso entre as classes
da aplicao gerada?
47
Avaliao - Interpretao
Questo 1: Qual
a distribuio do
reuso de forma
geral no cdigo
gerado da
aplicao?
48
Avaliao - Interpretao
Questo 2: Qual a
distribuio do
reuso entre as
classes da
aplicao gerada?
49
Avaliao - Anlise dos Resultados
Benefcios
Automatizao
Modelagem de requisitos
Reuso
50
Avaliao - Anlise dos Resultados
Desvantagens
Construo da ferramenta de modelagem
Cdigo fonte gerado
Ameaas
M especificao
Usar abordagem para outro domnio
51
Concluso
Foi possvel alcanar aos objetivos almejados, uma vez que nesta
dissertao, a abordagem proposta e em conjunto com a ferramenta
criada, mostraram-se eficazes para o desenvolvimento de aplicaes no
mbito de pessoas como sensores para smartphones. Alm disso, no
estudo em que avaliou a reutilizao de software auxiliada pelo
desenvolvimento orientado a modelos foram obtidos bons resultados.
52
Contribuies
Definio de uma abordagem (reuso, a produtividade e automatizao)
Ferramenta de modelagem (modelando e implementado simultaneamente).
Especificao de regras de transformao baseadas em templates para Iot.
Automatizar atividades de Engenharia de Software (ES) (Especificao e anlise de
requisitos).
Confirmar que o MDD => aumento da reutilizao de software e automatizao da
implementao das aplicaes.
Desenvolvimento de aplicaes completas e funcionais (BDReal + Storage Real na Nuvem)
53
Trabalhos Futuros
Integrar essa abordagem como forma de plugin ao Android Studio
Adicionar uma nova etapa a abordagem, em que uma metodologia de testes
possa ser integrada.
Adaptar a ferramenta desenvolvida para a abordagem para outros domnios de
aplicao.
Adaptar a ferramenta para outras plataformas (iOS, Arduno).
54
OBRIGADO!
28/06/2017 55