SlideShare uma empresa Scribd logo
Java, Internet das Coisas, Things API e Arquiteturas de Inovação
Homenagem ao Alberto Fabiano (TechBerto)
Agenda
 Internet das Coisas
 Java para Internet das Coisas
 Things API
 Arquiteturas de Inovação
Progresso da Internet
1. Computadores em Universidades
2. Computadores Pessoais
3. Servidores Corporativos
4. Dispositivos Pessoais
5. Coisas Pessoais
6. Coisas "Impessoais"
Internet das Coisas
Coisas na Internet...
Oportunidades da Internet das Coisas
 Área de saúde
 Supply chain
 Indústria automotiva
 Medidores Inteligentes
 Agricultura
 Monitores Ambientais
 Smart Building / Smart City / Smart qualquer coisa
Muitos dispositivos, inúmeras oportunidades:
Internet das Coisas
 50 bilhões de dispositivos gerando dados na Internet;
 Embarcados com capacidade de PC: server-side no embarcado, filas,
complex event, novos protocolos;
 Segurança é fator ainda mais crítico;
 Estratégias de atualização e manutenção de legados podem gerar
impactos financeiros de grande proporção;
 Embedded-Cloud o novo Client-Server!
Novos desafios:
Java e a Internet das Coisas
2020:
•50B de dispositivos
•4B de pessoas conectadas
Enterprise Data &
Applications
Cloud para
dispositivos
embarcado
s
Cloud para
dispositivos
embarcado
s
Meters
Smart Appliances
& electronics
Personal
Devices
Med-Large Embedded / Multi-
function Devices
VoIP Comm
Industrial controls /
Network Appliances
Management / Monitoring /
Operations
Sensors /
Microcontrollers
Connected Vehicles
Pequeno
Medium Embedded
Grande
Platform
Footprint
Device
CPU/
GPU/I-O
50KB-1MB
1MB-10MB
10MB-100MB
Plataforma Java Embedded
Java Embedded
Dispositivos de exemplo com Java
Pequeno
• Leitores RFID
• Tarifadores de
Estacionamento
• Leitores Inteligentes
• Caneta Inteligente
Médio
• Routeadores & Switches
• Devices para Armazenamento
• Network Management Systems
• Sistemas de automação fábrica
• Sistemas de segurança
Grande
• Impressoras multi-
funcionais
• ATMs e sistemas de POS
• In-Flight Entertainment
Systems
• Sistema votação eletrônica
• Imagens médica
Java comparado com outras plataformas
Java Nativo HTML Flash / AIR
Suporte a apps. headless Sim Sim Não Não
Segurança sandbox Sim Não Não Não
Múltiplos processos Sim Sim Não Não
Comunidade de
desenvolvedores
Grande Fragmentada Grande Grande
Escalabilidade Excelente Excelente Pobre Pobre
Desempenho Muito bom Excelente Pobre Pobre
Capacidade de
atualização
Excelente Razoável Boa Razoável
Java Embarcado
Java ME Embedded
 Internet das Coisas com 3G + Java ME + GPIO
 Manutenção, debug, OTA, ferramentas
 Baixo custo no Brasil: U$ 5 para larga escala!
 Indústria, protótipos e "Do It Your Self"
 BubbleBoard Gemalto
Geração Java ME pós-celular
Raspberry Pi
 Computador compacto de R$ 150,00
 ARM11 700mhz / 512MB memória RAM
 SD Card
 Vídeo por HDMI ou composto
 Ethernet e 2 USBs
 GPIO: UART, I2C, SPI, digitais
 Audio
 LCD / Camera
Computador pequeno, portátil e barato!
Raspberry Pi
Faça você mesmo, protótipos e indústria
Java SE Embedded
 Arquitetura máquina virtual amplamente otimizada para ARM
 Suporte a hard-float no JDK 1.8
 Todos os benefícios da JVM SE no seu projeto embarcado
 Debug, distribuição, manutenção e interoperabilidade
 Multi-plataforma real: ARM, Intel, Atmel e outros fabricantes!
