This disclosure relates to a system and method for testing a software application and data related to the software application of a vehicle. The disclosure further relates to a vehicle comprising the system for testing a software application and data related to the software application of a vehicle.
Assignment of software applications and software application-related data to vehicles can be complex due to a large range of vehicle variants. The high complexity of allocating software applications and software application-related data to a vehicle can lead to errors in the assignment of software applications and software application-related data. For example, if an incorrect software application and/or incorrect software application-related data is transmitted to a vehicle, errors in the operation of the vehicle and/or a failure of the vehicle may occur. From the prior art, methods are known for testing a logistical assignment of the software application and the software application-related data. However, content-related testing of the software application and/or software application-related data often does not take place, or not for all vehicle variants.
It would be advantageous therefore to efficiently improve testing of software applications and data related to the software application of a vehicle. In particular, it would be advantageous to efficiently prevent incorrect assignment of software applications and software application-related data to a vehicle.
According to a first aspect, the disclosure herein is characterized by a method for testing a software application and data related to a software application of a vehicle. The method can be a computer-implemented method. The method comprises receiving a first vehicle configuration. The first vehicle configuration can be part of a vehicle configuration. A part of a vehicle configuration may be, for example, a drive configuration and/or a control unit configuration of a vehicle. Alternatively, the first vehicle configuration can be an entire configuration of a vehicle. The first vehicle configuration preferably includes all the data of a vehicle, with which a vehicle can be built. In addition or alternatively, the method can receive all or part of all vehicle configurations of a vehicle type or of multiple vehicle types and apply the method iteratively to each of these vehicle configurations. For example, a vehicle type can be a model range and/or a vehicle type of a vehicle manufacturer.
The method comprises receiving a test parameter, the test parameter comprising a technical property of the first vehicle configuration. The test parameter can be defined by a user and received by the method. The technical property of the first vehicle configuration may be a technical property of the whole vehicle, a technical property of a (sub)component of the vehicle, and/or a technical property of a component of the vehicle.
The method further comprises specifying a setpoint value for the received test parameter and determining a first software identifier as a function of the first vehicle configuration. The method can determine the first software identifier depending on a predefined knowledge of relationships using the first vehicle configuration. The predefined knowledge of relationships can define dependencies for a vehicle configuration, in particular for the first vehicle configuration. For example, the relationship knowledge can specify dependencies of technical properties, configuration options, (sub)components, and/or components of the vehicle. By evaluating the dependencies of the relationship knowledge, the first software identifier can be determined.
The method comprises specifying the software application and the data related to the software application by means of the first software identifier. To specify the software application and the software application-related data, one or more databases can be queried by means of the first software identifier in order to specify the software application and the software application-related data. Further, the method can comprise determining an actual value for the received test parameter using the specified software application and/or the determined data related to the software application. The method tests whether the determined actual value of the received test parameter and the determined setpoint value of the received test parameter match, and provides a test result of the received test parameter for the software application and the data related to the software application of the vehicle as a function of the test of whether the determined actual value of the received test parameter and the determined setpoint value of the received test parameter match. In addition or alternatively, the method can test whether the determined actual value of the received test parameter is within a value range of and/or in a set of discrete values, which is defined as a function of the determined setpoint value of the received test parameter. In addition or alternatively, the method can test by means of logical, Boolean, and/or algebraic rules and/or a predefined analysis function whether the determined actual value of the received test parameter and the determined setpoint value of the received test parameter are correct.
Advantageously, the method can carry out content-related testing of the software application and the software application-related data by determining a setpoint value for a first vehicle configuration and comparing this setpoint value with the actual value of the software application and/or the software application-related data. The content of the test value can be tested not only for the first vehicle configuration, but for all vehicle configurations. Errors in the configuration of the software application and/or the software application-related data of a vehicle can thus be efficiently avoided.
According to an advantageous embodiment of the disclosure herein, the data related to the software application comprises calibration data and/or coding data of the software application. Calibration data can specify a non-modifiable configuration of the software application. Coding data can include a modifiable configuration of the software application.
According to a further, advantageous embodiment, the first vehicle configuration can comprise a unique identifier of a vehicle type, technical properties of the vehicle, and components of the vehicle, and/or the unique identifier of the vehicle type, the technical properties of the vehicle and the components of the vehicle can uniquely specify a first variant of the vehicle. In addition or alternatively, the first vehicle configuration can comprise one or more identifiers of components of the vehicle. In addition, the first vehicle configuration may comprise one or more identifiers of functions and/or function bundles of the vehicle.
According to a further, advantageous embodiment, the setpoint value for the received test parameter can be specified in a rule-based manner by means of predefined rules for the received test parameter. In addition or alternatively, the setpoint value for the received test parameter can be specified by means of logical expressions, functions, and/or by means of a value range. This allows the setpoint value of the test parameter to be determined efficiently.
According to a further, advantageous embodiment, the first software identifier can uniquely identify the software application and the data related to the software application of one or more components of the first vehicle configuration.
According to a further, advantageous embodiment, the determination of the first software identifier as a function of the first vehicle configuration can comprise terminating the testing of the software application and the vehicle data related to the software application if no first software identifier is determined or multiple, first software identifiers are determined, and providing a test result, wherein the test result indicates an error in determining the first software identifier. This allows an error in an assignment of the software application to the first vehicle configuration to be efficiently detected. The method can be terminated without content-related testing because no unique software application and/or no unique software application-related data can be determined.
According to a further, advantageous embodiment, the determination of the first software identifier as a function of the first vehicle configuration, if exactly one first software identifier is determined, can comprise specifying the software application and the data related to the software application, determining an actual value for the received test parameter using the specified software application and/or the specified data related to the software application, testing whether the determined actual value of the received test parameter and the determined setpoint value of the received test parameter match, and providing the test result of the received test parameter for the software application and the data related to the software application of the vehicle as a function of the test of whether the determined actual value of the received test parameter and the determined setpoint value of the received test parameter match. This allows an efficient content-related testing of the actual value of the software application and/or the actual value of the software application-related data with the determined setpoint value. The plausibility of the actual value can be efficiently checked.
According to a further, advantageous embodiment, specifying the software application and the software application-related data by means of the first software identifier can comprise virtually deploying the software application and the data related to the software application as a function of the first vehicle configuration. The virtual deployment can comprise simulating or emulating the software applications, including the software application-related data. In other words, the virtual deployment can comprise simulating or emulating a configuration of the software application using the software application-related data for the first vehicle configuration. Here, the same methods are preferably used as those used when deploying the software application and the software application-related data during a programming operation of the software application in production of the vehicle on the basis of the first vehicle configuration.
According to a further, advantageous embodiment, the virtual deployment of the software application and the software application-related data as a function of the first vehicle configuration can comprise evaluating a Boolean logic, which is linked to the software application and/or the data related to the software application, for specifying the software application and/or the data related to the software application. According to a further advantageous embodiment, the determination of the actual value for the received test parameter using the specified software application and/or the specified data related to the software application can comprise executing at least one function of the specified software application for calculating the actual value for the received test parameter. This allows the content of the actual value to be verified with the setpoint value efficiently.
According to a further aspect, the disclosure herein is characterized by a machine-readable medium for testing a software application and data related to the software application, wherein the machine-readable medium comprises instructions that, when executed on a computer, carry out the method described above.
According to a further aspect, the disclosure is characterized by a system for testing a software application and data related to the software application of a vehicle, wherein the system is designed to carry out the method described above.
Additional features of the disclosure arise from the claims, the figures and the description of the figures. All the features and feature combinations cited in the description above, and the features and feature combinations cited in the description of the FIGS. below and/or shown in the figures alone are applicable not only in the respective combination indicated, but also in other combinations or else in isolation.
In the following, an exemplary embodiment is described by reference to the attached drawings. This will reveal further details, preferred embodiments and extensions of the disclosure. Taken individually, in the figures, schematically in each case,
In detail,
Vehicles are often marketed in a wide variety of variants for different geographical regions. This can result in the software application and data related to the software application being created and tested for each variant and/or each geographic region. It is preferable to perform the verification each time the software application and data related to the software application are changed during the lifecycle of a vehicle.
The method 100 can receive a first vehicle configuration 102. The first vehicle configuration can be stored in a database and/or the first vehicle configuration can be dynamically generated and received by the method 100. As mentioned above, the method 100 can receive all possible vehicle configurations or part of all possible vehicle configurations and carry out the method for each vehicle configuration, for example, the first, second, third, . . . , n-th vehicle configuration.
Further, the method 100 can receive a test parameter 104, the test parameter comprising a technical property of the first vehicle configuration. Examples of the technical properties of the vehicle configuration can be: drive type, maximum speed, idle speed, power, sensor configuration, installation status of a vehicle component, configuration parameters of a vehicle component. Vehicle components can include sensors, engine control units, actuators, and/or any other mechanical or electromechanical components of the vehicle. Controllers are commonly used in vehicles or in association with vehicle testing. Controllers (which may also be referred to herein as “control units,” “processors” or “microprocessors”) include circuits (e.g., integrated circuits) that contain typical functionality of central processing units (CPU) and are configured to perform various calculations and analysis based on manufacturer programming. Examples of controllers used in vehicles include any of various Engine Control Units (ECNs) and commonly used by different manufacturers in modern automobiles. Examples of controllers used in association with vehicles include those used in vehicle test units that communicate with the ECN and may include sensors such as power meters. The test parameter received can correspond to a setpoint value of the vehicle from which a setpoint value of the software application and/or the data related to the software application is specified.
Furthermore, the method 100 can specify a setpoint value for the received test parameter 106. The specified setpoint value preferably corresponds to a setpoint value of the software application and/or the data related to the software application. For specifying 106 the setpoint value for the received test parameter, the method can evaluate predefined rules, in particular predefined test rules, for the received test parameter. For each test parameter, one or more test rules can be evaluated to specify the setpoint value of the software application and/or the data related to the software application.
The method 100 can determine a first software identifier as a function of the first vehicle configuration 108. The first software identifier is preferably unique. The first software identifier can be determined by evaluating relationship knowledge as a function of the first vehicle configuration. The relationship knowledge may include associations and/or rules between properties and/or parameters of the first vehicle configuration and/or components of the first vehicle configuration, which are evaluated for determining the first software identifier. By means of the first software identifier, the method 100 can specify 110 the software application and the software application-related data.
The method can determine 112 an actual value for the received test parameter using the specified software application and/or the specified data related to the software application. Furthermore, the method 100 can test 114 whether the determined actual value of the received test parameter and the specified setpoint value of the received test parameter match. Finally, the method 100 can provide a test result of the received test parameter for the software application and the data related to the software application of the vehicle as a function of the test 114 of whether the determined actual value of the received test parameter and the determined setpoint value of the received test parameter match.
In detail,
In detail,
In detail,
Advantageously, an automated, content-related test of the correctness of a software application and data related to the software application for a plurality of vehicle configurations can be carried out efficiently by the method. The automated, content-related test can efficiently prevent the deployment of a faulty software application and/or a faulty configuration of a software application with data related to the software application on a vehicle during the production of the vehicle or during an update of the vehicle software of the vehicle.
Number | Date | Country | Kind |
---|---|---|---|
10 2021 115 181.3 | Jun 2021 | DE | national |
The present application is the U.S. national phase of PCT Application PCT/EP2022/054846 filed on Feb. 25, 2022, which claims priority of German patent application No. 102021115181.3 filed on Jun. 11, 2021, the entire contents of which are incorporated herein by reference.
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/EP2022/054846 | 2/25/2022 | WO |