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

[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGSujit Pal
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 

Último (20)

[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAG
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 

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