SlideShare une entreprise Scribd logo
1  sur  62
Télécharger pour lire hors ligne
A Web of Things Application Architecture -
Integrating the Real-World into the Web
Dominique Guinard
Ph.D. Defense, ETH Zurich
Motivation

Why should we bring the Web and real-world devices together?
                                                [flickr.com/photos/moragcasey]
An Increasing Number of Connected Smart Things…




                          A very large ecosystem of smart things,
                             complex application development



15.08.2011            Dominique Guinard                        3
Need for a Common Internet of Things
Application Architecture

 Application development with                             Hypothesis: The Web
  smart things:                                             (application archi. of the Internet)
        Requires expert knowledge:                         can be the application
              Hardware/software heterogeneity              architecture of smart things as
              Lack of common application protocols         well.
        WSN [Mot2011]                                     Research Question: «How can
         RFID [Sch2008]                                     the Web be leveraged to ease
                                                            the development of Internet of
                                                            Things applications and bring it
                                                            closer to non-specialists?»


                                             [Sch2008] Schmitt, P. Adoption und          [Mot2011] Mottola, L., & Picco, G. P.
                                             Diffusion neuer Technologien am             Programming wireless sensor networks:
                                             Beispiel der Radiofrequenz-Identifikation   Fundamental concepts and state of the
                                             (RFID). PhD Thesis, ETH Zurich.             art. ACM Comput. Surv.

15.08.2011                                        Dominique Guinard                                                         4
Contributions

 A Web of Things Application Architecture:
        Adapt and leverage protocols, services and tools of the Web
         ecosystem
        Foster a participatory application development:
              Easier for specialists
              Closer to Web developers (Web languages), tech-savvies (mashups) and end-
               users (browsers)
        Evaluated for WSN and RFID:
              Simplifies the development and deployment of applications




15.08.2011                                   Dominique Guinard                             5
Web of Things Application Architecture

Simplifying Application Development in the Internet of Things
                                                     [flickr.com/photos/docman]
Web of Things Application Architecture




15.08.2011           Dominique Guinard   7
Device Accessibility Layer




 How do we make smart things accessible on the Web?
 Generic design process[Gui2010] for smart things as Web
  resources:
        REST[Fie2000] and Resource Oriented Architectures[Ric2007]

             [Fie2000] Fielding, R. (2000).           [Ric2007] Richardson, L., & Ruby, S.    [Gui2010] Guinard, D., Trifa, V., Wilde, E.
             Architectural styles and the design of   RESTful web services, O’Reilly Media.   A Resource Oriented Architecture for the
             network-based software architectures.                                            Web of Things. IoT 2010
             PhD Thesis


15.08.2011                                               Dominique Guinard                                                           8
Resource              Representation        Interface                 Implementation
 Design                  Design              Design                      Strategy


                                                           http://<DOMAIN>:<PORT>/genericNodes
                                                                      /node1/sensors/temperature

                                               GET, DELETE




             GET

                   GET, PUT
                                                               http://<DOMAIN>:<PORT>/genericNodes




15.08.2011                             Dominique Guinard                                           9
Resource     Representations        Interface      Implementation
 Design          Design              Design           Strategy




15.08.2011                     Dominique Guinard                    10
Findability Layer




 Once smart things are accessible on the Web, how do we
  enable users to find the right service for their application?
 Enabling Smart Things to be indexed by search engines
  (lightweight metadata)[Gui2011]
 Local lookup and discovery infrastructure [Gui2010a,May2011]
             [Gui2011] Guinard, D., Trifa, V., Mattern,   [Gui2010a] Guinard, D., et al. (2010).    [May2011] Mayer, S., Guinard, D. An
             F., & Wilde, E. From the Internet of         Interacting with the SOA-Based Internet   Extensible Discovery Service for Smart
             Things to the Web of Things. Architecting    of Things: Discovery, Query, Selection,   Things. WoT2011
             the Internet of Things (pp. 97-129)          and On-Demand Provisioning of Web
                                                          Services. IEEE Transactions on Services
                                                          Computing

15.08.2011                                                    Dominique Guinard                                                        11
Sharing Layer




 Once smart things are accessible and findable on the Web,
  how do we share them?
 Social Web of Things [Gui2010b]


                                               [Gui2010b] Guinard, D., Fischer, M., &
                                               Trifa, V. Sharing using social networks in
                                               a composable web of things. WoT 2010


15.08.2011                 Dominique Guinard                                          12
Social Access Controller (SAC)
 Existing systems:
        Require dedicated access control lists
         (e.g., HTTP Digest or Basic
         Authentication)
 Leverage social graphs of social
  networks:
        Are walled-gardens [Ber2009]
        Allow sharing data, not services
 Social Access Controller as
  proxy between clients and smart
  things


                                                                [Ber2009] Tim Berners-Lee. Twenty
                                                                years: Looking forward, looking back.
                                                                WWW 2009


15.08.2011                                  Dominique Guinard                                           13
Social Access Controller (SAC)




15.08.2011           Dominique Guinard   14
Sharing in Friends and Things




                                   http://vswot.inf.ethz.ch:8091
                                   /gateways/vswot.inf.ethz.ch:8081
                                   /resources/sunspots/spot1/sensors/temperature




15.08.2011           Dominique Guinard                                         15
Composition Layer




 Once smart things are accessible, findable, shareable on
  the Web, how do we enable their easy composition by non-
  specialists, into new applications?
 Physical Mashups [Gui2010, Gui2010c]

                        [Gui2010] Guinard, D., Trifa, V., Wilde, E.   [Guinard2010c] Guinard, D. Mashing up
                        A Resource Oriented Architecture for the      your web-enabled home. ICWE 2010
                        Web of Things. IoT 2010


15.08.2011                   Dominique Guinard                                                            16
From Web 2.0 Mashups to Physical Mashups
 Web 2.0 Mashups:
        “Web applications generated by
         combining […] disparate Web sources
         […] to create useful new services”
             [Yu2008]

        Ad-hoc applications accessible to a
         larger public
 Physical Mashups:
        Composite Web applications involving
         smart things and virtual Web services
        Three development approaches



[Yu2008] Yu, J., Benatallah, B., Casati,
F., & Daniel, F. Understanding Mashup
Development. IEEE Internet Computing


15.08.2011                                     Dominique Guinard   17
Energie Visible: An Energy-Aware Mashup

                                             Developers:
                                               Smart Meters as an
                                                RESTful Web API:
                                               Mashup with any language
                                                supporting HTTP
                                             Users:
                                               Used by several families
                                                around the world (Energie
                                                Visible)




15.08.2011              Dominique Guinard                               18
EPC Mashup Dashboard: RFID Business Intelligence

                                Developers:
                                        RFID Readers & Data in a black-board
                                         approach
                                        Wizard-based creation of Widgets
                                        Merging Web data and real-world
                                         RFID data
                                Users:
                                        Simple Web page providing real-time
                                         business intelligence
                                        Deployed at the SAP future store




15.08.2011             Dominique Guinard                                       19
Electronic Article Surveillance as a Physical Mashup




                                            [Gui2010d] Guinard, D., Floerkemeier,
                                            C., & Sarma, S. Cloud Computing,
                                            REST and Mashups to Simplify RFID
                                            Applications, WoT 2011

                                            [Naef2009] Naef, L. ClickScript a
                                            visual programming language in the
                                            browser. Master Thesis, ETH Zurich

15.08.2011              Dominique Guinard                                    20
Selected Evaluations

Smart Gateways, Social Access Control & Developers’ Experiences
                                                           [flickr.com/photos/myfwc]
                                                           [flickr.com/photos/docman]
Smart Gateway vs Direct Web Integration
 End-to-end HTTP                              Smart Gateway:
            7000 (sequential) requests:                 7000 (sequential) requests:
                Avg.: 205 ms, SD: 127.8 ms                      Avg.: 4.2 ms, SD: 3.7 ms
                Min.: 96 ms, Max.: 8.5 sec                      Min.: 2 ms, Max.: 111 sec




15.08.2011                                    Dominique Guinard                               22
Using Social Access Control
 1000 requests on a Sun SPOT                          Through SAC (Facebook), RTT:
  (Smart Gateway):                                                Avg.: 218 ms, SD: 24 ms

 Direct Access:                                                  Min: 204 ms, Max: 830 ms

                Avg.: 9 ms, SD: 2 ms                         Most of the RTT (140ms) due to
                Max.: 40 ms, Min.: 6 ms                       social network login => caching




15.08.2011                                 Dominique Guinard                                     23
Ease of Use? Assessing the Developers’ Experience

                                                        WS-* (WSDL, SOAP, etc.) as
                                                         one of the most comprehensive
                                                         alternatives (DPWS, DNLA, etc.)
                                                        Performances were
                                                         compared[Yaz2009] , not ease of use
                                                        Study with 69 computer science
                                                         students
                                                        2 applications:
                                                               1. Android phone accessing a Sun
                                                                  SPOT featuring a WS-* API
                                                               2. Android phone accessing a Sun
                                                                  SPOT featuring a RESTful Web API
[Yaz2009] Yazar, D., & Dunkels, A.
Efficient application integration in IP-
based sensor networks. BuildSys
2009


15.08.2011                                 Dominique Guinard                                      24
Ease of Learning
                                        RESTful Web API:
                                          70% easy to very easy to
                                           learn
                                          63% fast to very fast to
                                           learn




