The Missing Field Guide to Industrial IoT Platform Dev Choices
The Missing Field Guide to Industrial IoT Platform Dev Choices
This comprehensive guide to IIoT development considers the options at your disposal, like IoT SaaS, consultants, or a mobile development approach.
Join the DZone community and get the full member experience.Join For Free
You’re an industrial equipment manufacturer. You design, produce and sell equipment used in manufacturing, agriculture, life sciences, food and beverage production, transportation, oil and gas, and other industrial scenarios. Your digital transformation journey may just be starting, and you seek to collect data from your machines and PLCs for the first time. Maybe you have this data locally, but want to move it to the cloud for monitoring, management, and analytics. Or perhaps your current edge to cloud solution just can’t keep up with your growing business needs. How do you get started? What do you do next? How do you choose the right approach to industrial IoT platform development?
Your customers ultimately don’t want machines, they want the business outcomes your machines can provide. Better performance and increased reliability mean increased productivity and greater revenue opportunities. The right approach to industrial IoT platform development will accelerate your transformation toward a more data-driven, outcome-oriented enterprise, providing a competitive advantage through differentiated product and service offerings. Choose the wrong IoT platform, however, and your company could end up 12-24 months down the road with an exhausted development team, frustrated P&L leaders, and products that provide no new value for your customers. There are a lot of IoT platforms out there, and more than 60% of IoT projects end in failure.
There’s nothing inherently “bad” about most IoT platforms. The challenge is one of picking the right tool for the right job. Variations in costs, features, scalability, and programming models mean certain approaches to IoT development are simply good or bad fits for your particular set of requirements and business models. Fortunately, these platforms can be grouped together into just a few platform categories, and the specific choice within the right category is much less consequential to your success. To identify the best approach from your current starting point toward a software-enabled, data-driven enterprise, start with an analysis of your requirements and constraints at both a technical and business level. Many teams achieve this, but without a field guide to help them understand the strengths and weaknesses of each platform category, they choose the wrong approach and inevitably fail to deliver.
You now have this missing guide. Let’s get started.
Industrial IoT Platform Approach #1: Castles in the Clouds
(Some assembly required)
Microsoft and Amazon have created excellent technology blocks for building an industrial IoT platform. Their respective Azure and AWS services provide increasingly powerful methods for secure data ingest, storage, machine learning, and analytics. Their teams of ambitious engineers make improvements at a dizzying pace. Here’s what this means for companies considering the development approach of building their IoT platform directly on top of these cloud components. First, great news, you don’t have to build these parts yourself. As an industrial equipment provider, there’s no value to owning your own cloud infrastructure. Second, less great news, these pieces don’t just snap together. Cloud provider reference architectures look nice and clean, but there’s significant complexity to be resolved in between adding these services to your developer console and delivering a connected product solution that provides value to your customers.
Somebody has to write code. A lot of code. Code that properly handles the complexity inherent in IoT solutions and enterprise system integration. The volume, velocity, and variety of incoming data is unprecedented, and the challenges to transforming this data into actionable insights and new revenue are not solved by dragging and dropping boxes on a screen. You’ve either got to really know what you’re doing to orchestrate these cloud components into a flexible long-term solution, or have a large team of developers with the budget and time to match for building and making changes as new products, data types, integrations, and business models are requested by product managers and sales teams over the life of the system.
While it’s great that offerings from Microsoft and Amazon continue to improve, if your system is built directly on top of them you’re going to need to keep your IoT applications and business tools moving forward at a similar pace. This may require updates to your machines in the field, and calls for a dedicated team of engineers to support your solution. A key benefit of this approach is you remain in total control of your system and your data, always able to offer your customers the latest advances in machine learning, AI, and other cloud services. You control your feature roadmap, and can focus on your customers’ needs on any schedule that you set.
You are the master of your connected domain.
You’re never constrained by a 3rd party platform provider with different priorities than you and your customers. Your data is never sent to someone else’s business servers beyond your command. You control the user experience for your web interfaces and mobile applications. This is your product, this is your data, and these are your customers. Sound like you? If so, read on.
This approach has stringent requirements that must be met for you to receive these benefits.
If you don’t have a dedicated, experienced, and sizable engineering team with at least 12-18 months of runway, this is not the right approach for your organization. If you aren’t prepared for the ongoing maintenance and revisions, do not start down this path.
Building your own IoT platform on public cloud infrastructure is the recommended approach for organizations seeking to own and control their connected product solution – and also have substantial engineering resources to commit for the duration of the life of the system.
Industrial IoT Platform Approach #2: IoT SaaS
(Start faster, go somewhere…)
If you don’t have a large engineering team or significant time to spend bringing your solution to market, buying a SaaS offering to use as the basis of your IoT platform could be the right way to go. What you get are pre-configured dashboards and configuration options, and sets of pre-built functionality that tend to ‘just work’ out of the box. Some offerings include more customization options than others, ranging from full SDKs supporting multiple programming languages to “no-code” visual consoles for incorporating application integrations and functional modules for analytics and other capabilities into your solution.
You get speed to market and basic functionality out of the box, and in many cases costs are low at the beginning. Operations are typically managed by the SaaS vendor, and the resources required to get up and running on a SaaS IoT offering can be minimal. For asset monitoring and alerting scenarios this can be a great fit.
In return, you give up control over your roadmap, your data, and your ability to set the timeline for meeting new customer requirements.
On the positive side, if the same features that are important to your business are also high priorities for your SaaS provider, your solutions will improve over time and provide increasing value as your SaaS provider continues to invest in those parts of the platform. If you’re not planning to become especially data-driven and don’t need full control over how your data is accessed and by whom, and where and how it is stored, then sending everything to a 3rd party service might be fine. Similarly, if you don’t plan on adding new capabilities or integrating with new tools and applications over time, then it’s less important what other features the vendor offers and at what additional cost.
Another benefit of IoT SaaS platforms can be their low monthly fee. But when that’s not an accurate reflection of the tens of millions spent by the vendor to develop, maintain, and improve their offerings, these low-cost offerings risk become “no-cost” offerings when the IoT SaaS platform is shut down for lack of revenue. For basic asset monitoring scenarios, a migration to an alternate system may not be especially difficult, but if your customers have become dependent on your solution for running their operations a transition can be especially risky.
When requirements and resources are limited, SaaS IoT platforms provide a quick path to connecting your equipment to the cloud. If you’re an industrial equipment provider seeking digital transformation through connected product solutions, however, SaaS IoT platforms are unlikely to lead your enterprise to long-term success.
Industrial IoT Platform Approach #3: The Consultant
(Just add $$$$)
Similar to the benefits of building your own IoT platform on public cloud infrastructure, hiring a consulting firm to build it for you will provide control of your data and feature roadmap. This can be a viable option for enterprises who are creating connected product solutions to give themselves a competitive advantage and embed themselves inside their customers’ value chains. When you have the requirement of system ownership but lack an engineering team capable of building one in-house, bringing in outside experts to get the job done is a well-trodden path. Assuming you hire a team that is sufficiently knowledgeable at IoT and not just a generic development house, you should end up with a solution that meets your needs.
Before you begin, be sure your plan and resources will cover the needs of your complete product lifecycle. Experienced IoT consultants will demand a premium for their services, usually on an hourly basis. Total costs of large software projects are notoriously unpredictable, and the complexity of IoT makes initial estimates even more of a thumb in the wind. Sensors, protocols, hardware, networks, environmental conditions, an array of data silos and legacy systems, organization politics, and new business models create formidable barriers to successful delivery of connected product solutions that produce desired business outcomes. Make sure you’ve got the executive and financial support to go the distance before you begin. What about support and maintenance?
Once they finish up the job and go home, who will connect additional product lines and integrate new applications within your organization and at customer facilities? What happens when your cloud infrastructure provider releases more powerful versions of their services, or adds new services altogether? This will require updates to your solution, not only if you want to take advantage of new capabilities, but often just to keep dependent enterprise and customer systems running properly in the field. This is your solution, built from scratch to your specifications by your selected consultancy, making it difficult for other vendors to step in later for bug fixes and updates.
IoT systems are living systems and guaranteed to change and over time, and their constituent parts – both hardware and software, business models and customer needs, at the edge and in the cloud – will evolve at different speeds.
Make sure the vendor you choose to build your solution is capable and willing to support you over the life of your products, and that you’re able to support their expense for the life of your contract. This arrangement is not uncommon for custom enterprise software development, and this approach for owning and controlling your IoT platform puts you in a good position to deliver business outcomes for your customers and differentiate your products today and tomorrow.
Industrial IoT Platform Approach #4: The Mobile Development Shop
(The app trap)
Sometimes all you need is a nice-looking mobile application to show the status of your equipment and receive notifications when something goes wrong. Hiring a development shop specializing in mobile applications is a fast path to demos and field trials that impress executives and potential customers alike. Responsive charts and easy-swipe screens, zooms and pans, your fleet of devices all in your pocket. You get speed and slickness of a SaaS at the application level, and control over the experience and feature set – also at the application level. The problem with this approach is most of the challenges of industrial IoT are at the platform level, not in the application itself. Data management, including access control, history, cleaning, and transformation, are server components and not things most mobile development shops are familiar with, yet are critical to long-term performance of an IoT platform.
Similar to the SaaS model though, if your devices and scenarios are simple enough, this approach could still meet your needs. If you just want a map of all your devices showing the current temperature of each in a differentiated user interface (and that data is already available in the cloud), shop no further. For slightly more complex scenarios, some app shops can meet your needs by bringing in aspects of data management and more advanced business logic to your IoT application by intertwining them with the UI layer. The risk here though is twofold. Lack of layer isolation and API contracts mean architectural fragility. In order to change anything in your application, you risk affecting everything in your application. As with the Consultant approach, however, the developers who built your system could very well be able to perform maintenance and make the changes you require over time. But it’s going to be even harder to find other vendors (or your own developers) who can build upon the attractive, monolithic IoT “platform” you’ve installed on your customers’ phones.
Industrial IoT Platform Approach #5: Data Tools and Frameworks
If you’re just looking to monitor a set of fixed assets that you control, any category you choose should deliver the results you need, though certain choices will be more cost-effective and get to production faster than others. As an industrial equipment provider seeking a competitive advantage in the marketplace, it’s unlikely an IoT SaaS or outsourced mobile application development approach is going to provide the long-term differentiation and control you need over your connected products and the data produced. Putting a 3rd party in control of your customers’ data and your feature roadmap puts your whole business at risk, and monolithic mobile apps aren’t going to be able to keep up with the complexity and change inherent in connected product systems over time.
Of the options reviewed so far, this leaves you the choices of building a platform yourself on the public cloud, or hiring a consultant to do it for you.
If you’ve got a large team to commit to the task, and can wait the 12-18 months needed for them to deliver, this could be your move. If you don’t have the team, but do have the money, a consultant can deliver similar results in a similar amount of time. As mentioned previously, make sure your budget includes sufficient funds for them to maintain and continue adding new features as you need them for your entire product lifecycle.
For businesses without at least 2 out of these 3 prerequisites – a large development team, a forgiving timeline, and significant budget to dedicate year after year to your IoT platform – neither of these two approaches will work.
To start down either path without sufficient resources to deliver (and keep delivering) value to your customers leaves you vulnerable to competitors and puts your entire enterprise at risk. For these businesses, there is one more category to discuss – an IoT platform development approach providing the benefits of agility and control that come with “build” options without the resource and schedule requirements of systems you “buy.” This is the category of data tools and frameworks.
What this approach does is solve for the complexity of IoT by providing you an orchestration infrastructure layer to build on top of. This is the code we mentioned would be required for your connected product system to make use of Azure, AWS, and GCP services by providing enterprise data management and access control, asset models, user roles, and other foundational elements. You can license these pre-built components for running inside your own public cloud account, meaning the data remains inside systems that you control and not some 3rd party SaaS server.
Rather than invest time and money towards IoT platform infrastructure, which has no differentiating value for your customers, you can start right away using the data produced by the system to build applications providing business outcomes for your customers – which is why you headed down this road in the first place.
This “Springboard” approach removes the challenges that cause so many IoT project failures and lets your organization focus on your customers from the beginning without giving up any control of your data or feature roadmap.
This approach creates new options for your enterprise. Now a smaller team, with a smaller budget and shorter timeline can build on top of this foundation to create IoT applications for differentiating your products. Most data tool frameworks provide an enterprise API to make accessing data and integrating with other systems more consistent, and vendors frequently work with your team to customize the API for your organization’s needs.
Typically data tools are not sold as standalone products, but come with a degree of customization and integration services as part of the package. One of the most compelling aspects of this IoT platform approach is you’re not just buying a product off the shelf and trying to make it work, nor hiring a consultant to build one from the ground up. Data tool vendors are more like partners providing IoT technology and services to your organization, and the line between the infrastructure they license to you and where your team’s application development begins is not only flexible but can also change over time depending on your needs.
You’re unlikely to ever need to own your cloud storage or machine learning infrastructure. You’ll always rent it from Amazon, Microsoft, or Google, and they’ll continue to make it better. IoT infrastructure is the same.
This is your jumping-off point for delivering value. Let someone else keep the springs oiled inside your solution. You can have their experts add new functionality, or your team can leverage the purpose-built API and do it yourself. This approach delivers agility and control without sacrificing speed or requiring the investment needed to build a system from scratch.
When your requirements rule out an IoT SaaS or mobile app shop, and your constraints preclude building your own or hiring a long-term consultant, the Springboard approach is an excellent choice.
The Road Ahead
You’re an industrial equipment manufacturer. Your digital transformation journey may just be starting, or you’re ready to move to the next level. By combining your organization’s goals, requirements, and constraints with the characteristics of each approach to industrial IoT platform development as illuminated in this field guide, the right path for your enterprise should become clear for delivering connected product solutions that create valuable business outcomes for you and your customers. Let us know if you have any questions.
Published at DZone with permission of Marc Phillips , DZone MVB. See the original article here.
Opinions expressed by DZone contributors are their own.