SlideShare a Scribd company logo
1 of 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?

More Related Content

What's hot

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
 

What's hot (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
 

Viewers also liked

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
 

Viewers also liked (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 to 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 to 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
 

More from 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
 

More from 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
 

Recently uploaded

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
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
"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
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
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
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
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
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
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
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 

Recently uploaded (20)

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
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
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
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
"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
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
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
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
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?
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
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
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 

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?

Editor's Notes

  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