This proposal has been approved and the Eclipse openDuT project has been created.
Visit the project page for the latest information and development.

Eclipse openDuT

Tuesday, August 22, 2023 - 04:17 by Johannes Baumgartl
This proposal is in the Project Proposal Phase (as defined in the Eclipse Development Process) and is written to declare its intent and scope. We solicit additional participation and input from the community. Please login and add your feedback in the comments section.
Project
Parent Project
Proposal State
Created
Background

The paradigm shift of automotive development towards Software-defined Vehicle (SdV) has sharpened existing and put new requirements on the shoulders of automotive OEM and their suppliers. The overall goal of shortening the software release cycles of a SdV demands for automatic test and validation of artifacts during the verification & validation (V&V) phase of automotive components and (sub-)systems. Automation is crucial since the number of different regulative frameworks, system configurations and software releases grow exponentially. Furthermore, it is the viable option to establish repeatability and consistency of test cases.

Nowadays, the automotive V&V tool-landscape is partially scattered (specialized DLLs, missing cross-platform capability, proprietary rest bus simulation and runtime, etc.), interrupted by unconsolidated formats as well as missing interfaces between various proprietary solutions. The result is that users are either locked into single-source solutions or need to invest a significantly high effort to manually bridge the gaps between isolated solutions. An unified and interoperable platform for automotive verification & validation is needed that integrates different formats and (test) applications by abstracting non-differentiating and basic software components.

When hardware is involved, the challenge of connecting these distributed components in a repeatable and consistent way comes into focus. A temporal hardware setup onsite is not sufficient since collaboration and consistent tests are hard to achieve in those setups. In an early development state, a hardware device can be a rare good as well. Eclipse openDuT fosters the ability to connect different hardware and emulated setups while keeping them geographically distributed. This unleashes additional use cases that make rare hardware widely available and for automatic and remotely executed testing, like test cases that need to take place in a certain geolocation, for example when special cellular standards are involved.

In the future, certification institutes will demand automated testing and test cases and an open framework executing them.

Scope

Eclipse openDuT provides an Open framework to automate the testing and validation process for automotive software and applications.

Eclipse openDuT developed as FOSS, to be transparent, open and trustworthy. It covers different test and validation domains. Most notable domains are security testing (penetration and fuzz testing), requirement testing, and smoke testing.

Eclipse openDuT considers an eventually distributed network of real (HIL) and virtual devices (SIL) under test. The actual devices under test are considered gray boxes, i.e., tests focusing on device-internal artefacts (e.g., software code or configuration) will not be in scope. Regarding the communication protocols, Eclipse openDuT puts its focus on the automotive protocols and considers external interfaces, protocols, components like WiFi, BLE, Charging Station and Mobile-Apps as relevant.

Eclipse openDuT reflects hardware capabilities and constraints along with the chosen test method (possibly in a predefined language – existing approaches will be evaluated). Test cases are not limited to a specific domain, but it especially realizes functional and explorative security tests. An example can be the execution of a functional test case where the correct update of a cryptographic key within an ECU, equipped with a security module, in context of Secure Onboard Communication is being verified.

Eclipse openDuT is hardware-agnostic with respect to the execution environment and accompanies different hardware interfaces and standards regarding the usability of the framework. Thereby, it is supporting both on-premise installations and hosting in a cloud infrastructure. Our framework shall be open to proprietary software (e.g., well-known tool chains and V&V tools) via tool-agnostic standardized interfaces and other established automotive architectures and standards (e.g. AUTOSAR). Eclipse openDuT aims on an OSS solution for automated testing and not on bridging different tool chains. One working stream within this project will deal with the comparison and interoperability with already existing OSS automotive V&V solutions to assure a broad acceptance by its users.

Why Here?

Eclipse SDV is the foundation of a community-driven ecosystem that consists of automotive software components and solutions for a Software Defined Vehicle. It offers not only a code-first mentality but also frameworks and processes to collaborate in a professional environment.

ETAS GmbH, CARIAD SE, Mercedes-Benz Tech Innovation GmbH, AVL List GmbH, IAV GmbH jointly initiated this project within the Eclipse community to work in an open community right away. 

Our project group has chosen Eclipse SDV as an ecosystem for publishing our initiative since it combines the idea and community-aspect of open-source development together with the automotive targeted fellowship consisting of worldwide OEMs and suppliers.

Project Scheduling

New releases are planned frequently at least once per quarter including release notes.

Future Work

Work on the Use Cases mentioned in the description and build a comprehensive project within the Eclipse community.

Description

Eclipse openDuT automates the testing and validation process for automotive software and applications. This includes offering a framework for the testing and validation process but also includes process descriptions of the intended use.

It focuses on reliable, repeatable, and observable automated test and validation executions. The main building blocks are:

  • Model or description language of test cases that can be kept private or can be part of the open-source context, for example to offer a common implementation of a required topic for legal assessments.
  • Test Execution Engine as OSS reference implementation and open APIs to plug-In private engines for private Test Cases.
  • Test Management and Execution as component taking care about the needed capabilities to execute test cases and collect the results and insights.
  • Management Service to orchestrate, observe and establish communication between distributed Hardware ECUs and Emulated ECUs. Distribution means that the (virtual) devices can be in different networks and even separated by proxies and the internet.
  • Hardware Abstraction, Automotive Applications and Communication for uniform interaction with an abstract driver for different automotive networks e.g., CAN.

Main Use Cases are:

  • (Fully automated) grey-box tests for single ECUs or clusters of ECUs
  • Execution of tests over distributed test benches
  • Realization of functional and explorative tests
  • Coverage of Complete Security attack scenarios
  • Easy interfacing and usability of the framework (Compatibility with external protocols, modularization, …)
  • Observation of the test setup to verify if the test has been effective.
  • Cloud/on-premises/hybrid deployments
  • Adaption and full functional integration of 3rd party components (OSS, proprietary/ private source)
Interested Parties
  • Companies: Mercedes-Benz AG, Mercedes-Benz Tech Innovation, Volkswagen AG, CARIAD, Bosch, ETAS GmbH, AVL List GmbH, IAV GmbH
  • Eclipse: Eclipse SDV Working Group Projects and MaturityProcess of the SDV Working Group
Initial Contribution

Initial contribution planned for Q3/2023

  • Management Service and Edge gateway to establish a distributed DuT-Network offering the Test Execution Engines comprehensive System under Tests. This Refers to Use Case” Execution of tests over distributed test benches “: We bring code to put several distributed DUTs into one Network. Therefore, our contribution offers possibilities to setup a network without commercial Software.
  • Contribution and integration of software code/ components to facilitate the test automation framework stack. Further, design and conceptual contributions focusing on framework architecture, test case design etc.

 

 

Source Repository Type