SlideShare una empresa de Scribd logo
1 de 24
The WoTKit
A Lightweight Tookit for the Web of Things


           Mike Blackstock, Rodger Lea

     Media and Graphics Interdisciplinary Centre
           University of British Columbia
                Vancouver, Canada
Position Overview
•   Lack of effective toolkits is a significant barrier to
    adoption of the web of things
    •   Balance between functionality and simplicity
•   Context
    •   WoTKit and application experience
    •   Raised questions related to approach and
        features
•   Goal: guidelines for WoT toolkit developers
    toward basic requirements and approaches
Many Other Toolkits
• High end M2M systems
 • Custom solutions
 • Not focused on web, sharing
• Similar web-centric toolkits
• Key differences
 • what is included
 • how services are delivered
Experience
•   Remote monitor of pulse oximeter
•   Transport and air quality mobile
    apps
•   Social sustainability applications
•   Phidget, Arduino integration
•   Zigbee gateways
•   CPU monitors
•   Power monitoring
•   Social network integration
Toolkit Requirements
Toolkit Requirements

• Integration
Toolkit Requirements

• Integration
• Sharing
Toolkit Requirements

• Integration
• Sharing
• Visualizations   100
                    75
                    50
                    25
                     0
                     12:05 12:10 12:15 12:20
Toolkit Requirements

• Integration
• Sharing
• Visualizations   100
                    75

• Processing        50
                    25
                     0
                     12:05 12:10 12:15 12:20
Toolkit Requirements

• Integration
• Sharing
• Visualizations   100
                    75

• Processing        50
                    25

• RESTful APIs       0
                     12:05 12:10 12:15 12:20
Integration
 • Basic function of all toolkits
 • Easy thing-integration using web servers
    and clients
 • Toolkit acts as aggregator for thing (meta)
    data
 • Relay for for actuator control
 • Gateways, often simple scripts, update
    toolkit with state, connect actuators
Sharing
• Sharing things, data
  and components
• Saves integration task
  for others
• Allows easy creation
  of mashups
• Most existing systems
Visualizations

• Often first task after integration:
  see your data
  • Sen.se dashboards
  • Google Charts, Maps
  • ThingSpeak iFrames
  • Pachube graphs
Processing

• Pachube triggers
• Sen.se applications
• Paraimpu
  connections and
  filters
• Pipes and modules
RESTful APIs

• Allows developers to
  process and visualize
  data in new ways
• incorporate into
  complex applications
• integrate “non-thing”
  data sources
WoTKit
•   Data model: sensors (actuators) with meta data:
    •   owner
    •   id, names
    •   location
    •   description
    •   field schema
•   Sensor data
    •   named fields (some defaults)
    •   server timestamp
    •   client timestamp
Architecture
•   Management and
    visualization
•   Processing engine
•   RESTful API
•   Shared data model
•   Database and message
    broker
•   Google Charts, jQuery
    UI, Flot, Spring
    Framework, ActiveMQ,
    MySQL
Processing Engine
•   Pipes consist of linked stateful
    modules
•   Routing table of connected
    modules from pipe descriptions.
•   Dispatcher thread gets next
    task from queue
•   Multithreaded executor
    performs tasks
•   Tasks may add new tasks to the
    queue
Open Questions

• Given other emerging systems, and WoTKit
  experience
• What are the key requirements for WoT
  Toolkits?
• How should these requirements be met?
Thing Model
•   Naming things
    •   human readable names (dns)?
    •   hierarchical or flat namespace?
    •   tagging, searching
•   Thing representations and schema
    •   What meta data is shared by things?
    •   What types of data can they emit and receive?
    •   what control messages can be sent?
Integration Points
•   Sensor data input and output API
•   Actuator control API: URL callbacks, long polling, WebSockets
•   Visualizations & widgets
    •   dashboards & widgets?
    •   apps?
    •   simple line charts?
•   Data processing integration
    •   apps?
    •   pipe modules?
    •   connectors?
Processing and Interaction
•   Push or Pull?
    •   Push: firewall friendly, but events no one is interested in
    •   Pull: infrastructure polling for unnecessary updates
    •   Current state and stream of historical values?
•   Processing Model
    •   Event based: alerting and filtering, but no historical data
        access
    •   Query based: historical data, but need to check for change
        regularly
    •   What are the appropriate programming approaches and
        APIs? Simple alerts, filters, apps, pipes?
