Giter VIP home page Giter VIP logo

wot-usecases's Introduction

Web of Things (WoT) Use Cases

Follow on Twitter Stack Exchange questions

Announcement:

The Web of Things Use Cases Task force will be reorganized for the new charter. Currently we are working on the requirements process and are not actively seeking new use cases, but if you want to contribute one contact us (see below).

General information about the Web of Things can be found on https://www.w3.org/WoT/.


The WoT Use Case task force is responsible for collecting use cases for WoT and extracting requirements. Use cases can include both specific vertical applications and relevant technologies or other horizontal usage patterns. Guests who are not WoT members but who have an interest in specific vertical application domains, technologies, or usage patterns are explicitly invited to engage with this task force to provide input.

If you would like to participate please contact the chairs at [email protected].

Web conferences and agenda: https://www.w3.org/WoT/IG/wiki/IG_UseCase_WebConf

Repository Information

All work on the Use Cases document is happening in this repository. It includes various use case proposals and a consolidated document based on those proposals.

Each commit here will sync it to the master, which will expose the content to http://w3c.github.io/wot-usecases/.

Contributing

** At the moment the Use Cases TF is defining the policy for the next WG charter, potential contributors are asked not to create pull requests with new contributions until the next charter period begins. Ideas can still be proposed, but the review and inclusion might be delayed.

Please document new use cases in the USE-CASES directory adopting the template use-case-template.md (Markdown) or use-case-template.html (HTML). The HTML template is the preferred form.

Describe new requirements in the REQUIREMENTS directory using the template requirements-template.md (Markdown) or requirements-template.html (HTML). The HTML template is the preferred form.

Put all other contributions in the CONTRIBUTIONS directory using an open file format, e.g.text, markdown, html, svg.

To make direct changes to the IG document, please provide pull-requests to the html file, see github help.

Content

  • You can contribute even if you don't have access by forking this repository and doing a Pull Request from your fork.
  • When you are doing a Pull Request, try to make little changes per Pull Request, which makes it easier to review.

Publication Status

wot-usecases's People

Contributors

abes-jg avatar ashimura avatar chachamimm avatar cperey avatar danielpeintner avatar echkyu avatar egekorkan avatar gtfierro avatar jkrhb avatar kotisk avatar lmedini avatar lu-zero avatar mahdanoura avatar matsu200722 avatar mhchoi76 avatar mlagally avatar mmccool avatar qingan avatar relu91 avatar rjksmith avatar sebastiankb avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

wot-usecases's Issues

Geolocation use case extensions

  • Phone as a geolocation device

    • May want to set it up as a client that "calls in" data rather than acting as a server - "Thing as a client"
    • This provides access to the phone's geolocation API which includes more than just GPS
    • For Smart City POC, probably based on Android
    • May also provide check-in functionality, i.e. scan a QR code or read a bluetooth beacon, then combine that code with geolocation and register it with a service
  • Check-in

    • Installation of portable devices (eg SPOTON)
    • Delivery confirmation; fuel delivery, package delivery
    • Geofencing; delivery unlocking, actions only permitted in certain locations
  • Non-Smart-City use cases w/ additional requirements

    • Agriculture - relative depth
    • Logistics/transportation - dynamic location information (not just "portable")

Discovery Use Case

We need to describe the use case(s) for thing discovery and the interworking with the thing lifecycle.
This probably requires a sequence diagram of the flow that illustrates the interaction of the two components.

Complete privacy section for Oauth use case

As discussed in w3c/wot-security#177, this use case is mostly complete except the privacy section is empty and should refer to the corresponding section in the oauth2 spec.
The linked security issue will be closed and once this issue is dealt with the oauth use case can be considered complete.

Onboarding Use Case

We need to describe a use case for onboarding and offboarding of devices to derive and address privacy and security requirements and identify implications on the architecture.

Fix respec issues

The following issues were found by respec:

  1. Document uses RFC2119 keywords but lacks a conformance section. Please add a
    .
  2. Linter (local-refs-exist): Broken local reference found in document. Please fix the links mentioned. See developer console. Occured at: 1.

Use Case for Smart City People Density

Description: A service that can count people in a given location based on camera images and output the number of people, and/or an estimate of density. This is used to help ensure that social distancing/circuit breaker provisions are followed, among other applications. Requires an AI service whose input is image, identifies people (not personally, just as humans), counts them, and outputs a number. In combination with a camera providing images, this becomes a virtual sensor for density. As extension, the service may measure the distance between people and identify pairs that are too close to each other (note from McCool: want to avoid flagging non-strangers, though).
If density is too high, consequence would be an alert, sent for example to a security guard.

Variant: It might also be used to control access, eg. doors to a mall, to keep the density under some limit.

Use Case for Smart City Dashboard

Note: this used to be called "Fleet Management" but based on the description I think "City Dashboard" is more appropriate. I tweaked the description slightly but the following is (mostly) what we agreed upon in the meeting with GTS:

Description:
Dashboard interface to control all actuators and view all sensors through the entire city in real time.
Actuators can include robots; for these, control means you can send commands to robots to move to new locations, drop off or pick up packages, etc. However, it could also include other kinds of actuators, such as flood gates, lights, etc. Sensors can include those for the environment and for people management (density counts, thermal cameras, etc). Dashboard would include mapping functionality, status of robots, other actuators, and sensors, data visualization, and historical comparisons. Mapping implies a need for location data for every actuator and sensor. This use case also includes camera and real-time data streaming.

Review MEIG Requirements for Home Network Scenarios

