The Internet of Things (IoT) is changing the way many companies do business. Traditional manufacturers are integrating their physical products with internet-based backend services, and internet companies are extending their offerings by integrating data from sensors and physical assets. New companies are entering the market with IoT offerings that combine physical products with internet-based services. Sensor-generated data and machine learning solutions enable new, data-driven business models.
To foster an easy development of IoT solutions, which all these players can benefit from, three challenges must be mastered:
- Rapid application development for IoT: Quickly and efficiently building user interfaces and applications for IoT use cases that require cost efficiency and fast time to market.
- Managing heterogeneity and diversity: Handling large numbers of heterogeneous, constantly evolving assets and devices in the IoT.
- Building customizable IoT solutions: Supporting IoT solution vendors in creating solutions that can be easily customized for different use cases.
I will rely on two authentic examples in order to provide more practical insights into the challenges of developing IoT solutions. The first use case is Track & Trace, which facilitates the management of large fleets of heterogeneous industrial power tools used for drilling, tightening, welding, measurement, etc. This solution is the result of a testbed of the Industrial Internet Consortium and is currently being developed by Bosch, Tech Mahindra, and Cisco. Leveraging wireless tool connectivity and indoor localization, it improves equipment efficiency (OEE) and production quality.
The second example addresses possible defects on conveyor belts in the mining industry. To meet capacity utilization targets, conveyor belts must operate continuously. Several sensors are mounted on the electric motors and gearbox shafts to measure vibration. This information is collected to predict possible defects, better manage maintenance, and reduce overall downtimes. Machine learning capabilities are being used to analyze these vibration patterns and define deviations (such as a failure in the electric motor) so an alarm can be triggered before the deviation actually occurs.
These two use cases reveal the three challenges that most IoT applications typically encounter. Let’s go more into details.
Challenge 1: Rapid application development for the IoT
The evolutionary nature of most IoT projects requires applications that can be developed and modified in a rapid and flexible manner. This is especially true for projects in the early, exploratory phases, as requirements might change during later, more mature phases. I have defined two types of projects:
Projects with custom application development: Some IoT applications have very high requirements with respect to data volume, performance, and algorithmic complexity. Typically, these applications have to support a high number of end users. Take for example a smart home solution with millions of households using the system. These applications have sophisticated UIs that are usually hand-coded and highly optimized – at a high cost.
Projects that require rapid application development (the “application long tail”): At the opposite end of the spectrum are a very high number of more specialized applications with lower complexity. These are usually employed by a smaller number of specialist users, e.g. a plant’s management team. Developing highly customized and optimized UIs for these applications is often cost prohibitive because of the high number of applications required and the small number of specialist users. These applications are sometimes also referred to as the “application long tail”, since they represent the long tail of the curve that maps complexity and the number of applications for this use case.
Challenge 2: Managing heterogeneity and diversity
Many product vendors want to leverage device connectivity and cloud-based applications to offer new services such as predictive maintenance and usage-based billing. However, they face a problem when it comes to managing the heterogeneity of their product portfolio in the IoT. Reasons for the high level of heterogeneity include the ever-increasing number of product categories, a large number of product versions, and the constant evolution of individual products. Figure 3 provides an overview of the device heterogeneity that needs to be solved in the Track & Trace use case.
The same problem applies to the vibration sensors in the conveyor belt use case. These sensors come in a wide variety of types (e.g. inductive, piezoelectric, or magnetic), each of which has a different set of features as well as varying levels of accuracy and performance.
Challenge 3: Building customizable IoT solutions
Although IoT solutions and applications have their roots in individual IoT projects, these solutions will become increasingly pre-packaged or standardized over time. IoT solution vendors have started developing standard IoT solutions and selling them to multiple customers and markets, just as we have seen with ERP (enterprise resource planning), CRM (customer relationship management), PLM (product lifecycle management), and other packaged applications. Consequently, it is very important that end customers have an easy way to customize the solution to fit their specific needs.
Let’s take a closer look at the Track & Trace solution, which is designed to be used by customers in different industries, such as automotive and aircraft manufacturing. In addition to benefitting from the basic functionalities, most customers want to extend the core Track & Trace solution; for instance, they want to integrate it with their own processes and systems. Experience has shown that Track & Trace customers have individual requirements in areas such as:
- Different power tools: In addition to the tools supported out of the box, customers usually have other tools that need to be integrated. This requires adding new interfaces and customizing them as well as existing interfaces.
- Specific manufacturing processes: In general, each customer has different requirements for process integration; for example, how to handle a problem that occurs during a tightening step.
From the end customer’s perspective (e.g. an automotive company), the question is how such customization is best achieved:
- If they buy a COTS (commercial off-the-shelf) solution, they will most likely get a cost-efficient Track & Trace solution and high implementation speed – provided they stick with the standard functionality. However, as soon as they start customizing, the solution will most likely become very costly and complicated.
- On the other hand, if the customer decides to develop the Track & Trace solution from scratch, the initial cost and time required will be very high, even if the final result is a solution that meets 100% of the requirements.
With today’s IoT technology stack at hand, this is no longer a black-and-white decision you have to make here. In my opinion, the best option here is a compromise between these two alternatives and to build an IoT solution that is based on a flexible platform, as were the two use cases presented earlier.
If you are interested how this works in practice and want to get insights into the recommended technology stack, which has already proven in a multitude of projects, look at this IoT technology white paper.