Integration challenges for hybrid systems

Integrating embedded systems with cloud platforms comes with several challenges. While this combination unlocks powerful capabilities like real-time updates and remote monitoring, it also introduces specific problems that need careful testing.

If you're unfamiliar with the concept of Hybrid Embedded/Cloud systems, you might find it helpful to start with this previous article, Hybrid Embedded/Cloud systems, which provides an introduction and practical examples.

Using Adaptive Cruise Control (ACC) as an example, described in the linked article, let’s now explore some of the key challenges.

Network Latency and Connectivity Issues

Think of a driver using ACC while passing through an area with weak or no network coverage. If the ECU tries to connect to the cloud at that moment, what happens? Will it behave correctly if it can’t download updates or send data? Testing must include different network conditions, such as high latency, intermittent connectivity, or no connection at all; how the system handles these situations is important to avoid unexpected behavior.

Integration Complexity

Keeping an embedded system (like an ECU) and a cloud platform in sync can be challenging. It’s important to test that the operations are executed in the correct sequence and that everything runs smoothly.

Referring to the ACC example:

  • When should the ECU fetch updates from the cloud?

  • Should it download a new model at power-on, after a trip, or before shutting down?

  • Does this operation run smoothly, or does it affect or get affected by other real-time operations?

Testing these situations ensures updates happen at the right time without interrupting the system’s real-time behavior.

Security

Security is a critical part of hybrid systems, especially when the ECU communicates with the cloud over the internet using protocols like REST APIs or MQTT. The connection must be safeguarded to ensure:

  • Data confidentiality: preventing unauthorized access to sensitive information through encryption.

  • Data integrity: ensuring data remains accurate and unaltered during transmission.

  • Authentication and authorization: verifying that only authorized systems can connect and exchange data.

  • Resilience against attacks: Protecting the communication from threats like man-in-the-middle attacks or denial-of-service (DoS) disruptions.

Testing should confirm that these security measures—like encryption, authentication protocols, and secure channels—are working as intended and that the system is resilient to potential risks.

Scalability

As more vehicles and devices connect to the cloud, the system must be able to scale effectively. This includes handling an increasing number of connections and managing larger amounts of data without performance degradation. Elasticity is equally important—ensuring the system can dynamically allocate resources to accommodate fluctuations in demand.

For example, during peak usage times, the cloud platform must scale up to handle additional load and then scale down during low-traffic periods to optimize resource usage.

Data consistency

It’s important that the data sent between the embedded system and the cloud is accurate and complete. For example, if the ECU sends sensor data to the cloud, testing must confirm that the data isn’t lost, delayed, or changed in any way, ensuring data integrity and reliability.

Critical need for End-to-End Validation

End-to-End testing is essential to ensure the integrated system works as expected. This testing evaluates the entire system, from the ECU to the cloud, by verifying that interaction patterns, data flows, and distributed business logic function as intended. It ensures all components work together seamlessly and that operations behave correctly in real-world scenarios.

Final thoughts

While these challenges add complexity, addressing them during testing is key to building reliable hybrid systems. By considering factors like connectivity, security, data consistency, and the behavior of distributed business logic across embedded and cloud systems, it’s possible to create solutions that perform smoothly and meet real-world demands.

Previous
Previous

Test levels for hybrid systems

Next
Next

Hardware In the Loop (HIL) testing for hybrid systems