Conflict Analysis When products are configured using the
Configuration Engine
, any conflicts that occur are reported.To enable you to process these conflicts, the
Configuration Engine
can also analyze the conflict and provide you with the relevant results.
For more information about the integration and prerequisites of conflict analysis and the generation of proposed solutions, see Configuration Conflict .
The Configuration Engine can analyze a configuration conflict in different ways.The first method, known as syntactical analysis, focuses on explaining the conflict, while the second method, also known as semantic analysis, is aimed at solving the conflict.
During syntactical analysis, the characteristic values are found that conflict one another.These values may have been chosen by the user directly or be derived from other set values defined by dependencies.Background information (conflict justifications) can be drawn from the analysis to help you understand the conflict.
During semantic analysis, the characteristic values are found that were set by the user and caused the conflict.The quantities of these characteristic values can show you the set values from which at least one must be removed to resolve the configuration conflict or to take a step closer to resolving it.
The following example shows the different types of conflict analysis in an application.
For the detailed description of the computer on which the example is based, see Typical Product Model .
User selectsBusinessfor the characteristicNetwork Card
Dependency (set_Proc) sets the valueP400for the characteristicProcessor
Additional dependency (set_Mem_1) sets the valueSize 5for the characteristicMemory
User selectsGraphics Processingfor the characteristicApplication Software
Dependency (set_OpSys) sets the valueOperating System A1 for the characteristicOperating System
Additional dependency (set_Mem_2) then sets the value of the characteristicMemorytoSize 6
A conflict occurs for the characteristicMemory
Set value:Size 5
Set value:Size 6
The characteristicMemoryis identified as the source of the conflict.However, the user did not set a value for this characteristic – the value was set by dependencies.
Syntactic analysis searches for the dependencies involved in the conflict (set_Mem_1andset_Mem_2) and displays the explanations maintained for these dependencies:
set_Mem_1: The P400 processor is compatible with a size 5 memory only.
set_Mem_2: The A1 operating system is compatible with a size 6 memory only.
However, to locate the origin of the conflict in the dependencies (set_OpSysandset_Proc), you have to trace back further.
set_Proc: The business network card is shipped in connection with the P400 processor only.
set_OpSys: The graphics software requires the A1 operating system.
Since semantic analysis searches for the user entries that cause the conflict, the user can be prompted in this case to deselect either theApplication Softwareor theNetwork Cardto avoid the conflict.
The system may not be able to provide or find all explanations required to understand the conflict. For example, tracing usually ends after the first level.
Depending on the size and complexity of the product model, the result of the analysis may be incomplete with regard to the list of values that the user would have had to reset in order to resolve the conflict.
Conflict analysis for an extensive and complex product model can also affect system performance.