Otimizado para ARM e devices como Raspberry Pi
Java Embedded Suite 7
 Versão do Java EE para sistemas embarcados
 Uma nova geração de paradigmas client-server
 Gateway infrared, zigbee, rfid, rs232, rs485, etc. para TCP/IP
 Sistemas de cache, persistência, processamento, integração e
segurança
 REST / JPA / Servlet
 Seu "firmware" como server!
O server-side no seu projeto embarcado
Java FX
 Alta produtividade para interfaces ricas com seu conhecimento Java
 Amplo investimento na otimização de GPUs na máquina virtual
 Multi-plataforma real em interfaces gráficas: do Raspberry Pi ao
MacOS sem nenhuma alteração de código
 Componentes e bibliotecas para animações, transformadas / análise
de espectros
 Ferramentas WYSIWYG para desenho de telas
Interfaces MUITO ricas no seu projeto embarcado
Oracle Event Processing Embedded
 Complex Event no seu sistema embarcado!
 Dados + persistência = base de dados
 Dados + Complex Event = base de informação
 Base de Informaçao + Complex Event = inteligência!!
Dados sendo transformados em informação
Arquitetura para Embarcados
 Embarcados com processamento Java server-side podem gerar
informações consistentes, não apenas dados;
 Plataforma Java permite fácil integração de diferentes tipos de
microcontroladores via I2C, SPI, UART, etc.
 Arquitetura Java Consistente end-to-end: ferramentas IDE, remote
debug, trace, stress-test, teste unitário, remote class-loading, Java
WebStart e todo ecosistema Java Desktop no seu projeto embarcado!
"Server is everywhere!"
Roadmap
Embedded Java
2015201520122012 20132013 20142014
Java Embedded Suite 7
•SE Embedded 7
•GlassFish for Embedded
•Java DB
Java Embedded Suite 7
•SE Embedded 7
•GlassFish for Embedded
•Java DB
Java SE Embedded 8
• Complete JVM convergence
• Additional compact profiles
• JavaFX for Embedded
Java Embedded Suite 8
• Additional enterprise middleware
integrations
• Flight Recorder/Mission Control
Java SE Embedded 8
• Complete JVM convergence
• Additional compact profiles
• JavaFX for Embedded
Java Embedded Suite 8
• Additional enterprise middleware
integrations
• Flight Recorder/Mission Control
Java ME Embedded 3.2
•Microcontroller support
•Device Access APIs
Java ME SDK 3.2
•Embedded emulator
•Eclipse integration
Java ME Embedded 3.2
•Microcontroller support
•Device Access APIs
Java ME SDK 3.2
•Embedded emulator
•Eclipse integration
Java Embedded 9
•JDK9
•Modularity based on
Jigsaw
•Additional Embedded
device APIs
•Ease of Development
Java Embedded 9
•JDK9
•Modularity based on
Jigsaw
•Additional Embedded
device APIs
•Ease of Development
Java ME Embedded 3.3
•Enhanced device access
•Footprint optimization &
configuration tools
•Improved developer tooling
& experience
Java ME Embedded 3.3
•Enhanced device access
•Footprint optimization &
configuration tools
•Improved developer tooling
& experience
Java ME Embedded 8
•Java ME 8
•Standardized Embedded API
•New on-device debugging
architecture
NetBeans IDE 8
•Java ME/SE 8 Embedded
support
Java ME Embedded 8
•Java ME 8
•Standardized Embedded API
•New on-device debugging
architecture
NetBeans IDE 8
•Java ME/SE 8 Embedded
support
NetBeans IDE 7.2
•ME Embedded support
NetBeans IDE 7.2
•ME Embedded support
NetBeans IDE 9
•Java ME/SE 9
Embedded support
•Jigsaw support
NetBeans IDE 9
•Java ME/SE 9
Embedded support
•Jigsaw support
Things-API
 http://github.com/vsenger/things-api
 Facilita integração entre diferentes plataformas e tecnologias:
