Target Device Operation Through Automated Software Variant Generation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The process of creating different versions of software applications, referred to as 'flavors', is tedious and inefficient due to the manual combination of functionalities, often resulting in insufficient performance and high costs, as the checked combinations of functionalities are limited.

Innovation Solution

A method using a generation environment (GE) and an execution environment (EE) to automatically generate software application variants by translating a Source Programming Language Input program into a Destination Programming Language model, allowing for the automatic generation and measurement of software applications based on user-defined conditions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If manual combination of functionalities is used to create software application variants, then human control over functionality selection is maintained, but the process becomes cost-intensive and inefficient with limited combinations tested

Engineering Contradiction:
Improvesoftware variant creation efficiencyVSAvoidmanual effort time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The system enables self-service automation where the software automatically generates multiple variants by combining functionalities based on user-defined criteria, eliminating the need for manual intervention in each variant creation process while maintaining quality control through automated measurement and evaluation

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system changes parameters by automatically varying functionality combinations according to user-defined observation variables and conditions, generating diverse software variants systematically rather than relying on manual parameter selection, thereby increasing both productivity and coverage of tested combinations

Inventive Principle:
Principle #35Parameter changes

2Reliability

If the number of functionality combinations to be tested is increased, then better software performance can be determined, but the complexity of the testing process increases

Engineering Contradiction:
Improvesoftware performance validationVSAvoidtesting process complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The testing process is segmented into distinct automated stages: variant generation based on user-defined criteria, execution of variants on target devices, automatic measurement of observation variables, and evaluation against fulfillment conditions. This segmentation manages complexity by breaking down the comprehensive testing task into systematic, automatable steps

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system implements feedback loops where measurement results from executed variants are automatically compared against fulfillment conditions, and this feedback drives the generation of subsequent variants. This automated feedback mechanism enables comprehensive testing of multiple combinations without proportionally increasing process complexity

Inventive Principle:
Principle #23Feedback

Data Source

PatentEP4645068A1Method for operating a target device
Publication Date: 2025.11.05 SIEMENS SRL
  • EP4645068A1 patent drawingFigure 1~2
  • EP4645068A1 patent drawingFigure 3~5
  • EP4645068A1 patent drawing

AI summary

A method for operating a target device (50, 70) being performed using a generation environment, GE (20), including a computer-implemented Generation Unit, GU, adapted to generate, using at least one Source Programming Language Input program, SL-In program (10), provided to the GE (20), a model in a Destination Programming Language, DL model (21), wherein the DL model (21) is an internal representation of the SL-In program (10), and a Measuring Unit, MU (22), adapted to compare an input value for at least one user-defined observation variable provided to the GE (20) with a corresponding value resulting from an operation of the target device (50, 70); and an execution environment, EE, for operating the target device (50, 70) with an SL program, the EE being communicatively coupled with the GE (20), is provided.