
Chapter 3 Design Patterns for IoT 57
Software Abstraction for Virtualization of Things
Problem
For a larger number of connected embedded devices (things),
it is important to scale the software with some reusable com-
ponents. Also, these embedded devices must not have tight
integration with these software components to make sure
they are loosely coupled and interchangeable.
Solution
This can be achieved by adding a software abstraction layer,
which contains various tools and libraries such as firmware
and middleware to enable devices to connect to the application
layer in a decoupled manner.
Problem
Thing connecting to the network may bring a lot ...