– Java SE, FX, EE, ME, Embedded
– Android
– Arduino
– Raspberry Pi e outros single board computer
Internet of Things API para Java, Arduino e Android
Things-API
Evolução do jHome Automation: Duke's Choice Award 2011
Things-API
Genérica, sintaxe simples e fácil de usar
Things / Device / Component
Três principais objetos
 Abstração Simples:
– Device: é a coisa
– Componentes: parte da coisa
 Componente = Input / Output:
– Input = Sensor : luz, temperatura, presença, aceleração;
– Output = Atuador : motor, led, relé, som;
 Sensores = leitura
 Atuadores = escrita
Arquiteturas de Inovação
Novos dispositivos, novas entradas, novas arquiteturas
 "Somos todos servidores"
 Voz, gestos, faces e sensores como entrada de dados
 Respostas audíveis, parâmetros por voz e controle total por celular
 Embarcado-Centralizador-Nuvem: o novo 3 tier?
 Somos todos "smart"
 API + DSL: um caminho sem volta!
Seu próximo projeto?
DEMO
 Raspberry Pi + 6 relés + Atmega328 + sensor luz + temperatura +
humidade + controle iluminação RGB
 Raspbian: Linux para Raspberry Pi
 Java Embedded Suite 7: interface via REST oferece dados de
sensores e permite manipulação de atuadores
 Java DB: persistência local até encontrar rede / nuvem;
 CEP: Complex Event para transformar dados de sensores em
informações, ações e reações;
Smart Building / Home Automation
DEMO: Raspberry Pi + Glassfish + Arduino
DEMO
Agenda Globalcode
 Curso Arquiteto de Aplicações Enterprise" – 14 de setembro – SP
Curso Oficial Oracle preparatório para Certificação OCEA)
 Android Hacking Weekend – 21 e 22 de setembro - SP
 The Developers Conference - 25 e 26 de outubro – POA
Q&A
 Vinicius Senger – vinicius@globalcode.com.br
 Twitter @vsenger
 github.com/vsenger/things-api
 www.globalcode.com.br

Mais conteúdo relacionado

PPT
Internet das Coisas com Java e Things API
PPT
Campus Party 2014 - Internet das Coisas com coisas reais
PPT
Internet das Coisas com Coisas Reais: Java , Things API, Raspberry PI e Toys!
PPTX
Plataformas atuais de sistemas embarcados para IoT
PDF
ArduinoDay 2015 - OpenDevice
PDF
Internet das coisas - A Revolução já começou
PDF
Oficina de IoT #02 - Quarta Temporada
PDF
Internet das coisas, machine learnign e maquinas de doces
Internet das Coisas com Java e Things API
Campus Party 2014 - Internet das Coisas com coisas reais
Internet das Coisas com Coisas Reais: Java , Things API, Raspberry PI e Toys!
Plataformas atuais de sistemas embarcados para IoT
ArduinoDay 2015 - OpenDevice
Internet das coisas - A Revolução já começou
Oficina de IoT #02 - Quarta Temporada
Internet das coisas, machine learnign e maquinas de doces

Mais procurados (17)

