The Internet of Things (IoT) – a web of devices interconnected over the internet – comprised 9.7 billion devices in 2020, and is projected to exceed 29 billion by 2030. As it brings the physical and digital worlds together, the IoT is transforming every industry imaginable by presenting new opportunities; elevating customer experience; improving productivity, efficiency and agility; and enabling insightful decisions.
Whether it is deploying drones for surveying farmlands, using sensors and RFID tags to monitor goods through a supply chain, or delivering better banking experiences via connected user devices, the possibilities of the IoT are endless.
However, enterprises need to fulfill certain requirements before they can fully use IoT as a tool of business transformation.
For one, the IoT must be embedded into products and processes, just like other software applications.
Second, success in IoT adoption is earned through iteration: Since the IoT has a myriad of elements, organizations need to gather data from devices, convert it into analysis, act upon that insight, and do it all over again in a continuous feedback loop that’s always refining, learning and improving the various IoT constituents.
This implies that organizations must provide for managing, maintaining and updating the interconnected systems, processes and devices on an ongoing basis. And they need to test everything to ensure that all the “things” talk to each other and that their performance meets specifications and measures up to the users’ expectations.
The following example depicts a typical IoT testing scenario:
An instrument in a healthcare tracking system monitors a patient’s vital parameters and records this information so healthcare providers can access it when needed. Physicians can initiate changes in medication or intake remotely from a computer or mobile device that the instrument is connected to.
To work smoothly, various aspects of this use case have to be tested.
For example, every device should be checked for usability (sends messages, logs data, displays information, etc.). ll the connected devices, and the data flowing between them, must be secure. It is essential to check the compatibility of the various operating systems, browsers, devices and connectivity options that are involved. The entire system must also perform at scale, and comply with all regulatory requirements. Further, the software powering the IoT devices needs to be thoroughly tested to eliminate bugs and optimize performance.
Since all these elements are dispersed and under multiple ownership, it is pretty certain they will not be up and running at the same time to undergo physical testing.
Going back to the earlier example, imagine the difficulty of physically testing a user interface that is being accessed remotely by patients from their respective (diverse) devices. Apart from device unavailability and inaccessibility, an important device-side challenge in testing and validating an IoT solution is the high cost.
Yet another difficulty in physically testing an IoT use case within enterprise premises is that it requires massive resources that are only available in the cloud.
A strong case for device virtualization in testing
Under these circumstances, simulation testing based on device virtualization is a good option. Device virtualization — similar to the creation of a digital twin — addresses the challenges mentioned above by providing an abstraction layer to IoT devices and systems.
The virtual machines simulate everything from device initialization, to communication between devices and cloud in either direction, to manipulation of configuration settings. Various loads and network-related scenarios may be simulated virtually to test the performance of an application. All types of devices, whether in prototype or the production stage, can be simulated through device virtualization.
What’s more, using virtual devices (or the digital twins of physical devices) for testing reduces the total cost of ownership as well as testing time.
Virtual devices are particularly useful in the earlier stages of development when their early feedback can be plowed back to eliminate bugs or resolve performance issues sooner in the development cycle, and at lower cost.
Device virtualization gains can be very significant. A financial services firm slashed its nightly regression cycle feedback loop from 1,500 hours when it did sequential testing to a mere 7.5 hours.
Last but not least, virtual devices can automate 50 to 60% of testing requirements.
Organizations that are thinking ahead have progressed beyond traditional testing methods to extensively using virtual devices and simulation in testing. Virtual simulation and feedback loops are an integral part of product development.
A good example here is Dassault Aviation, which launched a business jet without creating a physical prototype. Working on a virtual platform and shared database, the company’s global developer network helped reduce assembly time and tooling costs by a very substantial margin.
Improving IoT solution development outcomes
Device virtualization, in combination with IoT platform engineering, can also improve the quality and delivery of IoT solutions. The availability of highly capable, affordable devices is one of the prime movers of the IoT revolution. So, in addition to adopting new software innovations, IoT platforms must also keep pace with the evolution in hardware devices.
The problem is that hardware enters the IoT platform development cycle at a very late stage rather than at the starting point, leading to higher costs, lower quality and longer lead times. Device virtualization helps to introduce hardware early in the platform development cycle — at the application design stage itself — and ensures it is accessible throughout. In doing so, it benefits IoT solution development in many ways.
For example, a virtual replica provides a way to overcome a common problem in prototyping: parallel hardware and application development, because of which a physical device may not be available during integration testing. The virtual device replica steps in, mimicking the new features and providing feedback, to accelerate device prototyping.
Two other scenarios where virtual devices add value are platform engineering — where they help to program and test for compliance — and ensuring that IoT applications are compatible with past, current and future versions of various devices.
Last but not least, device virtualization improves feature validation and testing outcomes by testing a range of parameters, including scalability, resource utilization and security.
Balakrishna DR, popularly known as Bali, is the executive vice president and head of the AI and automation unit at Infosys.
Welcome to the VentureBeat community!
DataDecisionMakers is where experts, including the technical people doing data work, can share data-related insights and innovation.
If you want to read about cutting-edge ideas and up-to-date information, best practices, and the future of data and data tech, join us at DataDecisionMakers.
You might even consider contributing an article of your own!