Sharing and Interoperability
 • Sharing
  • Share via social networks, or do things
     have other relationships?
 • Toolkit Integration and Standards
  • Should we be working for toolkit
     interoperability?
   • What is the fundamental programming
     model and services for all WoT toolkits?
Conclusions
• Exposing things to the web allows
  developers to more quickly build IoT
  applications.
• Experience with WoTKit has allowed us to
  explore toolkit requirements.
• What does it mean to “include batteries”
  for a WoT toolkit for rapid mashup
  development?

Más contenido relacionado

La actualidad más candente

SDN :: Software Defined Networking –2017 Executive Overview
SDN :: Software Defined Networking –2017 Executive OverviewSDN :: Software Defined Networking –2017 Executive Overview
SDN :: Software Defined Networking –2017 Executive OverviewChristian Esteve Rothenberg
 
Bahrain ch9 introduction to docker 5th birthday
Bahrain ch9 introduction to docker 5th birthday Bahrain ch9 introduction to docker 5th birthday
Bahrain ch9 introduction to docker 5th birthday Walid Shaari
 
Kick starting Network Automation
Kick starting Network AutomationKick starting Network Automation
Kick starting Network AutomationWalid Shaari
 
Why we got to Docker
Why we got to DockerWhy we got to Docker
Why we got to Dockerallingeek
 
DEVNET-1114 Automated Management Using SDN/NFV
DEVNET-1114	Automated Management Using SDN/NFVDEVNET-1114	Automated Management Using SDN/NFV
DEVNET-1114 Automated Management Using SDN/NFVCisco DevNet
 
Microprocessors & microcontrollers- The design Context
Microprocessors & microcontrollers- The design ContextMicroprocessors & microcontrollers- The design Context
Microprocessors & microcontrollers- The design ContextDebasis Das
 
Using Eclipse and Lua for the Internet of Things - EclipseDay Googleplex 2012
Using Eclipse and Lua for the Internet of Things - EclipseDay Googleplex 2012Using Eclipse and Lua for the Internet of Things - EclipseDay Googleplex 2012
Using Eclipse and Lua for the Internet of Things - EclipseDay Googleplex 2012Benjamin Cabé
 
IoT material revised edition
IoT material revised editionIoT material revised edition
IoT material revised editionpavan penugonda
 
Web API Management meets the Internet of Things
Web API Management meets the Internet of ThingsWeb API Management meets the Internet of Things
Web API Management meets the Internet of ThingsPaul Fremantle
 
Using Eclipse and Lua for the Internet of Things with Eclipse Koneki, Mihini ...
Using Eclipse and Lua for the Internet of Things with Eclipse Koneki, Mihini ...Using Eclipse and Lua for the Internet of Things with Eclipse Koneki, Mihini ...
Using Eclipse and Lua for the Internet of Things with Eclipse Koneki, Mihini ...Benjamin Cabé
 
Building Open Source IoT Cloud
Building Open Source IoT CloudBuilding Open Source IoT Cloud
Building Open Source IoT Clouddejanb
 
Mobile app-and-microservices-with-ibm-cloud
Mobile app-and-microservices-with-ibm-cloudMobile app-and-microservices-with-ibm-cloud
Mobile app-and-microservices-with-ibm-cloudSrinivasan Nanduri
 
Mob324 Windows IoT Core Dave Glover Microsoft Australia
Mob324 Windows IoT Core Dave Glover Microsoft AustraliaMob324 Windows IoT Core Dave Glover Microsoft Australia
Mob324 Windows IoT Core Dave Glover Microsoft AustraliaDave Glover
 
Compact models for compact devices: Visualisation of SAR using mobile apps
Compact models for compact devices: Visualisation of SAR using mobile appsCompact models for compact devices: Visualisation of SAR using mobile apps
Compact models for compact devices: Visualisation of SAR using mobile appsAlex Clark
 

La actualidad más candente (19)

Sbrc 2014 Painel SDN
Sbrc 2014 Painel SDNSbrc 2014 Painel SDN
Sbrc 2014 Painel SDN
 
SDN :: Software Defined Networking –2017 Executive Overview
SDN :: Software Defined Networking –2017 Executive OverviewSDN :: Software Defined Networking –2017 Executive Overview
SDN :: Software Defined Networking –2017 Executive Overview
 
IoT heap 1
IoT heap 1IoT heap 1
IoT heap 1
 
Bahrain ch9 introduction to docker 5th birthday
Bahrain ch9 introduction to docker 5th birthday Bahrain ch9 introduction to docker 5th birthday
Bahrain ch9 introduction to docker 5th birthday
 
