diff --git a/edu.kit.ipd.descartes.adaptation.evaluation.performance/src/edu/kit/ipd/descartes/adaptation/evaluation/performance/repository/ObservationRepositoryHandler.java b/edu.kit.ipd.descartes.adaptation.evaluation.performance/src/edu/kit/ipd/descartes/adaptation/evaluation/performance/repository/ObservationRepositoryHandler.java
index 8c9ba5f69f2d555f8981ba5e21801157b6e0eb59..d3bde09f813e4f909f50ce95235aede1c25e4921 100644
--- a/edu.kit.ipd.descartes.adaptation.evaluation.performance/src/edu/kit/ipd/descartes/adaptation/evaluation/performance/repository/ObservationRepositoryHandler.java
+++ b/edu.kit.ipd.descartes.adaptation.evaluation.performance/src/edu/kit/ipd/descartes/adaptation/evaluation/performance/repository/ObservationRepositoryHandler.java
@@ -15,6 +15,7 @@ import edu.kit.ipd.descartes.perfdatarepo.Impact;
 import edu.kit.ipd.descartes.perfdatarepo.Result;
 import edu.kit.ipd.descartes.ql.models.repository.Observation;
 import edu.kit.ipd.descartes.ql.models.repository.ObservationRepository;
+import edu.kit.ipd.descartes.ql.models.repository.RepositoryFactory;
 //import edu.kit.ipd.descartes.adaptation.model.repository.dmm.AdaptationProcessModelLoader;
 
 public class ObservationRepositoryHandler implements IPerformanceDataRepositoryHandler {
@@ -62,7 +63,13 @@ public class ObservationRepositoryHandler implements IPerformanceDataRepositoryH
 		for (Iterator<Observation> iterator = observations.iterator(); iterator.hasNext();) {
 			Observation observ = (Observation) iterator.next();
 			if (EcoreUtil.equals(observ, currentObservation)) {
-				newObservation = iterator.next();
+				if (iterator.hasNext()) {
+					newObservation = iterator.next();
+				} else {
+					// Just in case there is no remaining observation in the repository
+					newObservation = RepositoryFactory.eINSTANCE.createObservation();
+					newObservation.setIdentifier("EMPTY");
+				}
 				break;
 			}
 		}