At the DACS October 2014 meeting, Steven Posick explained the “Internet of Things” (IoT). Steven works in this field at ESPN, as Associate Director, Production Workflow Application Development. He is also a member of SMPTE (Society of Motion Picture and Television Engineers) and has served as a document editor for some SMPTE media technology standards.
When we think about the IoT, we might imagine smart thermostats that allow us to adjust our home air conditioning temperature remotely from a web-connected device. Or we might think of wearable devices, such as glasses that also allow us to see an online display within the glasses.
Or we might imagine driverless cars or robots that accomplish household tasks.
The IoT includes all of these things and more.
Steven’s talk was not just a whiz bang list of amazing gadgets that we might imagine. He described the actual engineering effort behind IoT. He told us about some software concepts that are being developed, and he described what various companies are doing in their drive toward IoT.
Steven’s discussion of software concepts behind IoT reminded me of a university software class, as he started by listing some theoretical constructs needed in this field. He started with the notion of an “object”. In this field, an “object” can be a device, which is the physical piece of hardware … or it can be a software “service” … or it can be a “data object” that is a group of related data bundled together into a single object. Whew, this conceptual structure is more complicated than I imagined when I arrived for the evening.
Steven connected these theoretical constructs with our experiences of things in the real world. As an example of a data object, consider our experience when we purchase a device. We may need to look at its instruction manual. Instead of printing manuals on paper, the manufacturer may deliver only an online manual. Steven said it would be great if this manual automatically appeared as an icon on our computer or tablet, without the need to hunt for it or type an internet address. Here’s where the “data object” comes into play. In this case, the “data object” includes the instruction manual and related materials.
Steven emphasized the need to think broadly about the topic of IoT and to establish protocols that cover all the potentialities. He said that protocols are not well established, as the field is a new one.
Steven identified some features that are currently typically lacking in IoT implementations. He would like to see “automatic discovery” of objects over the internet, similar to the concept of Plug n Play as used with computer peripherals. He would also like to see “object self description”, i.e. so that an object can describe its capabilities to other objects. Even better would be “feature discovery”, so that an object can describe its features to other objects … and these features may vary dynamically, so that new capabilities can be added.
We learned about “capability-based programming”, which Steven described as the ideal way to design for IoT. One should “develop to the behavior, not the object type”. He described “object discovery through query”, based on an “object based query language”. Yes, this query language is defined in a SMPTE document, and this is an example of the protocols needed in the IoT field.
Steven’s slide show can be seen at http://www.slideshare.net/StevePosick/dacs-the-internet-of-things-iot
Authored by Andy Woodruff.