dSpace: Composable Abstractions for Smart Spaces
Presentation
3x IoT devices, 13.6 per person by 2023
Complex to program smart spaces with greater variety of devices and use cases
Device-centric APIs
Monolithic implementations
if-then--that policies
Modularity
What is the right modularity?
What is the minimal set of abstractions to achieve it?
Modules
Digivice: model and driver
Digivices can have different device libraries (driver) programming lang. (driver) schema (modl)
Heterogeneity --> complexity
Digidata: model and driver
mount digidata T to digivice D
Composition
Mount
Idea:
use a universal digivice to configure a device-specific digivice
compose digivices with mount primitive
digivices form control hierarchy
Program the intent upward / downward
Pipe
Yield
Allow multiple parents, but only one can have write-access and other(s) are yielded
Device moves across rooms, delegate access to third-party
Policies
Delegation
Must preserve multi-tree topology to avoid loops
Summary:
Composable degivice / data
First-class primitives: mount, pipe, yield
Rich policies: delegation, intent reconc
Digis run as microservices
Last updated
Was this helpful?