diff --git a/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/.ratings b/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/.ratings
index 4e10012110a8f965b6c028198bbe6079e0edd62f..6153982ad665d4abf76086c16a8fc044a89c0a46 100644
--- a/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/.ratings
+++ b/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/.ratings
@@ -3,4 +3,4 @@ DSEFactory.java 1ae5fecb636a1a3eb8520d7906ad664828f22fe7 RED
 Explorer.java 91cdb26b6f42e4e5e82a26f7dbd9141ec2ff7b18 RED
 ImplicitExplorationTargetFactory.java 25c3c668ed268843f8af7e37eb03370ed513b482 RED
 SolutionQuantification.java 19cd7caa721bbca3112af7825c7fb20a96a4a799 RED
-TaskMappingFactory.java 47e6b1cd8e26a4a5e775beddff030dcf5df2e33d RED
+TaskMappingFactory.java 0f366d92885dcd1078f9746c6dc3270df649f43f RED
diff --git a/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/DSEFactory.java b/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/DSEFactory.java
index 1ae5fecb636a1a3eb8520d7906ad664828f22fe7..2f0d4e71990b0b904039580817afa733ac6a345b 100644
--- a/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/DSEFactory.java
+++ b/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/DSEFactory.java
@@ -274,10 +274,9 @@ public class DSEFactory {
 					DseSpecification dse, DecoderDependencyGraph execDepGraph) throws Exception {
 		Class<AbstractTaskMappingEncoding> tmEnodingClass = AbstractTaskMappingEncoding.class;
 		AbstractTaskMappingCreator tmCreator =
-				tmFactory.createAbstractTaskMappingCreator(dse, execDepGraph);
+				tmFactory.createAbstractTaskMappingCreator(execDepGraph);
 		@SuppressWarnings("rawtypes") List<ComposableDecoder> abstrTaskDecoders = new ArrayList<>();
-		AbstractTaskMappingDecoder<?, ?> atmDecoder =
-				tmFactory.createAbstractTaskMappingDecoder(dse);
+		AbstractTaskMappingDecoder<?, ?> atmDecoder = tmFactory.createAbstractTaskMappingDecoder();
 		AbstractTaskMappingIdentityDecoder idtDecoder = new AbstractTaskMappingIdentityDecoder();
 		abstrTaskDecoders.add(atmDecoder);
 		abstrTaskDecoders.add(idtDecoder);
@@ -322,7 +321,7 @@ public class DSEFactory {
 				tmFactory.createAbstractToAcyclicTaskGraphDecoder();
 		@SuppressWarnings("rawtypes") MessageDecoder msgDecoder = tmFactory.createMessageDecoder();
 		@SuppressWarnings("rawtypes") TaskMappingCreator tmCreator =
-				tmFactory.createTaskMappingCreator(dse, execDepGraph);
+				tmFactory.createTaskMappingCreator(execDepGraph);
 		@SuppressWarnings("rawtypes") List<ComposableDecoder> instTaskDecoders = new ArrayList<>();
 		instTaskDecoders.add(tgDecoder);
 		instTaskDecoders.add(acycTgDecoder);
diff --git a/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/TaskMappingFactory.java b/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/TaskMappingFactory.java
index 47e6b1cd8e26a4a5e775beddff030dcf5df2e33d..0f366d92885dcd1078f9746c6dc3270df649f43f 100644
--- a/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/TaskMappingFactory.java
+++ b/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/TaskMappingFactory.java
@@ -103,23 +103,20 @@ public abstract class TaskMappingFactory<S extends InstantiatedTaskMappingEntry,
 	 *            Dependency graph defining the execution order.
 	 * @return instance of an {@link AbstractTaskMappingCreator}.
 	 */
-	public AbstractTaskMappingCreator createAbstractTaskMappingCreator(DseSpecification dse,
+	public AbstractTaskMappingCreator createAbstractTaskMappingCreator(
 			DecoderDependencyGraph execDepGraph) {
-		return new AbstractTaskMappingCreator(dse, execDepGraph);
+		return new AbstractTaskMappingCreator(execDepGraph);
 	}
 
 	/**
 	 * Creates a TaskMappingCreator that matches the given execution model.
 	 * 
-	 * @param dse
-	 *            design space exploration model defined in the GUI
 	 * @param execDepGraph
 	 *            Dependency graph defining the execution order.
 	 * @return instance of a {@link TaskMappingCreator}.
 	 */
 	// TODO: document execDepGraph param.
-	public TaskMappingCreator<S, T> createTaskMappingCreator(DseSpecification dse,
-			DecoderDependencyGraph execDepGraph) {
+	public TaskMappingCreator<S, T> createTaskMappingCreator(DecoderDependencyGraph execDepGraph) {
 		throw new UnsupportedOperationException(SCHED_NOT_IMPL_MSG);
 	}
 
@@ -127,15 +124,13 @@ public abstract class TaskMappingFactory<S extends InstantiatedTaskMappingEntry,
 	 * Creates a TaskMappingCreator that uses an {@link AbstractTaskMappingEncoding} to generate a
 	 * Tank Mapping that consists only of tasks instances.
 	 * 
-	 * @param dse
-	 *            design space exploration model defined in the GUI
 	 * @param abstractEnc
 	 *            encoding that may contain abstract task which need to be instantiated.
 	 * @return instance of a {@link TaskMappingCreator}.
 	 */
 	// TODO: update doc
-	public TaskMappingCreator<S, T> createTaskMappingCreator(DseSpecification dse,
-			AbstractTaskMappingEncoding abstractEnc) {
+	public TaskMappingCreator<S, T>
+			createTaskMappingCreator(AbstractTaskMappingEncoding abstractEnc) {
 		throw new UnsupportedOperationException(SCHED_NOT_IMPL_MSG);
 	}
 
@@ -160,8 +155,8 @@ public abstract class TaskMappingFactory<S extends InstantiatedTaskMappingEntry,
 	 *            {@link ITaskAdapter} that shall be allocated to {@link IRequestAdapter}s.
 	 * @return Mutation operator that decreases the redundant instances of tasks.
 	 */
-	public MutateRedundancyDecrement<?, ?>
-			createMutateRedundancyDecrementOperator(Collection<ITaskAdapter<?>> tasks) {
+	public MutateRedundancyDecrement<?, ?> createMutateRedundancyDecrementOperator(
+			Collection<ITaskAdapter<?>> tasks) {
 		throw new UnsupportedOperationException(SCHED_NOT_IMPL_MSG);
 	}
 
@@ -172,8 +167,8 @@ public abstract class TaskMappingFactory<S extends InstantiatedTaskMappingEntry,
 	 *            {@link ITaskAdapter} that shall be allocated to {@link IRequestAdapter}s.
 	 * @return Mutation operator that increases the redundant instances of tasks.
 	 */
-	public MutateRedundancyIncrement<?, ?>
-			createMutateRedundancyIncrementOperator(Collection<ITaskAdapter<?>> tasks) {
+	public MutateRedundancyIncrement<?, ?> createMutateRedundancyIncrementOperator(
+			Collection<ITaskAdapter<?>> tasks) {
 		throw new UnsupportedOperationException(SCHED_NOT_IMPL_MSG);
 	}
 
@@ -185,8 +180,7 @@ public abstract class TaskMappingFactory<S extends InstantiatedTaskMappingEntry,
 	 * @return Crossover operator that swaps randomly many allocations from one resource with
 	 *         another.
 	 */
-	public CrossoverRandManyAllocation<?, ?>
-			createCrossoverRandManyAllocationOperator(double rate) {
+	public CrossoverRandManyAllocation<?, ?> createCrossoverRandManyAllocationOperator(double rate) {
 		throw new UnsupportedOperationException(SCHED_NOT_IMPL_MSG);
 	}
 
@@ -213,8 +207,7 @@ public abstract class TaskMappingFactory<S extends InstantiatedTaskMappingEntry,
 	 *            the decoding strategy
 	 * @return instance of an {@link AbstractTaskMappingDecoder}.
 	 */
-	public AbstractTaskMappingDecoder<?, ?>
-			createAbstractTaskMappingDecoder(DseSpecification explorationDefinition) {
+	public AbstractTaskMappingDecoder<?, ?> createAbstractTaskMappingDecoder() {
 		throw new UnsupportedOperationException(
 				"The Decoder to instantiate an \"abstract\" Task Mapping has not been defined for current Execution Model.");
 	}
@@ -301,8 +294,9 @@ public abstract class TaskMappingFactory<S extends InstantiatedTaskMappingEntry,
 			createEvaluatorWrapper(ExplorationTarget<?> goal, int priority,
 					SystemModelAdapter<?, ?, ?, ?, ?, ?, ?> systemModelAdapter) throws Exception {
 		ExplorationEvaluationService<?> evalService = ExplorationEvaluationService.getInstance();
-		EvaluatorWrapper<?, RT, ET> evaluatorWrapper = (EvaluatorWrapper<?, RT, ET>)evalService
-				.createEvalWrapperFor(systemModelAdapter, goal);
+		EvaluatorWrapper<?, RT, ET> evaluatorWrapper =
+				(EvaluatorWrapper<?, RT, ET>)evalService.createEvalWrapperFor(systemModelAdapter,
+						goal);
 
 		// TODO: remove the block below when all evaluators are migrated to the service interface.
 		if(evaluatorWrapper == null) {
@@ -316,11 +310,12 @@ public abstract class TaskMappingFactory<S extends InstantiatedTaskMappingEntry,
 			/* Then, the constraints are handled */
 			else if(goal instanceof DeadlineConstraint) {
 				evaluatorWrapper =
-						(EvaluatorWrapper<?, RT, ET>)createDeadlineConstraintWrapper(goal, priority,
-								systemModelAdapter);
+						(EvaluatorWrapper<?, RT, ET>)createDeadlineConstraintWrapper(goal,
+								priority, systemModelAdapter);
 			} else if(goal instanceof PeriodConstraint) {
-				evaluatorWrapper = (EvaluatorWrapper<?, RT, ET>)createPeriodConstraintWrapper(goal,
-						priority, systemModelAdapter);
+				evaluatorWrapper =
+						(EvaluatorWrapper<?, RT, ET>)createPeriodConstraintWrapper(goal, priority,
+								systemModelAdapter);
 			} else if(goal instanceof ComponentMultiAllocationConstraint) {
 				evaluatorWrapper =
 						(EvaluatorWrapper<?, RT, ET>)createComponentMultiAllocationConstraintWrapper(
@@ -358,8 +353,8 @@ public abstract class TaskMappingFactory<S extends InstantiatedTaskMappingEntry,
 	 *             if the input model validation fails.
 	 */
 	protected <RT, ET extends ExplorationTarget<RT>>
-			EvaluatorWrapper<?, Double, FailureMinObjective>
-			createFailureMinObjectiveWrapper(ExplorationTarget<?> optGoal, int priority,
+			EvaluatorWrapper<?, Double, FailureMinObjective> createFailureMinObjectiveWrapper(
+					ExplorationTarget<?> optGoal, int priority,
 					SystemModelAdapter<?, ?, ?, ?, ?, ?, ?> systemModelAdapter) throws Exception {
 		throw new UnsupportedOperationException(GOAL_NOT_IMPL_MSG);
 	}
@@ -378,8 +373,9 @@ public abstract class TaskMappingFactory<S extends InstantiatedTaskMappingEntry,
 	 * @throws Exception
 	 *             if the input model validation fails.
 	 */
-	protected <RT, ET extends ExplorationTarget<RT>> EvaluatorWrapper<?, Double, DeadlineConstraint>
-			createDeadlineConstraintWrapper(ExplorationTarget<?> optGoal, int priority,
+	protected <RT, ET extends ExplorationTarget<RT>>
+			EvaluatorWrapper<?, Double, DeadlineConstraint> createDeadlineConstraintWrapper(
+					ExplorationTarget<?> optGoal, int priority,
 					SystemModelAdapter<?, ?, ?, ?, ?, ?, ?> systemModelAdapter) throws Exception {
 		throw new UnsupportedOperationException(GOAL_NOT_IMPL_MSG);
 	}
diff --git a/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/backend/opt4j/create/taskmapping/.ratings b/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/backend/opt4j/create/taskmapping/.ratings
index 0003728dc4c302d3363ac688a0faf8b770aa2811..83b12ee2b757da8883c88152d8f30b585cffef6d 100644
--- a/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/backend/opt4j/create/taskmapping/.ratings
+++ b/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/backend/opt4j/create/taskmapping/.ratings
@@ -1,4 +1,4 @@
-AbstractTaskMappingCreator.java 813a927b1b10b29e7707f4207901d3e0a3529b43 RED
-FailSilentTaskMappingCreator.java 7375dc0d4c424606672e0fd88a2f97bf2f0c58ea RED
-FaultDetectionVotingTaskMappingCreator.java 0b8ce4eb8f73d3fa0fa1d3ef0d4ffec2e2be253e RED
-TaskMappingCreator.java 1b09ee1d49cd4a8424d922fa605463f810063c78 RED
+AbstractTaskMappingCreator.java a83a8ec0a92b1ba5445cda875864e4213c22e8ef RED
+FailSilentTaskMappingCreator.java 26ad97acfca346207818684919f8d9eee68fca71 RED
+FaultDetectionVotingTaskMappingCreator.java 1c66a63552fa766d3763c1a4daf34c8d03b4b3a1 RED
+TaskMappingCreator.java da026f6e18b7220ccc1acb2ecb640d7ffcd488ea RED
diff --git a/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/backend/opt4j/create/taskmapping/AbstractTaskMappingCreator.java b/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/backend/opt4j/create/taskmapping/AbstractTaskMappingCreator.java
index 813a927b1b10b29e7707f4207901d3e0a3529b43..a83a8ec0a92b1ba5445cda875864e4213c22e8ef 100644
--- a/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/backend/opt4j/create/taskmapping/AbstractTaskMappingCreator.java
+++ b/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/backend/opt4j/create/taskmapping/AbstractTaskMappingCreator.java
@@ -26,7 +26,6 @@ import org.fortiss.af3.exploration.alg.dse.backend.opt4j.extensions.compositegen
 import org.fortiss.af3.exploration.alg.dse.sysmodel.arch.ITaskAdapter;
 import org.fortiss.af3.exploration.alg.exception.ExplorationException;
 import org.fortiss.af3.exploration.alg.service.IExplorationEncoding;
-import org.fortiss.af3.exploration.moea.model.DseSpecification;
 import org.opt4j.core.Genotype;
 import org.opt4j.core.problem.Creator;
 
@@ -38,21 +37,20 @@ import com.google.inject.Inject;
  * 
  * @author diewald
  */
-public class AbstractTaskMappingCreator
-		extends TaskMappingCreator<AbstractTaskMappingEntry, AbstractTaskMappingEncoding> {
+public class AbstractTaskMappingCreator extends
+		TaskMappingCreator<AbstractTaskMappingEntry, AbstractTaskMappingEncoding> {
 
 	/** Constructor */
 	@Inject
-	public AbstractTaskMappingCreator(DseSpecification dse, DecoderDependencyGraph execDepGraph) {
-		super(dse, execDepGraph);
+	public AbstractTaskMappingCreator(DecoderDependencyGraph execDepGraph) {
+		super(execDepGraph);
 	}
 
 	/**
 	 * {@inheritDoc}
 	 * 
 	 * @throws ExplorationException
-	 *             if no valid allocation targets can be identified for one
-	 *             {@link ITaskAdapter}.
+	 *             if no valid allocation targets can be identified for one {@link ITaskAdapter}.
 	 */
 	@Override
 	public AbstractTaskMappingEncoding createComposable(FlatGenotypeMap createdGenotypes,
@@ -66,7 +64,7 @@ public class AbstractTaskMappingCreator
 				createdGenotypes.get(AbstractTaskMappingEncoding.class);
 		PartitionMappingEncoding partEnc = createdGenotypes.get(PartitionMappingEncoding.class);
 		assert (partEnc != null) : "The required partition mapping encoding could not be found in the map of already decoded phenotypes.";
-		return new AbstractTaskMappingEncoding(dse, partEnc, atgEnc, atmEnc);
+		return new AbstractTaskMappingEncoding(partEnc, atgEnc, atmEnc);
 	}
 
 	/** {@inheritDoc} */
diff --git a/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/backend/opt4j/create/taskmapping/FailSilentTaskMappingCreator.java b/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/backend/opt4j/create/taskmapping/FailSilentTaskMappingCreator.java
index 7375dc0d4c424606672e0fd88a2f97bf2f0c58ea..26ad97acfca346207818684919f8d9eee68fca71 100644
--- a/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/backend/opt4j/create/taskmapping/FailSilentTaskMappingCreator.java
+++ b/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/backend/opt4j/create/taskmapping/FailSilentTaskMappingCreator.java
@@ -26,7 +26,6 @@ import org.fortiss.af3.exploration.alg.dse.backend.opt4j.extensions.compositegen
 import org.fortiss.af3.exploration.alg.dse.backend.opt4j.extensions.compositegene.phenotype.FlatPhenotypeMap;
 import org.fortiss.af3.exploration.alg.dse.backend.opt4j.extensions.compositegene.phenotype.Phenotype;
 import org.fortiss.af3.exploration.alg.service.IExplorationEncoding;
-import org.fortiss.af3.exploration.moea.model.DseSpecification;
 
 import com.google.inject.Inject;
 
@@ -35,16 +34,16 @@ import com.google.inject.Inject;
  * 
  * @author diewald
  */
-public class FailSilentTaskMappingCreator
-		extends TaskMappingCreator<FailSilentTaskMappingEntry, FailSilentTaskMappingEncoding> {
+public class FailSilentTaskMappingCreator extends
+		TaskMappingCreator<FailSilentTaskMappingEntry, FailSilentTaskMappingEncoding> {
 
 	/**
 	 * Constructs a task mapping creator for a given DSE specification and input model
 	 * (execution model = fail-silent)
 	 */
 	@Inject
-	public FailSilentTaskMappingCreator(DseSpecification dse, DecoderDependencyGraph execDepGraph) {
-		super(dse, execDepGraph);
+	public FailSilentTaskMappingCreator(DecoderDependencyGraph execDepGraph) {
+		super(execDepGraph);
 	}
 
 	/** {@inheritDoc} */
@@ -59,7 +58,7 @@ public class FailSilentTaskMappingCreator
 		assert (atmEnc != null) : "The required abstract task mapping encoding could not be found in the map of already decoded phenotypes.";
 		PartitionMappingEncoding partEnc = createdGenotypes.get(PartitionMappingEncoding.class);
 		assert (partEnc != null) : "The required partition mapping encoding could not be found in the map of already decoded phenotypes.";
-		return new FailSilentTaskMappingEncoding(dse, partEnc, atgEnc, atmEnc);
+		return new FailSilentTaskMappingEncoding(partEnc, atgEnc, atmEnc);
 	}
 
 	// TODO: remove this method: use the identifier from the encoding, instead.
diff --git a/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/backend/opt4j/create/taskmapping/FaultDetectionVotingTaskMappingCreator.java b/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/backend/opt4j/create/taskmapping/FaultDetectionVotingTaskMappingCreator.java
index 0b8ce4eb8f73d3fa0fa1d3ef0d4ffec2e2be253e..1c66a63552fa766d3763c1a4daf34c8d03b4b3a1 100644
--- a/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/backend/opt4j/create/taskmapping/FaultDetectionVotingTaskMappingCreator.java
+++ b/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/backend/opt4j/create/taskmapping/FaultDetectionVotingTaskMappingCreator.java
@@ -26,7 +26,6 @@ import org.fortiss.af3.exploration.alg.dse.backend.opt4j.extensions.compositegen
 import org.fortiss.af3.exploration.alg.dse.backend.opt4j.extensions.compositegene.phenotype.FlatPhenotypeMap;
 import org.fortiss.af3.exploration.alg.dse.backend.opt4j.extensions.compositegene.phenotype.Phenotype;
 import org.fortiss.af3.exploration.alg.service.IExplorationEncoding;
-import org.fortiss.af3.exploration.moea.model.DseSpecification;
 
 import com.google.inject.Inject;
 
@@ -35,7 +34,8 @@ import com.google.inject.Inject;
  * 
  * @author diewald
  */
-public class FaultDetectionVotingTaskMappingCreator extends
+public class FaultDetectionVotingTaskMappingCreator
+		extends
 		TaskMappingCreator<FaultDetectionVotingTaskMappingEntry, FaultDetectionVotingTaskMappingEncoding> {
 
 	/**
@@ -43,9 +43,8 @@ public class FaultDetectionVotingTaskMappingCreator extends
 	 * (execution model = fault-detection and voting)
 	 */
 	@Inject
-	public FaultDetectionVotingTaskMappingCreator(DseSpecification dse,
-			DecoderDependencyGraph execDepGraph) {
-		super(dse, execDepGraph);
+	public FaultDetectionVotingTaskMappingCreator(DecoderDependencyGraph execDepGraph) {
+		super(execDepGraph);
 	}
 
 	/** {@inheritDoc} */
@@ -60,7 +59,7 @@ public class FaultDetectionVotingTaskMappingCreator extends
 		assert (atmEnc != null) : "The required abstract task mapping encoding could not be found in the map of already decoded phenotypes.";
 		PartitionMappingEncoding partEnc = createdGenotypes.get(PartitionMappingEncoding.class);
 		assert (partEnc != null) : "The required partition mapping encoding could not be found in the map of already decoded phenotypes.";
-		return new FaultDetectionVotingTaskMappingEncoding(dse, partEnc, atgEnc, atmEnc);
+		return new FaultDetectionVotingTaskMappingEncoding(partEnc, atgEnc, atmEnc);
 	}
 
 	/** {@inheritDoc} */
diff --git a/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/backend/opt4j/create/taskmapping/TaskMappingCreator.java b/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/backend/opt4j/create/taskmapping/TaskMappingCreator.java
index 1b09ee1d49cd4a8424d922fa605463f810063c78..da026f6e18b7220ccc1acb2ecb640d7ffcd488ea 100644
--- a/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/backend/opt4j/create/taskmapping/TaskMappingCreator.java
+++ b/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/backend/opt4j/create/taskmapping/TaskMappingCreator.java
@@ -21,7 +21,6 @@ import org.fortiss.af3.exploration.alg.dse.backend.opt4j.encoding.taskmapping.Ta
 import org.fortiss.af3.exploration.alg.dse.backend.opt4j.extensions.compositegene.create.ComposableCreatorBase;
 import org.fortiss.af3.exploration.alg.dse.backend.opt4j.extensions.compositegene.graph.DecoderDependencyGraph;
 import org.fortiss.af3.exploration.alg.dse.sysmodel.arch.ITaskAdapter;
-import org.fortiss.af3.exploration.moea.model.DseSpecification;
 import org.opt4j.core.Genotype;
 import org.opt4j.core.problem.Creator;
 
@@ -36,13 +35,9 @@ import com.google.inject.Inject;
 public abstract class TaskMappingCreator<S extends TaskMappingEntry<ITaskAdapter<?>, Partition>, T extends TaskMappingEncoding<ITaskAdapter<?>, S>>
 		extends ComposableCreatorBase<T> {
 
-	/** DSE specification. */
-	protected DseSpecification dse;
-
 	/** Constructor. */
 	@Inject
-	public TaskMappingCreator(DseSpecification dse, DecoderDependencyGraph execDepGraph) {
+	public TaskMappingCreator(DecoderDependencyGraph execDepGraph) {
 		super(execDepGraph);
-		this.dse = dse;
 	}
 }
diff --git a/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/backend/opt4j/encoding/taskmapping/.ratings b/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/backend/opt4j/encoding/taskmapping/.ratings
index c7152a3e0c6f4edda49686506e7a13c5477365bf..f05c8e7c5ddf642fd64df0efb2fa4ba6fac627e0 100644
--- a/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/backend/opt4j/encoding/taskmapping/.ratings
+++ b/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/backend/opt4j/encoding/taskmapping/.ratings
@@ -1,2 +1,2 @@
-TaskMappingEncoding.java 49480f278fb9d8c40710ef8b8fc574b325c62a54 RED
+TaskMappingEncoding.java f5d0f55f893f7d5583ff5c12840d5fb4c9add5a9 RED
 TaskMappingEntry.java 407c9065007f8cd4adc8b64eea13a837bba581ae RED
diff --git a/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/backend/opt4j/encoding/taskmapping/TaskMappingEncoding.java b/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/backend/opt4j/encoding/taskmapping/TaskMappingEncoding.java
index 49480f278fb9d8c40710ef8b8fc574b325c62a54..f5d0f55f893f7d5583ff5c12840d5fb4c9add5a9 100644
--- a/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/backend/opt4j/encoding/taskmapping/TaskMappingEncoding.java
+++ b/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/backend/opt4j/encoding/taskmapping/TaskMappingEncoding.java
@@ -16,8 +16,6 @@
 
 package org.fortiss.af3.exploration.alg.dse.backend.opt4j.encoding.taskmapping;
 
-import static org.fortiss.tooling.kernel.utils.EcoreUtils.getChildrenWithType;
-
 import java.util.ArrayList;
 import java.util.Collection;
 import java.util.Collections;
@@ -25,8 +23,6 @@ import java.util.HashSet;
 import java.util.List;
 import java.util.Map;
 import java.util.Map.Entry;
-import java.util.Optional;
-import java.util.stream.Collectors;
 
 import org.fortiss.af3.exploration.alg.dse.backend.opt4j.encoding.ArchExpSubEncoding;
 import org.fortiss.af3.exploration.alg.dse.backend.opt4j.encoding.MappingEncoding;
@@ -48,7 +44,6 @@ import org.fortiss.af3.exploration.alg.dse.sysmodel.random.RandomExploration;
 import org.fortiss.af3.exploration.alg.exception.ExplorationException;
 import org.fortiss.af3.exploration.alg.service.IExplorationEncoding;
 import org.fortiss.af3.exploration.model.ExplorationConstraint;
-import org.fortiss.af3.exploration.moea.model.DseSpecification;
 import org.fortiss.af3.exploration.moea.model.predefined.ComponentMultiAllocationConstraint;
 import org.fortiss.af3.exploration.moea.model.predefined.ComponentMultiDislocationConstraint;
 import org.fortiss.tooling.common.util.LambdaUtils;
@@ -64,33 +59,28 @@ import com.google.common.collect.Multimap;
 // TODO: The CompositePhenotype is not typed correctly: An additional Type parameter would be needed
 // for the subclass of TaskMappingEncoding and passed to the CompositePhenotype.
 public abstract class TaskMappingEncoding<S extends ITaskAdapter<?>, T extends TaskMappingEntry<S, Partition>>
-		extends MappingEncoding<TaskMappingEncoding<S, T>, S, Partition, T>
-		implements IMappingEncoding<S, Partition, T>, ComposableGenotype, ArchExpSubEncoding,
+		extends MappingEncoding<TaskMappingEncoding<S, T>, S, Partition, T> implements
+		IMappingEncoding<S, Partition, T>, ComposableGenotype, ArchExpSubEncoding,
 		IExplorationEncoding, ConstrainedEncoding, Cloneable {
 	/** Random generator */
 	private RandomExploration rand = RandomExploration.getInstance();
 
-	/** DSE specification */
-	protected DseSpecification dse;
-
 	/** Map holding the DSE-internal constraints. */
 	protected Multimap<Class<? extends ExplorationConstraint<?>>, ExplorationConstraint<?>> constraintMap =
 			HashMultimap.create();
 
 	/** Stores the references between {@link IMappingEntry} to keep track of association updates. */
-	protected Multimap<IMappingEntry<?, ?>, IMappingEntry<?, ?>> referencedByMap =
-			HashMultimap.create();
+	protected Multimap<IMappingEntry<?, ?>, IMappingEntry<?, ?>> referencedByMap = HashMultimap
+			.create();
 
 	/**
-	 * Map of disallowed {@link ITaskAdapter} -> {@link IExecutionUnitAdapter}
-	 * allocations.
+	 * Map of disallowed {@link ITaskAdapter} -> {@link IExecutionUnitAdapter} allocations.
 	 */
 	// TODO: Move to a central place, but where?
 	protected Multimap<ITaskAdapter<?>, IExecutionUnitAdapter<?>> disallowedAllocations;
 
 	/**
-	 * Map of disallowed {@link ITaskAdapter} -> {@link IExecutionUnitAdapter}
-	 * allocations.
+	 * Map of disallowed {@link ITaskAdapter} -> {@link IExecutionUnitAdapter} allocations.
 	 */
 	// TODO: Move to a central place, but where?
 	protected Multimap<ITaskAdapter<?>, IExecutionUnitAdapter<?>> allowedAllocations;
@@ -99,8 +89,7 @@ public abstract class TaskMappingEncoding<S extends ITaskAdapter<?>, T extends T
 	protected Collection<ITaskAdapter<?>> fixAllocatedComponents;
 
 	/**
-	 * Collection of deployable {@link ITaskAdapter}s represented by {@code this}
-	 * mapping.
+	 * Collection of deployable {@link ITaskAdapter}s represented by {@code this} mapping.
 	 */
 	protected Collection<S> tasks;
 
@@ -121,9 +110,8 @@ public abstract class TaskMappingEncoding<S extends ITaskAdapter<?>, T extends T
 	 * system.
 	 */
 	@SuppressWarnings("unchecked")
-	public TaskMappingEncoding(DseSpecification dse, PartitionMappingEncoding partMappingEncoding,
+	public TaskMappingEncoding(PartitionMappingEncoding partMappingEncoding,
 			TaskGraphEncoding<?, ?, ?> tgEncoding) {
-		this.dse = dse;
 		this.tgEncoding = tgEncoding;
 		this.partMappingEncoding = partMappingEncoding;
 		this.tasks = (Collection<S>)tgEncoding.getTasks();
@@ -138,12 +126,11 @@ public abstract class TaskMappingEncoding<S extends ITaskAdapter<?>, T extends T
 	 * Constructor that optionally initializes the encoding to a random encoding
 	 * 
 	 * @throws ExplorationException
-	 *             if no valid allocation targets can be identified for one
-	 *             {@link ITaskAdapter}.
+	 *             if no valid allocation targets can be identified for one {@link ITaskAdapter}.
 	 */
-	public TaskMappingEncoding(DseSpecification dse, PartitionMappingEncoding partMappingEncoding,
+	public TaskMappingEncoding(PartitionMappingEncoding partMappingEncoding,
 			TaskGraphEncoding<?, ?, ?> tgEncoding, boolean initialize) throws ExplorationException {
-		this(dse, partMappingEncoding, tgEncoding);
+		this(partMappingEncoding, tgEncoding);
 		if(initialize) {
 			resetEncoding();
 		}
@@ -153,14 +140,12 @@ public abstract class TaskMappingEncoding<S extends ITaskAdapter<?>, T extends T
 	 * Constructor that optionally initializes the encoding to a random encoding
 	 * 
 	 * @throws ExplorationException
-	 *             if no valid allocation targets can be identified for one
-	 *             {@link ITaskAdapter}.
+	 *             if no valid allocation targets can be identified for one {@link ITaskAdapter}.
 	 */
-	public TaskMappingEncoding(DseSpecification dse, PartitionMappingEncoding partMappingEncoding,
+	public TaskMappingEncoding(PartitionMappingEncoding partMappingEncoding,
 			TaskGraphEncoding<?, ?, ?> tgEncoding,
-			TaskMappingEncoding<ITaskAdapter<?>, ?> incompleteEncoding)
-			throws ExplorationException {
-		this(dse, partMappingEncoding, tgEncoding);
+			TaskMappingEncoding<ITaskAdapter<?>, ?> incompleteEncoding) throws ExplorationException {
+		this(partMappingEncoding, tgEncoding);
 		completeEncoding(incompleteEncoding);
 	}
 
@@ -197,17 +182,18 @@ public abstract class TaskMappingEncoding<S extends ITaskAdapter<?>, T extends T
 	// components (-> marker) to not be processed by subsequent operators.
 	private Collection<ITaskAdapter<?>> createFixAllocationCollection() {
 		Collection<ITaskAdapter<?>> fixAllocatedComponents = new HashSet<>();
-		for(ITaskAdapter<?> compAdp : tasks) {
-			Optional<ComponentMultiDislocationConstraint> constr =
-					dse.getTargetSpecification().getTargets().stream()
-							.filter(c -> (c instanceof ComponentMultiDislocationConstraint))
-							.map(ComponentMultiDislocationConstraint.class::cast)
-							.filter(c -> c.getComponent() == compAdp.getObject()).findAny();
-			// if(constr.isPresent()) {
-			// fixAllocatedComponents.add(
-			// systemModelAdapter.getDeployableComponentOf(constr.get().getComponent()));
-			// }
-		}
+		// TODO: DEC_CONSTR
+		// for(ITaskAdapter<?> compAdp : tasks) {
+		// Optional<ComponentMultiDislocationConstraint> constr =
+		// dse.getTargetSpecification().getTargets().stream()
+		// .filter(c -> (c instanceof ComponentMultiDislocationConstraint))
+		// .map(ComponentMultiDislocationConstraint.class::cast)
+		// .filter(c -> c.getComponent() == compAdp.getObject()).findAny();
+		// // if(constr.isPresent()) {
+		// // fixAllocatedComponents.add(
+		// // systemModelAdapter.getDeployableComponentOf(constr.get().getComponent()));
+		// // }
+		// }
 		return fixAllocatedComponents;
 	}
 
@@ -262,8 +248,8 @@ public abstract class TaskMappingEncoding<S extends ITaskAdapter<?>, T extends T
 	private Multimap<ITaskAdapter<?>, IExecutionUnitAdapter<?>> createAllowedAllocationMap() {
 		Multimap<ITaskAdapter<?>, IExecutionUnitAdapter<?>> rval = HashMultimap.create();
 
-		Collection<ComponentMultiAllocationConstraint> allowedDeploymentConstraints =
-				getChildrenWithType(dse, ComponentMultiAllocationConstraint.class);
+		// Collection<ComponentMultiAllocationConstraint> allowedDeploymentConstraints =
+		// getChildrenWithType(dse, ComponentMultiAllocationConstraint.class);
 		Collection<ITaskAdapter<?>> constrainedComponentAdps = new HashSet<>();
 
 		// for(ComponentMultiAllocationConstraint currentConstraint : allowedDeploymentConstraints)
@@ -302,8 +288,8 @@ public abstract class TaskMappingEncoding<S extends ITaskAdapter<?>, T extends T
 	 * {@link ComponentMultiAllocationConstraint} is defined, otherwise {@code null} is returned.
 	 */
 	// TODO(#2960): Must be based on the DSML expressions.
-	public Collection<IExecutionUnitAdapter<?>>
-			getAllowedAllocations(ITaskAdapter<?> deployableComponent) {
+	public Collection<IExecutionUnitAdapter<?>> getAllowedAllocations(
+			ITaskAdapter<?> deployableComponent) {
 		// ITaskAdapter<?> origComponent = systemModelAdapter
 		// .getDeployableComponentOf((EObject)deployableComponent.getObject());
 		// return allowedAllocations.get(origComponent);
@@ -315,8 +301,8 @@ public abstract class TaskMappingEncoding<S extends ITaskAdapter<?>, T extends T
 	 * {@link ComponentMultiDislocationConstraint} is defined, otherwise null is returned.
 	 */
 	// TODO(#2960): Must be based on the DSML expressions.
-	public Collection<IExecutionUnitAdapter<?>>
-			getDisAllowedAllocations(ITaskAdapter<?> deployableComponent) {
+	public Collection<IExecutionUnitAdapter<?>> getDisAllowedAllocations(
+			ITaskAdapter<?> deployableComponent) {
 		// ITaskAdapter<?> origComponent = systemModelAdapter
 		// .getDeployableComponentOf((EObject)deployableComponent.getObject());
 		// return disallowedAllocations.get(origComponent);
@@ -339,8 +325,8 @@ public abstract class TaskMappingEncoding<S extends ITaskAdapter<?>, T extends T
 
 	/** {@inheritDoc} */
 	@Override
-	public <U extends ExplorationConstraint<?>> void
-			replaceConstraints(Multimap<Class<? extends U>, U> constraintMap) {
+	public <U extends ExplorationConstraint<?>> void replaceConstraints(
+			Multimap<Class<? extends U>, U> constraintMap) {
 		constraintMap.keySet().forEach(c -> this.constraintMap.removeAll(c));
 		this.constraintMap.putAll(constraintMap);
 	}
@@ -381,8 +367,8 @@ public abstract class TaskMappingEncoding<S extends ITaskAdapter<?>, T extends T
 		if(incompleteEncoding != null) {
 			allocComponents.removeAll(incompleteEncoding.getRequesters());
 
-			incompleteEncoding.getMappingEntries()
-					.forEach(e -> addAllocation(createEntry(e.getSource(), e.getTarget())));
+			incompleteEncoding.getMappingEntries().forEach(
+					e -> addAllocation(createEntry(e.getSource(), e.getTarget())));
 		}
 
 		createEncoding(allocComponents);
@@ -438,8 +424,8 @@ public abstract class TaskMappingEncoding<S extends ITaskAdapter<?>, T extends T
 			} else {
 				for(int repl = 0; repl < deployableComponent.getMaxReplication(); repl++) {
 					int calcTargetIdx = roundRobinAllocIdx % validExecTargets.size();
-					addAllocation(
-							createEntry(deployableComponent, validExecTargets.get(calcTargetIdx)));
+					addAllocation(createEntry(deployableComponent,
+							validExecTargets.get(calcTargetIdx)));
 					roundRobinAllocIdx++;
 					if(roundRobinAllocIdx == execTargets.size()) {
 						roundRobinAllocIdx = 0;
@@ -458,8 +444,8 @@ public abstract class TaskMappingEncoding<S extends ITaskAdapter<?>, T extends T
 	 * Creates an (encoding specific) mapping entry the describes that a given deployable component
 	 * is mapped to a deployment target.
 	 */
-	protected abstract T createEntry(ITaskAdapter<?> deployableComponent,
-			Partition deploymentTarget);
+	protected abstract T
+			createEntry(ITaskAdapter<?> deployableComponent, Partition deploymentTarget);
 
 	/**
 	 * Creates a {@link TaskMappingEntry} and adds it to {@code this} mapping. The given
@@ -471,8 +457,8 @@ public abstract class TaskMappingEncoding<S extends ITaskAdapter<?>, T extends T
 	 *            {@link TaskMappingEntry}.
 	 * @return The created {@link TaskMappingEntry}.
 	 */
-	public <U extends TaskMappingEntry<ITaskAdapter<?>, Partition>> T
-			createAndAddEntry(U mappingEntry) {
+	public <U extends TaskMappingEntry<ITaskAdapter<?>, Partition>> T createAndAddEntry(
+			U mappingEntry) {
 		T newEntry = createEntry(mappingEntry);
 		addAllocation(newEntry);
 		return newEntry;
@@ -487,8 +473,8 @@ public abstract class TaskMappingEncoding<S extends ITaskAdapter<?>, T extends T
 	 *            derived.
 	 * @return The created {@link TaskMappingEntry}.
 	 */
-	protected abstract <U extends TaskMappingEntry<ITaskAdapter<?>, Partition>> T
-			createEntry(U allocEntry);
+	protected abstract <U extends TaskMappingEntry<ITaskAdapter<?>, Partition>> T createEntry(
+			U allocEntry);
 
 	/**
 	 * Constructs a random {@TaskMappingEntry} for the given deployable
@@ -523,7 +509,8 @@ public abstract class TaskMappingEncoding<S extends ITaskAdapter<?>, T extends T
 		if(target == null) {
 			throw new ExplorationException(
 					"Could not create an allocation entry for the Component " +
-							deployableComponent.getName() + ". Typical reasons include:\n" +
+							deployableComponent.getName() +
+							". Typical reasons include:\n" +
 							"1. An over-constrained ExplorationSpecification such that there " +
 							"exist no valid allocation targets." +
 							"2. Desired but non-selected deployment targets in the annoation view " +
@@ -611,24 +598,25 @@ public abstract class TaskMappingEncoding<S extends ITaskAdapter<?>, T extends T
 	 *            Deployable component for which fixed deployment is to be generated for
 	 */
 	public void generateFixedDeployment(S deployableComponent) {
-		Collection<ComponentMultiAllocationConstraint> constraints = dse.getTargetSpecification()
-				.getTargets().stream()
-				.filter(t -> (t instanceof ComponentMultiAllocationConstraint))
-				.map(ComponentMultiAllocationConstraint.class::cast).collect(Collectors.toList());
-		for(ComponentMultiAllocationConstraint cons : constraints) {
-			if(cons.getComponent() == deployableComponent.getObject()) {
-				removeTask(deployableComponent);
-				List<IExecutionUnitAdapter<?>> physExecList = new ArrayList<>(partitions);
-				List<Partition> execList = new ArrayList<>();
-				LambdaUtils.forEach(physExecList, e -> execList
-						.addAll(partMappingEncoding.getRequesters((IResourceAdapter<?>)e)));
-				int allocIdx = 0;
-				for(int i = 0; i < deployableComponent.getMaxReplication(); i++) {
-					allocIdx = rand.nextInt(execList.size());
-					addAllocation(createEntry(deployableComponent, execList.get(allocIdx)));
-				}
-			}
-		}
+		// Collection<ComponentMultiAllocationConstraint> constraints =
+		// dse.getTargetSpecification().getTargets().stream()
+		// .filter(t -> (t instanceof ComponentMultiAllocationConstraint))
+		// .map(ComponentMultiAllocationConstraint.class::cast)
+		// .collect(Collectors.toList());
+		// for(ComponentMultiAllocationConstraint cons : constraints) {
+		// if(cons.getComponent() == deployableComponent.getObject()) {
+		// removeTask(deployableComponent);
+		// List<IExecutionUnitAdapter<?>> physExecList = new ArrayList<>(partitions);
+		// List<Partition> execList = new ArrayList<>();
+		// LambdaUtils.forEach(physExecList, e -> execList.addAll(partMappingEncoding
+		// .getRequesters((IResourceAdapter<?>)e)));
+		// int allocIdx = 0;
+		// for(int i = 0; i < deployableComponent.getMaxReplication(); i++) {
+		// allocIdx = rand.nextInt(execList.size());
+		// addAllocation(createEntry(deployableComponent, execList.get(allocIdx)));
+		// }
+		// }
+		// }
 	}
 
 	/**
@@ -658,8 +646,8 @@ public abstract class TaskMappingEncoding<S extends ITaskAdapter<?>, T extends T
 	 * deployed. These restrictions are derived from {@link InternalSeparationConstraint}s and
 	 * {@link ComponentMultiDislocationConstraint}s.
 	 */
-	private Collection<IExecutionUnitAdapter<?>>
-			getExcludedDeploymentTargets(ITaskAdapter<?> deployableComponent) {
+	private Collection<IExecutionUnitAdapter<?>> getExcludedDeploymentTargets(
+			ITaskAdapter<?> deployableComponent) {
 		Collection<IExecutionUnitAdapter<?>> rval = getDisAllowedAllocations(deployableComponent);
 
 		// Collection<InternalSeparationConstraint> sepConstraints =
@@ -746,8 +734,7 @@ public abstract class TaskMappingEncoding<S extends ITaskAdapter<?>, T extends T
 	 * targets iff the list of physical execution units is defined by the set of mapping constraints
 	 * (e.g., derived from available I/Os).
 	 */
-	public List<Partition>
-			getAllowedPartitionTargets(List<IExecutionUnitAdapter<?>> physExecUnits) {
+	public List<Partition> getAllowedPartitionTargets(List<IExecutionUnitAdapter<?>> physExecUnits) {
 		List<Partition> execList = new ArrayList<>();
 		LambdaUtils.forEach(physExecUnits,
 				e -> execList.addAll(partMappingEncoding.getRequesters((IResourceAdapter<?>)e)));
diff --git a/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/backend/opt4j/encoding/taskmapping/abstractmapping/.ratings b/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/backend/opt4j/encoding/taskmapping/abstractmapping/.ratings
index bc824ed61765438165352aaa5151c52e3f97c902..30db933ed23ca4aa33164654e1e4c20374c885db 100644
--- a/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/backend/opt4j/encoding/taskmapping/abstractmapping/.ratings
+++ b/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/backend/opt4j/encoding/taskmapping/abstractmapping/.ratings
@@ -1,2 +1,2 @@
-AbstractTaskMappingEncoding.java 9ce20cd18e406164d3c7f5365cef6277e582e094 RED
+AbstractTaskMappingEncoding.java d4abec537050aa6a6bad3805d19d5db10cc2418e RED
 AbstractTaskMappingEntry.java 5a402c12dbf882f6c6f19146a66f837764f50e1f RED
diff --git a/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/backend/opt4j/encoding/taskmapping/abstractmapping/AbstractTaskMappingEncoding.java b/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/backend/opt4j/encoding/taskmapping/abstractmapping/AbstractTaskMappingEncoding.java
index 9ce20cd18e406164d3c7f5365cef6277e582e094..d4abec537050aa6a6bad3805d19d5db10cc2418e 100644
--- a/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/backend/opt4j/encoding/taskmapping/abstractmapping/AbstractTaskMappingEncoding.java
+++ b/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/backend/opt4j/encoding/taskmapping/abstractmapping/AbstractTaskMappingEncoding.java
@@ -29,7 +29,6 @@ import org.fortiss.af3.exploration.alg.dse.backend.opt4j.extensions.compositegen
 import org.fortiss.af3.exploration.alg.dse.backend.opt4j.extensions.compositegene.phenotype.Phenotype;
 import org.fortiss.af3.exploration.alg.dse.sysmodel.arch.ITaskAdapter;
 import org.fortiss.af3.exploration.alg.exception.ExplorationException;
-import org.fortiss.af3.exploration.moea.model.DseSpecification;
 import org.opt4j.core.Genotype;
 
 /**
@@ -45,9 +44,9 @@ public class AbstractTaskMappingEncoding extends
 	 * Constructor that is initialized with a reference to the DSE specification and the input
 	 * system model.
 	 */
-	AbstractTaskMappingEncoding(DseSpecification dse, PartitionMappingEncoding partEnc,
+	AbstractTaskMappingEncoding(PartitionMappingEncoding partEnc,
 			SafeTaskGraphEncoding<?> tgEncoding) {
-		super(dse, partEnc, tgEncoding);
+		super(partEnc, tgEncoding);
 	}
 
 	/**
@@ -56,15 +55,15 @@ public class AbstractTaskMappingEncoding extends
 	 * @throws ExplorationException
 	 *             if no valid allocation targets can be identified for one {@link ITaskAdapter}.
 	 */
-	public AbstractTaskMappingEncoding(DseSpecification dse, PartitionMappingEncoding partEnc,
+	public AbstractTaskMappingEncoding(PartitionMappingEncoding partEnc,
 			SafeTaskGraphEncoding<?> tgEncoding, boolean initialize) throws ExplorationException {
-		super(dse, partEnc, tgEncoding, initialize);
+		super(partEnc, tgEncoding, initialize);
 	}
 
 	/** Copy Constructor. */
-	public AbstractTaskMappingEncoding(DseSpecification dse, PartitionMappingEncoding partEnc,
+	public AbstractTaskMappingEncoding(PartitionMappingEncoding partEnc,
 			TaskGraphEncoding<?, ?, ?> tgEncoding) {
-		super(dse, partEnc, tgEncoding);
+		super(partEnc, tgEncoding);
 	}
 
 	/**
@@ -73,9 +72,9 @@ public class AbstractTaskMappingEncoding extends
 	 * @throws ExplorationException
 	 *             if no valid allocation targets can be identified for one {@link ITaskAdapter}.
 	 */
-	public AbstractTaskMappingEncoding(DseSpecification dse, PartitionMappingEncoding partEnc,
+	public AbstractTaskMappingEncoding(PartitionMappingEncoding partEnc,
 			AbstractTaskGraphEncoding<?, ?> atgEnc, boolean initialize) throws ExplorationException {
-		super(dse, partEnc, atgEnc, initialize);
+		super(partEnc, atgEnc, initialize);
 	}
 
 	/**
@@ -87,10 +86,10 @@ public class AbstractTaskMappingEncoding extends
 	 * @throws ExplorationException
 	 *             if no valid allocation targets can be identified for one {@link ITaskAdapter}.
 	 */
-	public AbstractTaskMappingEncoding(DseSpecification dse, PartitionMappingEncoding partEnc,
+	public AbstractTaskMappingEncoding(PartitionMappingEncoding partEnc,
 			AbstractTaskGraphEncoding<?, ?> atgEnc, AbstractTaskMappingEncoding partialEncoding)
 			throws ExplorationException {
-		super(dse, partEnc, atgEnc, partialEncoding);
+		super(partEnc, atgEnc, partialEncoding);
 	}
 
 	/** {@inheritDoc} */
@@ -118,7 +117,7 @@ public class AbstractTaskMappingEncoding extends
 	@Override
 	public AbstractTaskMappingEncoding newInstance() {
 		try {
-			return new AbstractTaskMappingEncoding(dse, null, null, true);
+			return new AbstractTaskMappingEncoding(null, null, true);
 		} catch(ExplorationException e) {
 			// Opt4J does not allow to throw Exceptions here.
 			throw new RuntimeException(e);
@@ -129,7 +128,7 @@ public class AbstractTaskMappingEncoding extends
 	@Override
 	public AbstractTaskMappingEncoding clone() {
 		AbstractTaskMappingEncoding clonedEncoding;
-		clonedEncoding = new AbstractTaskMappingEncoding(dse, partMappingEncoding, tgEncoding);
+		clonedEncoding = new AbstractTaskMappingEncoding(partMappingEncoding, tgEncoding);
 
 		Map<AbstractTaskMappingEntry, AbstractTaskMappingEntry> copyAssocMap = new HashMap<>();
 
diff --git a/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/backend/opt4j/encoding/taskmapping/instantiatedmapping/.ratings b/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/backend/opt4j/encoding/taskmapping/instantiatedmapping/.ratings
index 972b0d3796de7bd7f4e5de167c449538a0a84a38..ba01f626e726707317c9fd264291324f8c43889e 100644
--- a/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/backend/opt4j/encoding/taskmapping/instantiatedmapping/.ratings
+++ b/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/backend/opt4j/encoding/taskmapping/instantiatedmapping/.ratings
@@ -1,6 +1,6 @@
-FailSilentTaskMappingEncoding.java e5a362b79a9f1b78a09b4b18b6538ed4bf4dfbfe RED
+FailSilentTaskMappingEncoding.java bf7ccbfa67f5f83c0b29175813613841b99f8494 RED
 FailSilentTaskMappingEntry.java b73b4242c590b45ad30c482390fee8eaa06179dc RED
-FaultDetectionVotingTaskMappingEncoding.java e906d793528ba8a329b3549ead4b904135ce73bb RED
+FaultDetectionVotingTaskMappingEncoding.java b1b8e16a4286dca3b5d8081f4406b08ed0d3d3eb RED
 FaultDetectionVotingTaskMappingEntry.java ae401b16a2098ee85809f895c2469f494b6fc279 RED
-InstantiatedTaskMappingEncoding.java d875cefeb1bcc28550804ee102c9dd63ea0dc8f6 RED
+InstantiatedTaskMappingEncoding.java 009a5a48ac03e206cbe6ba98439455b1c7d2c850 RED
 InstantiatedTaskMappingEntry.java ffac1e77d53b2a9253b864b876aae18b6820f1f0 RED
diff --git a/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/backend/opt4j/encoding/taskmapping/instantiatedmapping/FailSilentTaskMappingEncoding.java b/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/backend/opt4j/encoding/taskmapping/instantiatedmapping/FailSilentTaskMappingEncoding.java
index e5a362b79a9f1b78a09b4b18b6538ed4bf4dfbfe..bf7ccbfa67f5f83c0b29175813613841b99f8494 100644
--- a/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/backend/opt4j/encoding/taskmapping/instantiatedmapping/FailSilentTaskMappingEncoding.java
+++ b/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/backend/opt4j/encoding/taskmapping/instantiatedmapping/FailSilentTaskMappingEncoding.java
@@ -25,29 +25,28 @@ import org.fortiss.af3.exploration.alg.dse.backend.opt4j.encoding.taskmapping.ab
 import org.fortiss.af3.exploration.alg.dse.backend.opt4j.encoding.taskmapping.abstractmapping.AbstractTaskMappingEntry;
 import org.fortiss.af3.exploration.alg.dse.sysmodel.arch.ITaskAdapter;
 import org.fortiss.af3.exploration.alg.exception.ExplorationException;
-import org.fortiss.af3.exploration.moea.model.DseSpecification;
 
 /**
  * Problem encoding consisting of redundant {@link TaskMappingEntry}s with fail-silent assumption.
  * 
  * @author huang
  */
-public class FailSilentTaskMappingEncoding
-		extends InstantiatedTaskMappingEncoding<FailSilentTaskMappingEntry> {
+public class FailSilentTaskMappingEncoding extends
+		InstantiatedTaskMappingEncoding<FailSilentTaskMappingEntry> {
 
 	/**
 	 * Constructor that is initialized with a reference to the DSE specification and the input
 	 * system model.
 	 */
-	FailSilentTaskMappingEncoding(DseSpecification dse, PartitionMappingEncoding partEnc,
+	FailSilentTaskMappingEncoding(PartitionMappingEncoding partEnc,
 			AbstractTaskGraphEncoding<?, ?> tgEncoding) {
-		super(dse, partEnc, tgEncoding);
+		super(partEnc, tgEncoding);
 	}
 
 	/** Copy Constructor. */
-	FailSilentTaskMappingEncoding(DseSpecification dse, PartitionMappingEncoding partEnc,
+	FailSilentTaskMappingEncoding(PartitionMappingEncoding partEnc,
 			TaskGraphEncoding<?, ?, ?> tgEncoding) {
-		super(dse, partEnc, tgEncoding);
+		super(partEnc, tgEncoding);
 	}
 
 	// TODO: Check whether the two constructors below are actually needed.
@@ -55,23 +54,21 @@ public class FailSilentTaskMappingEncoding
 	 * Constructor that optionally initializes the encoding to a random encoding
 	 * 
 	 * @throws ExplorationException
-	 *             if no valid allocation targets can be identified for one
-	 *             {@link ITaskAdapter}.
+	 *             if no valid allocation targets can be identified for one {@link ITaskAdapter}.
 	 */
-	public FailSilentTaskMappingEncoding(DseSpecification dse, PartitionMappingEncoding partEnc,
+	public FailSilentTaskMappingEncoding(PartitionMappingEncoding partEnc,
 			AbstractTaskGraphEncoding<?, ?> tgEncoding, boolean initialize)
 			throws ExplorationException {
-		super(dse, partEnc, tgEncoding, initialize);
+		super(partEnc, tgEncoding, initialize);
 	}
 
 	/**
 	 * Constructor which derives the resulting {@link FailSilentTaskMappingEncoding} from the given
 	 * {@link AbstractTaskMappingEncoding}.
 	 */
-	public FailSilentTaskMappingEncoding(DseSpecification dse, PartitionMappingEncoding partEnc,
-			AbstractTaskGraphEncoding<?, ?> tgEncoding,
-			AbstractTaskMappingEncoding abstractEncoding) {
-		super(dse, partEnc, tgEncoding, abstractEncoding);
+	public FailSilentTaskMappingEncoding(PartitionMappingEncoding partEnc,
+			AbstractTaskGraphEncoding<?, ?> tgEncoding, AbstractTaskMappingEncoding abstractEncoding) {
+		super(partEnc, tgEncoding, abstractEncoding);
 	}
 
 	/** {@inheritDoc} */
@@ -98,7 +95,7 @@ public class FailSilentTaskMappingEncoding
 	@Override
 	public FailSilentTaskMappingEncoding newInstance() {
 		try {
-			return new FailSilentTaskMappingEncoding(dse, null, null, true);
+			return new FailSilentTaskMappingEncoding(null, null, true);
 		} catch(ExplorationException e) {
 			// Opt4J does not allow to throw Exceptions here.
 			throw new RuntimeException(e);
@@ -110,7 +107,7 @@ public class FailSilentTaskMappingEncoding
 	public FailSilentTaskMappingEncoding clone() {
 		// TODO: Here, we should maintain the mapping.
 		FailSilentTaskMappingEncoding clonedEncoding;
-		clonedEncoding = new FailSilentTaskMappingEncoding(dse, partMappingEncoding, tgEncoding);
+		clonedEncoding = new FailSilentTaskMappingEncoding(partMappingEncoding, tgEncoding);
 		return clonedEncoding;
 	}
 }
diff --git a/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/backend/opt4j/encoding/taskmapping/instantiatedmapping/FaultDetectionVotingTaskMappingEncoding.java b/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/backend/opt4j/encoding/taskmapping/instantiatedmapping/FaultDetectionVotingTaskMappingEncoding.java
index e906d793528ba8a329b3549ead4b904135ce73bb..b1b8e16a4286dca3b5d8081f4406b08ed0d3d3eb 100644
--- a/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/backend/opt4j/encoding/taskmapping/instantiatedmapping/FaultDetectionVotingTaskMappingEncoding.java
+++ b/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/backend/opt4j/encoding/taskmapping/instantiatedmapping/FaultDetectionVotingTaskMappingEncoding.java
@@ -24,7 +24,6 @@ import org.fortiss.af3.exploration.alg.dse.backend.opt4j.encoding.taskmapping.ab
 import org.fortiss.af3.exploration.alg.dse.backend.opt4j.encoding.taskmapping.abstractmapping.AbstractTaskMappingEntry;
 import org.fortiss.af3.exploration.alg.dse.sysmodel.arch.ITaskAdapter;
 import org.fortiss.af3.exploration.alg.exception.ExplorationException;
-import org.fortiss.af3.exploration.moea.model.DseSpecification;
 
 /**
  * Problem encoding of redundant {@link TaskMappingEncoding}s with fault detection and voting.
@@ -38,9 +37,9 @@ public class FaultDetectionVotingTaskMappingEncoding extends
 	 * Constructor that is initialized with a reference to the DSE specification and the input
 	 * system model.
 	 */
-	FaultDetectionVotingTaskMappingEncoding(DseSpecification dse, PartitionMappingEncoding partEnc,
+	FaultDetectionVotingTaskMappingEncoding(PartitionMappingEncoding partEnc,
 			AbstractTaskGraphEncoding<?, ?> tgEncoding) {
-		super(dse, partEnc, tgEncoding);
+		super(partEnc, tgEncoding);
 	}
 
 	// TODO: Check whether the two constructors below are actually needed.
@@ -48,13 +47,12 @@ public class FaultDetectionVotingTaskMappingEncoding extends
 	 * Constructor that optionally initializes the encoding to a random encoding
 	 * 
 	 * @throws ExplorationException
-	 *             if no valid allocation targets can be identified for one
-	 *             {@link ITaskAdapter}.
+	 *             if no valid allocation targets can be identified for one {@link ITaskAdapter}.
 	 */
-	public FaultDetectionVotingTaskMappingEncoding(DseSpecification dse,
-			PartitionMappingEncoding partEnc, AbstractTaskGraphEncoding<?, ?> tgEncoding,
-			boolean initialize) throws ExplorationException {
-		super(dse, partEnc, tgEncoding, initialize);
+	public FaultDetectionVotingTaskMappingEncoding(PartitionMappingEncoding partEnc,
+			AbstractTaskGraphEncoding<?, ?> tgEncoding, boolean initialize)
+			throws ExplorationException {
+		super(partEnc, tgEncoding, initialize);
 		assert (false) : "Never here any more.";
 	}
 
@@ -62,10 +60,9 @@ public class FaultDetectionVotingTaskMappingEncoding extends
 	 * Constructor which derives the resulting {@link FaultDetectionVotingTaskMappingEncoding} from
 	 * the given {@link AbstractTaskMappingEncoding}.
 	 */
-	public FaultDetectionVotingTaskMappingEncoding(DseSpecification dse,
-			PartitionMappingEncoding partEnc, AbstractTaskGraphEncoding<?, ?> tgEncoding,
-			AbstractTaskMappingEncoding abstractEncoding) {
-		super(dse, partEnc, tgEncoding, abstractEncoding);
+	public FaultDetectionVotingTaskMappingEncoding(PartitionMappingEncoding partEnc,
+			AbstractTaskGraphEncoding<?, ?> tgEncoding, AbstractTaskMappingEncoding abstractEncoding) {
+		super(partEnc, tgEncoding, abstractEncoding);
 	}
 
 	/** {@inheritDoc} */
@@ -94,7 +91,7 @@ public class FaultDetectionVotingTaskMappingEncoding extends
 	@Override
 	public FaultDetectionVotingTaskMappingEncoding newInstance() {
 		try {
-			return new FaultDetectionVotingTaskMappingEncoding(dse, null, null, true);
+			return new FaultDetectionVotingTaskMappingEncoding(null, null, true);
 		} catch(ExplorationException e) {
 			// Opt4J does not allow to throw Exceptions here.
 			throw new RuntimeException(e);
@@ -109,7 +106,7 @@ public class FaultDetectionVotingTaskMappingEncoding extends
 		// TODO: Here, we should maintain the mapping.
 		FaultDetectionVotingTaskMappingEncoding clonedEncoding = null;
 		try {
-			clonedEncoding = new FaultDetectionVotingTaskMappingEncoding(dse, null, null, false);
+			clonedEncoding = new FaultDetectionVotingTaskMappingEncoding(null, null, false);
 		} catch(ExplorationException e) {
 			// Opt4J does not allow to throw Exceptions here.
 			throw new RuntimeException(e);
diff --git a/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/backend/opt4j/encoding/taskmapping/instantiatedmapping/InstantiatedTaskMappingEncoding.java b/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/backend/opt4j/encoding/taskmapping/instantiatedmapping/InstantiatedTaskMappingEncoding.java
index d875cefeb1bcc28550804ee102c9dd63ea0dc8f6..009a5a48ac03e206cbe6ba98439455b1c7d2c850 100644
--- a/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/backend/opt4j/encoding/taskmapping/instantiatedmapping/InstantiatedTaskMappingEncoding.java
+++ b/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/backend/opt4j/encoding/taskmapping/instantiatedmapping/InstantiatedTaskMappingEncoding.java
@@ -28,7 +28,6 @@ import org.fortiss.af3.exploration.alg.dse.backend.opt4j.extensions.compositegen
 import org.fortiss.af3.exploration.alg.dse.sysmodel.arch.IExecutionUnitAdapter;
 import org.fortiss.af3.exploration.alg.dse.sysmodel.arch.ITaskAdapter;
 import org.fortiss.af3.exploration.alg.exception.ExplorationException;
-import org.fortiss.af3.exploration.moea.model.DseSpecification;
 import org.opt4j.core.Genotype;
 
 /**
@@ -46,15 +45,15 @@ public abstract class InstantiatedTaskMappingEncoding<T extends InstantiatedTask
 	 * Constructor that is initialized with a reference to the DSE specification and the input
 	 * system model.
 	 */
-	protected InstantiatedTaskMappingEncoding(DseSpecification dse,
-			PartitionMappingEncoding partEnc, AbstractTaskGraphEncoding<?, ?> tgEncoding) {
-		super(dse, partEnc, tgEncoding);
+	protected InstantiatedTaskMappingEncoding(PartitionMappingEncoding partEnc,
+			AbstractTaskGraphEncoding<?, ?> tgEncoding) {
+		super(partEnc, tgEncoding);
 	}
 
 	/** Copy Constructor. */
-	protected InstantiatedTaskMappingEncoding(DseSpecification dse,
-			PartitionMappingEncoding partEnc, TaskGraphEncoding<?, ?, ?> tgEncoding) {
-		super(dse, partEnc, tgEncoding);
+	protected InstantiatedTaskMappingEncoding(PartitionMappingEncoding partEnc,
+			TaskGraphEncoding<?, ?, ?> tgEncoding) {
+		super(partEnc, tgEncoding);
 	}
 
 	// TODO: Check whether the two constructors below are actually needed.
@@ -64,19 +63,19 @@ public abstract class InstantiatedTaskMappingEncoding<T extends InstantiatedTask
 	 * @throws ExplorationException
 	 *             if no valid allocation targets can be identified for one {@link ITaskAdapter}.
 	 */
-	public InstantiatedTaskMappingEncoding(DseSpecification dse, PartitionMappingEncoding partEnc,
+	public InstantiatedTaskMappingEncoding(PartitionMappingEncoding partEnc,
 			AbstractTaskGraphEncoding<?, ?> tgEncoding, boolean initialize)
 			throws ExplorationException {
-		super(dse, partEnc, tgEncoding, initialize);
+		super(partEnc, tgEncoding, initialize);
 	}
 
 	/**
 	 * Constructor which derives the resulting {@link InstantiatedTaskMappingEncoding} from the
 	 * given {@link AbstractTaskMappingEncoding}.
 	 */
-	public InstantiatedTaskMappingEncoding(DseSpecification dse, PartitionMappingEncoding partEnc,
+	public InstantiatedTaskMappingEncoding(PartitionMappingEncoding partEnc,
 			AbstractTaskGraphEncoding<?, ?> tgEncoding, AbstractTaskMappingEncoding abstractEncoding) {
-		super(dse, partEnc, tgEncoding);
+		super(partEnc, tgEncoding);
 		this.constraintMap = abstractEncoding.copyConstraintMap(null);
 		instantiateAbstractEntries(abstractEncoding);
 	}
diff --git a/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/backend/opt4j/problem/taskmapping/instantiate/.ratings b/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/backend/opt4j/problem/taskmapping/instantiate/.ratings
index 8650e32c0178294d843efb6472ec91ebf0a4893c..43b985cfa4c27c07a1d9d0bc09895c507f474fb2 100644
--- a/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/backend/opt4j/problem/taskmapping/instantiate/.ratings
+++ b/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/backend/opt4j/problem/taskmapping/instantiate/.ratings
@@ -1,4 +1,4 @@
-AbstractTaskMappingDecoder.java 8f42a638ceeba220da3a22f281ce08fe0764934b RED
-FailSilentAbstractTaskMappingDecoder.java f5a3160d8b34da3f5c1e77d370af98670d694923 RED
-FaultDetectionVotingAbstractTaskMappingDecoder.java 91ad48817fdd592a70da6a08d4a0f666c01acc33 RED
+AbstractTaskMappingDecoder.java 85d46ecd859052c487f31e47065375ae423e50ff RED
+FailSilentAbstractTaskMappingDecoder.java 011dfebeaedb183ab0edc9a84eb71410a943a4db RED
+FaultDetectionVotingAbstractTaskMappingDecoder.java 8fb87c6c0b1aa7fdff5340c34bbc3a98dcab12e1 RED
 TaskInstanceResourceAlignmentDecoder.java fe8b789f3a0185585a90cf1882fd3983453b4a0d RED
diff --git a/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/backend/opt4j/problem/taskmapping/instantiate/AbstractTaskMappingDecoder.java b/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/backend/opt4j/problem/taskmapping/instantiate/AbstractTaskMappingDecoder.java
index 8f42a638ceeba220da3a22f281ce08fe0764934b..85d46ecd859052c487f31e47065375ae423e50ff 100644
--- a/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/backend/opt4j/problem/taskmapping/instantiate/AbstractTaskMappingDecoder.java
+++ b/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/backend/opt4j/problem/taskmapping/instantiate/AbstractTaskMappingDecoder.java
@@ -25,7 +25,6 @@ import org.fortiss.af3.exploration.alg.dse.backend.opt4j.encoding.taskmapping.in
 import org.fortiss.af3.exploration.alg.dse.backend.opt4j.encoding.taskmapping.instantiatedmapping.InstantiatedTaskMappingEntry;
 import org.fortiss.af3.exploration.alg.dse.backend.opt4j.extensions.compositegene.decode.ComposableDecoderBase;
 import org.fortiss.af3.exploration.alg.dse.backend.opt4j.problem.ArchExpSubDecoder;
-import org.fortiss.af3.exploration.moea.model.DseSpecification;
 import org.opt4j.core.problem.Decoder;
 
 /**
@@ -36,13 +35,6 @@ import org.opt4j.core.problem.Decoder;
  */
 public abstract class AbstractTaskMappingDecoder<S extends InstantiatedTaskMappingEntry, T extends InstantiatedTaskMappingEncoding<S>>
 		extends ComposableDecoderBase<AbstractTaskMappingEncoding, T> implements ArchExpSubDecoder {
-	/** Reference to the {@link DseSpecification} specification that defines the DSE. */
-	DseSpecification explorationDefinition;
-
-	/** Constructs a new decoder that instantiates {@link AbstractTaskMappingEncoding}. */
-	public AbstractTaskMappingDecoder(DseSpecification explorationDefinition) {
-		this.explorationDefinition = explorationDefinition;
-	}
 
 	/** {@inheritDoc} */
 	@Override
diff --git a/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/backend/opt4j/problem/taskmapping/instantiate/FailSilentAbstractTaskMappingDecoder.java b/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/backend/opt4j/problem/taskmapping/instantiate/FailSilentAbstractTaskMappingDecoder.java
index f5a3160d8b34da3f5c1e77d370af98670d694923..011dfebeaedb183ab0edc9a84eb71410a943a4db 100644
--- a/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/backend/opt4j/problem/taskmapping/instantiate/FailSilentAbstractTaskMappingDecoder.java
+++ b/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/backend/opt4j/problem/taskmapping/instantiate/FailSilentAbstractTaskMappingDecoder.java
@@ -32,7 +32,6 @@ import org.fortiss.af3.exploration.alg.dse.backend.opt4j.extensions.compositegen
 import org.fortiss.af3.exploration.alg.dse.backend.opt4j.extensions.compositegene.phenotype.FlatPhenotypeMap;
 import org.fortiss.af3.exploration.alg.dse.backend.opt4j.extensions.compositegene.phenotype.Phenotype;
 import org.fortiss.af3.exploration.alg.dse.sysmodel.arch.ITaskAdapter;
-import org.fortiss.af3.exploration.moea.model.DseSpecification;
 
 import com.google.inject.Inject;
 import com.google.inject.Provider;
@@ -65,18 +64,12 @@ public class FailSilentAbstractTaskMappingDecoder extends
 	@Inject
 	PartitionMappingEncoding partEnc;
 
-	/** Constructor. */
-	@Inject
-	public FailSilentAbstractTaskMappingDecoder(DseSpecification explorationDefinition) {
-		super(explorationDefinition);
-	}
-
 	/** {@inheritDoc} */
 	@Override
 	@Provides
 	public FailSilentTaskMappingEncoding decodeComposable(AbstractTaskMappingEncoding genotype,
 			FlatPhenotypeMap<Phenotype> phenotypeTypeMap) {
-		return new FailSilentTaskMappingEncoding(explorationDefinition, partEnc, atgEnc, atmEnc);
+		return new FailSilentTaskMappingEncoding(partEnc, atgEnc, atmEnc);
 	}
 
 	// TODO: Abstract to the AbstractTaskMappingDecoder.
diff --git a/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/backend/opt4j/problem/taskmapping/instantiate/FaultDetectionVotingAbstractTaskMappingDecoder.java b/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/backend/opt4j/problem/taskmapping/instantiate/FaultDetectionVotingAbstractTaskMappingDecoder.java
index 91ad48817fdd592a70da6a08d4a0f666c01acc33..8fb87c6c0b1aa7fdff5340c34bbc3a98dcab12e1 100644
--- a/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/backend/opt4j/problem/taskmapping/instantiate/FaultDetectionVotingAbstractTaskMappingDecoder.java
+++ b/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/backend/opt4j/problem/taskmapping/instantiate/FaultDetectionVotingAbstractTaskMappingDecoder.java
@@ -30,7 +30,6 @@ import org.fortiss.af3.exploration.alg.dse.backend.opt4j.extensions.compositegen
 import org.fortiss.af3.exploration.alg.dse.backend.opt4j.extensions.compositegene.phenotype.FlatPhenotypeMap;
 import org.fortiss.af3.exploration.alg.dse.backend.opt4j.extensions.compositegene.phenotype.Phenotype;
 import org.fortiss.af3.exploration.alg.dse.sysmodel.arch.ITaskAdapter;
-import org.fortiss.af3.exploration.moea.model.DseSpecification;
 import org.opt4j.core.problem.Decoder;
 
 /**
@@ -40,14 +39,10 @@ import org.opt4j.core.problem.Decoder;
  * @author diewald
  */
 // FIXME: The type hierarchy and naming of the classes is extremely confusing. FIX ASAP!
-public class FaultDetectionVotingAbstractTaskMappingDecoder extends
+public class FaultDetectionVotingAbstractTaskMappingDecoder
+		extends
 		AbstractTaskMappingDecoder<FaultDetectionVotingTaskMappingEntry, FaultDetectionVotingTaskMappingEncoding> {
 
-	/** Constructor. */
-	public FaultDetectionVotingAbstractTaskMappingDecoder(DseSpecification explorationDefinition) {
-		super(explorationDefinition);
-	}
-
 	/** {@inheritDoc} */
 	@Override
 	public FaultDetectionVotingTaskMappingEncoding decodeComposable(
@@ -59,8 +54,7 @@ public class FaultDetectionVotingAbstractTaskMappingDecoder extends
 		PartitionMappingEncoding partEnc =
 				phenotypeTypeMap.getEncoding(PartitionMappingEncoding.class);
 		assert (partEnc != null) : "The required partition mapping encoding could not be found in the map of already decoded phenotypes.";
-		return new FaultDetectionVotingTaskMappingEncoding(explorationDefinition, partEnc, atgEnc,
-				genotype);
+		return new FaultDetectionVotingTaskMappingEncoding(partEnc, atgEnc, genotype);
 	}
 
 	/**
@@ -81,8 +75,9 @@ public class FaultDetectionVotingAbstractTaskMappingDecoder extends
 					inGenotype.getMappingEntriesOf(comp);
 			Collection<FaultDetectionVotingTaskMappingEntry> instEntries;
 			if(comp.isInstantiationRequired()) {
-				instEntries = filterSet(outGenotype.getMappingEntries(),
-						e -> e.getSource().getReplacedComponent() == comp);
+				instEntries =
+						filterSet(outGenotype.getMappingEntries(), e -> e.getSource()
+								.getReplacedComponent() == comp);
 			} else {
 				instEntries = outGenotype.getMappingEntriesOf(comp);
 			}
@@ -118,8 +113,8 @@ public class FaultDetectionVotingAbstractTaskMappingDecoder extends
 		rmTasks.forEach(e -> outGenotype.removeTask(e));
 
 		for(FaultDetectionVotingTaskMappingEntry entry : outGenotype.getMappingEntries()) {
-			entry.resetTarget(
-					entry.getAssociatedElement(AbstractTaskMappingEntry.class).getTarget());
+			entry.resetTarget(entry.getAssociatedElement(AbstractTaskMappingEntry.class)
+					.getTarget());
 		}
 
 		return outGenotype;
diff --git a/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/sysmodel/.ratings b/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/sysmodel/.ratings
index 8ac275c40eebb6ddcd541718e886fa2a009871d9..15c02ffd0b7b00644a0ba2a20696ced69145e6d2 100644
--- a/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/sysmodel/.ratings
+++ b/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/sysmodel/.ratings
@@ -1,2 +1,2 @@
-FailSilentExecModelFactory.java 4ee468ad45b7548ee06b0ce3aaa417cbcbcec282 RED
-FaultDetectionVotingExecModelFactory.java b8c7d062f624c18a41bc4ee26e0e8299a82f5cdb RED
+FailSilentExecModelFactory.java d390751e97756819d7fb10caacd8d701ba445922 RED
+FaultDetectionVotingExecModelFactory.java 47e110208b65cc72f3a8a082876b039aa0036e4b RED
diff --git a/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/sysmodel/FailSilentExecModelFactory.java b/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/sysmodel/FailSilentExecModelFactory.java
index 4ee468ad45b7548ee06b0ce3aaa417cbcbcec282..d390751e97756819d7fb10caacd8d701ba445922 100644
--- a/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/sysmodel/FailSilentExecModelFactory.java
+++ b/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/sysmodel/FailSilentExecModelFactory.java
@@ -65,8 +65,8 @@ import com.google.inject.TypeLiteral;
  * 
  * @author diewald
  */
-public class FailSilentExecModelFactory
-		extends TaskMappingFactory<FailSilentTaskMappingEntry, FailSilentTaskMappingEncoding> {
+public class FailSilentExecModelFactory extends
+		TaskMappingFactory<FailSilentTaskMappingEntry, FailSilentTaskMappingEncoding> {
 
 	/** The instance (singleton) of the EvaluatorWrapper factory. */
 	public static TaskMappingFactory<?, ?> getInstance() {
@@ -87,39 +87,37 @@ public class FailSilentExecModelFactory
 	/** Creates a TaskMappingCreator that matches the given execution model. */
 	@Override
 	public TaskMappingCreator<FailSilentTaskMappingEntry, FailSilentTaskMappingEncoding>
-			createTaskMappingCreator(DseSpecification dse, DecoderDependencyGraph execDepGraph) {
-		return new FailSilentTaskMappingCreator(dse, execDepGraph);
+			createTaskMappingCreator(DecoderDependencyGraph execDepGraph) {
+		return new FailSilentTaskMappingCreator(execDepGraph);
 	}
 
 	/* Construct execution model specific operators. */
 
 	/** {@inheritDoc} */
 	@Override
-	public MutateAllocation<?, ?>
-			createMutateAllocationOperator(Collection<ITaskAdapter<?>> tasks) {
+	public MutateAllocation<?, ?> createMutateAllocationOperator(Collection<ITaskAdapter<?>> tasks) {
 		return new MutateAllocation<AbstractTaskMappingEntry, AbstractTaskMappingEncoding>(tasks);
 	}
 
 	/** {@inheritDoc} */
 	@Override
-	public MutateRedundancyDecrement<?, ?>
-			createMutateRedundancyDecrementOperator(Collection<ITaskAdapter<?>> tasks) {
+	public MutateRedundancyDecrement<?, ?> createMutateRedundancyDecrementOperator(
+			Collection<ITaskAdapter<?>> tasks) {
 		return new MutateRedundancyDecrement<AbstractTaskMappingEntry, AbstractTaskMappingEncoding>(
 				tasks);
 	}
 
 	/** {@inheritDoc} */
 	@Override
-	public MutateRedundancyIncrement<?, ?>
-			createMutateRedundancyIncrementOperator(Collection<ITaskAdapter<?>> tasks) {
+	public MutateRedundancyIncrement<?, ?> createMutateRedundancyIncrementOperator(
+			Collection<ITaskAdapter<?>> tasks) {
 		return new MutateRedundancyIncrement<AbstractTaskMappingEntry, AbstractTaskMappingEncoding>(
 				tasks);
 	}
 
 	/** {@inheritDoc} */
 	@Override
-	public CrossoverRandManyAllocation<?, ?>
-			createCrossoverRandManyAllocationOperator(double rate) {
+	public CrossoverRandManyAllocation<?, ?> createCrossoverRandManyAllocationOperator(double rate) {
 		return new CrossoverRandManyAllocation<AbstractTaskMappingEntry, AbstractTaskMappingEncoding>(
 				rate);
 	}
@@ -136,15 +134,16 @@ public class FailSilentExecModelFactory
 	/** {@inheritDoc} */
 	@Override
 	public AbstractTaskMappingDecoder<FailSilentTaskMappingEntry, FailSilentTaskMappingEncoding>
-			createAbstractTaskMappingDecoder(DseSpecification explorationDefinition) {
-		return new FailSilentAbstractTaskMappingDecoder(explorationDefinition);
+			createAbstractTaskMappingDecoder() {
+		return new FailSilentAbstractTaskMappingDecoder();
 	}
 
 	/** {@inheritDoc} */
 	@SuppressWarnings({"rawtypes", "unchecked"})
 	@Override
 	// TODO: identify why a warning is generated here.
-	public InstantiatedTaskMappingDecoderAcyclic<FailSilentTaskMappingEntry, FailSilentTaskMappingEncoding>
+	public
+			InstantiatedTaskMappingDecoderAcyclic<FailSilentTaskMappingEntry, FailSilentTaskMappingEncoding>
 			createAbstractToAcyclicTaskGraphDecoder() {
 		return new InstantiatedTaskMappingDecoderAcyclic();
 	}
@@ -221,13 +220,14 @@ public class FailSilentExecModelFactory
 	@Override
 	public <RT, ET extends ExplorationTarget<RT>>
 			EvaluatorWrapper<?, Boolean, ComponentMultiAllocationConstraint>
-			createComponentMultiAllocationConstraintWrapper(ExplorationTarget<?> goal, int priority,
-					SystemModelAdapter<?, ?, ?, ?, ?, ?, ?> systemModelAdapter) throws Exception {
+			createComponentMultiAllocationConstraintWrapper(ExplorationTarget<?> goal,
+					int priority, SystemModelAdapter<?, ?, ?, ?, ?, ?, ?> systemModelAdapter)
+					throws Exception {
 		return new EvaluatorWrapper<FailSilentTaskMappingEncoding, Boolean, ComponentMultiAllocationConstraint>(
 				(ComponentMultiAllocationConstraint)goal,
 				new ComponentMultiAllocationConstraintEvaluator<FailSilentTaskMappingEntry, FailSilentTaskMappingEncoding>(
-						systemModelAdapter, (ComponentMultiAllocationConstraint)goal),
-				priority, FailSilentTaskMappingEncoding.class);
+						systemModelAdapter, (ComponentMultiAllocationConstraint)goal), priority,
+				FailSilentTaskMappingEncoding.class);
 	}
 
 	/** {@inheritDoc} */
@@ -241,8 +241,8 @@ public class FailSilentExecModelFactory
 		return new EvaluatorWrapper<FailSilentTaskMappingEncoding, Boolean, ComponentMultiDislocationConstraint>(
 				(ComponentMultiDislocationConstraint)goal,
 				new ComponentMultiDislocationConstraintEvaluator<FailSilentTaskMappingEntry, FailSilentTaskMappingEncoding>(
-						systemModelAdapter, (ComponentMultiDislocationConstraint)goal),
-				priority, FailSilentTaskMappingEncoding.class);
+						systemModelAdapter, (ComponentMultiDislocationConstraint)goal), priority,
+				FailSilentTaskMappingEncoding.class);
 	}
 
 	/** {@inheritDoc} */
@@ -254,7 +254,7 @@ public class FailSilentExecModelFactory
 		return new EvaluatorWrapper<FailSilentTaskMappingEncoding, SIL, SafetyIntegrityLevelConstraint>(
 				(SafetyIntegrityLevelConstraint)goal,
 				new SafetyIntegrityLevelConstraintEvaluator<FailSilentTaskMappingEntry, FailSilentTaskMappingEncoding>(
-						systemModelAdapter, (SafetyIntegrityLevelConstraint)goal),
-				priority, FailSilentTaskMappingEncoding.class);
+						systemModelAdapter, (SafetyIntegrityLevelConstraint)goal), priority,
+				FailSilentTaskMappingEncoding.class);
 	}
 }
diff --git a/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/sysmodel/FaultDetectionVotingExecModelFactory.java b/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/sysmodel/FaultDetectionVotingExecModelFactory.java
index b8c7d062f624c18a41bc4ee26e0e8299a82f5cdb..47e110208b65cc72f3a8a082876b039aa0036e4b 100644
--- a/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/sysmodel/FaultDetectionVotingExecModelFactory.java
+++ b/org.fortiss.af3.exploration.alg/src/org/fortiss/af3/exploration/alg/dse/sysmodel/FaultDetectionVotingExecModelFactory.java
@@ -66,7 +66,8 @@ import com.google.inject.TypeLiteral;
  * 
  * @author diewald
  */
-public class FaultDetectionVotingExecModelFactory extends
+public class FaultDetectionVotingExecModelFactory
+		extends
 		TaskMappingFactory<FaultDetectionVotingTaskMappingEntry, FaultDetectionVotingTaskMappingEncoding> {
 
 	/** The instance (singleton) of the EvaluatorWrapper factory. */
@@ -89,40 +90,39 @@ public class FaultDetectionVotingExecModelFactory extends
 
 	/** Creates a TaskMappingCreator that matches the given execution model. */
 	@Override
-	public TaskMappingCreator<FaultDetectionVotingTaskMappingEntry, FaultDetectionVotingTaskMappingEncoding>
-			createTaskMappingCreator(DseSpecification dse, DecoderDependencyGraph execDepGraph) {
-		return new FaultDetectionVotingTaskMappingCreator(dse, execDepGraph);
+	public
+			TaskMappingCreator<FaultDetectionVotingTaskMappingEntry, FaultDetectionVotingTaskMappingEncoding>
+			createTaskMappingCreator(DecoderDependencyGraph execDepGraph) {
+		return new FaultDetectionVotingTaskMappingCreator(execDepGraph);
 	}
 
 	/* Construct execution model specific operators. */
 
 	/** {@inheritDoc} */
 	@Override
-	public MutateAllocation<?, ?>
-			createMutateAllocationOperator(Collection<ITaskAdapter<?>> tasks) {
+	public MutateAllocation<?, ?> createMutateAllocationOperator(Collection<ITaskAdapter<?>> tasks) {
 		return new MutateAllocation<AbstractTaskMappingEntry, AbstractTaskMappingEncoding>(tasks);
 	}
 
 	/** {@inheritDoc} */
 	@Override
-	public MutateRedundancyDecrement<?, ?>
-			createMutateRedundancyDecrementOperator(Collection<ITaskAdapter<?>> tasks) {
+	public MutateRedundancyDecrement<?, ?> createMutateRedundancyDecrementOperator(
+			Collection<ITaskAdapter<?>> tasks) {
 		return new MutateRedundancyDecrement<AbstractTaskMappingEntry, AbstractTaskMappingEncoding>(
 				tasks);
 	}
 
 	/** {@inheritDoc} */
 	@Override
-	public MutateRedundancyIncrement<?, ?>
-			createMutateRedundancyIncrementOperator(Collection<ITaskAdapter<?>> tasks) {
+	public MutateRedundancyIncrement<?, ?> createMutateRedundancyIncrementOperator(
+			Collection<ITaskAdapter<?>> tasks) {
 		return new MutateRedundancyIncrement<AbstractTaskMappingEntry, AbstractTaskMappingEncoding>(
 				tasks);
 	}
 
 	/** {@inheritDoc} */
 	@Override
-	public CrossoverRandManyAllocation<?, ?>
-			createCrossoverRandManyAllocationOperator(double rate) {
+	public CrossoverRandManyAllocation<?, ?> createCrossoverRandManyAllocationOperator(double rate) {
 		return new CrossoverRandManyAllocation<AbstractTaskMappingEntry, AbstractTaskMappingEncoding>(
 				rate);
 	}
@@ -140,30 +140,34 @@ public class FaultDetectionVotingExecModelFactory extends
 
 	/** {@inheritDoc} */
 	@Override
-	public AbstractTaskMappingDecoder<FaultDetectionVotingTaskMappingEntry, FaultDetectionVotingTaskMappingEncoding>
-			createAbstractTaskMappingDecoder(DseSpecification explorationDefinition) {
-		return new FaultDetectionVotingAbstractTaskMappingDecoder(explorationDefinition);
+	public
+			AbstractTaskMappingDecoder<FaultDetectionVotingTaskMappingEntry, FaultDetectionVotingTaskMappingEncoding>
+			createAbstractTaskMappingDecoder() {
+		return new FaultDetectionVotingAbstractTaskMappingDecoder();
 	}
 
 	/** {@inheritDoc} */
 	@SuppressWarnings({"rawtypes", "unchecked"})
 	@Override
 	// TODO: identify why a warning is generated here.
-	public InstantiatedTaskMappingDecoderAcyclic<FaultDetectionVotingTaskMappingEntry, FaultDetectionVotingTaskMappingEncoding>
+	public
+			InstantiatedTaskMappingDecoderAcyclic<FaultDetectionVotingTaskMappingEntry, FaultDetectionVotingTaskMappingEncoding>
 			createAbstractToAcyclicTaskGraphDecoder() {
 		return new InstantiatedTaskMappingDecoderAcyclic();
 	}
 
 	/** {@inheritDoc} */
 	@Override
-	public MessageDecoder<FaultDetectionVotingTaskMappingEntry, FaultDetectionVotingTaskMappingEncoding>
+	public
+			MessageDecoder<FaultDetectionVotingTaskMappingEntry, FaultDetectionVotingTaskMappingEncoding>
 			createMessageDecoder() {
 		return new MessageDecoder<FaultDetectionVotingTaskMappingEntry, FaultDetectionVotingTaskMappingEncoding>();
 	}
 
 	/** {@inheritDoc} */
 	@Override
-	public StrictTTDecoder<FaultDetectionVotingTaskMappingEntry, FaultDetectionVotingTaskMappingEncoding>
+	public
+			StrictTTDecoder<FaultDetectionVotingTaskMappingEntry, FaultDetectionVotingTaskMappingEncoding>
 			createStrictTTDecoder(DseSpecification explorationDefinition) {
 		return new StrictTTDecoder<FaultDetectionVotingTaskMappingEntry, FaultDetectionVotingTaskMappingEncoding>(
 				explorationDefinition);
@@ -224,13 +228,14 @@ public class FaultDetectionVotingExecModelFactory extends
 	@Override
 	public <RT, ET extends ExplorationTarget<RT>>
 			EvaluatorWrapper<?, Boolean, ComponentMultiAllocationConstraint>
-			createComponentMultiAllocationConstraintWrapper(ExplorationTarget<?> goal, int priority,
-					SystemModelAdapter<?, ?, ?, ?, ?, ?, ?> systemModelAdapter) throws Exception {
+			createComponentMultiAllocationConstraintWrapper(ExplorationTarget<?> goal,
+					int priority, SystemModelAdapter<?, ?, ?, ?, ?, ?, ?> systemModelAdapter)
+					throws Exception {
 		return new EvaluatorWrapper<FaultDetectionVotingTaskMappingEncoding, Boolean, ComponentMultiAllocationConstraint>(
 				(ComponentMultiAllocationConstraint)goal,
 				new ComponentMultiAllocationConstraintEvaluator<FaultDetectionVotingTaskMappingEntry, FaultDetectionVotingTaskMappingEncoding>(
-						systemModelAdapter, (ComponentMultiAllocationConstraint)goal),
-				priority, FaultDetectionVotingTaskMappingEncoding.class);
+						systemModelAdapter, (ComponentMultiAllocationConstraint)goal), priority,
+				FaultDetectionVotingTaskMappingEncoding.class);
 	}
 
 	/** {@inheritDoc} */
@@ -244,8 +249,8 @@ public class FaultDetectionVotingExecModelFactory extends
 		return new EvaluatorWrapper<FaultDetectionVotingTaskMappingEncoding, Boolean, ComponentMultiDislocationConstraint>(
 				(ComponentMultiDislocationConstraint)goal,
 				new ComponentMultiDislocationConstraintEvaluator<FaultDetectionVotingTaskMappingEntry, FaultDetectionVotingTaskMappingEncoding>(
-						systemModelAdapter, (ComponentMultiDislocationConstraint)goal),
-				priority, FaultDetectionVotingTaskMappingEncoding.class);
+						systemModelAdapter, (ComponentMultiDislocationConstraint)goal), priority,
+				FaultDetectionVotingTaskMappingEncoding.class);
 	}
 
 	/** {@inheritDoc} */
@@ -257,7 +262,7 @@ public class FaultDetectionVotingExecModelFactory extends
 		return new EvaluatorWrapper<FaultDetectionVotingTaskMappingEncoding, SIL, SafetyIntegrityLevelConstraint>(
 				(SafetyIntegrityLevelConstraint)goal,
 				new SafetyIntegrityLevelConstraintEvaluator<FaultDetectionVotingTaskMappingEntry, FaultDetectionVotingTaskMappingEncoding>(
-						systemModelAdapter, (SafetyIntegrityLevelConstraint)goal),
-				priority, FaultDetectionVotingTaskMappingEncoding.class);
+						systemModelAdapter, (SafetyIntegrityLevelConstraint)goal), priority,
+				FaultDetectionVotingTaskMappingEncoding.class);
 	}
 }