Description:
The characteristics of the Internet of Things bring new challenges in developing applications which only appear in the environment of the Internet of Things. Some of the existing challenges are applicable in the context of IoT, however, the solutions for many of these challenges seem inadequate for IoT landscape.
One of the most discussed factor from the set of primary IoT challenges is the heterogeneous nature of components involved in IoT applications. The obvious solution suggested here is to solve this challenge by imposing standards and expecting everyone to comply, it sounds possible in theory but practically it’s next to impossible.
In order to solve this, let’s highlight key requirements of IoT application development.
Bring heterogeneous components together
Achieve seamless interoperability
Operational transparency at application layer
Now if we look back and relate this situation with a scenario where different hardware platforms with different OS and networking protocols operate, we can observe commonalities with a problem that has been solved in the past.
Yes, similar challenge has been solved in the past using the concept of middleware and it’s very well applicable in the context of IoT application development as well. By looking at trends and evolution in IoT application development platforms, Middleware has gained its own importance.
In a nutshell, key characteristics of middleware are:
Provides a mechanism for communication between multiple platforms
Hides underlying dependencies like hardware platforms, operations systems and network protocols
Ensures portability
Make easy and seamless integrations possible
In the context of IoT applications, now there are multiple Middleware options available which can be mainly categorized into 3 types such as:
Platform Middleware, which covers
Runtime for hosting application components
Resource management services
Interface for communication middleware
Communication Middleware, which covers
System that supports protocols for communication between two points
Safe and reliable delivery of message
Data Management Middleware, which covers
Operations on remote database
Distributed and parallel file systems
Above categorization is based on the layer at which these platforms help integrate heterogeneous components in IoT world. Now the question is how to choose the best suited middleware in the lifecycle of IoT application development, stay tuned for the next blog to know more about selection criteria.
http://blog.harbinger-systems.com/2014/10/iot-understanding-role-of-middleware/