Companies stepping into the world of Internet of Things need to know there are several parts forming an IoT solution. It starts with sensors and actuators that are connected to the Internet. Those devices need to send the data via the Internet in a fast and secure manner. At the end of the stack resides the application using the values retrieved from the sensors. The IoT platform is in between the application and the sensors. This article will help companies to choose the best fitting IoT platform for their needs.
The most important considerations for choosing an IoT platform can be divided in several subjects.
1. Does the platform contain all the functionalities you need today
You should focus on the functionalities you need today. Because IoT platforms are relatively young, additional functionalities will be added during the lifetime of the platform. No single platform is finished today, it constantly needs additions to support new techniques.
You may now think you are a single company using the platform, but it may well be that your company will use the platform for services to its own customers. Or a merger (or split) of the company will occur in the future.
3. What analytics are supported
Most of the IoT projects are started to gain insight in some kind of process. After getting the sensor information, analytics and machine learning should be the next step to gain insights. The platform must contain possibilities for data analytics or provide ways for you to perform analytics on the retrieved and stored data.
Security and privacy
4. Multi-user support
In most companies several people will work on the same projects or with the same sensor data. It must be possible to define different roles for different people within the organization. You need to have administrators that can control and change the devices (sensors and actuators), users that are only allowed to view or retrieve the data and other users to operate the actuators.
5. Secure communication protocols
Wherever possible, communication channels need to be strong encrypted. All API traffic needs to be secured by HTTPS and additionally using an API-key for the connecting application. All users will need to authenticate securely by Oauth2, using the corresponding encryption key.Not all devices are designed with security in mind, resulting in unsecured communication with the platform. From the moment the data enters the platform, it should be secured.
6. Data ownership must be defined
All data that is generated by a company must retain the ownership to that company. The IoT platform may never use the data you are gathering. One exception is the use of the data to improve the IoT platform itself.
7. No data selling without explicit permission
The IoT platform may never do anything with the data without explicit permission of the company that generated the data. In some cases it can be beneficial for the company to sell its data or statistical data derived from it, but this must be initiated by the company itself, not the IoT platform.This includes data selling of anonymous or statistical data contained within the platform. As a company you won’t like competitors having the statistical data you have put so much effort into gathering.
8. Easy integration with existing applications
It should be easy to integrate the IoT platform with your existing applications. Industry standard way of doing this is by using restful API’s. It is better to integrate the IoT platform by using restful API’s than searching for an IoT module for your existing application or an IoT platform consisting of additional modules to replace existing applications. Because a company cannot focus on a broad range of best of breed applications, it is better to integrate best of breed applications with the IoT platform by using restful API’s.
9. Easy and straightforward implementation
Implementation should be easy and straightforward. You don’t want to spend to much time on implementation, you rather spend the time analyzing data and figuring out successful recipes.
10. Guided implementation
The implementation should be guided by the IoT platform. Initially by providing guidance videos, website material and webinars. Possibly followed by direct support when needed.
11. Support of a variety of devices
Does the platform support a variety of sensor and actuator types. It should not be limited to some brands, but preferably most brands and device types must be supported. Preferably the IoT platform should have a list of supported device types and a clear and fast process to add additional device types on request.
12. What communication protocols are supported
Not only devices via M2M, but also IP, WiFi and some of the new long range protocols such as LoRaWAN, Sigfox and NB-IoT must be supported. The world is moving fast towards a diversity of protocols for device to device communication, the IoT platform should acknowledge and support that.
Performance and scalability
13. Scale up and scale out
For any good platform to be prepared for the future it should be able to scale up and scale out. The way to achieving the best possibilities for scaling is to base the IoT platform on a microservices architecture. This architecture will allow the IoT platform to scale up and scale out without great effort.
14. Performance monitoring
Any IoT platform should perform extensive monitoring to ensure proper performance for its users. Not only measuring the performance of the backend, but the complete path to the enduser.