The Home Network Task Force of the former Web & TV Interest Group produced a Note on Requirements for Home Networking Scenarios.
The document (https://www.w3.org/TR/hnreq/) contains 19 use cases:

5.1 U1. Service User Interface
5.2 U2. Discovered Content Host
5.3 U3. Service Migration
5.4 U4. Service Distribution
5.5 U5. 3-Box Model
5.6 U6. Application Exposing a Service
5.7 U7. Application Discovering a Service
5.8 U8. Application Push-Migration
5.9 U9. Application Pull-Migration
5.10 U10. Media Identification
5.11 U11. TV Control
5.12 U12. Time Synchronization
5.13 U13. Lip Sync Time Synchronization
5.14 U14. Local Link of Web Applications
5.15 U15. Home Network Enabled User-Agent - Network Media Player
5.16 U16. Home Network Enabled User-Agent - Network Media Server
5.17 U17. Home Network Enabled User-Agent
5.18 U18. Home Network Enabled User-Agent - Network Record Controller
5.19 U19. UPnP / DLNA ecosystem support

We need to identify which of these use cases are relevant for WoT and if there are gaps to existing use cases, specifically the MMI use cases. If the requirements are addressed and covered by existing specifications (e.g. UPnP/DLNA) we have to identify the additional benefit from using WoT.

Review EdgeX Architecture

It would be useful to review architectures intended to support similar use cases to WoT (or that are targets for WoT integration, or that integrate web and IoT technologies in similar ways) in order to confirm that we are meeting their requirements.

This issue proposes that we do this for EdgeX, which is basically a "WoT Gateway" (to use ITU-T terminology). Here is a link to the docs for the "Fuji" release: https://fuji-docs.edgexfoundry.org/index.html

Some salient points:

  • Security: Reverse proxy (Kong) "API Gateway", JWT, OAuth2 (client flow only), https/TLS (1.2?), ACLs, secret store (Vault), etc; however I have created a separate issue in the security repo (w3c/wot-security#180) to review the EdgeX security architecture
  • Metadata repository service, which I think is the main point where we can collaborate. Right now the metadata seems fairly limited, it seems for example (if I am reading their spec correctly) that properties are just single numbers not structured data, no formal semantic annotation, etc. However they also have things like manufacturer, etc that we don't (at least not in the core spec).
  • There is also a Core Data repository service that provides a historical database of property values (a service we do not consider in our current architecture, but for which there are certainly use cases for).
  • They also seem to have a way to do notifications but I'm not yet sure what (sub)protocol they use to implement that.

Probably the deliverable here should be someone from WoT doing an in-depth reading of the spec and maybe putting together a compare-and-contrast summary presentation (for example comparing metadata and security support), followed by inviting someone from EdgeX (eg Brad Corrian) to have a discussion and get input. In parallel I am also putting together a proposal to EdgeX on WoT integration so they can better support structured metadata.

Smart Home Interworking Use Case

Use case to motivate for interworking with Zigbee/CHIP/Z-Wave.

Possible motivations:
Cloud interworking between application and services.
Works with vs. works as - i.e. define an integration pattern.

Requirements document for time stamps/ time series

Identifying timestamps and other time related data, e.g. via semantic tagging.

Need to discuss data formats for timestamps, time intervals, align with Web API.
Time series data also needs to be considered for historical data management.

See also time ontology W3C standard.

DID and micropayments

I've seen the DID WG minutes.
An interesting use-case for DIDs are micropayments. Especially in context of the growing market of cryptocurrencies. Selling services or data.
I worked for the IOTA Foundation. So, if you need some input on the topic, I am happy to help. I can also write down some real life scenarios, if needed.

WoT in the Web browser

w3c/wot-architecture#15 raised the issue to be more clear about what it means to implement WoT in the Web browser. I propose a new section for this, which (for now) explains how a JS library can provide the Scripting API on top of the existing browser APIs (e.g., XMLHttpRequest object or WebSockets API).

Later versions of the document could sketch how a more native integration would look like.

Add Accessibility Considerations to Use Cases

As discussed in APA/WoT Joint call Oct 14, 2020

  • Added accessibility (and internationalization) considerations to template

  • Smart Buildings

    • ISO standard for smart door locks (also credentials; TODO)
  • Professional users

    • Eg disabled farmers in Ag use case
  • Automotive

    • Disabled drivers or passengers
  • Transportation

    • When is the next bus?
    • When is my stop
    • Where is my taxi?
  • Logistics

    • Package delivery - where should it go?
    • Lockbox - package is available, notification
  • Existing accessibility use cases

  • NEW Use cases

    • Publishing, including recipes
  • Overlap with internationalization

    • Text direction
    • Personalization for people using symbol sets rather than speech (but... multiple systems...); APA task force
  • Discovery

    • Eg find accessible doors, trigger lifts, etc.

Overarching:

  • User interfaces will almost always raise accessibility issues

    • relatively well understood, especially if can map onto web browser platforms
  • Vertical integration needs, e.g. for an API

    • ex: second screen synchronization tolerances e.g. for lip reading
    • middleware (devices are accessible, but middleware might not be...)
      See:
  • https://www.iso.org/standard/60821.html - ISO/IEC 24752-1:2014
    Information technology — User interfaces — Universal remote console — Part 1: General framework - relates also to "semantic annotation" for UIs used by IoT devices

  • Semantics

    • Possibility to infer UI requirements from higher-level semantics, may not need explicit "modality" annotation in all cases (but would still be nice)

Feedback:

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.