Testing in the cloud

Testing in the cloud

For several years now, cloud has been an indispensable buzzword in professional software development. I have briefly summarized here which use cases there are for testing embedded software in the cloud and which benefits can be expected.

Use case #1 - the digital workplace: unified, secure, archivable and quickly deployed

One of the biggest advantages of cloud-hosted digital workplaces is that configurations (i.e., operating system and applications) can be fully rolled out and archived.?

The use case archiving configuration of infrastructure is restoring a n environement of any point in time from the past. An old software release can thus be patched in the originally used development environment.

Why is this important?

In the automotive area you need to be able to fix software even 5 or 10 years after the first release.

Experience shows that in parallel with the development of the product, the infrastructure used is also continuously improved and expanded (new scripts, new tools, new methods, etc.). This is great for the whole team, unless an old software version has to be fixed.

Most of the time, adapting the infrastructure to build/ test the software takes longer than actually patching and securing the software.

Solution: Restore old environment. Patch software. Test. Deploy. Done.

Use case #2 - the digital workplace: ?data and tools close together for fast access.

In many development teams (driver assistance, artificial intelligence, image processing, etc.), product development requires many and large amounts of data. This data is mostly stored on servers or in the cloud for central availability.

The data must be available locally in development with a host PC. Lengthy downloads are the result. This costs a lot of time. The developers' workaround is download overnight. In sum, this approach is neither sustainable, nor useful, nor is it fun for a developer to have to wait.

The idea is to bring your development tools into the cloud - as close as possible - to the data (images, videos, measurements, etc.).

The advantage of this approach is that access times are drastically reduced. New data is available immediately. Little to no waiting for data. When they run tests, it still takes some time. And that's also the third reason to go to the cloud.

Use case #3 - Acceleration of execution for faster results

Development should or must become faster and faster. As functionality increases, testing becomes a challenge.

Test executions with real data in particular can take a very long time.

In driver assistance or autonomous driving test runs can take days to weeks. This is usually incredibly annoying during hot phases of development.

"It has to be faster!", is something you might hear from managers in task forces or boot camps.?

Good news: it can be faster.

Again, the solution is: go to the cloud.

The main limiting factor in test execution is the resources of the test environment.

Essentially, RAM and CPU power.

In the cloud, users?can, among other things, upscale and downscale the parameters of the environment. Two types of scaling are distinguished in this context: vertical and horizontal scaling.

Vertical scaling refers to the increase of RAM and CPU power for a machine. This allows you to significantly speed up a test execution instance on demand and even on very short notice. Great stuff. Unfortunately, there are physical limits to this at some point as well. And then Horizontal Scaling comes into play.

Horizontal scaling refers to the multiple instantiations of a test execution. In other words, users clone their infrastructure and split the tests across multiple instances. Thus, they have parallel computations and can theoretically become infinitely fast. However, this also costs budget accordingly and is not recommended for daily use.

In summary, testing in cloud is an exciting future topic for embedded development. Imho, it can solve some of the problems of the past (archiving) and can accelerate them significantly in critical phases of product development.

要查看或添加评论,请登录

Robert Fey的更多文章

社区洞察

其他会员也浏览了