PDF
TDC2015 - Internet das Coisas - OpenDevice
PPT
Flisol projetos criativos com o arduino
PDF
Android things, machine learning e maquinas de doces
PPTX
Robótica e PHP com Arduino - PHPn' Rio 2011
PDF
Automação Residencial Extrema com Opensource
PDF
Aula sobre arduino
PDF
Arduino na engenharia
PDF
O impacto do arduino no mundo dos embarcados - TRILHA EMBEDDED - TDC2014
PDF
Internet das coisas - A revolução já começou
PDF
Internet das Coisas com Android things e Machine Learning
PDF
Workshop - Cotrole sua casa remotamente através da Internet
PDF
Programe a STM32L4 Discovery kit IoT node com ARM mbed
PDF
TDC2014 - Internet das Coisas - Arduino & OpenDevice
PDF
OpenDevice IoT - 2016 (LowLevel)
PPS
arduino presentation
PDF
Aula de Arduino: Primeiros Passos
TDC2015 - Internet das Coisas - OpenDevice
Flisol projetos criativos com o arduino
Android things, machine learning e maquinas de doces
Robótica e PHP com Arduino - PHPn' Rio 2011
Automação Residencial Extrema com Opensource
Aula sobre arduino
Arduino na engenharia
O impacto do arduino no mundo dos embarcados - TRILHA EMBEDDED - TDC2014
Internet das coisas - A revolução já começou
Internet das Coisas com Android things e Machine Learning
Workshop - Cotrole sua casa remotamente através da Internet
Programe a STM32L4 Discovery kit IoT node com ARM mbed
TDC2014 - Internet das Coisas - Arduino & OpenDevice
OpenDevice IoT - 2016 (LowLevel)
arduino presentation
Aula de Arduino: Primeiros Passos
Anúncio

Destaque (20)

PDF
33 design patterns com Java
DOCX
Academia do Arquiteto Globalcode
PPT
Use scratch para aprender a programar se divertindo
PDF
Exemplos de Design Patterns em Java
ODP
JavaFX Primeiros Passos
PDF
design patterns java
PPT
Palestra Sepai Alfredofurtado Introducao Ao Javafx
PPT
Enterprise JavaBeans simples e descomplicado, na prática
PDF
Javafx Introdução
PDF
Java persintence api
PPT
Conhecendo Java
PDF
Ria e Java FX
PDF
JavaFX: Abordagem Prática
PPT
JavaFx - Guia Prático
PDF
Desenvolvimento rápido de aplicações com JEE e JavaFX
PPT
Palestra sobre Carreira Java / JavaEE - TDC2012 - Trlha Java
PPTX
Criando aplicações java fx em minutos
PDF
Boas práticas na criação de aplicações sérias com JavaFX - TDC 2014 SP
PDF
JavaFX 8, Collections e Lambdas
PDF
The Power of Collaboration to Build Your Own Startup
33 design patterns com Java
Academia do Arquiteto Globalcode
Use scratch para aprender a programar se divertindo
Exemplos de Design Patterns em Java
JavaFX Primeiros Passos
design patterns java
Palestra Sepai Alfredofurtado Introducao Ao Javafx
Enterprise JavaBeans simples e descomplicado, na prática
Javafx Introdução
Java persintence api
Conhecendo Java
Ria e Java FX
JavaFX: Abordagem Prática
JavaFx - Guia Prático
Desenvolvimento rápido de aplicações com JEE e JavaFX
Palestra sobre Carreira Java / JavaEE - TDC2012 - Trlha Java
Criando aplicações java fx em minutos
Boas práticas na criação de aplicações sérias com JavaFX - TDC 2014 SP
JavaFX 8, Collections e Lambdas
The Power of Collaboration to Build Your Own Startup
Anúncio

Semelhante a Java, Internet das Coisas, Things API e Arquiteturas de Inovação (20)