15.08.2011         Dominique Guinard                                  25
Suitability by Use-Case and Guidelines




 REST and Web more adapted to foster adoption by non-
  specialists
 WS-* more adapted for high QoS/security requirements


15.08.2011               Dominique Guinard               26
Conclusions, Limitations and Outlook

What did we contribute? What are the current limitations?
                                                     [flickr.com/photos/brapke]
Contributions & Learnings
 WoT Application Architecture &
  evaluation in WSN + RFID
        The Web can be leveraged and
         adapted as a smart thing application
         architecture
        Eases the development & brings it
         closer to non-specialists
        Unveils integration possibilities:
              Browser, search engines, social
               networks, Web languages, mashups,
               etc.




15.08.2011                                     Dominique Guinard   28
Limitations & Outlook

 Not the best approach for every use-case:
        Real-time, high QoS requirements, battery-life
 Pushing Internet and Web standards forward:
        Lower foot-print (6LoWPAN)
        Web push (HTML5 WebSockets, etc.)
        Metadata for smart things
 Real-world evaluations:
        Larger deployments, industrial trials (IPSO alliance)
        Comparisons with other alternatives
        Evaluating the mashups with more end-users




15.08.2011                            Dominique Guinard          29
Thanks a lot for your attention
                                            Dominique Guinard
                                              Contact details:
                                               www.guinard.org
                                              Blog:
                                               www.webofthings.com
                                              Software:
                                               www.webofthings.com/projects
                                              Publications
                                               www.webofthings.com/publications




15.08.2011             Dominique Guinard                                      30
Backup

Wait! There is a little more…




15.08.2011                  Dominique Guinard   31
Complete Web of Things Application Architecture




15.08.2011             Dominique Guinard          32
Case-Studies
 Wireless Sensor Networks:                          Tagged Objects:
        General Purpose Sensing Platform                    RFID global network:
         (Sun SPOTs)                                             EPC Network
        Smart Metering Platform (Ploggs)




15.08.2011                                  Dominique Guinard                        33
Web-Enabling Smart Things in 4 Steps
             Resource                                                Based on REST [Fiel2000]
              Design
                                                                      and Resource Oriented
                                                                      Architecture [Rich2007].
                                                                     Applied it to smart things in
      Representation                                                  [Gui2010].
         Design




             Interface   GET, POST, PUT, DELETE, OPTIONS
              Design
                         Content Negotiation, Status Codes

                                                                                                [Fiel2000] Fielding, R. (2000).
                                                                                                Architectural styles and the design of
                                                                                                network-based software architectures.
                                                                                                PhD Thesis
      Implementation                              [Gui2010] Guinard, D., Trifa, V., Wilde, E.
         Strategy                                 A Resource Oriented Architecture for the      [Rich2007] Richardson, L., & Ruby, S.
                                                  Web of Things. IoT 2010                       RESTful web services, OʼReillyMedia.


15.08.2011                                            Dominique Guinard                                                              34
Resource   Representation   Interface           Implementation
    Design       Design         Design                Strategy




                                                    Identify Resources:
                                                            Any component of an application that
                                                             needs to be used and addressed.
                                                    Link resources together




15.08.2011                                 Dominique Guinard                                        35
Resource     Representation    Interface           Implementation
    Design         Design          Design                Strategy




                                                       Smart things should offer
                                                        different representations:
                                                               HTML for browsability
                                                               JSON for mashups
                                                               XML for interoperability



   {"resource":
     {"methods":["GET"],
     "name":"Temperature",
     "links":["/feed", "/rules"],
     "content":
     [{"description":"Current
   Temperature",
     "name":"Current Ambient Temperature",
     "value":"24.0",
     "unit": "celsius"}]}
   }




15.08.2011                                    Dominique Guinard                            36
Resource     Representation   Interface           Implementation
    Design         Design         Design                Strategy




 Leverage content negotiation:
        Accept: application/json
 Use the HTTP Verbs extensively:
        GET, PUT, POST, OPTIONS, DELETE
        GET /genericNodes/2/sensors/temperature
        PUT /genericNodes/2/actuators /led/1
 Map status codes:
        200 OK, 201 Created, 400 Bad Request, etc.
 The presented design process can be automated




15.08.2011                                   Dominique Guinard        37
Automating the Design Process
 The design process can be semi-
  automated through an editor
 Auto-WoT [May2010a] project:
        Generates the RESTful Web API
        Wraps it in an OSGi module, loadable
         as a device driver in a Smart Gateway




    [May2010a] Simon Mayer, Dominique
    Guinard, Vlad Trifa Facilitating the
    Integration and Interaction of Real-World
    Services for the Web of Things.
    UrbanIOT 2010



15.08.2011                                      Dominique Guinard   38
Smart Gateway Mediated Interaction




15.08.2011           Dominique Guinard   39
Pushing Data From Smart Things




15.08.2011          Dominique Guinard   40
Pushing From Web Sockets: t-Pusher Service




15.08.2011          Dominique Guinard        41
Performance Evaluation
                             7000 (sequential) requests:
                                    1. End-to-end HTTP
                                           Avg.: 205 ms, SD: 127.8 ms
                                           Max.: 8.5 sec (single request)
                                           Min.: 96 ms
                                    2. Syn-based Smart Gateway:
                                           Avg.: 4.2 ms, SD: 3.7 ms
                                           Max.: 111 sec
                                           Min.: 2 ms




15.08.2011          Dominique Guinard                                        42
Scalability / Concurrency Evaluation




 Smart Gateway sync-based approach
        Scales better:
              Strongly depends on the Web server implementation
        Provides more aged data.
15.08.2011                                  Dominique Guinard      43
Discovery by Crawling
crawl(Link currentLink) {
  new Resource() r;                                                Thanks to the Accessibility
  r.setUri = currentLink.getURI();
  r.setShortDescription = currentLink.text();
                                                                    Layer (REST), smart things
  r.setLongDescription = currentLink.invokeVerb(GET).
     extractDescriptionFromResults();
                                                                    can be crawled
  r.setOperations = currentLink.invokeVerb(OPTIONS).
     getVerbs();
                                                                   Shortcomings:
  foreach (Format formats: currentFormat) {                           Rough descriptions (UIs)
    r.setAcceptedFormats =
     currentLink.invokeVerb(GET).                                     Does not enable automated
     setAcceptHeader(currentFormat);
  }                                                                    mashup integration
  if (currentLink.hasNext())
     crawl(currentLink.getNext());
}




15.08.2011                                    Dominique Guinard                                    44
Metadata Description: Smart Things Description Model

                                                                     Description model for:
                       hProduct                                         Findablility through existing
                                                                         search engines
      Crawling                                                          Automatic integration into
                                                                         mashups
                 geo          hCard   hReview
                                                                     Crawling algorithm gathers
                                                                      the minimal information:
                                                                        Read URLs
                                                                        GET & OPTIONS on resource
                                                                        Content-negociation
                                                                     Compound of microformats:
                                                                      hProduct, hCard, geo,
                                                                      hReview


15.08.2011                                      Dominique Guinard                                        45
Local Lookup and Discovery Units (LLDUs)




15.08.2011          Dominique Guinard      46
LLDU Deployment




15.08.2011        Dominique Guinard   47
Infrastructure Performance Evaluation
                              LLDU tree:
                                      Depth of 6
                                      11 virtual LLDUs
                                      1 Physical LLDU (LLDU + Smart
                                       Gateway)
                                          2 Sun SPOTs
                                          61 virtual services

                              LLDU on a PC (2.4 GHz, 2 GB of
                               RAM):
                                      10000 keywords queries (“light”)
                                      Avg: 619 ms
                                      Min: 12 ms
                                      Max: 3735



15.08.2011           Dominique Guinard                                    48
Query Extension Evaluation
                             17 neutral developers:
                                     Each describes one device and at
                                      least two services (based on the STD
                                      model)
                                     RFID readers, robots, smart meters,
                                      etc.
                             Search keywords provided by 7
                              IT people:
                                     No augmentation: 70%
                                     Wikipedia: ~90%
                                     Yahoo Web Search: 95-100%
                                     Optimum: Yahoo with 5-10 added
                                      keywords (95%).



15.08.2011          Dominique Guinard                                        49
Social Access Controller (SAC) Architecture




15.08.2011           Dominique Guinard        50
Friends and Things: User Interface




15.08.2011            Dominique Guinard   51 / 50
Accessing Shared Smart Things: WSN




             http://vswot.inf.ethz.ch:8091/gateways/vswot.inf.ethz.ch:8081/
             resources/sunspots/spot1/sensors/temperature

15.08.2011                                     Dominique Guinard              52
Accessing Shared Smart Things: RFID




             http://vswot.inf.ethz.ch:8091/gateways/vswot.inf.ethz.ch:8080/resources/epcis-
             webadapter/rest/1/eventquery/result?epc=urn:epc:id:sgtin:181280.*


