The top 7 things to think about when developing IoT solutions

October 9, 2019

One of the big reasons that companies are investing in Internet of Things solutions, according to Business Insider, is to increase their productivity and reduce operational costs. But, like most technology, in addition to considering the user experience, an application needs to start with a clear understanding of the business interest it serves. If it we don’t start there, the many hurdles along the way could diminish the impact of the final product. Let’s look at some of the obstacles we see companies facing in their IoT journeys, and how to overcome them. 

Common IoT roadblocks companies come across

1. Interoperability

The trick lies in how we will set up our ecosystem to contain different types of devices, networks, and platforms as subsystems of a bigger system. How will they all work in a collaborative way? For example, there are connected cars streaming more data as they evolve, but not all the cars’ components are being generated by the same company. We have to think beforehand about how these will all “talk” to each other.

2. Performance/Scalability

We can extend the “edge” of the system with devices with different levels of processing power and storage. Despite the variety of devices, any solution should perform at an acceptable level and also handle the increased workload, however suddenly that call arrives. Considering scalability from the get-go informs the design of the product, and is far easier to deal with before rather than after the fact.

3. Device management

The volume of devices being incorporated generates challenges to the way that we manage them. Basic activities such as the need to upgrade the firmware can be a hard quest if you don’t have a system that allows you to roll out these changes in an efficient and proper way. You don’t want your whole solution impacted in the event of an unexpected error. The more devices you add the more complex this management gets. A good deployment strategy and the correct tools must be selected to mitigate this challenge.

4. Availability

Our ecosystem must aim to be running 100% of the time, especially in critical solutions such as the ones developed for the healthcare industry. The devices must anticipate a variety of possible scenarios, for example, the moments in which the strength of network connectivity being unstable. 

5. Evolution of the devices

As with all technology, Internet of Things devices and other systems evolve over time. In this fast-growing business, we see evolution in many different ways. We should think through any given solution in a way that allows for changes without causing damage or downtime of the whole ecosystem. And this is closely related to the Interoperability concept mentioned above. Any change/evolution could impact how the system’s parts collaborate and communicate with each other.

6. Security

These devices might need to store sensitive data, which adds a risk of attackers accessing that information. Depending on the specific situation, the devices themselves can be stolen by attackers. Because of the technology’s current scale, there are more communication channels between different systems and these devices might have limited computation power and battery limitations, meaning that they cannot run complicated cryptography. We’ll talk more about security later.

7. Data processing time

Timing can also be a challenge. Data can be processed in real-time, near real-time or batch. A smartwatch streams data in real time of our running performance when we are exercising. A historical dashboard showing the telemetry of sensors of a vessel to keep track of the fuel consumption is an example of near real-time. And finally, a batch processing example could be a company processing historical data of a group of turbines to define when the best time is to go through the maintenance process.

Defying the odds

Overcoming these challenges, while complex, is not impossible. As a first step, it’s highly valuable having a technology partner that can help you deal with these challenges and be a two-way bridge between the hardware world and the digital world. This partnership can increase your understanding of how the digital world works, and also how IoT devices impact business. These concepts help companies stay fit and up-to-date with technology trends. They’ll also help collect data from all devices, and ensure that you make decisions based on the data in order to really add value to your business. They can also assist with selecting the best technologies, building and maintaining platforms, setting up teams of data specialists, incorporating your industry know-how as an asset, and even providing specialists that know about hardware, firmware, and how these products should work together.

Thinking well about the architecture is another key aspect to overcoming, or even preventing, the obstacles in a product’s development. This includes the way in which data flows between IoT devices and platforms. It’s crucial to take the time needed to design processes that maximize the data flow. Some things to consider are the communication between devices and the cloud, and whether it is directly or indirectly using a hub or gateway. Additionally, at the design stage, we have to contemplate data security. If devices exchange data, it is essential to guarantee the security of all devices.

Zooming in on security

On the edge, fog computing could be a solution to performance and latency problems. Even though cloud computing has been beneficial for hardware management and service configuration for the Internet of Things space, it generates a latency—a disadvantage. Fog computing lets devices at the edge of the network that need external computing power or storage to access these on local nodes instead of the Cloud. This increases response time, by moving application logic and data storage to the edge and decentralizing the system. However, this performance increase brings a cost: having smarter nodes near the edge increases the security risks. Attackers could connect more easily.

If security fails, the system should still be able to recover to an acceptable state. Backup systems play a crucial role in this resilience. If a node fails, a backup node can seamlessly take over its transactions so the system is always stable and the end user is not impacted. Always think of resiliency as a critical part of availability.

Additionally, it’s ideal to plan for potential sensor outages. There are several things to consider when planning for back-up solutions. For one thing, having redundancy in sensors can help increase availability during outages. Adding multiple sensors for a given solution is a good option. That way you don’t just rely on one sensor for data streaming. Another common technique is to schedule regular maintenance checks of the devices’ components. 

There are techniques commonly used to improve IoT security and privacy of the data stored in the devices. One technique is keeping the firmware up-to-date. Others include changing some of the logic to make it harder to breech, and changing the way that devices use their memory. 

Overcoming the obstacles

Fortunately, there are IoT platforms whose design specifically rises to the challenge of device management. Some solutions are simple, and others have increasing degrees of complexity; some are open source, and some licensed. When choosing between an existing platform or building one from scratch, make sure you consider the many factors. How many devices will you need to connect? What are the communication protocols that detail how they connect with those devices? What means will you use to update firmware (e.g., to batch or not)? And also, how flexible is the platform to adapt to the fast-changing technology? Most importantly, make sure you know what you’re getting into, and that you align the experts to develop the solution you need.

Subscribe to our newsletter

Receive the latests news, curated posts and highlights from us. We’ll never spam, we promise.

More From

The IoT Studio helps our customers to develop new business opportunities, enhance existing products and services, and bring new ones to life. We specialize in providing end-to-end solutions with focus on edge and internet of things platform development. Our wide expertise in hardware integration and embedded software development that seamlessly merges into Cloud Platforms ecosystems blurs the boundaries between the physical and digital worlds.