Kick starting Network Automation
Kick starting Network AutomationKick starting Network Automation
Kick starting Network Automation
 
Why we got to Docker
Why we got to DockerWhy we got to Docker
Why we got to Docker
 
DEVNET-1114 Automated Management Using SDN/NFV
DEVNET-1114	Automated Management Using SDN/NFVDEVNET-1114	Automated Management Using SDN/NFV
DEVNET-1114 Automated Management Using SDN/NFV
 
Microprocessors & microcontrollers- The design Context
Microprocessors & microcontrollers- The design ContextMicroprocessors & microcontrollers- The design Context
Microprocessors & microcontrollers- The design Context
 
Using Eclipse and Lua for the Internet of Things - EclipseDay Googleplex 2012
Using Eclipse and Lua for the Internet of Things - EclipseDay Googleplex 2012Using Eclipse and Lua for the Internet of Things - EclipseDay Googleplex 2012
Using Eclipse and Lua for the Internet of Things - EclipseDay Googleplex 2012
 
IoT material revised edition
IoT material revised editionIoT material revised edition
IoT material revised edition
 
Web API Management meets the Internet of Things
Web API Management meets the Internet of ThingsWeb API Management meets the Internet of Things
Web API Management meets the Internet of Things
 
Using Eclipse and Lua for the Internet of Things with Eclipse Koneki, Mihini ...
Using Eclipse and Lua for the Internet of Things with Eclipse Koneki, Mihini ...Using Eclipse and Lua for the Internet of Things with Eclipse Koneki, Mihini ...
Using Eclipse and Lua for the Internet of Things with Eclipse Koneki, Mihini ...
 
Building Open Source IoT Cloud
Building Open Source IoT CloudBuilding Open Source IoT Cloud
Building Open Source IoT Cloud
 
Javantura v6 - Building IoT Middleware with Microservices - Mario Kusek
Javantura v6 - Building IoT Middleware with Microservices - Mario KusekJavantura v6 - Building IoT Middleware with Microservices - Mario Kusek
Javantura v6 - Building IoT Middleware with Microservices - Mario Kusek
 
Mobile app-and-microservices-with-ibm-cloud
Mobile app-and-microservices-with-ibm-cloudMobile app-and-microservices-with-ibm-cloud
Mobile app-and-microservices-with-ibm-cloud
 
Mob324 Windows IoT Core Dave Glover Microsoft Australia
Mob324 Windows IoT Core Dave Glover Microsoft AustraliaMob324 Windows IoT Core Dave Glover Microsoft Australia
Mob324 Windows IoT Core Dave Glover Microsoft Australia
 
Fiware, the future internet
Fiware, the future internetFiware, the future internet
Fiware, the future internet
 
Grid computiing
Grid computiingGrid computiing
Grid computiing
 
Compact models for compact devices: Visualisation of SAR using mobile apps
Compact models for compact devices: Visualisation of SAR using mobile appsCompact models for compact devices: Visualisation of SAR using mobile apps
Compact models for compact devices: Visualisation of SAR using mobile apps
 

Destacado

Cosmos, Big Data GE implementation in FIWARE
Cosmos, Big Data GE implementation in FIWARECosmos, Big Data GE implementation in FIWARE
Cosmos, Big Data GE implementation in FIWAREFernando Lopez Aguilar
 
ABA Maschinenbau, Elektronik und Mechatronik in Österreich
ABA Maschinenbau, Elektronik und Mechatronik in ÖsterreichABA Maschinenbau, Elektronik und Mechatronik in Österreich
ABA Maschinenbau, Elektronik und Mechatronik in ÖsterreichABA - Invest in Austria
 
ABTophockeytoernooi 27 En 28 Augustus 2011
ABTophockeytoernooi 27 En 28 Augustus 2011ABTophockeytoernooi 27 En 28 Augustus 2011
ABTophockeytoernooi 27 En 28 Augustus 2011businessquivive
 
¿Cómo funciona una red social anónima? Duvamis
¿Cómo funciona una red social anónima? Duvamis¿Cómo funciona una red social anónima? Duvamis
¿Cómo funciona una red social anónima? DuvamisJosé Luis Arriaza Sanjurjo
 
Hotelera organización de hospedajes
Hotelera   organización de hospedajesHotelera   organización de hospedajes
Hotelera organización de hospedajesREYES contadores
 