15.08.2011                                    Dominique Guinard                               53
From Web 2.0 Mashups to…
 Web 2.0 Mashups:
        “Web applications generated by
         combining […] disparate Web sources
         […] to create useful new applications
         or services” [Yu2008]
 Composite applications with:
        Lightweightness and simplicity
        Acessibility to larger public
                                                                    [http://www.housingmaps.com]
        Prototypical or opportunistic nature




[Yu2008] Yu, J., Benatallah, B., Casati,
F., & Daniel, F. Understanding Mashup
Development. IEEE Internet Computing


15.08.2011                                      Dominique Guinard                                  54
Manual Mashups with Energie Visible




15.08.2011           Dominique Guinard   55
Adapting a Mashup Editor


                                                         $.ajax({
                                                           url: "http://" + ip + "/sunspots/" +
                                                             name + "/sensors/temperature",
                                                           type: "GET", dataType: "json",
                                                           success: function(result){
                                                            var temperature =
                                                             result.resource.getters[0].value
                                                            state.outputs.item(0).setValue(temp)
                                                            component.finishAsync();
                                                           } […]});




             [http://www.clickscript.ch]




                                                                            [Naef2009] Naef, L. ClickScript a
                                                                            visual programming language in the
                                                                            browser. Master Thesis, ETH Zurich




15.08.2011                           Dominique Guinard                                                     56
Building Mashup Editors: Physical Mashups Framework

                                Requirements:
                                        Support for event-based mashups
                                        Support for dynamic building-blocks
                                        Support for non-desktop platforms
                                        Support for application specific editors




15.08.2011             Dominique Guinard                                        57
Physical Mashup Lab Deployment & Mobile Apps




15.08.2011          Dominique Guinard      58
Mobile Energy Mashup Editor
                             Android-based mashup editor for
                              mashable homes
                             Uses the Physical Mashup
                              Framework RESTful Web API
                             Findability Layer for automatic
                              building-blocks generation




                                          [Guinard2010c] Guinard, D. Mashing up
                                          your web-enabled home. ICWE 2010


15.08.2011          Dominique Guinard                                         59
Mobile Energy Mashup Editor cont’d
                              Lets end-users create simple
                               rules to optimize their energy
                               consumption:
                                      Turn the heating on only when I am
                                       driving home and temp < 18 deg.
                                      Turn off the lights when sun light is
                                       strong enough.
                              Android-based mashup editor.
                              Uses the Physical Mashup
                               Framework RESTful Web API.
                              Uses the Findability Layer for
                               automatic building-blocks
                               generation.


15.08.2011           Dominique Guinard                                         60
Mobile Energy Mashup Editor cont’d
                              JSON reflection to generate
                               adapted UIs.




15.08.2011           Dominique Guinard                       61
REST vs WS-*: Guidelines




15.08.2011          Dominique Guinard   62

Contenu connexe

Tendances

Lecture 1 - Introduction to IoT
Lecture 1 - Introduction to IoTLecture 1 - Introduction to IoT
Lecture 1 - Introduction to IoTAlexandru Radovici
 
Introduction to IoT Security
Introduction to IoT SecurityIntroduction to IoT Security
Introduction to IoT SecurityCAS
 
Internet of things (IOT)
Internet of things (IOT)Internet of things (IOT)
Internet of things (IOT)Oshin Kandpal
 
Internet of Things (IoT)
Internet of Things (IoT)Internet of Things (IoT)
Internet of Things (IoT)Akanksha Prasad
 
Iot architecture
Iot architectureIot architecture
Iot architectureAnam Iqbal
 
Internet of Things (IoT) - Introduction ppt
Internet of Things (IoT) - Introduction ppt Internet of Things (IoT) - Introduction ppt
Internet of Things (IoT) - Introduction ppt sutrishnakar1995
 
Internet of Things and its applications
Internet of Things and its applicationsInternet of Things and its applications
Internet of Things and its applicationsPasquale Puzio
 
Internet of Things(IoT) - Introduction and Research Areas for Thesis
Internet of Things(IoT) - Introduction and Research Areas for ThesisInternet of Things(IoT) - Introduction and Research Areas for Thesis
Internet of Things(IoT) - Introduction and Research Areas for ThesisWriteMyThesis
 
THE INTERNET OF THINGS
THE INTERNET OF THINGSTHE INTERNET OF THINGS
THE INTERNET OF THINGSRamana Reddy
 
Internet of Things
Internet of ThingsInternet of Things
Internet of ThingsMphasis
 
Machine Learning and Internet of Things
Machine Learning and Internet of ThingsMachine Learning and Internet of Things
Machine Learning and Internet of ThingsSofian Hadiwijaya
 
Introduction to IoT Architectures and Protocols
Introduction to IoT Architectures and ProtocolsIntroduction to IoT Architectures and Protocols
Introduction to IoT Architectures and ProtocolsAbdullah Alfadhly
 
A basic PPT on Internet Of Things(IOT)
A basic PPT on Internet Of Things(IOT)A basic PPT on Internet Of Things(IOT)
A basic PPT on Internet Of Things(IOT)jaswinder singh thind
 

Tendances (20)

IoT sensor devices
IoT sensor devicesIoT sensor devices
IoT sensor devices
 
IoT security (Internet of Things)
IoT security (Internet of Things)IoT security (Internet of Things)
IoT security (Internet of Things)
 
Internet of things(IOT)
Internet of things(IOT)Internet of things(IOT)
Internet of things(IOT)
 
IoT
IoTIoT
IoT
 
Lecture 1 - Introduction to IoT
Lecture 1 - Introduction to IoTLecture 1 - Introduction to IoT
Lecture 1 - Introduction to IoT
 
Introduction to IoT Security
Introduction to IoT SecurityIntroduction to IoT Security
Introduction to IoT Security
 
Internet of Things
Internet of ThingsInternet of Things
Internet of Things
 
Internet of things (IOT)
Internet of things (IOT)Internet of things (IOT)
Internet of things (IOT)
 
Internet of Things (IoT)
Internet of Things (IoT)Internet of Things (IoT)
Internet of Things (IoT)
 
Iot architecture
Iot architectureIot architecture
Iot architecture
 
Internet of Things (IoT) - Introduction ppt
Internet of Things (IoT) - Introduction ppt Internet of Things (IoT) - Introduction ppt
Internet of Things (IoT) - Introduction ppt
 
Internet of Things and its applications
Internet of Things and its applicationsInternet of Things and its applications
Internet of Things and its applications
 
Internet of things
Internet of thingsInternet of things
Internet of things
 
Internet of Things(IoT) - Introduction and Research Areas for Thesis
Internet of Things(IoT) - Introduction and Research Areas for ThesisInternet of Things(IoT) - Introduction and Research Areas for Thesis
Internet of Things(IoT) - Introduction and Research Areas for Thesis
 
THE INTERNET OF THINGS
THE INTERNET OF THINGSTHE INTERNET OF THINGS
THE INTERNET OF THINGS
 
Internet of Things
Internet of ThingsInternet of Things
Internet of Things
 
Machine Learning and Internet of Things
Machine Learning and Internet of ThingsMachine Learning and Internet of Things
Machine Learning and Internet of Things
 
IOT Networks
IOT NetworksIOT Networks
IOT Networks
 
Introduction to IoT Architectures and Protocols
Introduction to IoT Architectures and ProtocolsIntroduction to IoT Architectures and Protocols
Introduction to IoT Architectures and Protocols
 
A basic PPT on Internet Of Things(IOT)
A basic PPT on Internet Of Things(IOT)A basic PPT on Internet Of Things(IOT)
A basic PPT on Internet Of Things(IOT)
 

En vedette

5 Years of Web of Things Workshops
5 Years of Web of Things Workshops5 Years of Web of Things Workshops
5 Years of Web of Things WorkshopsDominique Guinard
 
EVRYTHNG: Concepts, technologies and applications for connecting physical obj...
EVRYTHNG: Concepts, technologies and applications for connecting physical obj...EVRYTHNG: Concepts, technologies and applications for connecting physical obj...
EVRYTHNG: Concepts, technologies and applications for connecting physical obj...EVRYTHNG
 
The Web of Things in Practice
The Web of Things in PracticeThe Web of Things in Practice
The Web of Things in PracticeDominique Guinard
 
Web of Things Platforms Tutorial
Web of Things Platforms TutorialWeb of Things Platforms Tutorial
Web of Things Platforms TutorialEVRYTHNG
 
Web of Things - Connecting People and Objects on the Web
Web of Things - Connecting People and Objects on the WebWeb of Things - Connecting People and Objects on the Web
Web of Things - Connecting People and Objects on the WebDominique Guinard
 
Web of things introduction
Web of things introductionWeb of things introduction
Web of things introduction承翰 蔡
 
The Web of Things
The Web of ThingsThe Web of Things
The Web of ThingsFrank Greco
 
Internet-of-things- (IOT) - a-seminar - ppt - by- mohan-kumar-g
Internet-of-things- (IOT) - a-seminar - ppt - by- mohan-kumar-gInternet-of-things- (IOT) - a-seminar - ppt - by- mohan-kumar-g
Internet-of-things- (IOT) - a-seminar - ppt - by- mohan-kumar-gMohan Kumar G
 
Web of Things Book Launch
Web of Things Book LaunchWeb of Things Book Launch
Web of Things Book LaunchVlad Trifa
 
The Web of Things - Giving physical products a digital voice.
The Web of Things - Giving physical products a digital voice.The Web of Things - Giving physical products a digital voice.
The Web of Things - Giving physical products a digital voice.EVRYTHNG
 
Pervasive Web Application Architecture
Pervasive Web Application ArchitecturePervasive Web Application Architecture
Pervasive Web Application ArchitectureUC San Diego
 
What is the Internet of Things?
What is the Internet of Things?What is the Internet of Things?
What is the Internet of Things?Felix Grovit
 
Introduction to Web Architecture
Introduction to Web ArchitectureIntroduction to Web Architecture
Introduction to Web ArchitectureChamnap Chhorn
 
201102 gov 2.0 in australian government
201102   gov 2.0 in australian government201102   gov 2.0 in australian government
201102 gov 2.0 in australian governmentCraig Thomler
 
Enterprise Level Application Architecture with Web APIs using Entity Framewor...
Enterprise Level Application Architecture with Web APIs using Entity Framewor...Enterprise Level Application Architecture with Web APIs using Entity Framewor...
Enterprise Level Application Architecture with Web APIs using Entity Framewor...Akhil Mittal
 
From Watson to Ontology Repositories - Ontolog OOR panel
From Watson to Ontology Repositories - Ontolog OOR panelFrom Watson to Ontology Repositories - Ontolog OOR panel
From Watson to Ontology Repositories - Ontolog OOR panelMathieu d'Aquin
 
Trustparency web doc spring 2.5 & hibernate
Trustparency web doc   spring 2.5 & hibernateTrustparency web doc   spring 2.5 & hibernate
Trustparency web doc spring 2.5 & hibernatetrustparency
 

En vedette (20)

5 Years of Web of Things Workshops
5 Years of Web of Things Workshops5 Years of Web of Things Workshops
5 Years of Web of Things Workshops
 
EVRYTHNG: Concepts, technologies and applications for connecting physical obj...
EVRYTHNG: Concepts, technologies and applications for connecting physical obj...EVRYTHNG: Concepts, technologies and applications for connecting physical obj...
EVRYTHNG: Concepts, technologies and applications for connecting physical obj...
 
The Web of Things in Practice
The Web of Things in PracticeThe Web of Things in Practice
The Web of Things in Practice
 
Web of Things Platforms Tutorial
Web of Things Platforms TutorialWeb of Things Platforms Tutorial
Web of Things Platforms Tutorial
 
Web of Things - Connecting People and Objects on the Web
Web of Things - Connecting People and Objects on the WebWeb of Things - Connecting People and Objects on the Web
Web of Things - Connecting People and Objects on the Web
 
Web of things introduction
Web of things introductionWeb of things introduction
Web of things introduction
 
WoT framework and use cases
WoT framework and use casesWoT framework and use cases
WoT framework and use cases
 
The Web of Things
The Web of ThingsThe Web of Things
The Web of Things
 
Internet-of-things- (IOT) - a-seminar - ppt - by- mohan-kumar-g
Internet-of-things- (IOT) - a-seminar - ppt - by- mohan-kumar-gInternet-of-things- (IOT) - a-seminar - ppt - by- mohan-kumar-g
Internet-of-things- (IOT) - a-seminar - ppt - by- mohan-kumar-g
 
Web of Things Book Launch
Web of Things Book LaunchWeb of Things Book Launch
Web of Things Book Launch
 
The Web of Things - Giving physical products a digital voice.
The Web of Things - Giving physical products a digital voice.The Web of Things - Giving physical products a digital voice.
The Web of Things - Giving physical products a digital voice.
 
Pervasive Web Application Architecture
Pervasive Web Application ArchitecturePervasive Web Application Architecture
Pervasive Web Application Architecture
 
Web application architecture
Web application architectureWeb application architecture
Web application architecture
 
Internet of Things
Internet of ThingsInternet of Things
Internet of Things
 
What is the Internet of Things?
What is the Internet of Things?What is the Internet of Things?
What is the Internet of Things?
 
Introduction to Web Architecture
Introduction to Web ArchitectureIntroduction to Web Architecture
Introduction to Web Architecture
 
201102 gov 2.0 in australian government
201102   gov 2.0 in australian government201102   gov 2.0 in australian government
201102 gov 2.0 in australian government
 
Enterprise Level Application Architecture with Web APIs using Entity Framewor...
Enterprise Level Application Architecture with Web APIs using Entity Framewor...Enterprise Level Application Architecture with Web APIs using Entity Framewor...
Enterprise Level Application Architecture with Web APIs using Entity Framewor...
 
From Watson to Ontology Repositories - Ontolog OOR panel
From Watson to Ontology Repositories - Ontolog OOR panelFrom Watson to Ontology Repositories - Ontolog OOR panel
From Watson to Ontology Repositories - Ontolog OOR panel
 
Trustparency web doc spring 2.5 & hibernate
Trustparency web doc   spring 2.5 & hibernateTrustparency web doc   spring 2.5 & hibernate
Trustparency web doc spring 2.5 & hibernate
 

Similaire à Web of Things Application Architecture

A Universal Application Platform for Sensors, RFID, NFC and Embedded Devices
A Universal Application Platform for Sensors, RFID, NFC and Embedded DevicesA Universal Application Platform for Sensors, RFID, NFC and Embedded Devices
A Universal Application Platform for Sensors, RFID, NFC and Embedded DevicesDominique Guinard
 
Towards user-created applications on the Internet-of-Things
Towards user-created applications on the Internet-of-ThingsTowards user-created applications on the Internet-of-Things
Towards user-created applications on the Internet-of-Thingstrappenl
 
When Things will Speak "Web" (Lecture)
When Things will Speak "Web" (Lecture)When Things will Speak "Web" (Lecture)
When Things will Speak "Web" (Lecture)Dominique Guinard
 
IRJET- Fourth Coming Internet: The Internet of Things
IRJET- Fourth Coming Internet: The Internet of ThingsIRJET- Fourth Coming Internet: The Internet of Things
IRJET- Fourth Coming Internet: The Internet of ThingsIRJET Journal
 
Lecture1_Introduction.pptx
Lecture1_Introduction.pptxLecture1_Introduction.pptx
Lecture1_Introduction.pptxishwar69
 
Compiler design presentaion
Compiler design presentaionCompiler design presentaion
Compiler design presentaionMdShahinAlam25
 
Business Aspects of the IoT: Making Products Smart
Business Aspects of the IoT: Making Products SmartBusiness Aspects of the IoT: Making Products Smart
Business Aspects of the IoT: Making Products SmartDominique Guinard
 
Complexity of IOT/IOE Architectures for Smart Service Infrastructures Panel:...
Complexity of IOT/IOE Architectures for  Smart Service Infrastructures Panel:...Complexity of IOT/IOE Architectures for  Smart Service Infrastructures Panel:...
Complexity of IOT/IOE Architectures for Smart Service Infrastructures Panel:...Paolo Nesi
 
IoT : Research, Development, Challenges
IoT: Research, Development, ChallengesIoT: Research, Development, Challenges
IoT : Research, Development, Challengesbaddi youssef
 
Research Orientation towards Do-it-Yourself Internet-of-Things Mass Creativit...
Research Orientation towards Do-it-Yourself Internet-of-Things Mass Creativit...Research Orientation towards Do-it-Yourself Internet-of-Things Mass Creativit...
Research Orientation towards Do-it-Yourself Internet-of-Things Mass Creativit...trappenl
 
Internet of Things for Smart City
Internet of Things for Smart CityInternet of Things for Smart City
Internet of Things for Smart CityIRJET Journal
 
Web-based Smart Things Ecosystems
Web-based Smart Things EcosystemsWeb-based Smart Things Ecosystems
Web-based Smart Things EcosystemsSimon Mayer
 
Smartweek 2014 London: EU FP7 SocIoTal project overview - Michele Nati - Univ...
Smartweek 2014 London: EU FP7 SocIoTal project overview - Michele Nati - Univ...Smartweek 2014 London: EU FP7 SocIoTal project overview - Michele Nati - Univ...
Smartweek 2014 London: EU FP7 SocIoTal project overview - Michele Nati - Univ...MicheleNati
 
Jarrar: Future Internet in Horizon 2020 Calls
Jarrar: Future Internet in Horizon 2020 CallsJarrar: Future Internet in Horizon 2020 Calls
Jarrar: Future Internet in Horizon 2020 CallsMustafa Jarrar
 
A Survey on IoT Architecture
A Survey on IoT ArchitectureA Survey on IoT Architecture
A Survey on IoT ArchitectureIJASRD Journal
 
Future Internet - Webinar UNIFACS Laureate 2015 - With Access Link
Future Internet - Webinar UNIFACS Laureate 2015 - With Access LinkFuture Internet - Webinar UNIFACS Laureate 2015 - With Access Link
Future Internet - Webinar UNIFACS Laureate 2015 - With Access LinkJoberto Martins
 
Mobile Internet - trends & possibilities
Mobile Internet - trends & possibilitiesMobile Internet - trends & possibilities
Mobile Internet - trends & possibilitiesFloor van Riet
 

Similaire à Web of Things Application Architecture (20)

A Universal Application Platform for Sensors, RFID, NFC and Embedded Devices
A Universal Application Platform for Sensors, RFID, NFC and Embedded DevicesA Universal Application Platform for Sensors, RFID, NFC and Embedded Devices
A Universal Application Platform for Sensors, RFID, NFC and Embedded Devices
 
A ROA for the WOT
A ROA for the WOTA ROA for the WOT
A ROA for the WOT
 
Towards user-created applications on the Internet-of-Things
Towards user-created applications on the Internet-of-ThingsTowards user-created applications on the Internet-of-Things
Towards user-created applications on the Internet-of-Things
 
When Things will Speak "Web" (Lecture)
When Things will Speak "Web" (Lecture)When Things will Speak "Web" (Lecture)
When Things will Speak "Web" (Lecture)
 
IRJET- Fourth Coming Internet: The Internet of Things
IRJET- Fourth Coming Internet: The Internet of ThingsIRJET- Fourth Coming Internet: The Internet of Things
IRJET- Fourth Coming Internet: The Internet of Things
 
IoT
IoTIoT
IoT
 
Lecture1_Introduction.pptx
Lecture1_Introduction.pptxLecture1_Introduction.pptx
Lecture1_Introduction.pptx
 
Compiler design presentaion
Compiler design presentaionCompiler design presentaion
Compiler design presentaion
 
Business Aspects of the IoT: Making Products Smart
Business Aspects of the IoT: Making Products SmartBusiness Aspects of the IoT: Making Products Smart
Business Aspects of the IoT: Making Products Smart
 
Complexity of IOT/IOE Architectures for Smart Service Infrastructures Panel:...
Complexity of IOT/IOE Architectures for  Smart Service Infrastructures Panel:...Complexity of IOT/IOE Architectures for  Smart Service Infrastructures Panel:...
Complexity of IOT/IOE Architectures for Smart Service Infrastructures Panel:...
 
IoT : Research, Development, Challenges
IoT: Research, Development, ChallengesIoT: Research, Development, Challenges
IoT : Research, Development, Challenges
 
Research Orientation towards Do-it-Yourself Internet-of-Things Mass Creativit...
Research Orientation towards Do-it-Yourself Internet-of-Things Mass Creativit...Research Orientation towards Do-it-Yourself Internet-of-Things Mass Creativit...
Research Orientation towards Do-it-Yourself Internet-of-Things Mass Creativit...
 
U - 4 Emerging.pptx
U - 4 Emerging.pptxU - 4 Emerging.pptx
U - 4 Emerging.pptx
 
Internet of Things for Smart City
Internet of Things for Smart CityInternet of Things for Smart City
Internet of Things for Smart City
 
Web-based Smart Things Ecosystems
Web-based Smart Things EcosystemsWeb-based Smart Things Ecosystems
Web-based Smart Things Ecosystems
 
Smartweek 2014 London: EU FP7 SocIoTal project overview - Michele Nati - Univ...
Smartweek 2014 London: EU FP7 SocIoTal project overview - Michele Nati - Univ...Smartweek 2014 London: EU FP7 SocIoTal project overview - Michele Nati - Univ...
Smartweek 2014 London: EU FP7 SocIoTal project overview - Michele Nati - Univ...
 
Jarrar: Future Internet in Horizon 2020 Calls
Jarrar: Future Internet in Horizon 2020 CallsJarrar: Future Internet in Horizon 2020 Calls
Jarrar: Future Internet in Horizon 2020 Calls
 
A Survey on IoT Architecture
A Survey on IoT ArchitectureA Survey on IoT Architecture
A Survey on IoT Architecture
 
Future Internet - Webinar UNIFACS Laureate 2015 - With Access Link
Future Internet - Webinar UNIFACS Laureate 2015 - With Access LinkFuture Internet - Webinar UNIFACS Laureate 2015 - With Access Link
Future Internet - Webinar UNIFACS Laureate 2015 - With Access Link
 
Mobile Internet - trends & possibilities
Mobile Internet - trends & possibilitiesMobile Internet - trends & possibilities
Mobile Internet - trends & possibilities
 

Plus de Dominique Guinard

From the internet of things to the web of things course
From the internet of things to the web of things courseFrom the internet of things to the web of things course
From the internet of things to the web of things courseDominique Guinard
 
The Art of API Crafting for the IoT
The Art of API Crafting for the IoTThe Art of API Crafting for the IoT
The Art of API Crafting for the IoTDominique Guinard
 
Dumb Products can be Smart Too!
Dumb Products can be Smart Too!Dumb Products can be Smart Too!
Dumb Products can be Smart Too!Dominique Guinard
 
3 Cups of Java Drivers with a Slice of MongoDB
3 Cups of Java Drivers with a Slice of MongoDB3 Cups of Java Drivers with a Slice of MongoDB
3 Cups of Java Drivers with a Slice of MongoDBDominique Guinard
 
If Spock had an Android phone: QRs, 1D, NFC, BLE, Arduinos & the Web of Things
If Spock had an Android phone: QRs, 1D, NFC, BLE, Arduinos & the Web of ThingsIf Spock had an Android phone: QRs, 1D, NFC, BLE, Arduinos & the Web of Things
If Spock had an Android phone: QRs, 1D, NFC, BLE, Arduinos & the Web of ThingsDominique Guinard
 
Android and the Web of Things: NFC, QR, BLE, Bluetooth, EPC, Arduino
Android and the Web of Things: NFC, QR, BLE, Bluetooth, EPC, ArduinoAndroid and the Web of Things: NFC, QR, BLE, Bluetooth, EPC, Arduino
Android and the Web of Things: NFC, QR, BLE, Bluetooth, EPC, ArduinoDominique Guinard
 
Activity Digital Identities in the Web of Things
Activity Digital Identities in the Web of ThingsActivity Digital Identities in the Web of Things
Activity Digital Identities in the Web of ThingsDominique Guinard
 
Tourism and the Web of Things
Tourism and the Web of ThingsTourism and the Web of Things
Tourism and the Web of ThingsDominique Guinard
 
HTML5, Websockets & the Mobile Web
HTML5, Websockets & the Mobile WebHTML5, Websockets & the Mobile Web
HTML5, Websockets & the Mobile WebDominique Guinard
 
Cloud Computing, REST and Mashups to Simplify RFID Application Development an...
Cloud Computing, REST and Mashups to Simplify RFID Application Development an...Cloud Computing, REST and Mashups to Simplify RFID Application Development an...
Cloud Computing, REST and Mashups to Simplify RFID Application Development an...Dominique Guinard
 
Comparing SOAs for the Internet of Things
Comparing SOAs for the Internet of ThingsComparing SOAs for the Internet of Things
Comparing SOAs for the Internet of ThingsDominique Guinard
 
EPC Cloud: Using the Web to Simplify the Global RFID Network
EPC Cloud: Using the Web to Simplify the Global RFID NetworkEPC Cloud: Using the Web to Simplify the Global RFID Network
EPC Cloud: Using the Web to Simplify the Global RFID NetworkDominique Guinard
 
Giving RFID a REST: Web-enabled EPCIS
Giving RFID a REST: Web-enabled EPCISGiving RFID a REST: Web-enabled EPCIS
Giving RFID a REST: Web-enabled EPCISDominique Guinard
 
Epc Mashup Dashboard Salespitch
Epc Mashup Dashboard SalespitchEpc Mashup Dashboard Salespitch
Epc Mashup Dashboard SalespitchDominique Guinard
 
Web Messaging for Open for Web of Things
Web Messaging for Open for Web of ThingsWeb Messaging for Open for Web of Things
Web Messaging for Open for Web of ThingsDominique Guinard
 
Physical Mashups in the Web-Home
Physical Mashups in the Web-HomePhysical Mashups in the Web-Home
Physical Mashups in the Web-HomeDominique Guinard
 

Plus de Dominique Guinard (20)

From the internet of things to the web of things course
From the internet of things to the web of things courseFrom the internet of things to the web of things course
From the internet of things to the web of things course
 
1 billion thngs at a time
1 billion thngs at a time1 billion thngs at a time
1 billion thngs at a time
 
The Art of API Crafting for the IoT
The Art of API Crafting for the IoTThe Art of API Crafting for the IoT
The Art of API Crafting for the IoT
 
Dumb Products can be Smart Too!
Dumb Products can be Smart Too!Dumb Products can be Smart Too!
Dumb Products can be Smart Too!
 
3 Cups of Java Drivers with a Slice of MongoDB
3 Cups of Java Drivers with a Slice of MongoDB3 Cups of Java Drivers with a Slice of MongoDB
3 Cups of Java Drivers with a Slice of MongoDB
 
If Spock had an Android phone: QRs, 1D, NFC, BLE, Arduinos & the Web of Things
If Spock had an Android phone: QRs, 1D, NFC, BLE, Arduinos & the Web of ThingsIf Spock had an Android phone: QRs, 1D, NFC, BLE, Arduinos & the Web of Things
If Spock had an Android phone: QRs, 1D, NFC, BLE, Arduinos & the Web of Things
 
Android and the Web of Things: NFC, QR, BLE, Bluetooth, EPC, Arduino
Android and the Web of Things: NFC, QR, BLE, Bluetooth, EPC, ArduinoAndroid and the Web of Things: NFC, QR, BLE, Bluetooth, EPC, Arduino
Android and the Web of Things: NFC, QR, BLE, Bluetooth, EPC, Arduino
 
Evrythng @ Web of Things
Evrythng @ Web of ThingsEvrythng @ Web of Things
Evrythng @ Web of Things
 
Activity Digital Identities in the Web of Things
Activity Digital Identities in the Web of ThingsActivity Digital Identities in the Web of Things
Activity Digital Identities in the Web of Things
 
Tourism and the Web of Things
Tourism and the Web of ThingsTourism and the Web of Things
Tourism and the Web of Things
 
HTML5, Websockets & the Mobile Web
HTML5, Websockets & the Mobile WebHTML5, Websockets & the Mobile Web
HTML5, Websockets & the Mobile Web
 
Cloud Computing, REST and Mashups to Simplify RFID Application Development an...
Cloud Computing, REST and Mashups to Simplify RFID Application Development an...Cloud Computing, REST and Mashups to Simplify RFID Application Development an...
Cloud Computing, REST and Mashups to Simplify RFID Application Development an...
 
Comparing SOAs for the Internet of Things
Comparing SOAs for the Internet of ThingsComparing SOAs for the Internet of Things
Comparing SOAs for the Internet of Things
 
WoT Tutorial @ Cisco
WoT Tutorial @ CiscoWoT Tutorial @ Cisco
WoT Tutorial @ Cisco
 
EPC Cloud: Using the Web to Simplify the Global RFID Network
EPC Cloud: Using the Web to Simplify the Global RFID NetworkEPC Cloud: Using the Web to Simplify the Global RFID Network
EPC Cloud: Using the Web to Simplify the Global RFID Network
 
WoT @ Oracle-Labs
WoT @ Oracle-LabsWoT @ Oracle-Labs
WoT @ Oracle-Labs
 
Giving RFID a REST: Web-enabled EPCIS
Giving RFID a REST: Web-enabled EPCISGiving RFID a REST: Web-enabled EPCIS
Giving RFID a REST: Web-enabled EPCIS
 
Epc Mashup Dashboard Salespitch
Epc Mashup Dashboard SalespitchEpc Mashup Dashboard Salespitch
Epc Mashup Dashboard Salespitch
 
Web Messaging for Open for Web of Things
Web Messaging for Open for Web of ThingsWeb Messaging for Open for Web of Things
Web Messaging for Open for Web of Things
 
Physical Mashups in the Web-Home
Physical Mashups in the Web-HomePhysical Mashups in the Web-Home
Physical Mashups in the Web-Home
 

Dernier

Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...Wes McKinney
 
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
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesKari Kakkonen
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationKnoldus Inc.
 
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
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Strongerpanagenda
 
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...panagenda
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch TuesdayIvanti
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPathCommunity
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesAssure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesThousandEyes
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsRavi Sanghani
 
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Scott Andery
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfpanagenda
 

Dernier (20)

Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
 
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.
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examples
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog Presentation
 
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
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
 
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch Tuesday
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to Hero
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesAssure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and Insights
 
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
 

Web of Things Application Architecture

  • 1. A Web of Things Application Architecture - Integrating the Real-World into the Web Dominique Guinard Ph.D. Defense, ETH Zurich
  • 2. Motivation Why should we bring the Web and real-world devices together? [flickr.com/photos/moragcasey]
  • 3. An Increasing Number of Connected Smart Things… A very large ecosystem of smart things, complex application development 15.08.2011 Dominique Guinard 3
  • 4. Need for a Common Internet of Things Application Architecture  Application development with  Hypothesis: The Web smart things: (application archi. of the Internet)  Requires expert knowledge: can be the application  Hardware/software heterogeneity architecture of smart things as  Lack of common application protocols well.  WSN [Mot2011]  Research Question: «How can RFID [Sch2008] the Web be leveraged to ease the development of Internet of Things applications and bring it closer to non-specialists?» [Sch2008] Schmitt, P. Adoption und [Mot2011] Mottola, L., & Picco, G. P. Diffusion neuer Technologien am Programming wireless sensor networks: Beispiel der Radiofrequenz-Identifikation Fundamental concepts and state of the (RFID). PhD Thesis, ETH Zurich. art. ACM Comput. Surv. 15.08.2011 Dominique Guinard 4
  • 5. Contributions  A Web of Things Application Architecture:  Adapt and leverage protocols, services and tools of the Web ecosystem  Foster a participatory application development:  Easier for specialists  Closer to Web developers (Web languages), tech-savvies (mashups) and end- users (browsers)  Evaluated for WSN and RFID:  Simplifies the development and deployment of applications 15.08.2011 Dominique Guinard 5
  • 6. Web of Things Application Architecture Simplifying Application Development in the Internet of Things [flickr.com/photos/docman]
  • 7. Web of Things Application Architecture 15.08.2011 Dominique Guinard 7
  • 8. Device Accessibility Layer  How do we make smart things accessible on the Web?  Generic design process[Gui2010] for smart things as Web resources:  REST[Fie2000] and Resource Oriented Architectures[Ric2007] [Fie2000] Fielding, R. (2000). [Ric2007] Richardson, L., & Ruby, S. [Gui2010] Guinard, D., Trifa, V., Wilde, E. Architectural styles and the design of RESTful web services, O’Reilly Media. A Resource Oriented Architecture for the network-based software architectures. Web of Things. IoT 2010 PhD Thesis 15.08.2011 Dominique Guinard 8
  • 9. Resource Representation Interface Implementation Design Design Design Strategy http://<DOMAIN>:<PORT>/genericNodes /node1/sensors/temperature GET, DELETE GET GET, PUT http://<DOMAIN>:<PORT>/genericNodes 15.08.2011 Dominique Guinard 9
  • 10. Resource Representations Interface Implementation Design Design Design Strategy 15.08.2011 Dominique Guinard 10
  • 11. Findability Layer  Once smart things are accessible on the Web, how do we enable users to find the right service for their application?  Enabling Smart Things to be indexed by search engines (lightweight metadata)[Gui2011]  Local lookup and discovery infrastructure [Gui2010a,May2011] [Gui2011] Guinard, D., Trifa, V., Mattern, [Gui2010a] Guinard, D., et al. (2010). [May2011] Mayer, S., Guinard, D. An F., & Wilde, E. From the Internet of Interacting with the SOA-Based Internet Extensible Discovery Service for Smart Things to the Web of Things. Architecting of Things: Discovery, Query, Selection, Things. WoT2011 the Internet of Things (pp. 97-129) and On-Demand Provisioning of Web Services. IEEE Transactions on Services Computing 15.08.2011 Dominique Guinard 11
  • 12. Sharing Layer  Once smart things are accessible and findable on the Web, how do we share them?  Social Web of Things [Gui2010b] [Gui2010b] Guinard, D., Fischer, M., & Trifa, V. Sharing using social networks in a composable web of things. WoT 2010 15.08.2011 Dominique Guinard 12
  • 13. Social Access Controller (SAC)  Existing systems:  Require dedicated access control lists (e.g., HTTP Digest or Basic Authentication)  Leverage social graphs of social networks:  Are walled-gardens [Ber2009]  Allow sharing data, not services  Social Access Controller as proxy between clients and smart things [Ber2009] Tim Berners-Lee. Twenty years: Looking forward, looking back. WWW 2009 15.08.2011 Dominique Guinard 13
  • 14. Social Access Controller (SAC) 15.08.2011 Dominique Guinard 14
  • 15. Sharing in Friends and Things http://vswot.inf.ethz.ch:8091 /gateways/vswot.inf.ethz.ch:8081 /resources/sunspots/spot1/sensors/temperature 15.08.2011 Dominique Guinard 15
  • 16. Composition Layer  Once smart things are accessible, findable, shareable on the Web, how do we enable their easy composition by non- specialists, into new applications?  Physical Mashups [Gui2010, Gui2010c] [Gui2010] Guinard, D., Trifa, V., Wilde, E. [Guinard2010c] Guinard, D. Mashing up A Resource Oriented Architecture for the your web-enabled home. ICWE 2010 Web of Things. IoT 2010 15.08.2011 Dominique Guinard 16
  • 17. From Web 2.0 Mashups to Physical Mashups  Web 2.0 Mashups:  “Web applications generated by combining […] disparate Web sources […] to create useful new services” [Yu2008]  Ad-hoc applications accessible to a larger public  Physical Mashups:  Composite Web applications involving smart things and virtual Web services  Three development approaches [Yu2008] Yu, J., Benatallah, B., Casati, F., & Daniel, F. Understanding Mashup Development. IEEE Internet Computing 15.08.2011 Dominique Guinard 17
  • 18. Energie Visible: An Energy-Aware Mashup  Developers:  Smart Meters as an RESTful Web API:  Mashup with any language supporting HTTP  Users:  Used by several families around the world (Energie Visible) 15.08.2011 Dominique Guinard 18
  • 19. EPC Mashup Dashboard: RFID Business Intelligence  Developers:  RFID Readers & Data in a black-board approach  Wizard-based creation of Widgets  Merging Web data and real-world RFID data  Users:  Simple Web page providing real-time business intelligence  Deployed at the SAP future store 15.08.2011 Dominique Guinard 19
  • 20. Electronic Article Surveillance as a Physical Mashup [Gui2010d] Guinard, D., Floerkemeier, C., & Sarma, S. Cloud Computing, REST and Mashups to Simplify RFID Applications, WoT 2011 [Naef2009] Naef, L. ClickScript a visual programming language in the browser. Master Thesis, ETH Zurich 15.08.2011 Dominique Guinard 20
  • 21. Selected Evaluations Smart Gateways, Social Access Control & Developers’ Experiences [flickr.com/photos/myfwc] [flickr.com/photos/docman]
  • 22. Smart Gateway vs Direct Web Integration  End-to-end HTTP  Smart Gateway:  7000 (sequential) requests:  7000 (sequential) requests:  Avg.: 205 ms, SD: 127.8 ms  Avg.: 4.2 ms, SD: 3.7 ms  Min.: 96 ms, Max.: 8.5 sec  Min.: 2 ms, Max.: 111 sec 15.08.2011 Dominique Guinard 22
  • 23. Using Social Access Control  1000 requests on a Sun SPOT  Through SAC (Facebook), RTT: (Smart Gateway):  Avg.: 218 ms, SD: 24 ms  Direct Access:  Min: 204 ms, Max: 830 ms  Avg.: 9 ms, SD: 2 ms  Most of the RTT (140ms) due to  Max.: 40 ms, Min.: 6 ms social network login => caching 15.08.2011 Dominique Guinard 23
  • 24. Ease of Use? Assessing the Developers’ Experience  WS-* (WSDL, SOAP, etc.) as one of the most comprehensive alternatives (DPWS, DNLA, etc.)  Performances were compared[Yaz2009] , not ease of use  Study with 69 computer science students  2 applications: 1. Android phone accessing a Sun SPOT featuring a WS-* API 2. Android phone accessing a Sun SPOT featuring a RESTful Web API [Yaz2009] Yazar, D., & Dunkels, A. Efficient application integration in IP- based sensor networks. BuildSys 2009 15.08.2011 Dominique Guinard 24
  • 25. Ease of Learning  RESTful Web API:  70% easy to very easy to learn  63% fast to very fast to learn 15.08.2011 Dominique Guinard 25
  • 26. Suitability by Use-Case and Guidelines  REST and Web more adapted to foster adoption by non- specialists  WS-* more adapted for high QoS/security requirements 15.08.2011 Dominique Guinard 26
  • 27. Conclusions, Limitations and Outlook What did we contribute? What are the current limitations? [flickr.com/photos/brapke]
  • 28. Contributions & Learnings  WoT Application Architecture & evaluation in WSN + RFID  The Web can be leveraged and adapted as a smart thing application architecture  Eases the development & brings it closer to non-specialists  Unveils integration possibilities:  Browser, search engines, social networks, Web languages, mashups, etc. 15.08.2011 Dominique Guinard 28
  • 29. Limitations & Outlook  Not the best approach for every use-case:  Real-time, high QoS requirements, battery-life  Pushing Internet and Web standards forward:  Lower foot-print (6LoWPAN)  Web push (HTML5 WebSockets, etc.)  Metadata for smart things  Real-world evaluations:  Larger deployments, industrial trials (IPSO alliance)  Comparisons with other alternatives  Evaluating the mashups with more end-users 15.08.2011 Dominique Guinard 29
  • 30. Thanks a lot for your attention  Dominique Guinard  Contact details: www.guinard.org  Blog: www.webofthings.com  Software: www.webofthings.com/projects  Publications www.webofthings.com/publications 15.08.2011 Dominique Guinard 30
  • 31. Backup Wait! There is a little more… 15.08.2011 Dominique Guinard 31
  • 32. Complete Web of Things Application Architecture 15.08.2011 Dominique Guinard 32
  • 33. Case-Studies  Wireless Sensor Networks:  Tagged Objects:  General Purpose Sensing Platform  RFID global network: (Sun SPOTs)  EPC Network  Smart Metering Platform (Ploggs) 15.08.2011 Dominique Guinard 33
  • 34. Web-Enabling Smart Things in 4 Steps Resource  Based on REST [Fiel2000] Design and Resource Oriented Architecture [Rich2007].  Applied it to smart things in Representation [Gui2010]. Design Interface GET, POST, PUT, DELETE, OPTIONS Design Content Negotiation, Status Codes [Fiel2000] Fielding, R. (2000). Architectural styles and the design of network-based software architectures. PhD Thesis Implementation [Gui2010] Guinard, D., Trifa, V., Wilde, E. Strategy A Resource Oriented Architecture for the [Rich2007] Richardson, L., & Ruby, S. Web of Things. IoT 2010 RESTful web services, OʼReillyMedia. 15.08.2011 Dominique Guinard 34
  • 35. Resource Representation Interface Implementation Design Design Design Strategy  Identify Resources:  Any component of an application that needs to be used and addressed.  Link resources together 15.08.2011 Dominique Guinard 35
  • 36. Resource Representation Interface Implementation Design Design Design Strategy  Smart things should offer different representations:  HTML for browsability  JSON for mashups  XML for interoperability {"resource": {"methods":["GET"], "name":"Temperature", "links":["/feed", "/rules"], "content": [{"description":"Current Temperature", "name":"Current Ambient Temperature", "value":"24.0", "unit": "celsius"}]} } 15.08.2011 Dominique Guinard 36
  • 37. Resource Representation Interface Implementation Design Design Design Strategy  Leverage content negotiation:  Accept: application/json  Use the HTTP Verbs extensively:  GET, PUT, POST, OPTIONS, DELETE  GET /genericNodes/2/sensors/temperature  PUT /genericNodes/2/actuators /led/1  Map status codes:  200 OK, 201 Created, 400 Bad Request, etc.  The presented design process can be automated 15.08.2011 Dominique Guinard 37
  • 38. Automating the Design Process  The design process can be semi- automated through an editor  Auto-WoT [May2010a] project:  Generates the RESTful Web API  Wraps it in an OSGi module, loadable as a device driver in a Smart Gateway [May2010a] Simon Mayer, Dominique Guinard, Vlad Trifa Facilitating the Integration and Interaction of Real-World Services for the Web of Things. UrbanIOT 2010 15.08.2011 Dominique Guinard 38
  • 39. Smart Gateway Mediated Interaction 15.08.2011 Dominique Guinard 39
  • 40. Pushing Data From Smart Things 15.08.2011 Dominique Guinard 40
  • 41. Pushing From Web Sockets: t-Pusher Service 15.08.2011 Dominique Guinard 41
  • 42. Performance Evaluation  7000 (sequential) requests: 1. End-to-end HTTP  Avg.: 205 ms, SD: 127.8 ms  Max.: 8.5 sec (single request)  Min.: 96 ms 2. Syn-based Smart Gateway:  Avg.: 4.2 ms, SD: 3.7 ms  Max.: 111 sec  Min.: 2 ms 15.08.2011 Dominique Guinard 42
  • 43. Scalability / Concurrency Evaluation  Smart Gateway sync-based approach  Scales better:  Strongly depends on the Web server implementation  Provides more aged data. 15.08.2011 Dominique Guinard 43
  • 44. Discovery by Crawling crawl(Link currentLink) { new Resource() r;  Thanks to the Accessibility r.setUri = currentLink.getURI(); r.setShortDescription = currentLink.text(); Layer (REST), smart things r.setLongDescription = currentLink.invokeVerb(GET). extractDescriptionFromResults(); can be crawled r.setOperations = currentLink.invokeVerb(OPTIONS). getVerbs();  Shortcomings: foreach (Format formats: currentFormat) {  Rough descriptions (UIs) r.setAcceptedFormats = currentLink.invokeVerb(GET).  Does not enable automated setAcceptHeader(currentFormat); } mashup integration if (currentLink.hasNext()) crawl(currentLink.getNext()); } 15.08.2011 Dominique Guinard 44
  • 45. Metadata Description: Smart Things Description Model  Description model for: hProduct  Findablility through existing search engines Crawling  Automatic integration into mashups geo hCard hReview  Crawling algorithm gathers the minimal information:  Read URLs  GET & OPTIONS on resource  Content-negociation  Compound of microformats: hProduct, hCard, geo, hReview 15.08.2011 Dominique Guinard 45
  • 46. Local Lookup and Discovery Units (LLDUs) 15.08.2011 Dominique Guinard 46
  • 47. LLDU Deployment 15.08.2011 Dominique Guinard 47
  • 48. Infrastructure Performance Evaluation  LLDU tree:  Depth of 6  11 virtual LLDUs  1 Physical LLDU (LLDU + Smart Gateway)  2 Sun SPOTs  61 virtual services  LLDU on a PC (2.4 GHz, 2 GB of RAM):  10000 keywords queries (“light”)  Avg: 619 ms  Min: 12 ms  Max: 3735 15.08.2011 Dominique Guinard 48
  • 49. Query Extension Evaluation  17 neutral developers:  Each describes one device and at least two services (based on the STD model)  RFID readers, robots, smart meters, etc.  Search keywords provided by 7 IT people:  No augmentation: 70%  Wikipedia: ~90%  Yahoo Web Search: 95-100%  Optimum: Yahoo with 5-10 added keywords (95%). 15.08.2011 Dominique Guinard 49
  • 50. Social Access Controller (SAC) Architecture 15.08.2011 Dominique Guinard 50
  • 51. Friends and Things: User Interface 15.08.2011 Dominique Guinard 51 / 50
  • 52. Accessing Shared Smart Things: WSN http://vswot.inf.ethz.ch:8091/gateways/vswot.inf.ethz.ch:8081/ resources/sunspots/spot1/sensors/temperature 15.08.2011 Dominique Guinard 52
  • 53. Accessing Shared Smart Things: RFID http://vswot.inf.ethz.ch:8091/gateways/vswot.inf.ethz.ch:8080/resources/epcis- webadapter/rest/1/eventquery/result?epc=urn:epc:id:sgtin:181280.* 15.08.2011 Dominique Guinard 53
  • 54. From Web 2.0 Mashups to…  Web 2.0 Mashups:  “Web applications generated by combining […] disparate Web sources […] to create useful new applications or services” [Yu2008]  Composite applications with:  Lightweightness and simplicity  Acessibility to larger public [http://www.housingmaps.com]  Prototypical or opportunistic nature [Yu2008] Yu, J., Benatallah, B., Casati, F., & Daniel, F. Understanding Mashup Development. IEEE Internet Computing 15.08.2011 Dominique Guinard 54
  • 55. Manual Mashups with Energie Visible 15.08.2011 Dominique Guinard 55
  • 56. Adapting a Mashup Editor $.ajax({ url: "http://" + ip + "/sunspots/" + name + "/sensors/temperature", type: "GET", dataType: "json", success: function(result){ var temperature = result.resource.getters[0].value state.outputs.item(0).setValue(temp) component.finishAsync(); } […]}); [http://www.clickscript.ch] [Naef2009] Naef, L. ClickScript a visual programming language in the browser. Master Thesis, ETH Zurich 15.08.2011 Dominique Guinard 56
  • 57. Building Mashup Editors: Physical Mashups Framework  Requirements:  Support for event-based mashups  Support for dynamic building-blocks  Support for non-desktop platforms  Support for application specific editors 15.08.2011 Dominique Guinard 57
  • 58. Physical Mashup Lab Deployment & Mobile Apps 15.08.2011 Dominique Guinard 58
  • 59. Mobile Energy Mashup Editor  Android-based mashup editor for mashable homes  Uses the Physical Mashup Framework RESTful Web API  Findability Layer for automatic building-blocks generation [Guinard2010c] Guinard, D. Mashing up your web-enabled home. ICWE 2010 15.08.2011 Dominique Guinard 59
  • 60. Mobile Energy Mashup Editor cont’d  Lets end-users create simple rules to optimize their energy consumption:  Turn the heating on only when I am driving home and temp < 18 deg.  Turn off the lights when sun light is strong enough.  Android-based mashup editor.  Uses the Physical Mashup Framework RESTful Web API.  Uses the Findability Layer for automatic building-blocks generation. 15.08.2011 Dominique Guinard 60
  • 61. Mobile Energy Mashup Editor cont’d  JSON reflection to generate adapted UIs. 15.08.2011 Dominique Guinard 61
  • 62. REST vs WS-*: Guidelines 15.08.2011 Dominique Guinard 62

Notes de l'éditeur

  1. Currentdevelopments in embeddedsystems in domainssuch as home appliances, sensor net, or simple everydayobjectbeingtaggedwith RFID:Show thatthey are gettingincreasinglysmarter and connectedwhichlead to a very large ecosystem of smart thingsLet us think of an electronic article surveillance system in a store thatwouldleveragethiseco-system: tag objectswith RFID trigger the RFID readerswith a proximitysensor trigger the security camera if somethingwasstolenbroadcast the information to the staff on their mobile phones
  2. This leads to a problemresearched by many, showing:ToomuchprotocolsheterogeneityExpensive and time-consumingexpertknowledgeRequirements for application layer for the IoT
  3. Web:Set of relatively simple and open standards (e.g., HTTP, HTML, etc.).Broad-pool of developers.Well understood by users.Best-effort (efficiency, scalability, etc.).From Web sites to Web APIs.Ubiquitous availability (desktop, mobile, etc.).Contribution: We propose a Web of Things Application Architecture:Enablesparticipatory application development:Easier for specialistsCloser to Web developers, end-users
  4. Four layers but: Not OSI:layers are flexible, eacheases a little more building applications: from Embedded Syst. Dev to End-UsersContribution: LayersBuilding blocks: each block is a Web APIApplications testingthese blocks
  5. Resource Tree:functionality of the sun spot identified by resolvableURIsNot bound to one representation. We use HTML for browsability, JSON for mashups, HTTP has a content-negotiationmechanism for selecting the right representation.GET on temperature =&gt; retrieves the representation of the tempsensorPUT on LED =&gt; changes the state of the LED (on/off)
  6. One of ourcore contributionsFor smart thingsthat do not speak Internet or Web protocolswe propose a lightweight software frameworkthatcanbedeployed on computers at the edge of the network (e.g., NAS, wifi routers, etc.):Device Drivers: encapsulate the proprietary or low-levelprotocolsCore Services: are used by drivers to maptheirfunctionality to a Web APIPluggable Services: services implementing cross-cuttingconcerns (seenextlayers)Maybeaddstuff about Web Sockets
  7. Withthis layer wewant to achievetwothings:MakethingsfindableusingsearchenginesAllow the semi-automaticintegrationintomashuptoolsGuinard, D., Trifa, V., Mattern, F., &amp; Wilde, E. (2011). From the Internet of Things to the Web of Things: Resource-oriented Architecture and Best Practices. In D. Uckelmann, M. Harrison, &amp; F. Michahelles (Eds.), Architecting the Internet of Things (pp. 97-129). Berlin, Heidelberg: Springer Berlin Heidelberg. Retrieved from http://www.springerlink.com/content/p314x13322qnw276
  8. SAC: Manages Access to Smart ThingsThrough Social NetworksAnd offers an API for clients or client applicationsRequirements (details):Security: prevent attackers from gaining accessEase of use: significantly influences adoption [Ion2010]Reflecting existing trust modelsInteroperable: Web protocols, prevent user lock-inIntegrated Advertisement
  9. Smart things are securedbased on HTTP Basic AccessAuthentication or HTTP DigestAuthenticationAuthenticationthroughOauthUsing the social network API (OpenSocial if supported, otherwise social network proprietary API)
  10. List of resources (i.e., services) thatcanbesharedisautomaticallygenerated by crawling (see sharing layer)
  11. Manualmashupdev:Wetake a device on whichappscanbedeveloped by domainspecialists and, using the otherlayers, bringit to Web developers
  12. We provide a Web page that loads the real-world data into global variables, developers then just have to create widgets by combining this data with services on the Web.
  13. Bringingdevelopment as close as possible to endusersWecreated a frameworkthatallows the creation of dedicatedmashup editorsi.e., Web toolthat let usersbuildmashupssimply by visuallycomposingwidgetsThanks to the otherlayerseachwidgetisreduced to an HTTP call and canevenbeautomaticallygenerated.This is the EAS mashup.
  14. Criticism of the Web for embedded devices: too heavy.Weevaluatedbothapproaches (embedded HTTP &amp; Smart Gateway mediated):Ok for sub-second use-cases
  15. RTTcanbeimproved by caching the authentication of users (not theirtokens) however, thisis a tradeoffbetweensecurity and efficiency.http://vswot.inf.ethz.ch:8091/gateways/vswot.inf.ethz.ch:8081/resources/sunspots/Spot1/sensors/light
  16. We wanted to asses whether the Web approach was making development easier
  17. Web of Things architecture:Blueprints to bring IoT application development closer to non-specialists thanks to the Web:Performances are acceptable for sub-second use-casesUnveils integration possibilities (browser integration, social networks, Web scripting languages, mashups, etc.)Fosters open, participatory innovation to physicalmashupsEvaluated and prototyped in two domains:Wireless Sensor Networks &amp; RFIDDeliverables: ~20 co-authored publications, 5 frameworks (3 open-source), 10 applications (1 open-source)
  18. Real-time &lt;10ms response rangeIf Internet standards are adaptedwecouldalso serve more use-cases throughsuch an architectureFirst sensethrough the open-sourcing of ourframeworks, more isneeded
  19. Four layers but: Not OSI:layers are flexible, eacheases a little more building applications: from Embedded Syst. Dev to End-UsersContribution: LayersBuilding blocks: each block is a Web APIApplications testingthese blocks
  20. Criticism of the Web for embedded devices: too heavy.Weevaluatedbothapproaches (embedded HTTP &amp; Smart Gateway mediated): Ok for most types of apps (&lt;1 second)Sync-based Smart Gateway: muchbetter:
  21. If theyimplement the Accessibility layer smart thingscanbediscovered by crawling.
  22. Pseudo code for the crawling:crawl(Link currentLink) { new Resource() r;r.setUri = currentLink.getURI();r.setShortDescription = currentLink.text();r.setLongDescription = currentLink.invokeVerb(GET).extractDescriptionFromResults();r.setOperations = currentLink.invokeVerb(OPTIONS).getVerbs();foreach (Format formats: currentFormat) {r.setAcceptedFormats = currentLink.invokeVerb(GET).setAcceptHeader(currentFormat); } if (currentLink.hasNext()) crawl(currentLink.getNext());}
  23. Requirements:Security: prevent attackers from gaining accessEase of use: significantly influences adoption [Ion2010]Reflecting existing trust modelsInteroperable: Web protocols, prevent user lock-inIntegrated Advertisement
  24. Sharing RFID data through the EPCIS Webadapter
  25. ClickScript [Naef2009]: Language created to teach programming to children.Client-side Web technologies (JavaScript + CSS + HTML).Smart Things building-block within a few lines of JavaScript.Added push support (tPusher).
  26. Lets end-users create simple rules to optimize their energy consumption:Turn the heating on only when I am driving home and temp &lt; 18 deg.Turn off the lights when sun light is strong enough.
  27. REST appears to be more adapted to foster a participatory Web of Thingswere application developmentisbrought to non-specialists