IoT Product Development Guide for Startups
75% of IoT projects fail. To avoid this scenario, you should carefully plan your project beforehand and familiarize yourself with the IoT product development stages.
Join the DZone community and get the full member experience.Join For Free
Ninety percent of companies in the 2021 Microsoft IoT Signals survey have already adopted the Internet of Things solutions to reduce operating costs, unlock additional revenue streams, and gain a competitive edge.
Yet, 35% of IoT projects stall at the proof-of-concept (POC) stage, while 75% of all IoT initiatives never materialize into market-ready products.
Companies that struggle with IoT product development typically cite high scalability costs, technical challenges, and vague ROI perspectives as the key reasons for IoT project failure.
Primary reasons for IoT POC failures. Source: Microsoft
As a startup looking to create an IoT solution, you could avoid most of these challenges by carefully planning your IoT pilot.
Here’s where our guide to IoT solution development comes in useful.
Understanding IoT Product Development
To help you build an IoT device and the accompanying software ecosystem in a risk-free way, I'm starting an article series that dives into the Internet of Things technologies and IoT product development best practices.
This time, I’ll focus on the Internet of Things definition, architecture, and stages your connected product goes through before hitting the shelves.
What Is an IoT Product Exactly?
The Internet of Things (IoT) is a network of physical objects connected to the Internet and/or each other over a wired or wireless network.
The “things” term may apply to both electronic devices, such as fitness trackers, and non-electronic objects enhanced with sensors and lightweight control gadgets (think smart curtains operated via a relay and mobile app).
There are two types of IoT solutions you could create:
Sensing devices that measure information on the surrounding environment and convert it into digital signals
Actuating devices, which receive digital signals from the network and act upon them
These devices can talk to the nodes within an IoT ecosystem (i.e., peer-to-peer communication), connect to the network via a gateway, or establish gateway-less connections.
What Does an IoT Solution Architecture Look Like?
To create an IoT device or non-electronic gadget scavenging and to act on environmental data, it is essential to understand how connected solutions function under the hood.
IoT reference architecture. Source: ITU-T
The Internet of Things architecture comprises four levels:
Application layer. This layer features embedded software — i.e., firmware or proper operating systems — that runs on sensing and actuating devices. It may also include mobile, web, and desktop applications helping users interpret sensor data and manage gadgets. So if you’re looking to create an IoT app, we’ve got bad news: applications are just the tip of the IoT iceberg.
Service and application support layer. Essentially, this is the IoT infrastructure layer where data aggregation, storage, and processing operations occur. To save costs and ensure uninterrupted device/service performance, IoT startups often choose to set up this infrastructure in the cloud (as opposed to on-premises servers).
Network layer. On the network level, IoT engineers can implement cellular, Wi-Fi, and wired connectivity technologies to interface the components of an IoT ecosystem — i.e., “things,” back-end infrastructure, and user applications.
Device layer. We could segment the functionality enabled by the device layer into:
1) Gateway capabilities. IoT gateways support devices connected through wired and wireless technology, such as Bluetooth, Zigbee, Z-Wave, and LPWANs, and perform protocol conversions, enabling devices with different connectivity tech stacks to communicate.
2) Regular device capabilities. IoT nodes typically collect and share data. But they can also construct networks on the fly to accommodate new nodes or replace an existing malfunctioning device. Also, some IoT devices can display limited data processing functionality (i.e., edge IoT deployments) and switch between sleep and awake modes to save energy.
The Internet of Things architecture also incorporates device management and security components.
The former helps resolve traffic congestion issues, monitor IoT product performance, roll out software updates, and track device activation and deactivation.
The latter ensures privacy protection and data confidentiality and supports application-specific requirements, like facilitating secure mobile payments.
Commonly, this functionality is baked into popular IoT platforms, such as Google Cloud IoT, AWS IoT Core, and ThingWorx.
What Stages Does the IoT Product Development Lifecycle Span?
Prominent IoT infrastructure vendors like Microsoft and Google distinguish four stages of the IoT development process:
Trial/proof of concept
I prefer a slightly different classification, which better aligns with the IoT product development stages startups go through:
IoT product idea validation
IoT product discovery
Minimum viable product (MVP) development
Market launch and MVP scaling
Let’s inspect the activities undertaken during the IoT product development lifecycle phases.
IoT Product Idea Validation
By 2025, the Internet of Things could become an $11.1 trillion market with a whopping 41 billion connected devices deployed globally.
Your startup should start your IoT product development journey with thorough market research to develop a product with strong commercial appeal. Its elements include:
You are assessing the demand for your IoT solution. Besides studying research papers issued by technology consulting companies like Gartner and Accenture, your startup could conduct in-depth interviews with experts and potential customers from your target domain — e.g., healthcare, wellness, manufacturing, retail, etc. Next, analyze the macro- and micro-environmental factors affecting your business using marketing frameworks like TEMPLES, VRIO, and Porter’s Five Forces. You should pay special attention to the data privacy and security laws governing IoT adoption in your target geographic locations and industry-specific regulations for IoT devices, such as HIPAA, HL7, and NIST.
Getting to know your competition. Being part of the macro-environmental audit, competitive analysis allows you to determine the optimum feature set, pricing, and marketing strategy for your IoT product. Your goal here is to identify an unoccupied niche and offer something — i.e., a piece of functionality, competitive price, superior quality, or five-star customer service — that your competitors are missing.
Choosing a suitable IoT business model. Drawing on the insights obtained from the market and competitor research, your company should choose an appropriate business model to monetize your IoT product. Some popular options here include one-time purchases, subscriptions, and the monetization of accompanying services and products, such as sensor data analysis. To better align your service offering with your company’s mission, resources, and marketing mix, you could use the Business Model Canvas template by Alexander Osterwalder.
Estimating the efforts required to build an IoT device. In this step, you need to summarize your market research findings using the SWOT analysis and determine what resources and capabilities you lack to create an IoT device and the applications supporting its logic. Then, based on your company’s primary focus (hardware, embedded, web, or mobile), you’ll determine which parts of IoT product development need to be outsourced.
IoT Product Discovery
The discovery phase of the IoT product development lifecycle helps verify your IoT product idea against your business needs, evaluate your project scope, and create a preliminary technical vision for your custom IoT solution.
To reach these objectives, enlist the help of a skilled business analyst. The IT specialist will collaborate with your company’s internal and external stakeholders and determine what the IoT solution should do and how it is supposed to function.
These characteristics are known as functional and non-functional requirements for IoT product development.
Following the discovery phase, you’ll get definite answers to such questions as:
What tasks and processes would your IoT system enhance or automate?
What type of data capturing devices are you going to use?
Which connectivity technologies will your IoT product rely on?
Where will sensor data be stored and analyzed — and how is it going to be presented to end-users?
How will your custom IoT solution interface with third-party devices and services?
What is the approximate size of the user base you’re targeting?
Based on this information, you’ll be able to select a suitable technology stack for your project, lay a foundation for an IoT architecture that would flexibly scale along with your product, and get a realistic IoT cost estimate.
The goal of the prototyping phase of the IoT product development lifecycle is to create a proof-of-concept version of your connected device, identify technology roadblocks, and test the prototype with real users to refine its functional and non-functional requirements further.
One customer, for instance, wanted to create a smart home security system based on motion sensors. These sensors were supposed to track movement both inside and outside residential buildings. However, during the discovery phase, our IoT product development team discovered that the ratio between the measured data properties prevented the software from timely notifying users of suspicious activities. As a result, we replaced the sensors with Wi-Fi-enabled video cameras.
To build an IoT device prototype, you (or the vendor of your choice!) could leverage off-the-shelf single-board computers and microcontrollers like Arduino Uno and Raspberry Pi.
Such IoT development boards come with various features, including USB support, SIM card slots, multiple digital inputs and outputs, robust connectivity options (BLE, Wi-Fi, cellular), and decent processing capabilities. Additionally, they are compatible with different open-source hardware components and development kits and could be connected to popular cloud IoT platforms — for instance, AWS IoT.
The choice of ready-made IoT prototyping tools is based on initial hardware requirements, such as connectivity, power consumption, RAM and flash memory, system architecture, and the availability of SDKs.
The benefits of prototyping in IoT are mostly cost-related. For example, you could create a working version of your connected solution at a small fraction of what it would cost you to design a custom device. Also, you can start developing firmware, back-end infrastructure, and mobile apps faster — and rule out technology limitations early on.
IoT MVP Development
As mentioned earlier, the Internet of Things term does not always refer to electronic devices. So, for example, if you’re working on an asset tracking solution based on BLE beacons, you don’t have to design custom hardware and could focus solely on creating a supporting software infrastructure.
Otherwise, your IoT minimum viable product development project would span three stages:
Hardware design (plus certification)
Custom IoT Hardware Development
How to create an IoT device? Well, pretty much like the other IoT product development activities, the custom hardware design process involves several steps:
Analysis. The analysis phase largely builds on the insights you’ve gleaned from IoT product discovery, from concept development to technical requirements specification.
Modeling. You collaborate with hardware engineers and industrial designers to devise printed circuit board (PCB) layout schemes and visualize the gadget’s case in 3D CAD.
Prototyping. Do not confuse the IoT prototyping activities we mentioned in the discovery section with custom device prototyping. This time, you won’t be using BeagleBoard, Raspberry Pi, and other off-the-shelf IoT development boards. Instead, you need to contact a hardware manufacturing company and produce up to ten PCBs based on the layout schemes created in the previous step. Your hardware vendor will run extensive tests to validate the PCBs meet your performance requirements, debug them if necessary, and update the technical documentation.
Testing. At this stage of the IoT product development lifecycle, engineers will transform successful prototypes into pre-production models while using different materials for the device case. Next, you’ll need to conduct electrical safety, pre-certification, and user tests. Do not be surprised if critical errors surface in the process. This is not at all uncommon, and your custom IoT device could spend anything between six months and two years before you achieve your performance and safety goals.
Certification. When doing market research, you have learned about the Internet of Things regulations effective in your target markets. However, depending on your gadget’s scope of application, you might need to procure various certificates before selling the IoT solution to end-users. These may include the Restriction of Hazardous Substances (ROHS) and Energy Star compliance, the Electrotechnical Commission (EC) and Underwriters Laboratories (UL) certifications, Bluetooth Sig Qualification clearance, as well as industry- and product-specific test certificates for gadgets that collect user data or come in direct contact with the skin.
IoT Infrastructure Development and Setup
The infrastructure layer of an IoT system includes several components:
Embedded software. Firmware, middleware, device drivers, and full-fledged operating systems interface the hardware components of your custom IoT device, allow it to perform its intended sensing and actuating operations, and help integrate the gadget with other devices and components of an IoT infrastructure. Typically, the hardware vendor you’re working with can handle the embedded part, too, although you might need to hire a separate team for that.
Connectivity. Again, it’s your embedded team who tackles the networking part. To send sensor data to a gateway or directly to the cloud, your gadget will rely on short-range or long-range wireless connectivity technologies. When selecting a connectivity tech stack, you should consider networking costs beforehand. For instance, if you opt for cellular technologies, you might end up spending $0.04 per every megabyte of data your gadget sends over the network.
Cloud infrastructure. Based on the requirements identified during the discovery phase of the IoT product development lifecycle, you’ll need to select a cloud platform supporting your gadget’s business logic. Here’s where sensor data will be aggregated, stored, analyzed, and visualized using dynamic dashboards. Cloud service providers like Google, Amazon, and Microsoft typically charge per the amount of server calls your gadget makes — or the number of devices within an IoT ecosystem. But the cloud providers’ fees are not the only issue to consider here. When designing a blueprint architecture of your IoT solution, you should make the necessary provisions regarding your user base, the amount of data traversing the network, and the overall complexity of your system. For example, if you’re planning to deploy a machine learning model to interpret sensor data at some point in the future, you should be able to do so without a complete infrastructure overhaul. The same goes for device management, over-the-air (OTA) software updates, and ongoing performance optimization through DevOps.
Supporting infrastructure. Setting up a data warehouse or data lake solution in the cloud and configuring some analytics capabilities is only half the job. Complex IoT solutions like remote patient monitoring (RPM) or end-to-end home automation systems require a dedicated customer support department — and a plethora of related software tools like mobile, web, and desktop apps enabling end-users and admins to operate connected devices.
The Internet of Things App Development
Being part of the IoT product infrastructure, user-facing applications help configure and manage connected devices — and visualize sensor data processed in the cloud.
Depending on your overall IoT product requirements and target audience, you might need to create:
Native or cross-platform mobile applications, which act as a remote control for IoT products
Embedded human-machine interfaces (HMIs) that allow users to operate devices without a mobile or web app
Web-based or desktop applications that mirror the functionality of their mobile counterparts and allow IoT product admins to manage user accounts
Speaking of IoT MVP development, it normally takes three to six months to create a complete software ecosystem for an IoT device.
The good news is that IoT software development activities can run in parallel with custom hardware design. And if you’re developing IoT devices on a shoestring budget in the hope of getting funded, you can skip the hardware design part altogether and make do with an off-the-shelf board for the time being.
For example, MedAngel, a healthcare technology startup from Germany, came up with an idea of a temperature tracking device for insulin. The company chose the WunderBar platform as their primary tech stack, placed the IoT board inside a keyring-like plastic case, and built simple mobile apps for sensor data interpretation. With an MVP on their hands, the MedAngel team got some media coverage, took part in several tech contests, and launched a successful Indiegogo campaign. The company then scaled the IoT product’s use cases across other temperature-sensitive medications and revamped the gadget design.
IoT Product Launch and Scaling
Congratulations! You’ve built your first connected device containing enough features to meet user expectations and differentiate your company from the competition. Now it’s time to get your IoT solution to the market, analyze initial user feedback, and tweak your product accordingly.
Technically, going to market is not part of the IoT product development lifecycle — and that’s why it often gets overlooked by IoT companies. Here’s what you can do to avoid getting stuck in the IoT startup limbo:
Assemble a beta user group to test your MVP and adjust your product — i.e., the applications and the gadget itself — to better meet user needs.
Develop a marketing plan covering content production, participation in industry-specific and technology events, and partnerships with influencers.
Gradually expand your product’s feature set by adding new functionality and use cases once you hit your initial revenue targets.
Go the extra mile to provide a superior customer experience: after all, acquiring new customers costs five times as much as keeping existing ones.
Five Ways Your IoT Product Development Project Could Go Awry
Finally, I’d like to draw your attention to common challenges startups face when developing IoT devices:
Stumbling upon technology roadblocks late in the IoT product development process. Creating a luxurious gold bracelet with physical activity tracking capabilities might be a good idea, but what if the metal case would interfere with the Bluetooth signal, preventing the gadget from sending sensor data to a mobile app? A surefire way to avoid such scenarios is to kick your project off with a discovery phase and ensure extensive test coverage before sending the device to production.
Struggling with multi-vendor IoT project management. Few companies possess the required IoT product development expertise and personnel to build all components of an IoT system under one roof. As an IoT startup owner, you should elevate your project management knowledge and choose appropriate project tracking software to keep your distributed hardware and software development teams on the same page.
Incorporating too many features into an IoT product MVP. The results of your market research might indicate that users want a self-learning smart home system with biometric control options. Still, in reality, you most likely lack the skills and resources to create such a complex IoT device from the ground up (and within a single iteration). I recommend that companies start their IoT product development journey by creating an MVP containing just enough features to ignite user interest and get investors on board.
Ignoring IoT scalability and hidden infrastructure costs. To choose the right development tech stack and design an IoT solution architecture that would grow along with your business, you should partner with a skilled business analyst during the product discovery phase, interview stakeholders both within and outside your company, and hire top-notch software architects, no matter the price.
Taking IoT security lightly. Despite the global IT community and government efforts, the Internet of Things remains a low-hanging fruit for cybercriminals. From hard-coding device passwords to using open-source software development tools containing documented vulnerabilities, there are a million ways to overlook security loopholes in your IoT infrastructure — and let your customers down. That’s why “security by design” should be your IoT product development mantra from day one.
Stay tuned for more — feel free to ask your questions about IoT product development in the comments section!
Published at DZone with permission of Roman Lapa. See the original article here.
Opinions expressed by DZone contributors are their own.
Constructing Real-Time Analytics: Fundamental Components and Architectural Framework — Part 2
Introduction to Domain-Driven Design
RBAC With API Gateway and Open Policy Agent (OPA)
Revolutionizing Algorithmic Trading: The Power of Reinforcement Learning