MPC Zweite Reefer Flottenfonds: Schadenersatz wegen Falschberatung durch die ...
MPC Zweite Reefer Flottenfonds: Schadenersatz wegen Falschberatung durch die ...MPC Zweite Reefer Flottenfonds: Schadenersatz wegen Falschberatung durch die ...
MPC Zweite Reefer Flottenfonds: Schadenersatz wegen Falschberatung durch die ...Mathias Nittel
 
Low cost_platform_a_direct_worldwide_t_our
 Low cost_platform_a_direct_worldwide_t_our Low cost_platform_a_direct_worldwide_t_our
Low cost_platform_a_direct_worldwide_t_ourKarl Ziegler
 
Introduccion a project adriana y alejandra talavera
Introduccion a project adriana y alejandra talaveraIntroduccion a project adriana y alejandra talavera
Introduccion a project adriana y alejandra talaveraAdrii Liiz
 
CV & social media workshop at BEABLE Job Day
CV & social media workshop at BEABLE Job DayCV & social media workshop at BEABLE Job Day
CV & social media workshop at BEABLE Job DayStéphane Califice
 
vNAP Session 5 Slides
vNAP Session 5 SlidesvNAP Session 5 Slides
vNAP Session 5 SlidesNiall Hardie
 
Chapter 8 Consumer Attitude Formation And Change
Chapter 8 Consumer Attitude Formation And ChangeChapter 8 Consumer Attitude Formation And Change
Chapter 8 Consumer Attitude Formation And ChangeAvinash Kumar
 
Comment optimiser le régime fiscal des hedge fund managers en Suisse ?
Comment optimiser le régime fiscal des hedge fund managers en Suisse ?Comment optimiser le régime fiscal des hedge fund managers en Suisse ?
Comment optimiser le régime fiscal des hedge fund managers en Suisse ?Boitelle
 
Com es distribueix la corrupció política a Espanya
Com es distribueix la corrupció política a EspanyaCom es distribueix la corrupció política a Espanya
Com es distribueix la corrupció política a EspanyaRamir De Porrata-Doria
 
Präsentation Energiefachstelle Luzern
Präsentation Energiefachstelle LuzernPräsentation Energiefachstelle Luzern
Präsentation Energiefachstelle LuzernVorname Nachname
 
Crowdfunding esg 4-advice
Crowdfunding esg 4-adviceCrowdfunding esg 4-advice
Crowdfunding esg 4-adviceslides4media
 

Destacado (20)

Cosmos, Big Data GE implementation in FIWARE
Cosmos, Big Data GE implementation in FIWARECosmos, Big Data GE implementation in FIWARE
Cosmos, Big Data GE implementation in FIWARE
 
ABA Maschinenbau, Elektronik und Mechatronik in Österreich
ABA Maschinenbau, Elektronik und Mechatronik in ÖsterreichABA Maschinenbau, Elektronik und Mechatronik in Österreich
ABA Maschinenbau, Elektronik und Mechatronik in Österreich
 
Factsheet victor
Factsheet victorFactsheet victor
Factsheet victor
 
ABTophockeytoernooi 27 En 28 Augustus 2011
ABTophockeytoernooi 27 En 28 Augustus 2011ABTophockeytoernooi 27 En 28 Augustus 2011
ABTophockeytoernooi 27 En 28 Augustus 2011
 
Unternehmensfinanzierung mit Banken
Unternehmensfinanzierung mit BankenUnternehmensfinanzierung mit Banken
Unternehmensfinanzierung mit Banken
 
¿Cómo funciona una red social anónima? Duvamis
¿Cómo funciona una red social anónima? Duvamis¿Cómo funciona una red social anónima? Duvamis
¿Cómo funciona una red social anónima? Duvamis
 
Hotelera organización de hospedajes
Hotelera   organización de hospedajesHotelera   organización de hospedajes
Hotelera organización de hospedajes
 
MPC Zweite Reefer Flottenfonds: Schadenersatz wegen Falschberatung durch die ...
MPC Zweite Reefer Flottenfonds: Schadenersatz wegen Falschberatung durch die ...MPC Zweite Reefer Flottenfonds: Schadenersatz wegen Falschberatung durch die ...
MPC Zweite Reefer Flottenfonds: Schadenersatz wegen Falschberatung durch die ...
 
Low cost_platform_a_direct_worldwide_t_our
 Low cost_platform_a_direct_worldwide_t_our Low cost_platform_a_direct_worldwide_t_our
Low cost_platform_a_direct_worldwide_t_our
 
Introduccion a project adriana y alejandra talavera
Introduccion a project adriana y alejandra talaveraIntroduccion a project adriana y alejandra talavera
Introduccion a project adriana y alejandra talavera
 