PDF
Desenvolvendo Produtos para Internet das Coisas
ODP
Tecnologia Java
PDF
Como o Magazine Luiza inova suas operações utilizando as soluções de IoT e Bi...
PPTX
Dream Report com InduSoft Web Studio
PPTX
Internet das coisas na indústria
PDF
TDC 2015 - Java 8 em 256 KB de memória RAM
PPTX
Análise de Ameaças Cibernéticas em Protocolos Industriais
PPTX
Introdução ao .Net Micro Framework
ODP
Netbeans Slides Fy2009 Portugues
ODP
Netbeans Slides
PDF
Um Sistema de Ponto Eletrônico Digital: projeto e implementação de hardware e...
PPT
Computacao Movel e Sem Fio
PDF
Internet das Coisas - Conceitos, tecnologias e aplicações
PPT
1 Ids On Campus V3a
PDF
Tendências e Oportunidades - Robótica
PDF
Aplicações Móveis com J2ME
PDF
Computação Física e Internet das Coisas
ODP
Java 01 Java Visao Geral
ODP
Java 01 Java Visao Geral Detalhado
PDF
Netduino e .NET Micro Framework
Desenvolvendo Produtos para Internet das Coisas
Tecnologia Java
Como o Magazine Luiza inova suas operações utilizando as soluções de IoT e Bi...
Dream Report com InduSoft Web Studio
Internet das coisas na indústria
TDC 2015 - Java 8 em 256 KB de memória RAM
Análise de Ameaças Cibernéticas em Protocolos Industriais
Introdução ao .Net Micro Framework
Netbeans Slides Fy2009 Portugues
Netbeans Slides
Um Sistema de Ponto Eletrônico Digital: projeto e implementação de hardware e...
Computacao Movel e Sem Fio
Internet das Coisas - Conceitos, tecnologias e aplicações
1 Ids On Campus V3a
Tendências e Oportunidades - Robótica
Aplicações Móveis com J2ME
Computação Física e Internet das Coisas
Java 01 Java Visao Geral
Java 01 Java Visao Geral Detalhado
Netduino e .NET Micro Framework

Mais de Globalcode (7)

PPT
Contruindo Robots com Java Embedded Suite, Raspberry PI, Arduino e Things API
PPT
Introdução a Application Life-cycle Management Open Source
PPT
Android com Arduino: como integrar via bluetooth, Google ADK ou wi-fi
PPT
Placa Tomada - Controlando Tomadas com Arduino
PPT
Academia do Arquiteto - Implantando A.L.M. em uma semana!
PPT
O futuro do arquiteto e das arquiteturas Java Enterprise
PPT
Academia do Arquiteto - Introdução a ALM e Redmine
Contruindo Robots com Java Embedded Suite, Raspberry PI, Arduino e Things API
Introdução a Application Life-cycle Management Open Source
Android com Arduino: como integrar via bluetooth, Google ADK ou wi-fi
Placa Tomada - Controlando Tomadas com Arduino
Academia do Arquiteto - Implantando A.L.M. em uma semana!
O futuro do arquiteto e das arquiteturas Java Enterprise
Academia do Arquiteto - Introdução a ALM e Redmine

Último (20)

