Digging deeper into the IoT stack is split into 2 parts (Part 1 & Part 2) to reduce the length of the article. References and links for continuation will be provided throughout the article.
Digging deeper into the IoT stack [Part 1]
In the previous article, I had detailed the key differences among M2M, IoT and IoE. The scope of today’s article would be to explore the IoT/IoE stack in more detail by understanding its core components.
The entire article is organized into the following 3 simple sections
- Quick recap [Covered in Part 1] Overview of the previous article and understanding its connection with IoT and IoE
- Digging deeper [Covered in Part 1] Exploring the core components of the IoT/IoE stack in brief
- Examples matter! [Covered in Part 2] Solving a simple IoT Business use case & triangulate the understanding to the components of IoT /IoE stack
Here is a link to the previous article “Demystifying M2M, IoT and IoE” in case you missed it
Previously, we tried to understand the key differences between the ambiguous buzz words of the industry. We explored how the M2M was born, how it evolved to IoT and also studied how IoE redefined IoT using a very simple top down approach. Going forward, I would be referring IoT/IoE as only IoT for convenience.
IoT is gaining a lot of traction in the industry. Today everyone who understands these terms even superficially would affirmatively say that IoT is the future. On a simple note , exploring the IoT stack and understanding how its various components play a role in the ecosystem is a fairly straightforward deal. But the hype associated with these buzz words have created so much complexity with the terms that most of us assume that it is a challenging game. Today, I would like to walk you through the core components of the IoT stack in brief using simple and easy to understand business use cases.
Digging deeper into the IoT stack
As mentioned earlier, IoE redefined IoT by breaking down its ecosystem into 4 core components, they are
- Things &
Let us explore each of these core components in brief.
At a high level, “People” as in ‘we’ interact a lot with different devices/systems. Each interaction has its own unique pattern that may be of interest for some other event. Putting it in a more lucid way – majority of us use social networks and smartphones. We all differ from each other in the way we interact with these systems. Like, some of us may not find it easy to use a newly launched app on a smartphone, but few may find it super easy and intuitive. We all will have our own preferences towards the user interfaces – I might find it very difficult to use a phone banking application, but my friend may not. The key concept over here is considering ‘Human’ as a separate component in the ecosystem. But why? Why do we need to do this? Just because different people find ease or difficulties in interacting with a system why should we consider ‘people’ as a separate entity. The answer lies in the complexity of understanding human interaction as a dimension. This interaction could be between human and a system or between 2 or more people. All humans are skilled, but the skill over here differs. We have a population of over 6 BN and around 1/6th of them are already interacting with most of the smart devices. This brings in huge challenges to get in place a generic user interface which is easy and intuitive for everyone or a single framework that defines the way people interact with each other.
When we understand the needs of the people in a more constructive way, we are presented with the opportunity to capture the true behaviour of every person using it and help everyone benefit the best from the system.
This brings in loads of challenges. Understanding the cognitive intelligence, user behaviour from the interaction between people and devices such that we can constantly improve the interaction between them is a mammoth task. It requires an intersection of multiple academic disciples to solve such a problem.
The most simple definition of ‘process’ in IoT would be everything required to deliver the right information to the right person or machine at the right time. We still dont have a concrete definition or classification of what components define processes. Currently a wide varietly of things fall under ‘processes’
It can be broadly classified into 2 main divisions
- Business Processes
Technology comprises of many aspects. As time progresses technology evolves to a totally different scale. Here we focus on 3 simple aspects i.e. the software, the environment and the protocol
The software is basically the operating system and all the added featureswhich runs on the device and helps it manage various operations like communicating with other devices, capturing various pieces of information through sensors , storing and transmitting them to other devices/servers. Managing the device operations requires a dedicated operating system which is different than what we already have in the market. The devices in the IoT stack require a different and special kind of operating system which can work with small memory chips, lower computing power, limited battery life and sensors which capture data based on specific events it is designed for. Google recently launched an operating system called Brillo for the IoT devices that takes care of all the above mentioned hurdles. Companies can now use the existing operating system to develop modified versions for their respective devices.
The environment in simple terms can be called as the infrastructure for the IoT. Basically the environment can be summed up as the integration of the software, protocol and some features which manage the protocol and software components. The environment decides how the different software components interact with each other and the protocol.
Getting devices in a network to talk to each other is not an easy task. Like if a smartphone needs to signal a refrigerator to defrost, then the refrigerator needs to understand the kind of message it received from the smartphone and what action it needs to take. This calls for the need for a set of rules and regulations so that devices can clearly interpret the messages it receives from other devices. With a protocol in place, we can have rules and specifications designed for how devices can talk to each other. One such protocol the market already has is ‘Weave’ (developed by Google).
This is currently a very hazy term. Most of the components which form a part of the business processes are debateable. ‘Business processes’ cover all the processes which are required to manage the interaction between devices and the collection, analysis & communication of data in the IoT ecosystem. This topic is very vast to discuss at this point and hence we would park this topic right away without further deep dive. However, we would explore this aspect in more detail in upcoming articles.
‘Things’ basically include all objects that are capable of connecting to the network and share information. All physical items like sensors, actuators, or any object which on attaching to a device connects it to the network and shares captured information can be called Things in IoT. Devices like smartwatches, smartphones, smart TV, Smart Refrigerators, Smart Microwaves etc. have some sensors or objects which gets them connected to the network and share information. The ‘Things’ are actually embedded in most devices we categorize as ‘Smart Devices’. And hence we use the term ‘Things’ collectively also for all smart devices which are equipped with such sensors and objects. Today we have an endless list of devices which can be categorized as ‘Things’ in IoT. All smart devices in the consumer electronics, connected heavy machinery, end to end automated processing units etc. are all categorized as ‘Things’. These things like sensors, actuators will sense specific events in its environment, capture and deliver raw data and also respond to input signals from other things to provide more information to help people and machines make smarter decisions.
Today, devices equipped with sensors capture multiple data dimensions and send them over to a server(central source) where it is further analysed and processed. The volume of such data is huge and much of this data is transient in value. Most of the data dimensions captured here, loses value within minutes. And it doesn’t make sense to store all of this data. With the advances in technology – things are getting smarter and smarter. Devices are equipped with better computing power and memory than ever before. With these improvements we can now move from simple basic analysis to sophisticated analytical techniques through which more useful information can be extracted from the data. Rather than reporting just simple raw number, the devices in IoT will soon start transmitting more lucid and valuable insights processed from the raw data in real time. To make this happen, we need solve the data problem by using multiple disciplines together. And the first step towards this objective is to consider ‘Data’ as a core pillar in the IoT stack. The earlier approaches to store, process and retrieve data needs to evolve. Processing raw data collected from the sensors to create summarized and meaningful insights we need to leverage the limited computing power and small capabilities of the devices in the most smart and optimized way such that the quality of insights is not compromised and neither the capabilities of the devices are overkilled.
We explored the 4 core components in the IoT stack in more detail and understood how the 4 pillars – People, Processes, Things and Data interact with each otehr to create the IoT ecosystem.
In the next section(comming soon) we would be understanding the IoT stack better with the help of a simple IoT Business use case & triangulate the understanding to the components of IoT/IoE stack .
Please share this article if you find it useful and share your thoughts/comments for the same. Would love to hear back from you!