CV & social media workshop at BEABLE Job Day
CV & social media workshop at BEABLE Job DayCV & social media workshop at BEABLE Job Day
CV & social media workshop at BEABLE Job Day
 
id-ee Blog Session 2 - Basics
id-ee Blog Session 2 - Basicsid-ee Blog Session 2 - Basics
id-ee Blog Session 2 - Basics
 
vNAP Session 5 Slides
vNAP Session 5 SlidesvNAP Session 5 Slides
vNAP Session 5 Slides
 
Chapter 8 Consumer Attitude Formation And Change
Chapter 8 Consumer Attitude Formation And ChangeChapter 8 Consumer Attitude Formation And Change
Chapter 8 Consumer Attitude Formation And Change
 
Plötzlich Führungskraft
Plötzlich FührungskraftPlötzlich Führungskraft
Plötzlich Führungskraft
 
Comment optimiser le régime fiscal des hedge fund managers en Suisse ?
Comment optimiser le régime fiscal des hedge fund managers en Suisse ?Comment optimiser le régime fiscal des hedge fund managers en Suisse ?
Comment optimiser le régime fiscal des hedge fund managers en Suisse ?
 
Com es distribueix la corrupció política a Espanya
Com es distribueix la corrupció política a EspanyaCom es distribueix la corrupció política a Espanya
Com es distribueix la corrupció política a Espanya
 
Präsentation Energiefachstelle Luzern
Präsentation Energiefachstelle LuzernPräsentation Energiefachstelle Luzern
Präsentation Energiefachstelle Luzern
 
Crowdfunding esg 4-advice
Crowdfunding esg 4-adviceCrowdfunding esg 4-advice
Crowdfunding esg 4-advice
 
Net Land Art 3
Net Land Art 3Net Land Art 3
Net Land Art 3
 

Similar a WoTKit: a Lightweight Toolkit for the Web of Things

Cloud-Native-Data with Cornelia Davis
Cloud-Native-Data with Cornelia DavisCloud-Native-Data with Cornelia Davis
Cloud-Native-Data with Cornelia DavisVMware Tanzu
 
UI Dev in Big data world using open source
UI Dev in Big data world using open sourceUI Dev in Big data world using open source
UI Dev in Big data world using open sourceTech Triveni
 
The Internet of Simulations and the agile development of Cyber-physical systems
The Internet of Simulations and the agile development of Cyber-physical systemsThe Internet of Simulations and the agile development of Cyber-physical systems
The Internet of Simulations and the agile development of Cyber-physical systemsSimware
 
Kontent.ai DevMeetup #1 - Evoluce prvního veřejného API v hotelovém světě
Kontent.ai DevMeetup #1 - Evoluce prvního veřejného API v hotelovém světěKontent.ai DevMeetup #1 - Evoluce prvního veřejného API v hotelovém světě
Kontent.ai DevMeetup #1 - Evoluce prvního veřejného API v hotelovém světěPeter Sedlařík
 
Guidelines for moving from Oracle Forms to Oracle ADF and SOA
Guidelines for moving from Oracle Forms to Oracle ADF and SOAGuidelines for moving from Oracle Forms to Oracle ADF and SOA
Guidelines for moving from Oracle Forms to Oracle ADF and SOASteven Davelaar
 
Software Architecture and Architectors: useless VS valuable
Software Architecture and Architectors: useless VS valuableSoftware Architecture and Architectors: useless VS valuable
Software Architecture and Architectors: useless VS valuableComsysto Reply GmbH
 
Neotys PAC - Ian Molyneaux
Neotys PAC - Ian MolyneauxNeotys PAC - Ian Molyneaux
Neotys PAC - Ian MolyneauxNeotys_Partner
 
Introduction to Conductor
Introduction to ConductorIntroduction to Conductor
Introduction to ConductorJason Gleason
 
OpenDaylight Update (June 2018)
OpenDaylight Update (June 2018)OpenDaylight Update (June 2018)
OpenDaylight Update (June 2018)Michelle Holley
 
How a Data Mesh is Driving our Platform | Trey Hicks, Gloo
How a Data Mesh is Driving our Platform | Trey Hicks, GlooHow a Data Mesh is Driving our Platform | Trey Hicks, Gloo
How a Data Mesh is Driving our Platform | Trey Hicks, GlooHostedbyConfluent
 
Power BI vs Tableau
Power BI vs TableauPower BI vs Tableau
Power BI vs TableauDon Hyun
 