PPTX
QuestõesENEMVESTIBULARPARAESTUDOSEAPRENDIZADO.pptx
PDF
embriologia_animal_aula_share_2026_semestre
PPTX
Filosofia Ocidental Antiga 2025 - versão atualizada
PDF
Ebook - Matemática_Ensino_Médio_Saeb_V1.pdf
PPT
sistema reprodutor para turmas do oitavo ano
PDF
GESTÃO DA FASE PRÉ-ANALÍTICA- Recomendações da SBPC-ML (3).pdf
PPTX
Revolução Industrial - Aula Expositiva - 3U4.pptx
PPT
HISTOLOGIA VEGETAL - tecidos vegetais.ppt
PDF
Organizador Curricular da Educação em Tempo Integral.pdf
PPTX
ACIDOS NUCLEICOS - REPLICAÇÃO DO DNA - E.M.
PPTX
brasilcolnia2-101027184359-phpapp02.pptx
PPTX
biossegurança e segurança no trabalho (6).pptx
PDF
O retorno a origem (islã Islamismo)
PPTX
Reino Monera e Protista: representantes e caracteristicas.pptx
PPTX
Ciências da Natureza e suas áreas de desenvolvimento
PPTX
Pedagogia em Ambientes Não Escolares.pptx
PPTX
Slides Lição 7, CPAD, Uma Igreja Que Não Teme A Perseguição, 3Tr25.pptx
PPTX
Aula 13 - Tópico Frasal - Argumentação.pptx
PDF
Uma Introdução às Ciências do Alcorão (Islam)
PDF
A provisão de jojuador (ramadã) islamismo
QuestõesENEMVESTIBULARPARAESTUDOSEAPRENDIZADO.pptx
embriologia_animal_aula_share_2026_semestre
Filosofia Ocidental Antiga 2025 - versão atualizada
Ebook - Matemática_Ensino_Médio_Saeb_V1.pdf
sistema reprodutor para turmas do oitavo ano
GESTÃO DA FASE PRÉ-ANALÍTICA- Recomendações da SBPC-ML (3).pdf
Revolução Industrial - Aula Expositiva - 3U4.pptx
HISTOLOGIA VEGETAL - tecidos vegetais.ppt
Organizador Curricular da Educação em Tempo Integral.pdf
ACIDOS NUCLEICOS - REPLICAÇÃO DO DNA - E.M.
brasilcolnia2-101027184359-phpapp02.pptx
biossegurança e segurança no trabalho (6).pptx
O retorno a origem (islã Islamismo)
Reino Monera e Protista: representantes e caracteristicas.pptx
Ciências da Natureza e suas áreas de desenvolvimento
Pedagogia em Ambientes Não Escolares.pptx
Slides Lição 7, CPAD, Uma Igreja Que Não Teme A Perseguição, 3Tr25.pptx
Aula 13 - Tópico Frasal - Argumentação.pptx
Uma Introdução às Ciências do Alcorão (Islam)
A provisão de jojuador (ramadã) islamismo

