IoT has revolutionised the way we interact with technology, connecting devices and systems to enhance efficiency and provide valuable insights. Revealed in a recent IoT review for 2023, the number of connected IoT devices had grown to 16.7 billion in 2023. Additionally, what was pointed out was the emergence of the Network and Information Security Directive by the EU. Developing a successful IoT product requires a strategic approach, combining innovative technology with careful planning and execution.
In this article, we will explore the best practices in producing an IoT product to ensure a seamless and reliable user experience. Globally, the number of installed IoT devices will reach 27 billion by the end of 2025 which includes everything from consumer-level gadgets to industrial IoT. Examples include, IoT devices in smart home applications for energy efficiency and security, Medical IoT devices for personal healthcare to global health providers. In underground mining and in manufacturing, agriculture, IIoT devices play major role in providing security and safety of miners. Digital twins’ concept has been adopted in a large-scale coal mining projects. We need to adopt a systematic software engineering IoT framework for developing IoT applications and services and the SEF-IoT is depicted in Illustration 1.
Best practices for IoT device design
One of the best practices of developing IoT devices is to identify clear requirements with features. The process as follows:
- Start with a clear problem statement and user needs using systematic IoT requirements engineering process with sysSQUARE (the basic SQUARE requirements methodology was developed at SEI).
- Build a prototype and test it early and often
- Choose the right hardware and software components
- Follow the standards and regulations for IoT connectivity and security
- Optimise the device performance and power consumption
- Design for scalability and interoperability
Illustration 1 Software Engineering Framework for Cyber-Physical and IoT Systems.
Best practices for IoT device application and service development lifecycle
The next step is to develop IoT applications for specific purpose such as smart home, mining, smart cities, smart environment, and smart transport, etc. the standard software engineering process is follows:
- Define the device requirements and specifications using sysSQUARE methodology.
- Select the appropriate development platform and framework (SEF-IoT)
- Implement the device functionality and logic
- Integrate the device with cloud services and data analytics
- Debug and troubleshoot the device issues
- Deploy and update the device firmware
Illustration 2 IoT-Edge Applications Development Lifecycle
As depicted in Illustration 2, it is essential to adopt a systematic approach and best practices for IoT-Edge application development. This includes several well-established techniques such as Security by Design, which enforces the principle of embedding security considerations from requirements to the design phase, implementation, and testing. This process is also known as Built-In Security. Adopt user encryption for data in transit and at rest. Implement secure boot processes and device authentication. Additionally, conduct regular software updates to provide a mechanism for over-the-air updates addressing security vulnerabilities and improving functionality. Ensure that updates are signed, authenticated, and encrypted to prevent tampering.
The second-best practice involves data privacy, supporting the clear and explicit definition of the data collected by the device. Obtain explicit user consent, minimise data collection to only what is necessary for the device’s functionality, and encrypt sensitive data, following privacy regulations.
The third best practice is designing for interoperability and standards, adhering to industry standards to enhance interoperability with other devices and platforms. Use widely accepted communication protocols to facilitate integration.
The fourth best practice is designing for optimising power consumption. One of the most important best practices is to support UN sustainability goals, particularly Goal 7: Affordable and Clean Energy. This involves power efficiency by optimising power consumption to extend the device’s battery life and implementing sleep modes and other power-saving features when the device is idle.
The fifth best practice is designing for scalability, achieved by designing devices to scale with increasing demands and considering potential growth in the number of devices and the data they generate.
The sixth best practices include User-Friendly Interfaces, ensuring a user-friendly setup and configuration process. Provide clear documentation and support for users to troubleshoot common issues.
The seventh best practice focuses on the design of IoT-Edge Computing, leveraging edge computing to process data locally, reducing dependence on cloud services, enhancing these edge nodes (such as edge gateways, edge servers, edge computing) security is also crucial, and considering the use of edge analytics to minimise latency and improve real-time decision-making.
The eight best practice includes designing for reliability and redundancy, incorporating redundancy and failover mechanisms to enhance reliability and conducting rigorous testing for various scenarios, including network disruptions.
The ninth best practice is essential for adopting strict compliance with regulations, staying informed about, and complying with regional and industry-specific regulations. Consider certifications such as CE, FCC, or others based on the target markets.
The tenth and foremost best practice is on Supply Chain Security, ensuring the security of the entire supply chain to prevent tampering or unauthorised access during manufacturing. Verify the authenticity of components and use trusted suppliers.
The eleventh best practice includes continuous monitoring and diagnostics, implementing clear monitoring mechanisms to detect abnormal behaviour and potential security threats. This should include diagnostic tools to facilitate troubleshooting and debugging.
The twelfth and final best practices revolve around end-of-life considerations, planning for the end-of-life of the device, including secure disposal of hardware and data.
By following these best practices, manufacturers can create more secure, reliable, and effective IoT devices that meet user expectations and regulatory requirements.
Illustration 3 Secure Software Engineering IoT-Edge Framework.
Illustration 3 provides a systematic framework for secure software engineering IoT-Edge paradigm which starts with evaluation of existing business strategies and best practices and incrementally improving by adopting twelve best practices presented in this article.
Conclusion
Developing a successful IoT product requires a comprehensive approach that encompasses clear objectives, robust security, efficient power management, interoperability, user-friendly design, and scalability. By following these best practices, you can ensure that your IoT product not only meets current market demands but also lays the foundation for future advancements in the rapidly evolving world of connected devices.
Professor Muthu Ramachandran is a Research Consultant & Assessor at Forti5 Tech.