Tokyo Azure Meetup #7 - Introduction to Serverless Architectures with Azure F...
Tokyo Azure Meetup #7 - Introduction to Serverless Architectures with Azure F...Tokyo Azure Meetup #7 - Introduction to Serverless Architectures with Azure F...
Tokyo Azure Meetup #7 - Introduction to Serverless Architectures with Azure F...Tokyo Azure Meetup
 
Pros & Cons of Microservices Architecture
Pros & Cons of Microservices ArchitecturePros & Cons of Microservices Architecture
Pros & Cons of Microservices ArchitectureAshwini Kuntamukkala
 
Making Data Scientists Productive in Azure
Making Data Scientists Productive in AzureMaking Data Scientists Productive in Azure
Making Data Scientists Productive in AzureValdas Maksimavičius
 
Integrating SharePoint 2010 and Visual Studio Lightswitch
Integrating SharePoint 2010 and Visual Studio LightswitchIntegrating SharePoint 2010 and Visual Studio Lightswitch
Integrating SharePoint 2010 and Visual Studio LightswitchRob Windsor
 
Orchestrating Cloud Workloads with RightScale Self-Service
Orchestrating Cloud Workloads with RightScale Self-Service Orchestrating Cloud Workloads with RightScale Self-Service
Orchestrating Cloud Workloads with RightScale Self-Service RightScale
 
Microservices - opportunities, dilemmas and problems
Microservices - opportunities, dilemmas and problemsMicroservices - opportunities, dilemmas and problems
Microservices - opportunities, dilemmas and problemsŁukasz Sowa
 

Similar a WoTKit: a Lightweight Toolkit for the Web of Things (20)

Cloud-native Data
Cloud-native DataCloud-native Data
Cloud-native Data
 
Cloud-Native-Data with Cornelia Davis
Cloud-Native-Data with Cornelia DavisCloud-Native-Data with Cornelia Davis
Cloud-Native-Data with Cornelia Davis
 
UI Dev in Big data world using open source
UI Dev in Big data world using open sourceUI Dev in Big data world using open source
UI Dev in Big data world using open source
 
The Internet of Simulations and the agile development of Cyber-physical systems
The Internet of Simulations and the agile development of Cyber-physical systemsThe Internet of Simulations and the agile development of Cyber-physical systems
The Internet of Simulations and the agile development of Cyber-physical systems
 
Kontent.ai DevMeetup #1 - Evoluce prvního veřejného API v hotelovém světě
Kontent.ai DevMeetup #1 - Evoluce prvního veřejného API v hotelovém světěKontent.ai DevMeetup #1 - Evoluce prvního veřejného API v hotelovém světě
Kontent.ai DevMeetup #1 - Evoluce prvního veřejného API v hotelovém světě
 
Guidelines for moving from Oracle Forms to Oracle ADF and SOA
Guidelines for moving from Oracle Forms to Oracle ADF and SOAGuidelines for moving from Oracle Forms to Oracle ADF and SOA
Guidelines for moving from Oracle Forms to Oracle ADF and SOA
 
Software Architecture and Architectors: useless VS valuable
Software Architecture and Architectors: useless VS valuableSoftware Architecture and Architectors: useless VS valuable
Software Architecture and Architectors: useless VS valuable
 
Viper architecture
Viper architectureViper architecture
Viper architecture
 
Neotys PAC - Ian Molyneaux
Neotys PAC - Ian MolyneauxNeotys PAC - Ian Molyneaux
Neotys PAC - Ian Molyneaux
 
Introduction to Conductor
Introduction to ConductorIntroduction to Conductor
Introduction to Conductor
 
OpenDaylight Update (June 2018)
OpenDaylight Update (June 2018)OpenDaylight Update (June 2018)
OpenDaylight Update (June 2018)
 
How a Data Mesh is Driving our Platform | Trey Hicks, Gloo
How a Data Mesh is Driving our Platform | Trey Hicks, GlooHow a Data Mesh is Driving our Platform | Trey Hicks, Gloo
How a Data Mesh is Driving our Platform | Trey Hicks, Gloo
 
Power BI vs Tableau
Power BI vs TableauPower BI vs Tableau
Power BI vs Tableau
 
Power bi vs tableau
Power bi vs tableauPower bi vs tableau
Power bi vs tableau
 
Tokyo Azure Meetup #7 - Introduction to Serverless Architectures with Azure F...
Tokyo Azure Meetup #7 - Introduction to Serverless Architectures with Azure F...Tokyo Azure Meetup #7 - Introduction to Serverless Architectures with Azure F...
Tokyo Azure Meetup #7 - Introduction to Serverless Architectures with Azure F...
 