Java, Internet das Coisas, Things API e Arquiteturas de Inovação

  • 2. Homenagem ao Alberto Fabiano (TechBerto)
  • 3. Agenda  Internet das Coisas  Java para Internet das Coisas  Things API  Arquiteturas de Inovação
  • 4. Progresso da Internet 1. Computadores em Universidades 2. Computadores Pessoais 3. Servidores Corporativos 4. Dispositivos Pessoais 5. Coisas Pessoais 6. Coisas "Impessoais"
  • 5. Internet das Coisas Coisas na Internet...
  • 6. Oportunidades da Internet das Coisas  Área de saúde  Supply chain  Indústria automotiva  Medidores Inteligentes  Agricultura  Monitores Ambientais  Smart Building / Smart City / Smart qualquer coisa Muitos dispositivos, inúmeras oportunidades:
  • 7. Internet das Coisas  50 bilhões de dispositivos gerando dados na Internet;  Embarcados com capacidade de PC: server-side no embarcado, filas, complex event, novos protocolos;  Segurança é fator ainda mais crítico;  Estratégias de atualização e manutenção de legados podem gerar impactos financeiros de grande proporção;  Embedded-Cloud o novo Client-Server! Novos desafios:
  • 8. Java e a Internet das Coisas 2020: •50B de dispositivos •4B de pessoas conectadas Enterprise Data & Applications Cloud para dispositivos embarcado s Cloud para dispositivos embarcado s Meters Smart Appliances & electronics Personal Devices Med-Large Embedded / Multi- function Devices VoIP Comm Industrial controls / Network Appliances Management / Monitoring / Operations Sensors / Microcontrollers Connected Vehicles
  • 10. Java Embedded Dispositivos de exemplo com Java Pequeno • Leitores RFID • Tarifadores de Estacionamento • Leitores Inteligentes • Caneta Inteligente Médio • Routeadores & Switches • Devices para Armazenamento • Network Management Systems • Sistemas de automação fábrica • Sistemas de segurança Grande • Impressoras multi- funcionais • ATMs e sistemas de POS • In-Flight Entertainment Systems • Sistema votação eletrônica • Imagens médica
  • 11. Java comparado com outras plataformas Java Nativo HTML Flash / AIR Suporte a apps. headless Sim Sim Não Não Segurança sandbox Sim Não Não Não Múltiplos processos Sim Sim Não Não Comunidade de desenvolvedores Grande Fragmentada Grande Grande Escalabilidade Excelente Excelente Pobre Pobre Desempenho Muito bom Excelente Pobre Pobre Capacidade de atualização Excelente Razoável Boa Razoável
  • 13. Java ME Embedded  Internet das Coisas com 3G + Java ME + GPIO  Manutenção, debug, OTA, ferramentas  Baixo custo no Brasil: U$ 5 para larga escala!  Indústria, protótipos e "Do It Your Self"  BubbleBoard Gemalto Geração Java ME pós-celular
  • 14. Raspberry Pi  Computador compacto de R$ 150,00  ARM11 700mhz / 512MB memória RAM  SD Card  Vídeo por HDMI ou composto  Ethernet e 2 USBs  GPIO: UART, I2C, SPI, digitais  Audio  LCD / Camera Computador pequeno, portátil e barato!
  • 15. Raspberry Pi Faça você mesmo, protótipos e indústria
  • 16. Java SE Embedded  Arquitetura máquina virtual amplamente otimizada para ARM  Suporte a hard-float no JDK 1.8  Todos os benefícios da JVM SE no seu projeto embarcado  Debug, distribuição, manutenção e interoperabilidade  Multi-plataforma real: ARM, Intel, Atmel e outros fabricantes! Otimizado para ARM e devices como Raspberry Pi
  • 17. Java Embedded Suite 7  Versão do Java EE para sistemas embarcados  Uma nova geração de paradigmas client-server  Gateway infrared, zigbee, rfid, rs232, rs485, etc. para TCP/IP  Sistemas de cache, persistência, processamento, integração e segurança  REST / JPA / Servlet  Seu "firmware" como server! O server-side no seu projeto embarcado
  • 18. Java FX  Alta produtividade para interfaces ricas com seu conhecimento Java  Amplo investimento na otimização de GPUs na máquina virtual  Multi-plataforma real em interfaces gráficas: do Raspberry Pi ao MacOS sem nenhuma alteração de código  Componentes e bibliotecas para animações, transformadas / análise de espectros  Ferramentas WYSIWYG para desenho de telas Interfaces MUITO ricas no seu projeto embarcado
  • 19. Oracle Event Processing Embedded  Complex Event no seu sistema embarcado!  Dados + persistência = base de dados  Dados + Complex Event = base de informação  Base de Informaçao + Complex Event = inteligência!! Dados sendo transformados em informação
  • 20. Arquitetura para Embarcados  Embarcados com processamento Java server-side podem gerar informações consistentes, não apenas dados;  Plataforma Java permite fácil integração de diferentes tipos de microcontroladores via I2C, SPI, UART, etc.  Arquitetura Java Consistente end-to-end: ferramentas IDE, remote debug, trace, stress-test, teste unitário, remote class-loading, Java WebStart e todo ecosistema Java Desktop no seu projeto embarcado! "Server is everywhere!"
  • 21. Roadmap Embedded Java 2015201520122012 20132013 20142014 Java Embedded Suite 7 •SE Embedded 7 •GlassFish for Embedded •Java DB Java Embedded Suite 7 •SE Embedded 7 •GlassFish for Embedded •Java DB Java SE Embedded 8 • Complete JVM convergence • Additional compact profiles • JavaFX for Embedded Java Embedded Suite 8 • Additional enterprise middleware integrations • Flight Recorder/Mission Control Java SE Embedded 8 • Complete JVM convergence • Additional compact profiles • JavaFX for Embedded Java Embedded Suite 8 • Additional enterprise middleware integrations • Flight Recorder/Mission Control Java ME Embedded 3.2 •Microcontroller support •Device Access APIs Java ME SDK 3.2 •Embedded emulator •Eclipse integration Java ME Embedded 3.2 •Microcontroller support •Device Access APIs Java ME SDK 3.2 •Embedded emulator •Eclipse integration Java Embedded 9 •JDK9 •Modularity based on Jigsaw •Additional Embedded device APIs •Ease of Development Java Embedded 9 •JDK9 •Modularity based on Jigsaw •Additional Embedded device APIs •Ease of Development Java ME Embedded 3.3 •Enhanced device access •Footprint optimization & configuration tools •Improved developer tooling & experience Java ME Embedded 3.3 •Enhanced device access •Footprint optimization & configuration tools •Improved developer tooling & experience Java ME Embedded 8 •Java ME 8 •Standardized Embedded API •New on-device debugging architecture NetBeans IDE 8 •Java ME/SE 8 Embedded support Java ME Embedded 8 •Java ME 8 •Standardized Embedded API •New on-device debugging architecture NetBeans IDE 8 •Java ME/SE 8 Embedded support NetBeans IDE 7.2 •ME Embedded support NetBeans IDE 7.2 •ME Embedded support NetBeans IDE 9 •Java ME/SE 9 Embedded support •Jigsaw support NetBeans IDE 9 •Java ME/SE 9 Embedded support •Jigsaw support
  • 22. Things-API  http://github.com/vsenger/things-api  Facilita integração entre diferentes plataformas e tecnologias: – Java SE, FX, EE, ME, Embedded – Android – Arduino – Raspberry Pi e outros single board computer Internet of Things API para Java, Arduino e Android
  • 23. Things-API Evolução do jHome Automation: Duke's Choice Award 2011
  • 25. Things / Device / Component Três principais objetos  Abstração Simples: – Device: é a coisa – Componentes: parte da coisa  Componente = Input / Output: – Input = Sensor : luz, temperatura, presença, aceleração; – Output = Atuador : motor, led, relé, som;  Sensores = leitura  Atuadores = escrita
  • 26. Arquiteturas de Inovação Novos dispositivos, novas entradas, novas arquiteturas  "Somos todos servidores"  Voz, gestos, faces e sensores como entrada de dados  Respostas audíveis, parâmetros por voz e controle total por celular  Embarcado-Centralizador-Nuvem: o novo 3 tier?  Somos todos "smart"  API + DSL: um caminho sem volta!
  • 28. DEMO  Raspberry Pi + 6 relés + Atmega328 + sensor luz + temperatura + humidade + controle iluminação RGB  Raspbian: Linux para Raspberry Pi  Java Embedded Suite 7: interface via REST oferece dados de sensores e permite manipulação de atuadores  Java DB: persistência local até encontrar rede / nuvem;  CEP: Complex Event para transformar dados de sensores em informações, ações e reações; Smart Building / Home Automation
  • 29. DEMO: Raspberry Pi + Glassfish + Arduino
  • 30. DEMO
  • 31. Agenda Globalcode  Curso Arquiteto de Aplicações Enterprise" – 14 de setembro – SP Curso Oficial Oracle preparatório para Certificação OCEA)  Android Hacking Weekend – 21 e 22 de setembro - SP  The Developers Conference - 25 e 26 de outubro – POA
  • 32. Q&A  Vinicius Senger – vinicius@globalcode.com.br  Twitter @vsenger  github.com/vsenger/things-api  www.globalcode.com.br

Notas do Editor

  • #10: Java is available In several configurations, specifically optimized for small, medium, or large hardware platforms.
  • #11: Java embedded technologies are used in a wide variety of embedded devices. This list is just a small sampling of devices that are currently using Java ME and SE Embedded.
  • #22: we are leading the charge in embedded  In parallel, bringing the specs forward to enable the ecosystem.   Next year, updating specs in SE8 & ME8,  enable alignment between the 2 platforms  ME will be a proper subset of SE.   JavaME releases will be synchronized with SE release.  update release for JES and ME Embedded * ME SDK integrating enterprise middleware technology such as identity management & event processing capabilities  into Java embedded platforms.  Java 9., developers will have even more flexibility with modularity with Jigsaw.