diff --git a/build.gradle b/build.gradle
index 89c17f60342e11e908959ff19b3ce21b63b327d7..e232adab8fd039d2f03b44fa531338f4ba2668b3 100644
--- a/build.gradle
+++ b/build.gradle
@@ -118,7 +118,7 @@ dependencies {
     compile group: 'org.modmacao.occi', name: 'platform', version: '1.0.0'
     compile group: 'org.modmacao.openstack', name: 'runtime', version: '1.0.1'
     compile group: 'org.modmacao.openstack.swe', name: 'runtime', version: '1.0.0'
-    compile group: 'org.modmacao', name: 'ansible', version: '1.0.0'
+    compile group: 'org.modmacao', name: 'ansible', version: '1.0.1'
     compile group: 'org.eclipse.cmf.occi', name: 'docker', version: '1.0.0'
 
 
diff --git a/src/main/java/de/ugoe/cs/rwm/mocci/AbsScaler.java b/src/main/java/de/ugoe/cs/rwm/mocci/AbsScaler.java
index 0e81ad2a3b12e44408c615e96fc7c0217e3791e3..f19fd18ed751813ea5d94f66988bab48c3367fea 100644
--- a/src/main/java/de/ugoe/cs/rwm/mocci/AbsScaler.java
+++ b/src/main/java/de/ugoe/cs/rwm/mocci/AbsScaler.java
@@ -19,6 +19,7 @@ import org.eclipse.cmf.occi.core.impl.OCCIFactoryImpl;
 import org.eclipse.cmf.occi.infrastructure.impl.InfrastructureFactoryImpl;
 import org.eclipse.emf.common.util.EList;
 import org.eclipse.emf.ecore.resource.Resource;
+import org.modmacao.ansibleconfiguration.impl.AnsibleconfigurationFactoryImpl;
 import org.modmacao.occi.platform.impl.PlatformFactoryImpl;
 import org.modmacao.placement.impl.PlacementFactoryImpl;
 
@@ -33,6 +34,7 @@ public abstract class AbsScaler {
 	protected PlatformFactoryImpl pFactory = new PlatformFactoryImpl();
 	protected PlacementFactoryImpl placeFactory = new PlacementFactoryImpl();
 	protected OssweruntimeFactoryImpl osFactory = new OssweruntimeFactoryImpl();
+	protected AnsibleconfigurationFactoryImpl aFactory = new AnsibleconfigurationFactoryImpl();
 	protected Resource runtimeModel;
 	protected Connector conn;
 	protected Path runtimePath;
diff --git a/src/main/java/de/ugoe/cs/rwm/mocci/DownScaler.java b/src/main/java/de/ugoe/cs/rwm/mocci/DownScaler.java
index aea7d1e67785a801a17afb7ee554b3455dbaeeec..b9fa4a22dacf049f5f8fb7bc3870fc1bf5be26d7 100644
--- a/src/main/java/de/ugoe/cs/rwm/mocci/DownScaler.java
+++ b/src/main/java/de/ugoe/cs/rwm/mocci/DownScaler.java
@@ -28,6 +28,7 @@ import org.modmacao.occi.platform.Component;
 import de.ugoe.cs.rwm.docci.ModelUtility;
 import de.ugoe.cs.rwm.docci.connector.Connector;
 import monitoring.Monitorableproperty;
+import monitoring.Sensor;
 
 public class DownScaler extends AbsScaler {
 
@@ -59,7 +60,9 @@ public class DownScaler extends AbsScaler {
 							if (atLeastTwoWorkers(config)) {
 								System.out.println("      VM with None CPU utilization found: " + comp.getId());
 								addConnectedLinksAndComponents(comp);
+								addConnectedLinksAndComponents(monProp.getSource());
 								resourcesToDelete.add(comp);
+								resourcesToDelete.add(monProp.getSource());
 								System.out.println(
 										"      Delete Entities Around: " + comp.getTitle() + " (" + comp.getId() + ")");
 								downScale = true;
@@ -82,8 +85,12 @@ public class DownScaler extends AbsScaler {
 		config.getResources().removeAll(resourcesToDelete);
 
 		for (org.eclipse.cmf.occi.core.Resource res : resourcesToDelete) {
+			for (Link l : res.getLinks()) {
+				EcoreUtil.delete(l);
+			}
 			EcoreUtil.delete(res);
 		}
+
 		Resource rM = runtimeModel;
 		MAPE.newComp = null;
 		CachedResourceSet.getCache().clear();
@@ -119,7 +126,7 @@ public class DownScaler extends AbsScaler {
 		return null;
 	}
 
-	private void addConnectedLinksAndComponents(Compute comp) {
+	private void addConnectedLinksAndComponents(org.eclipse.cmf.occi.core.Resource comp) {
 		linksToDelete.addAll(comp.getLinks());
 		linksToDelete.addAll(comp.getRlinks());
 
@@ -152,6 +159,16 @@ public class DownScaler extends AbsScaler {
 				 */
 			}
 		}
+
+		if (comp instanceof Sensor) {
+			for (Link l : comp.getLinks()) {
+				if (l.getTarget() instanceof Component) {
+					resourcesToDelete.add(l.getTarget());
+					linksToDelete.addAll(l.getTarget().getLinks());
+					linksToDelete.addAll(l.getTarget().getRlinks());
+				}
+			}
+		}
 	}
 
 }
diff --git a/src/main/java/de/ugoe/cs/rwm/mocci/MAPE.java b/src/main/java/de/ugoe/cs/rwm/mocci/MAPE.java
index 91d086d6616281d3bbfbe15c429b1ffe3ce48223..f40b27ed60923c8a0da8bb52b3da4771c7468362 100644
--- a/src/main/java/de/ugoe/cs/rwm/mocci/MAPE.java
+++ b/src/main/java/de/ugoe/cs/rwm/mocci/MAPE.java
@@ -16,13 +16,13 @@ import java.nio.file.Paths;
 import java.util.Scanner;
 
 import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.epsilon.eol.exceptions.EolRuntimeException;
 import org.json.JSONArray;
 import org.modmacao.occi.platform.Component;
 
 import de.ugoe.cs.rwm.docci.MartDeployer;
 import de.ugoe.cs.rwm.docci.ModelUtility;
 import de.ugoe.cs.rwm.docci.connector.Connector;
-import de.ugoe.cs.rwm.docci.connector.LocalhostConnector;
 import de.ugoe.cs.rwm.docci.connector.MartConnector;
 import de.ugoe.cs.rwm.docci.executor.MartExecutor;
 import de.ugoe.cs.rwm.tocci.occi2openstack.OCCI2OPENSTACKTransformator;
@@ -35,9 +35,8 @@ import de.ugoe.cs.rwm.tocci.occi2openstack.OCCI2OPENSTACKTransformator;
  */
 public class MAPE {
 	protected static final Path RUNTIMEPATH = Paths.get(System.getProperty("user.home") + "/.rwm/runtime.occic");
-	static Connector conn = new LocalhostConnector("localhost", 8080, "ubuntu");
-	// static Connector conn = new MartConnector("192.168.35.45", 8080, "ubuntu",
-	// "~/key.pem");
+	// static Connector conn = new LocalhostConnector("localhost", 8080, "ubuntu");
+	static Connector conn = new MartConnector("192.168.35.45", 8080, "ubuntu", "~/key.pem");
 	static MartExecutor executor = new MartExecutor(conn);
 	static Resource runtimeModel;
 	static Component newComp;
@@ -112,10 +111,11 @@ public class MAPE {
 		if (noneCPUs == 0 && critCPUs > allCPUs / 2 && allCPUs <= 6) {
 			System.out.println("Analyze: Critical State Detected");
 			return "upScale";
-		} else {
+		} else if (allCPUs > 2) {
 			System.out.println("Analyze: Non Critical State Detected");
 			return "downScale";
 		}
+		return "noScale";
 	}
 
 	public static Resource plan(String analysis) {
@@ -129,7 +129,7 @@ public class MAPE {
 			DownScaler downscaler = new DownScaler(conn, RUNTIMEPATH);
 			return downscaler.downScaleNodes();
 		}
-		return null;
+		return ModelUtility.loadOCCIintoEMFResource(RUNTIMEPATH);
 
 	}
 
@@ -138,18 +138,22 @@ public class MAPE {
 			System.out.println("Execute: Skipped as no scaling planned");
 		}
 		System.out.println("Execute: Deploying adjusted Model");
-		Path occiPath = RUNTIMEPATH;
 
+		Path occiPath = RUNTIMEPATH;
 		OCCI2OPENSTACKTransformator trans2 = new OCCI2OPENSTACKTransformator();
 		trans2.setTransformationProperties(RegistryAndLoggerSetup.manNWRuntimeId, RegistryAndLoggerSetup.sshKey,
 				RegistryAndLoggerSetup.userData, RegistryAndLoggerSetup.manNWid);
 
-		// trans2.transform(runtimeModel, occiPath);
-		// runtimeModel = ModelUtility.loadOCCIintoEMFResource(occiPath);
+		try {
+			trans2.transform(runtimeModel, occiPath);
+		} catch (EolRuntimeException e) {
+			e.printStackTrace();
+		}
+		runtimeModel = ModelUtility.loadOCCIintoEMFResource(occiPath);
 
 		MartDeployer deployer;
 		if (conn instanceof MartConnector) {
-			deployer = new MartDeployer(conn, 100000);
+			deployer = new MartDeployer(conn, 1000);
 		} else {
 			deployer = new MartDeployer(conn);
 		}
diff --git a/src/main/java/de/ugoe/cs/rwm/mocci/RegistryAndLoggerSetup.java b/src/main/java/de/ugoe/cs/rwm/mocci/RegistryAndLoggerSetup.java
index 3d80c677ee099e5f684c2acb4f18044510947eaa..456ee04d7c2f1ba970c5e3be2215d26fa2e06c4f 100644
--- a/src/main/java/de/ugoe/cs/rwm/mocci/RegistryAndLoggerSetup.java
+++ b/src/main/java/de/ugoe/cs/rwm/mocci/RegistryAndLoggerSetup.java
@@ -44,7 +44,7 @@ public class RegistryAndLoggerSetup {
 	static String manNWid = "urn:uuid:29d78078-fb4c-47aa-a9af-b8aaf3339590";
 	static String manNWRuntimeId = "75a4639e-9ce7-4058-b859-8a711b0e2e7b";
 	static String sshKey = "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC6H7Ydi45BTHid4qNppGAi5mzjbnZgt7bi6xLGmZG9CiLmhMsxOuk3Z05Nn+pmoN98qS0eY8S240PPk5VOlYqBY0vdRAwrZSHHaLdMp6I7ARNrI2KraYduweqz7ZQxPXQfwIeYx2HKQxEF2r+4//Fo4WfgdBkLuulvl/Gw3TUzJNQHvgpaiNo9+PI5CZydHnZbjUkRikS12pT+CbNKj+0QKeQztbCd41aKxDv5H0DjltVRcpPppv4dmiU/zoCAIngWLO1PPgfYWyze8Z9IoyBT7Qdg30U91TYZBuxzXR5lq7Fh64y/IZ/SjdOdSIvIuDjtmJDULRdLJzrvubrKY+YH Generated-by-Nova";
-	static String userData = "I2Nsb3VkLWNvbmZpZwoKIyBVcGdyYWRlIHRoZSBpbnN0YW5jZSBvbiBmaXJzdCBib290CiMgKGllIHJ1biBhcHQtZ2V0IHVwZ3JhZGUpCiMKIyBEZWZhdWx0OiBmYWxzZQojIEFsaWFzZXM6IGFwdF91cGdyYWRlCnBhY2thZ2VfdXBncmFkZTogdHJ1ZQoKcGFja2FnZXM6CiAtIHB5dGhvbgoKd3JpdGVfZmlsZXM6CiAgLSBwYXRoOiAvZXRjL25ldHdvcmsvaW50ZXJmYWNlcy5kLzUwLWNsb3VkLWluaXQuY2ZnCiAgICBjb250ZW50OiB8CiAgICAgIGF1dG8gbG8KICAgICAgaWZhY2UgbG8gaW5ldCBsb29wYmFjawogICAgICAKICAgICAgYXV0byBlbnMwCiAgICAgIGFsbG93LWhvdHBsdWcgZW5zMAogICAgICBpZmFjZSBlbnMwIGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnMxCiAgICAgIGFsbG93LWhvdHBsdWcgZW5zMQogICAgICBpZmFjZSBlbnMxIGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnMyCiAgICAgIGFsbG93LWhvdHBsdWcgZW5zMgogICAgICBpZmFjZSBlbnMyIGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnMzCiAgICAgIGFsbG93LWhvdHBsdWcgZW5zMwogICAgICBpZmFjZSBlbnMzIGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnM0CiAgICAgIGFsbG93LWhvdHBsdWcgZW5zNAogICAgICBpZmFjZSBlbnM0IGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnM1CiAgICAgIGFsbG93LWhvdHBsdWcgZW5zNQogICAgICBpZmFjZSBlbnM1IGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnM2CiAgICAgIGFsbG93LWhvdHBsdWcgZW5zNgogICAgICBpZmFjZSBlbnM2IGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnM3CiAgICAgIGFsbG93LWhvdHBsdWcgZW5zNwogICAgICBpZmFjZSBlbnM3IGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnM4CiAgICAgIGFsbG93LWhvdHBsdWcgZW5zOAogICAgICBpZmFjZSBlbnM4IGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnM5CiAgICAgIGFsbG93LWhvdHBsdWcgZW5zOQogICAgICBpZmFjZSBlbnM5IGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnMxMAogICAgICBhbGxvdy1ob3RwbHVnIGVuczEwCiAgICAgIGlmYWNlIGVuczEwIGluZXQgZGhjcAoKIyMj";
+	static String userData = "I2Nsb3VkLWNvbmZpZwpydW5jbWQ6CiAgLSBbIHN5c3RlbWN0bCwgc3RvcCwgYXB0LWRhaWx5LnNlcnZpY2UgXQogIC0gWyBzeXN0ZW1jdGwsIGtpbGwsIC0ta2lsbC13aG89YWxsLCBhcHQtZGFpbHkuc2VydmljZSBd";
 
 	public static void setup() {
 		loggerSetup();
diff --git a/src/main/java/de/ugoe/cs/rwm/mocci/UpScaler.java b/src/main/java/de/ugoe/cs/rwm/mocci/UpScaler.java
index 229752522d138bf66440f1d907cb31df65ab3b0d..5ea1c19cb1bce1d4f96b52b40903f806a6a4995c 100644
--- a/src/main/java/de/ugoe/cs/rwm/mocci/UpScaler.java
+++ b/src/main/java/de/ugoe/cs/rwm/mocci/UpScaler.java
@@ -17,7 +17,6 @@ import org.eclipse.cmf.occi.core.AttributeState;
 import org.eclipse.cmf.occi.core.Configuration;
 import org.eclipse.cmf.occi.core.Mixin;
 import org.eclipse.cmf.occi.core.MixinBase;
-import org.eclipse.cmf.occi.docker.DockerFactory;
 import org.eclipse.cmf.occi.infrastructure.Compute;
 import org.eclipse.cmf.occi.infrastructure.ComputeStatus;
 import org.eclipse.cmf.occi.infrastructure.Ipnetworkinterface;
@@ -60,7 +59,7 @@ public class UpScaler extends AbsScaler {
 		System.out.println("         Adding Compute Node to Model");
 		Compute comp = iFactory.createCompute();
 		comp.setOcciComputeState(ComputeStatus.ACTIVE);
-		comp.setKind(DockerFactory.eINSTANCE.createContainer().getKind());
+		// comp.setKind(DockerFactory.eINSTANCE.createContainer().getKind());
 
 		AttributeState state = factory.createAttributeState();
 		state.setName("occi.compute.state");
diff --git a/src/main/java/de/ugoe/cs/rwm/mocci/UpScalerSpark.java b/src/main/java/de/ugoe/cs/rwm/mocci/UpScalerSim.java
similarity index 98%
rename from src/main/java/de/ugoe/cs/rwm/mocci/UpScalerSpark.java
rename to src/main/java/de/ugoe/cs/rwm/mocci/UpScalerSim.java
index 5cf2c45c6f5b5f92c10889955d2840b214374e59..5cdd700997b0c08a03dc113846fbd4392c1d27b3 100644
--- a/src/main/java/de/ugoe/cs/rwm/mocci/UpScalerSpark.java
+++ b/src/main/java/de/ugoe/cs/rwm/mocci/UpScalerSim.java
@@ -11,8 +11,13 @@
 
 package de.ugoe.cs.rwm.mocci;
 
-import java.nio.file.Path;
-
+import de.ugoe.cs.rwm.docci.ModelUtility;
+import de.ugoe.cs.rwm.docci.connector.Connector;
+import de.ugoe.cs.rwm.domain.workload.Componentsim;
+import de.ugoe.cs.rwm.domain.workload.Computesim;
+import de.ugoe.cs.rwm.domain.workload.Sensorsim;
+import de.ugoe.cs.rwm.domain.workload.WorkloadFactory;
+import monitoring.*;
 import org.eclipse.cmf.occi.core.AttributeState;
 import org.eclipse.cmf.occi.core.Configuration;
 import org.eclipse.cmf.occi.core.Mixin;
@@ -27,17 +32,11 @@ import org.modmacao.occi.platform.Component;
 import org.modmacao.occi.platform.Componentlink;
 import org.modmacao.placement.Placementlink;
 
-import de.ugoe.cs.rwm.docci.ModelUtility;
-import de.ugoe.cs.rwm.docci.connector.Connector;
-import de.ugoe.cs.rwm.domain.workload.Componentsim;
-import de.ugoe.cs.rwm.domain.workload.Computesim;
-import de.ugoe.cs.rwm.domain.workload.Sensorsim;
-import de.ugoe.cs.rwm.domain.workload.WorkloadFactory;
-import monitoring.*;
+import java.nio.file.Path;
 
-public class UpScalerSpark extends AbsScaler {
+public class UpScalerSim extends AbsScaler {
 
-	public UpScalerSpark(Connector conn, Path runtimePath) {
+	public UpScalerSim(Connector conn, Path runtimePath) {
 		this.conn = conn;
 		this.runtimePath = runtimePath;
 	}
@@ -65,7 +64,6 @@ public class UpScalerSpark extends AbsScaler {
 		Compute comp = iFactory.createCompute();
 		comp.setOcciComputeState(ComputeStatus.ACTIVE);
 		Container cont = DockerFactory.eINSTANCE.createContainer();
-
 		comp.setKind(cont.getKind());
 
 		AttributeState state = factory.createAttributeState();
diff --git a/src/test/resources/martserver-plugins/org.modmacao.ansible_1.0.0.201808232105.jar b/src/test/resources/martserver-plugins/org.modmacao.ansible_1.0.0.201808232105.jar
deleted file mode 100755
index d20d0f7d68b587bc9e24063861fdb68262ecf9a7..0000000000000000000000000000000000000000
Binary files a/src/test/resources/martserver-plugins/org.modmacao.ansible_1.0.0.201808232105.jar and /dev/null differ