Pros & Cons of Microservices Architecture
Pros & Cons of Microservices ArchitecturePros & Cons of Microservices Architecture
Pros & Cons of Microservices Architecture
 
Making Data Scientists Productive in Azure
Making Data Scientists Productive in AzureMaking Data Scientists Productive in Azure
Making Data Scientists Productive in Azure
 
Integrating SharePoint 2010 and Visual Studio Lightswitch
Integrating SharePoint 2010 and Visual Studio LightswitchIntegrating SharePoint 2010 and Visual Studio Lightswitch
Integrating SharePoint 2010 and Visual Studio Lightswitch
 
Orchestrating Cloud Workloads with RightScale Self-Service
Orchestrating Cloud Workloads with RightScale Self-Service Orchestrating Cloud Workloads with RightScale Self-Service
Orchestrating Cloud Workloads with RightScale Self-Service
 
Microservices - opportunities, dilemmas and problems
Microservices - opportunities, dilemmas and problemsMicroservices - opportunities, dilemmas and problems
Microservices - opportunities, dilemmas and problems
 

Más de Michael Blackstock

CQRS and Event Sourcing for IoT applications
CQRS and Event Sourcing for IoT applicationsCQRS and Event Sourcing for IoT applications
CQRS and Event Sourcing for IoT applicationsMichael Blackstock
 
FRED: A Hosted Data Flow Platform for the IoT
FRED: A Hosted Data Flow Platform for the IoTFRED: A Hosted Data Flow Platform for the IoT
FRED: A Hosted Data Flow Platform for the IoTMichael Blackstock
 
iot-and-smart-cities-lea-blackstock
iot-and-smart-cities-lea-blackstockiot-and-smart-cities-lea-blackstock
iot-and-smart-cities-lea-blackstockMichael Blackstock
 
IoT Interoperability: a Hub-based Approach
IoT Interoperability: a Hub-based ApproachIoT Interoperability: a Hub-based Approach
IoT Interoperability: a Hub-based ApproachMichael Blackstock
 

Más de Michael Blackstock (8)

CQRS and Event Sourcing for IoT applications
CQRS and Event Sourcing for IoT applicationsCQRS and Event Sourcing for IoT applications
CQRS and Event Sourcing for IoT applications
 
FRED: A Hosted Data Flow Platform for the IoT
FRED: A Hosted Data Flow Platform for the IoTFRED: A Hosted Data Flow Platform for the IoT
FRED: A Hosted Data Flow Platform for the IoT
 
iot-and-smart-cities-lea-blackstock
iot-and-smart-cities-lea-blackstockiot-and-smart-cities-lea-blackstock
iot-and-smart-cities-lea-blackstock
 
IoT Interoperability: a Hub-based Approach
IoT Interoperability: a Hub-based ApproachIoT Interoperability: a Hub-based Approach
IoT Interoperability: a Hub-based Approach
 
WoT 2013 Thingbroker
WoT 2013 ThingbrokerWoT 2013 Thingbroker
WoT 2013 Thingbroker
 
WoT 2013 Interop
WoT 2013 InteropWoT 2013 Interop
WoT 2013 Interop
 
Wo t 2013-thingbroker
Wo t 2013-thingbrokerWo t 2013-thingbroker
Wo t 2013-thingbroker
 
Blackstock wo t 2011
Blackstock wo t 2011Blackstock wo t 2011
Blackstock wo t 2011
 

Último

"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesVector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesZilliz
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piececharlottematthew16
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 

Último (20)

"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesVector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector Databases
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 

