javaland: quantified social - fitness-geräte und -portale mit agorava
TRANSCRIPT
![Page 1: JavaLand: Quantified Social - Fitness-Geräte und -Portale mit Agorava](https://reader036.vdocuments.site/reader036/viewer/2022062523/587be01b1a28ab834d8b74d9/html5/thumbnails/1.jpg)
Fitness-Geräte und -Portale mit Java EE und Agorava
QUANTIFIED SOCIAL
Werner Keil@wernerkeil
![Page 2: JavaLand: Quantified Social - Fitness-Geräte und -Portale mit Agorava](https://reader036.vdocuments.site/reader036/viewer/2022062523/587be01b1a28ab834d8b74d9/html5/thumbnails/2.jpg)
Überblick• Einführung• Smart Home• Quantified Self• Fitness Geräte und Portale• APIs• Standards• Demos• Fazit / Q&A
2 © 2012-2016 Creative Arts & Technologies
![Page 3: JavaLand: Quantified Social - Fitness-Geräte und -Portale mit Agorava](https://reader036.vdocuments.site/reader036/viewer/2022062523/587be01b1a28ab834d8b74d9/html5/thumbnails/3.jpg)
Werner Keil | Bio• Consultant – Coach• Creative Cosmopolitan• Software Architekt• Java Godfather• JCP Executive Committee Member• Unit JSR (363) Spec Lead• Agorava Mitbegründer• DevOps Guy
@wernerkeil
![Page 4: JavaLand: Quantified Social - Fitness-Geräte und -Portale mit Agorava](https://reader036.vdocuments.site/reader036/viewer/2022062523/587be01b1a28ab834d8b74d9/html5/thumbnails/4.jpg)
Internet der DingeTransportation & Logistics Logistics
Medical &Healthcare
Industrial &EnergyCommunication
Infrastructure
Security & Surveillance
Internetof Things
4 © 2007-2015 Creative Arts & Technologies, Eclipse Foundation. Made available under EPL 1.0
![Page 5: JavaLand: Quantified Social - Fitness-Geräte und -Portale mit Agorava](https://reader036.vdocuments.site/reader036/viewer/2022062523/587be01b1a28ab834d8b74d9/html5/thumbnails/5.jpg)
Smart Home | Tür an Tür
5 © 2012-2015 Creative Arts & TechnologiesBild: ARD Degeto/NDR/Marc Meyerbroeker
![Page 6: JavaLand: Quantified Social - Fitness-Geräte und -Portale mit Agorava](https://reader036.vdocuments.site/reader036/viewer/2022062523/587be01b1a28ab834d8b74d9/html5/thumbnails/6.jpg)
Smart Home | Realität
6 © 2012-2015 Creative Arts & Technologies
![Page 7: JavaLand: Quantified Social - Fitness-Geräte und -Portale mit Agorava](https://reader036.vdocuments.site/reader036/viewer/2022062523/587be01b1a28ab834d8b74d9/html5/thumbnails/7.jpg)
Nest Thermostat
7 © 2012-2015 Creative Arts & Technologies Bild: Google
![Page 8: JavaLand: Quantified Social - Fitness-Geräte und -Portale mit Agorava](https://reader036.vdocuments.site/reader036/viewer/2022062523/587be01b1a28ab834d8b74d9/html5/thumbnails/8.jpg)
Quantified Self
8 © 2013-2015 Creative Arts & Technologies
![Page 9: JavaLand: Quantified Social - Fitness-Geräte und -Portale mit Agorava](https://reader036.vdocuments.site/reader036/viewer/2022062523/587be01b1a28ab834d8b74d9/html5/thumbnails/9.jpg)
IoT | Gesundheit/Fitness
CommunicationInfrastructure
SmartPill
Boxes
HeartbeatSensor
WeightScales
BloodPressure
MedicalSmart
ServicesGateway
Near field
BloodSugar
Internetof Things
9 © 2007-2015 Creative Arts & Technologies, Eclipse Foundation. Made available under EPL 1.0
![Page 10: JavaLand: Quantified Social - Fitness-Geräte und -Portale mit Agorava](https://reader036.vdocuments.site/reader036/viewer/2022062523/587be01b1a28ab834d8b74d9/html5/thumbnails/10.jpg)
• Herzfrequenz Monitor – Fern-bedienbar durch
Geräte wie Google Glass oder MobilemBrowser Ihrer Wahl
• In der Java EmbeddedChallenge bei JavaOne
10 © 2013-2015 Creative Arts & Technologies
Heart of GlassJavaOne 2013
![Page 11: JavaLand: Quantified Social - Fitness-Geräte und -Portale mit Agorava](https://reader036.vdocuments.site/reader036/viewer/2022062523/587be01b1a28ab834d8b74d9/html5/thumbnails/11.jpg)
• Raspberry Pi | Things API | Unit-API• RXTX (gnu.io)• Polar Herzfrequenzmesser• Java EE | HTML 5 (Tomcat/Glassfish)• Google Glass (bevorzugt) oder anderes
Web-fähiges Mobilgerät11 © 2013-2015 Creative Arts & Technologies
Heart of Glass InternaVerwendete Technologien
![Page 12: JavaLand: Quantified Social - Fitness-Geräte und -Portale mit Agorava](https://reader036.vdocuments.site/reader036/viewer/2022062523/587be01b1a28ab834d8b74d9/html5/thumbnails/12.jpg)
Demo
![Page 13: JavaLand: Quantified Social - Fitness-Geräte und -Portale mit Agorava](https://reader036.vdocuments.site/reader036/viewer/2022062523/587be01b1a28ab834d8b74d9/html5/thumbnails/13.jpg)
Wearables
13 © 2013-2015 Creative Arts & Technologies Bild: HDWallpaperImages.com
![Page 14: JavaLand: Quantified Social - Fitness-Geräte und -Portale mit Agorava](https://reader036.vdocuments.site/reader036/viewer/2022062523/587be01b1a28ab834d8b74d9/html5/thumbnails/14.jpg)
Smart Watch
14 © 2012-2015 Creative Arts & Technologies Bild: L'Atelier
![Page 15: JavaLand: Quantified Social - Fitness-Geräte und -Portale mit Agorava](https://reader036.vdocuments.site/reader036/viewer/2022062523/587be01b1a28ab834d8b74d9/html5/thumbnails/15.jpg)
Top 5 GeräteherstellerRang Hersteller 2Q15
Verkauft
2Q15 Anteil
2Q14 Verkauft
2Q14 Anteil
Steigerung
1 Fitbit 4,4 24,3% 1,7 30,4% 158,8%2 Apple 3,6 19,9% 0 0,0% Neuzugang3 Xiaomi 3,1 17,1% 0 0,0% Neuzugang4 Garmin 0,7 3,9% 0,5 8,9% 40%5 Samsung 0,6 3,3% 0,8 14,3% -25%
Andere 5,7 31,5% 2,6 46,4% 119,2%Gesamt 18,1 100,0% 5,6 100,0% 223,2%
15 © 2012-2016 Creative Arts & TechnologiesQuelle: IDC Worldwide Quarterly Wearable Device Tracker, August 27, 2015
Verkaufte Einheiten in Millionen
![Page 16: JavaLand: Quantified Social - Fitness-Geräte und -Portale mit Agorava](https://reader036.vdocuments.site/reader036/viewer/2022062523/587be01b1a28ab834d8b74d9/html5/thumbnails/16.jpg)
Top Betriebssysteme
16 © 2012-2016 Creative Arts & Technologies Quelle: Business Wire
![Page 17: JavaLand: Quantified Social - Fitness-Geräte und -Portale mit Agorava](https://reader036.vdocuments.site/reader036/viewer/2022062523/587be01b1a28ab834d8b74d9/html5/thumbnails/17.jpg)
Geräte VergleichGerät/Hersteller
Kompatibilität Datenkontrolle
Anmerkungen
Apple Nur Apple Produkte/OS -1Fitbit Windows, Mac, Android,
iOS0 Allergien bei manchen
BändernGarmin Windows, Mac, Android,
iOS+2
Jawbone iOS, Android rudimentär -2 Ladeprobleme (UP1)LG Android -2Motorola Android -2Polar Windows, Mac +1Samsung Nur Samsung Produkte -3Sony Android -2Suunto Windows, Mac, Android,
iOS+2
Withings Android, iOS 0Intel/Basis Android, iOS 0
17 © 2012-2016 Creative Arts & Technologies
![Page 18: JavaLand: Quantified Social - Fitness-Geräte und -Portale mit Agorava](https://reader036.vdocuments.site/reader036/viewer/2022062523/587be01b1a28ab834d8b74d9/html5/thumbnails/18.jpg)
Gesundheitsportale
18 © 2013-2015 Creative Arts & Technologies Bild: HealthDay
![Page 19: JavaLand: Quantified Social - Fitness-Geräte und -Portale mit Agorava](https://reader036.vdocuments.site/reader036/viewer/2022062523/587be01b1a28ab834d8b74d9/html5/thumbnails/19.jpg)
Apple Health
19 © 2014-2015 Creative Arts & Technologies Bild: Apple
![Page 20: JavaLand: Quantified Social - Fitness-Geräte und -Portale mit Agorava](https://reader036.vdocuments.site/reader036/viewer/2022062523/587be01b1a28ab834d8b74d9/html5/thumbnails/20.jpg)
Fitbit
20 © 2013-2015 Creative Arts & Technologies Bild: fitbit
![Page 21: JavaLand: Quantified Social - Fitness-Geräte und -Portale mit Agorava](https://reader036.vdocuments.site/reader036/viewer/2022062523/587be01b1a28ab834d8b74d9/html5/thumbnails/21.jpg)
Google Fit
21 © 2014-2015 Creative Arts & Technologies Bild: Google
![Page 22: JavaLand: Quantified Social - Fitness-Geräte und -Portale mit Agorava](https://reader036.vdocuments.site/reader036/viewer/2022062523/587be01b1a28ab834d8b74d9/html5/thumbnails/22.jpg)
Runtastic
22 © 2013-2015 Creative Arts & Technologies Bild: Runtastic
![Page 23: JavaLand: Quantified Social - Fitness-Geräte und -Portale mit Agorava](https://reader036.vdocuments.site/reader036/viewer/2022062523/587be01b1a28ab834d8b74d9/html5/thumbnails/23.jpg)
RunKeeper
23 © 2013-2016 Creative Arts & Technologies Bild: RuntKeeper
![Page 24: JavaLand: Quantified Social - Fitness-Geräte und -Portale mit Agorava](https://reader036.vdocuments.site/reader036/viewer/2022062523/587be01b1a28ab834d8b74d9/html5/thumbnails/24.jpg)
Strava
24 © 2013-2015 Creative Arts & Technologies Bild: Singletrack Magazine
![Page 25: JavaLand: Quantified Social - Fitness-Geräte und -Portale mit Agorava](https://reader036.vdocuments.site/reader036/viewer/2022062523/587be01b1a28ab834d8b74d9/html5/thumbnails/25.jpg)
Portal VergleichPortal API Kompatibilität Datenkontroll
eAnmerkungen
Apple Health
? Nur Apple Produkte -1
Endomondo
? Geräte-abhängig 0 Herstellerneutral
Fitbit Ja Windows, Mac, Android, iOS
0
Garmin Via Strava
Windows, Mac +2
Google Fit Ja Zumeist Android Geräte -3 HerstellerneutralJawbone Ja Zumeist iOS -1Polar Nein Windows, Mac, Linux +1RunKeeper Ja Geräte-abhängig +1 HerstellerneutralRuntastic Nein Geräte-abhängig 0 HerstellerneutralStrava Ja Geräte-abhängig 0 HerstellerneutralSuunto Via
StravaWindows, Mac +2
Withings Ja Windows, Mac, Android, iOS
0
25 © 2012-2016 Creative Arts & Technologies
![Page 26: JavaLand: Quantified Social - Fitness-Geräte und -Portale mit Agorava](https://reader036.vdocuments.site/reader036/viewer/2022062523/587be01b1a28ab834d8b74d9/html5/thumbnails/26.jpg)
Top 10 APIsPortal Trend LinkApple Health - http://www.programmableweb.com/api/apple-healthkitFitbit + http://www.programmableweb.com/api/fitbitRunKeeper Graph + http://www.programmableweb.com/api/runkeeper-health
-graphNike+ - http://www.programmableweb.com/api/nike-plusWithings + http://www.programmableweb.com/api/withingsGoogle Fit + http://www.programmableweb.com/api/google-fit-restJawbone Up - http://www.programmableweb.com/api/jawboneMapMyFitness + http://www.programmableweb.com/api/mapmyfitnessMoves - http://www.programmableweb.com/api/movesWahoo Fitness - http://www.programmableweb.com/api/wahoo-fitness
26 © 2012-2016 Creative Arts & Technologies Quelle: Programmable Web
![Page 27: JavaLand: Quantified Social - Fitness-Geräte und -Portale mit Agorava](https://reader036.vdocuments.site/reader036/viewer/2022062523/587be01b1a28ab834d8b74d9/html5/thumbnails/27.jpg)
Social Media Standards
Maybe...
27
• Alle gängigen Social Media Dienste nutzen REST als Übertragungsprotokoll
• Die meisten übertragen Daten im JSON Format, einige nutzen XML o.dgl.
• Identifikation & Authentifizierung basieren fast überall auf dem OAuth Protokoll
![Page 28: JavaLand: Quantified Social - Fitness-Geräte und -Portale mit Agorava](https://reader036.vdocuments.site/reader036/viewer/2022062523/587be01b1a28ab834d8b74d9/html5/thumbnails/28.jpg)
Maybe...
28
REST• REpresentational State Transfer :
Aufrufe von Ressource Ansichten (customer, book, order, exercise,…)
• REST basiert auf low level HTTP• Jede Ressource hat eindeutige ID
(URI). 4 HTTP Verben können auf URI angewendet werden: GET, POST, PUT, DELETE
• Java REST Standard: JAX-RS. Version 1.0 enthielt kein Client API, JAX-RS 2.0 schon.
![Page 29: JavaLand: Quantified Social - Fitness-Geräte und -Portale mit Agorava](https://reader036.vdocuments.site/reader036/viewer/2022062523/587be01b1a28ab834d8b74d9/html5/thumbnails/29.jpg)
Maybe...
29
JSON 1: { 2: "firstName": "John", 3: "lastName" : "Smith", 4: "age" : 25, 5: "address" : 6: { 7: "streetAddress": "21 2nd Street", 8: "city" : "New York", 9: "state" : "NY",10: "postalCode" : "10021"11: },12: "phoneNumber":13: [14: {15: "type" : "home",16: "number": "212 555-1234"17: },18: {19: "type" : "fax",20: "number": "646 555-4567"21: }22: ]23: }
• JavaScript Object Notation: Von JavaScript inspiriertes Datenformat. Wurde zum de-facto Standard für APIs und Online Dienste wie Social Media.
![Page 30: JavaLand: Quantified Social - Fitness-Geräte und -Portale mit Agorava](https://reader036.vdocuments.site/reader036/viewer/2022062523/587be01b1a28ab834d8b74d9/html5/thumbnails/30.jpg)
30
OAuth• OAuth ist ein Protokoll, das den
Zugriff auf eine Applikation von eine anderen aus regelt, für einen Benutzer, der die Rechte gewährt hat, ohne dafür Benutzername oder Passwort preiszugeben.
• Ursprünglich entwickelt von Twitter, Magnolia und Google, wurde es April 2010 als IETF Standard RFC 5849 anerkannt.
![Page 31: JavaLand: Quantified Social - Fitness-Geräte und -Portale mit Agorava](https://reader036.vdocuments.site/reader036/viewer/2022062523/587be01b1a28ab834d8b74d9/html5/thumbnails/31.jpg)
31
OAuth (2)• Version 2.0, einfacher, aber oft für zu viele
Implementationen kritisiert wurde im Oktober 2012 unter RFC 6749 und 6750 standardisiert. Und ist bereits weit verbreitet (Facebook, Google, Microsoft,…)
• Alle Social Media Dienste basieren aufOAuth 1.0a oder 2.0.
• Um OAuth zu nutzen, muss man eine Applikation im Zielsystem deklarieren als Einstiegspunkt für den Benutzer
![Page 32: JavaLand: Quantified Social - Fitness-Geräte und -Portale mit Agorava](https://reader036.vdocuments.site/reader036/viewer/2022062523/587be01b1a28ab834d8b74d9/html5/thumbnails/32.jpg)
32
OAuth umfasst 3 Schritte• Erstellen einer Anwendung
einem OAauth Service• Initialisierung: Rechtegewährung
auch OAuth “Tanz” genannt. An dessen Ende erhält man einenAccess Token (aus öffentlichem und geheimem Teil bestehend) für die
• Signatur: Jeder Aufruf wird mit dem Access Token verschlüsselt um die OAuth Anwendung zu identifizieren
Bild © 2003 Universal Pictures. All Rights Reserved.
![Page 33: JavaLand: Quantified Social - Fitness-Geräte und -Portale mit Agorava](https://reader036.vdocuments.site/reader036/viewer/2022062523/587be01b1a28ab834d8b74d9/html5/thumbnails/33.jpg)
33
Agorava Makroarchitektur– Agorava core ist das
«smart module» des Frameworks
– Module umfassen u.A. REST API und JSON Mapping
– Agorava nutzt die volle CDI Implementation
– In Arbeit ab 0.7 sind:• Java SE Support (z.B. CDI 2)• Unterstützung von JSR 330
(Guice / Dagger, bei Bedarf auch Spring)
![Page 34: JavaLand: Quantified Social - Fitness-Geräte und -Portale mit Agorava](https://reader036.vdocuments.site/reader036/viewer/2022062523/587be01b1a28ab834d8b74d9/html5/thumbnails/34.jpg)
“A coordinated observation infrastructure composed of a distributed collection of resources that can collectively behave as a single, autonomous, task-able, dynamically adaptive and reconfigurable observing system that provides raw and processed data, along with associated meta-data, via a set of standards-based service-oriented interfaces.” (Glenn, 2007)
Sensor Web | Was ist das?
34
![Page 35: JavaLand: Quantified Social - Fitness-Geräte und -Portale mit Agorava](https://reader036.vdocuments.site/reader036/viewer/2022062523/587be01b1a28ab834d8b74d9/html5/thumbnails/35.jpg)
OGC Sensor Web Enablement• SensorML• O&M• TransducerML• GeographyML
Web Services• Web Services Description
Language• REST
National Institute for Standards and Technology• Semantic Interoperability
Communityof Practice
• Sensor Standards Harmonization
W3C Semantic Web• Resource Description
Framework• RDF Schema• Web Ontology Language• Semantic Web Rule
Language
• SAWSDL
• SA-REST
• SML-S
• O&M-S
• TML-S
Sensor Ontology
Sensor Ontology
Daten Standards
Unicode Consortium• CLDR• ICU4J
Units
UCUM/Regenstrief• Unified Code for Units of
Measure
35
![Page 36: JavaLand: Quantified Social - Fitness-Geräte und -Portale mit Agorava](https://reader036.vdocuments.site/reader036/viewer/2022062523/587be01b1a28ab834d8b74d9/html5/thumbnails/36.jpg)
Demo
![Page 37: JavaLand: Quantified Social - Fitness-Geräte und -Portale mit Agorava](https://reader036.vdocuments.site/reader036/viewer/2022062523/587be01b1a28ab834d8b74d9/html5/thumbnails/37.jpg)
37
Agorava Buch–Das erste Agorava
Buch ist für das 1. Halbjahr 2016 zur Veröffentlichung geplant. (Amazon, Google Play!, iTunes, etc.)
![Page 38: JavaLand: Quantified Social - Fitness-Geräte und -Portale mit Agorava](https://reader036.vdocuments.site/reader036/viewer/2022062523/587be01b1a28ab834d8b74d9/html5/thumbnails/38.jpg)
Fazit• Zahlreiche API Anbieter werfen (Java)
Entwicklern Steine in den Weg– Kommerzielle Zertifizierung oder hohe
Lizenzgebühren bevor Entwicklung möglich
– APIs oft für SE/Desktop/Android maßgeschneidert
– Bot- oder Malware-Blocker missverstehen legitime Java EE Anwendungen als potentielle Angreifer
– „OAuth Hell“
![Page 39: JavaLand: Quantified Social - Fitness-Geräte und -Portale mit Agorava](https://reader036.vdocuments.site/reader036/viewer/2022062523/587be01b1a28ab834d8b74d9/html5/thumbnails/39.jpg)
Links• UOM @ GitHub:
http://unitsofmeasurement.github.io• Ich @ GitHub:
http://www.github.com/keilw• Agorava:
http://www.agorava.org
• Twitter: @wernerkeil