WoTKit: a Lightweight Toolkit for the Web of Things

  • 1. The WoTKit A Lightweight Tookit for the Web of Things Mike Blackstock, Rodger Lea Media and Graphics Interdisciplinary Centre University of British Columbia Vancouver, Canada
  • 2. Position Overview • Lack of effective toolkits is a significant barrier to adoption of the web of things • Balance between functionality and simplicity • Context • WoTKit and application experience • Raised questions related to approach and features • Goal: guidelines for WoT toolkit developers toward basic requirements and approaches
  • 3. Many Other Toolkits • High end M2M systems • Custom solutions • Not focused on web, sharing • Similar web-centric toolkits • Key differences • what is included • how services are delivered
  • 4. Experience • Remote monitor of pulse oximeter • Transport and air quality mobile apps • Social sustainability applications • Phidget, Arduino integration • Zigbee gateways • CPU monitors • Power monitoring • Social network integration
  • 8. Toolkit Requirements • Integration • Sharing • Visualizations 100 75 50 25 0 12:05 12:10 12:15 12:20
  • 9. Toolkit Requirements • Integration • Sharing • Visualizations 100 75 • Processing 50 25 0 12:05 12:10 12:15 12:20
  • 10. Toolkit Requirements • Integration • Sharing • Visualizations 100 75 • Processing 50 25 • RESTful APIs 0 12:05 12:10 12:15 12:20
  • 11. Integration • Basic function of all toolkits • Easy thing-integration using web servers and clients • Toolkit acts as aggregator for thing (meta) data • Relay for for actuator control • Gateways, often simple scripts, update toolkit with state, connect actuators
  • 12. Sharing • Sharing things, data and components • Saves integration task for others • Allows easy creation of mashups • Most existing systems
  • 13. Visualizations • Often first task after integration: see your data • Sen.se dashboards • Google Charts, Maps • ThingSpeak iFrames • Pachube graphs
  • 14. Processing • Pachube triggers • Sen.se applications • Paraimpu connections and filters • Pipes and modules
  • 15. RESTful APIs • Allows developers to process and visualize data in new ways • incorporate into complex applications • integrate “non-thing” data sources
  • 16. WoTKit • Data model: sensors (actuators) with meta data: • owner • id, names • location • description • field schema • Sensor data • named fields (some defaults) • server timestamp • client timestamp
  • 17. Architecture • Management and visualization • Processing engine • RESTful API • Shared data model • Database and message broker • Google Charts, jQuery UI, Flot, Spring Framework, ActiveMQ, MySQL
  • 18. Processing Engine • Pipes consist of linked stateful modules • Routing table of connected modules from pipe descriptions. • Dispatcher thread gets next task from queue • Multithreaded executor performs tasks • Tasks may add new tasks to the queue
  • 19. Open Questions • Given other emerging systems, and WoTKit experience • What are the key requirements for WoT Toolkits? • How should these requirements be met?
  • 20. Thing Model • Naming things • human readable names (dns)? • hierarchical or flat namespace? • tagging, searching • Thing representations and schema • What meta data is shared by things? • What types of data can they emit and receive? • what control messages can be sent?
  • 21. Integration Points • Sensor data input and output API • Actuator control API: URL callbacks, long polling, WebSockets • Visualizations & widgets • dashboards & widgets? • apps? • simple line charts? • Data processing integration • apps? • pipe modules? • connectors?
  • 22. Processing and Interaction • Push or Pull? • Push: firewall friendly, but events no one is interested in • Pull: infrastructure polling for unnecessary updates • Current state and stream of historical values? • Processing Model • Event based: alerting and filtering, but no historical data access • Query based: historical data, but need to check for change regularly • What are the appropriate programming approaches and APIs? Simple alerts, filters, apps, pipes?
  • 23. Sharing and Interoperability • Sharing • Share via social networks, or do things have other relationships? • Toolkit Integration and Standards • Should we be working for toolkit interoperability? • What is the fundamental programming model and services for all WoT toolkits?
  • 24. Conclusions • Exposing things to the web allows developers to more quickly build IoT applications. • Experience with WoTKit has allowed us to explore toolkit requirements. • What does it mean to “include batteries” for a WoT toolkit for rapid mashup development?

Notas del editor

  1. \n
  2. \n
  3. \n
  4. Remote monitor of pulse oximeter\n Bluetooth to laptop to WoTKit\n monitor patients during transport\n Air quality monitor for Android\n City air quality sensors scraped, aggregated by platform\n app pulls data and aggregates\n Transportation\n cell phone transport mode on phone\n sent to platform for data aggregation, crowd sourcing\n Airport arrivals and departures\n Phidget integration\n Both Sensors and actuators\n Zigbee gateway\n CPU Monitors\n Power meter applications\n Social network feeds\n
  5. \n
  6. \n
  7. \n
  8. \n
  9. \n
  10. \n
  11. \n
  12. \n
  13. \n
  14. \n
  15. \n
  16. \n
  17. \n
  18. \n
  19. \n
  20. \n
  21. \n
  22. \n
  23. \n
  24. \n
  25. \n
  26. \n
  27. \n
  28. \n
  29. \n
  30. \n
  31. \n
  32. \n
  33. \n
  34. \n
  35. \n
  36. \n
  37. \n
  38. \n